mac80211: Improve ath5k/ar71xx PCI bug WAR
authorFelix Fietkau <nbd@openwrt.org>
Wed, 26 Jan 2011 11:33:50 +0000 (11:33 +0000)
committerFelix Fietkau <nbd@openwrt.org>
Wed, 26 Jan 2011 11:33:50 +0000 (11:33 +0000)
It has been confirmed by Atheros that this PCI bug affects the RX side only,
so we can keep the 128B DMA size for TX.

With this change we can double the thruput of ath5k from 15Mps to 30Mbps.

We have been using this patch since more than 6 month in a production
environment without problems and a significant performance improvement.

It has also been said to fix HW encryption:
http://www.mail-archive.com/ath5k-devel@lists.ath5k.org/msg04311.html

Patch from: kentarou matsuyama <matsuyama@thinktube.com>

SVN-Revision: 25104

package/mac80211/patches/201-ath5k-WAR-for-AR71xx-PCI-bug.patch

index b216b9dbeb4b9600a355aea24f070e4000eb2b7a..d1819713165bd8305bbb704cacd271067ea7ce89 100644 (file)
@@ -9,7 +9,7 @@
        { AR5K_RXCFG,           AR5K_DMASIZE_128B },
 +#else
 +      /* WAR for AR71xx PCI bug */
-+      { AR5K_TXCFG,           AR5K_DMASIZE_4B },
++      { AR5K_TXCFG,           AR5K_DMASIZE_128B },
 +      { AR5K_RXCFG,           AR5K_DMASIZE_4B },
 +#endif
        { AR5K_CFG,             AR5K_INIT_CFG },
@@ -29,7 +29,7 @@
 +#else
 +              /* WAR for AR71xx PCI bug */
 +              AR5K_REG_WRITE_BITS(ah, AR5K_TXCFG,
-+                      AR5K_TXCFG_SDMAMR, AR5K_DMASIZE_4B);
++                      AR5K_TXCFG_SDMAMR, AR5K_DMASIZE_128B);
 +              AR5K_REG_WRITE_BITS(ah, AR5K_RXCFG,
 +                      AR5K_RXCFG_SDMAMW, AR5K_DMASIZE_4B);
 +#endif