projects
/
openwrt
/
svn-archive
/
archive.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
mac80211/ath9k: improve pending patches based on review feedback
[openwrt/svn-archive/archive.git]
/
package
/
mac80211
/
patches
/
573-ath9k_beacon_stop.patch
diff --git
a/package/mac80211/patches/573-ath9k_beacon_stop.patch
b/package/mac80211/patches/573-ath9k_beacon_stop.patch
index 7a9f63fc70d3496d3c94ddad947b8b59502d64c6..5574d171680b63c07d209616bf4046fbb5fd403a 100644
(file)
--- a/
package/mac80211/patches/573-ath9k_beacon_stop.patch
+++ b/
package/mac80211/patches/573-ath9k_beacon_stop.patch
@@
-1,6
+1,6
@@
--- a/drivers/net/wireless/ath/ath9k/mac.c
+++ b/drivers/net/wireless/ath/ath9k/mac.c
--- a/drivers/net/wireless/ath/ath9k/mac.c
+++ b/drivers/net/wireless/ath/ath9k/mac.c
-@@ -17
0,84 +170,30
@@ void ath9k_hw_abort_tx_dma(struct ath_hw
+@@ -17
1,84 +171,31
@@ void ath9k_hw_abort_tx_dma(struct ath_hw
}
EXPORT_SYMBOL(ath9k_hw_abort_tx_dma);
}
EXPORT_SYMBOL(ath9k_hw_abort_tx_dma);
@@
-34,11
+34,11
@@
REG_WRITE(ah, AR_Q_TXD, 1 << q);
for (wait = wait_time; wait != 0; wait--) {
REG_WRITE(ah, AR_Q_TXD, 1 << q);
for (wait = wait_time; wait != 0; wait--) {
-
if (ath9k_hw_numtxpending(ah, q) == 0)
-
break;
+
-
if (ath9k_hw_numtxpending(ah, q) == 0)
+
-
break;
- udelay(ATH9K_TIME_QUANTUM);
- }
- udelay(ATH9K_TIME_QUANTUM);
- }
-
+-
- if (ath9k_hw_numtxpending(ah, q)) {
- ath_dbg(common, ATH_DBG_QUEUE,
- "%s: Num of pending TX Frames %d on Q %d\n",
- if (ath9k_hw_numtxpending(ah, q)) {
- ath_dbg(common, ATH_DBG_QUEUE,
- "%s: Num of pending TX Frames %d on Q %d\n",
@@
-73,11
+73,13
@@
- "Failed to stop TX DMA in 100 msec after killing last frame\n");
- break;
- }
- "Failed to stop TX DMA in 100 msec after killing last frame\n");
- break;
- }
-- udelay(ATH9K_TIME_QUANTUM);
++ if (wait != wait_time)
+ udelay(ATH9K_TIME_QUANTUM);
- }
- }
--
+
- REG_CLR_BIT(ah, AR_DIAG_SW, AR_DIAG_FORCE_CH_IDLE_HIGH);
- REG_CLR_BIT(ah, AR_DIAG_SW, AR_DIAG_FORCE_CH_IDLE_HIGH);
-+ udelay(ATH9K_TIME_QUANTUM);
++ if (ath9k_hw_numtxpending(ah, q) == 0)
++ break;
}
REG_WRITE(ah, AR_Q_TXD, 0);
}
REG_WRITE(ah, AR_Q_TXD, 0);