Author: maks-guest
Date: Tue Nov 14 00:28:45 2006
New Revision: 7792

Added:
   
dists/trunk/linux-2.6/debian/patches/bugfix/bcm43xx-drain-tx-status-before-starting-irqs.patch
Modified:
   dists/trunk/linux-2.6/debian/changelog
   dists/trunk/linux-2.6/debian/patches/series/6
Log:
add the bcm43xx stable fix


Modified: dists/trunk/linux-2.6/debian/changelog
==============================================================================
--- dists/trunk/linux-2.6/debian/changelog      (original)
+++ dists/trunk/linux-2.6/debian/changelog      Tue Nov 14 00:28:45 2006
@@ -10,6 +10,7 @@
    - mm: small cleanup of install_page()
    - mm: fixup do_wp_page()
    - mm: msync() cleanup (closes: #394392)
+  * Add another bcm43xx patch queued for 2.6.18.3.
 
   [ Steve Langasek ]
   * [alpha] new titan-video patch, for compatibility with TITAN and similar
@@ -31,7 +32,7 @@
   [ Thiemo Seufer ]
   * Enable raid456 for mips/mipsel qemu kernel.
 
- -- dann frazier <[EMAIL PROTECTED]>  Mon, 13 Nov 2006 00:42:56 -0700
+ -- maximilian attems <[EMAIL PROTECTED]>  Tue, 14 Nov 2006 00:27:20 +0100
 
 linux-2.6 (2.6.18-5) unstable; urgency=low
 

Added: 
dists/trunk/linux-2.6/debian/patches/bugfix/bcm43xx-drain-tx-status-before-starting-irqs.patch
==============================================================================
--- (empty file)
+++ 
dists/trunk/linux-2.6/debian/patches/bugfix/bcm43xx-drain-tx-status-before-starting-irqs.patch
      Tue Nov 14 00:28:45 2006
@@ -0,0 +1,57 @@
+From [EMAIL PROTECTED]  Sun Nov  5 13:38:59 2006
+Date: Sun, 05 Nov 2006 15:34:36 -0600
+From: Larry Finger <[EMAIL PROTECTED]>
+To: [EMAIL PROTECTED]
+Message-ID: <[EMAIL PROTECTED]>
+Cc: [email protected], [EMAIL PROTECTED], [EMAIL PROTECTED]
+Subject: bcm43xx: Drain TX status before starting IRQs
+
+From: Michael Buesch <[EMAIL PROTECTED]>
+
+Drain the Microcode TX-status-FIFO before we enable IRQs.
+This is required, because the FIFO may still have entries left
+from a previous run. Those would immediately fire after enabling
+IRQs and would lead to an oops in the DMA TXstatus handling code.
+
+Cc: "John W. Linville" <[EMAIL PROTECTED]>
+Signed-off-by: Michael Buesch <[EMAIL PROTECTED]>
+Signed-off-by: Larry Finger <[EMAIL PROTECTED]>
+Signed-off-by: Chris Wright <[EMAIL PROTECTED]>
+---
+ drivers/net/wireless/bcm43xx/bcm43xx_main.c |   18 ++++++++++++++++++
+ 1 file changed, 18 insertions(+)
+
+--- linux-2.6.18.2.orig/drivers/net/wireless/bcm43xx/bcm43xx_main.c
++++ linux-2.6.18.2/drivers/net/wireless/bcm43xx/bcm43xx_main.c
+@@ -1463,6 +1463,23 @@ static void handle_irq_transmit_status(s
+       }
+ }
+ 
++static void drain_txstatus_queue(struct bcm43xx_private *bcm)
++{
++      u32 dummy;
++
++      if (bcm->current_core->rev < 5)
++              return;
++      /* Read all entries from the microcode TXstatus FIFO
++       * and throw them away.
++       */
++      while (1) {
++              dummy = bcm43xx_read32(bcm, BCM43xx_MMIO_XMITSTAT_0);
++              if (!dummy)
++                      break;
++              dummy = bcm43xx_read32(bcm, BCM43xx_MMIO_XMITSTAT_1);
++      }
++}
++
+ static void bcm43xx_generate_noise_sample(struct bcm43xx_private *bcm)
+ {
+       bcm43xx_shm_write16(bcm, BCM43xx_SHM_SHARED, 0x408, 0x7F7F);
+@@ -3517,6 +3534,7 @@ int bcm43xx_select_wireless_core(struct 
+       bcm43xx_macfilter_clear(bcm, BCM43xx_MACFILTER_ASSOC);
+       bcm43xx_macfilter_set(bcm, BCM43xx_MACFILTER_SELF, (u8 
*)(bcm->net_dev->dev_addr));
+       bcm43xx_security_init(bcm);
++      drain_txstatus_queue(bcm);
+       ieee80211softmac_start(bcm->net_dev);
+ 
+       /* Let's go! Be careful after enabling the IRQs.

Modified: dists/trunk/linux-2.6/debian/patches/series/6
==============================================================================
--- dists/trunk/linux-2.6/debian/patches/series/6       (original)
+++ dists/trunk/linux-2.6/debian/patches/series/6       Tue Nov 14 00:28:45 2006
@@ -13,3 +13,4 @@
 + features/all/sctp-backports-5.patch
 + features/all/sctp-backports-6.patch
 + features/all/sctp-backports-7.patch
++ features/bcm43xx-drain-tx-status-before-starting-irqs.patch

_______________________________________________
Kernel-svn-changes mailing list
[email protected]
http://lists.alioth.debian.org/mailman/listinfo/kernel-svn-changes

Reply via email to