Based on a suggestion by Matthew Garrett, please try the patch below.

Thanks,

Larry

=================


Index: wireless-testing/drivers/net/wireless/b43/main.c
===================================================================
--- wireless-testing.orig/drivers/net/wireless/b43/main.c
+++ wireless-testing/drivers/net/wireless/b43/main.c
@@ -43,6 +43,7 @@
 #include <linux/io.h>
 #include <linux/dma-mapping.h>
 #include <asm/unaligned.h>
+#include <linux/pm_qos_params.h>

 #include "b43.h"
 #include "main.h"
@@ -3881,6 +3882,8 @@ redo:
        if (!dev || b43_status(dev) < B43_STAT_STARTED)
                return dev;

+       pm_qos_update_requirement(PM_QOS_CPU_DMA_LATENCY, "b43",
+                                 PM_QOS_DEFAULT_VALUE);
        /* Cancel work. Unlock to avoid deadlocks. */
        mutex_unlock(&wl->mutex);
        cancel_delayed_work_sync(&dev->periodic_work);
@@ -3963,6 +3966,9 @@ static int b43_wireless_core_start(struc
        /* We are ready to run. */
        b43_set_status(dev, B43_STAT_STARTED);

+       /* Set the maximum DMA latency */
+       pm_qos_update_requirement(PM_QOS_CPU_DMA_LATENCY, "b43", 200);
+
        /* Start data flow (TX/RX). */
        b43_mac_enable(dev);
        b43_write32(dev, B43_MMIO_GEN_IRQ_MASK, dev->irq_mask);




_______________________________________________
Bcm43xx-dev mailing list
Bcm43xx-dev@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/bcm43xx-dev

Reply via email to