/******************************************************************************
 
     AudioScience HPI driver
-    Copyright (C) 1997-2011  AudioScience Inc. <support@audioscience.com>
+    Copyright (C) 1997-2014  AudioScience Inc. <support@audioscience.com>
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of version 2 of the GNU General Public License as
 static struct hpios_spinlock msgx_lock;
 
 static hpi_handler_func *hpi_entry_points[HPI_MAX_ADAPTERS];
+static int logging_enabled = 1;
 
 static hpi_handler_func *hpi_lookup_entry_point_function(const struct hpi_pci
        *pci_info)
 void hpi_send_recv_ex(struct hpi_message *phm, struct hpi_response *phr,
        void *h_owner)
 {
-       HPI_DEBUG_MESSAGE(DEBUG, phm);
+
+       if (logging_enabled)
+               HPI_DEBUG_MESSAGE(DEBUG, phm);
 
        if (phm->type != HPI_TYPE_REQUEST) {
                hpi_init_response(phr, phm->object, phm->function,
                hw_entry_point(phm, phr);
                break;
        }
-       HPI_DEBUG_RESPONSE(phr);
 
+       if (logging_enabled)
+               HPI_DEBUG_RESPONSE(phr);
+
+       if (phr->error >= HPI_ERROR_DSP_COMMUNICATION) {
+               hpi_debug_level_set(HPI_DEBUG_LEVEL_ERROR);
+               logging_enabled = 0;
+       }
 }
 
 static void adapter_open(struct hpi_message *phm, struct hpi_response *phr)