From: Felix Fietkau Date: Wed, 20 Oct 2010 21:00:57 +0000 (+0000) Subject: ath9k: fix a small bug in the handling of a few tx descriptor flags X-Git-Url: http://git.openwrt.org/?p=openwrt%2Fsvn-archive%2Farchive.git;a=commitdiff_plain;h=edde32c54a502b5f8e863fd71d92704dce59051f;ds=sidebyside ath9k: fix a small bug in the handling of a few tx descriptor flags SVN-Revision: 23553 --- 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;