diff options
author | nbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2010-10-20 21:00:57 +0000 |
---|---|---|
committer | nbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2010-10-20 21:00:57 +0000 |
commit | 0b4fda590a435c61977e172b8fd4f38191a721cf (patch) | |
tree | 32ab7897ba900ffd24302bd71daac86f092e9d0a /package/mac80211/patches | |
parent | a730c7e73e1820149b65c540e03262aa709eeef8 (diff) |
ath9k: fix a small bug in the handling of a few tx descriptor flags
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@23553 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/mac80211/patches')
-rw-r--r-- | package/mac80211/patches/550-ath9k_xretry_fix.patch | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/package/mac80211/patches/550-ath9k_xretry_fix.patch b/package/mac80211/patches/550-ath9k_xretry_fix.patch new file mode 100644 index 0000000000..122be5b2ad --- /dev/null +++ b/package/mac80211/patches/550-ath9k_xretry_fix.patch @@ -0,0 +1,25 @@ +--- a/drivers/net/wireless/ath/ath9k/ar9002_mac.c ++++ b/drivers/net/wireless/ath/ath9k/ar9002_mac.c +@@ -237,13 +237,15 @@ static int ar9002_hw_proc_txdesc(struct + status = ACCESS_ONCE(ads->ds_txstatus1); + if (status & AR_FrmXmitOK) + ts->ts_status |= ATH9K_TX_ACKED; +- if (status & AR_ExcessiveRetries) +- ts->ts_status |= ATH9K_TXERR_XRETRY; +- if (status & AR_Filtered) +- ts->ts_status |= ATH9K_TXERR_FILT; +- if (status & AR_FIFOUnderrun) { +- ts->ts_status |= ATH9K_TXERR_FIFO; +- ath9k_hw_updatetxtriglevel(ah, true); ++ else { ++ if (status & AR_ExcessiveRetries) ++ ts->ts_status |= ATH9K_TXERR_XRETRY; ++ if (status & AR_Filtered) ++ ts->ts_status |= ATH9K_TXERR_FILT; ++ if (status & AR_FIFOUnderrun) { ++ ts->ts_status |= ATH9K_TXERR_FIFO; ++ ath9k_hw_updatetxtriglevel(ah, true); ++ } + } + if (status & AR_TxTimerExpired) + ts->ts_status |= ATH9K_TXERR_TIMER_EXPIRED; |