diff options
author | nbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2011-03-11 20:55:54 +0000 |
---|---|---|
committer | nbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2011-03-11 20:55:54 +0000 |
commit | 7746d05fee586a3ad19c57c51677d2a13e508593 (patch) | |
tree | 9d6b6ac1607ce54451f80829df06e6f64c72a58e /package/mac80211/patches/572-ath9k_fix_tx_flush.patch | |
parent | fdb9acb4b967831ced46cbfd8f01f7a251d49dbd (diff) |
mac80211/ath9k: improve pending patches based on review feedback
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@26041 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/mac80211/patches/572-ath9k_fix_tx_flush.patch')
-rw-r--r-- | package/mac80211/patches/572-ath9k_fix_tx_flush.patch | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/package/mac80211/patches/572-ath9k_fix_tx_flush.patch b/package/mac80211/patches/572-ath9k_fix_tx_flush.patch index ddeeb145b..630abc6fd 100644 --- a/package/mac80211/patches/572-ath9k_fix_tx_flush.patch +++ b/package/mac80211/patches/572-ath9k_fix_tx_flush.patch @@ -1,6 +1,6 @@ --- a/drivers/net/wireless/ath/ath9k/main.c +++ b/drivers/net/wireless/ath/ath9k/main.c -@@ -2149,56 +2149,40 @@ static void ath9k_set_coverage_class(str +@@ -2149,56 +2149,42 @@ static void ath9k_set_coverage_class(str static void ath9k_flush(struct ieee80211_hw *hw, bool drop) { @@ -32,6 +32,12 @@ - } + if (drop) + timeout = 1; ++ ++ for (j = 0; j < timeout; j++) { ++ int npend = 0; ++ ++ if (j) ++ usleep_range(1000, 2000); - if (drop || ath9k_has_pending_frames(sc, txq)) { - ath_dbg(common, ATH_DBG_QUEUE, "Drop frames from hw queue:%d\n", @@ -46,8 +52,6 @@ - ath9k_ps_restore(sc); - if (npend) - break; -+ for (j = 0; j < timeout; j++) { -+ int npend = 0; + for (i = 0; i < ATH9K_NUM_TX_QUEUES; i++) { + if (!ATH_TXQ_SETUP(sc, i)) + continue; @@ -59,8 +63,6 @@ + + if (!npend) + goto out; -+ -+ usleep_range(1000, 2000); } - if (npend) { |