aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2011-07-06 09:06:56 +0000
committerFelix Fietkau <nbd@openwrt.org>2011-07-06 09:06:56 +0000
commit3294d07ee5852748b1040a7c01d8ab004c95627d (patch)
treed84f2f7cf9115936c184c4ab4131d8ba80960f4a
parent3ad9a3e9923dbeea423c7075656477f4b215b4ba (diff)
downloadupstream-3294d07ee5852748b1040a7c01d8ab004c95627d.tar.gz
upstream-3294d07ee5852748b1040a7c01d8ab004c95627d.tar.bz2
upstream-3294d07ee5852748b1040a7c01d8ab004c95627d.zip
ath9k: fix some more "DMA failed to stop in 10 ms" issues on AR913x (#9654)
SVN-Revision: 27482
-rw-r--r--package/mac80211/patches/560-ath9k_rx_stop.patch13
1 files changed, 13 insertions, 0 deletions
diff --git a/package/mac80211/patches/560-ath9k_rx_stop.patch b/package/mac80211/patches/560-ath9k_rx_stop.patch
new file mode 100644
index 0000000000..17c4c28e42
--- /dev/null
+++ b/package/mac80211/patches/560-ath9k_rx_stop.patch
@@ -0,0 +1,13 @@
+--- a/drivers/net/wireless/ath/ath9k/mac.c
++++ b/drivers/net/wireless/ath/ath9k/mac.c
+@@ -737,7 +737,9 @@ bool ath9k_hw_stopdmarecv(struct ath_hw
+
+ if (!AR_SREV_9300_20_OR_LATER(ah)) {
+ mac_status = REG_READ(ah, AR_DMADBG_7) & 0x7f0;
+- if (mac_status == 0x1c0 && mac_status == last_mac_status) {
++ if (mac_status == last_mac_status &&
++ (mac_status == 0x1c0 ||
++ (AR_SREV_9100(ah) && mac_status == 0x020))) {
+ *reset = true;
+ break;
+ }