diff options
author | nbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2010-06-30 00:10:38 +0000 |
---|---|---|
committer | nbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2010-06-30 00:10:38 +0000 |
commit | d1e3d41785ec69f9afdd281b19bd30d6a945a92f (patch) | |
tree | f389af435ba957f05548162bfd9c5e4fab589a3f /package/mac80211/patches/510-ath9k_fix_ampdu_retry_count.patch | |
parent | e874a71630703178e6d9cf86f4c1072e7f0426bc (diff) |
mac80211: update to wireless-testing 2010-06-28
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@21988 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/mac80211/patches/510-ath9k_fix_ampdu_retry_count.patch')
-rw-r--r-- | package/mac80211/patches/510-ath9k_fix_ampdu_retry_count.patch | 62 |
1 files changed, 0 insertions, 62 deletions
diff --git a/package/mac80211/patches/510-ath9k_fix_ampdu_retry_count.patch b/package/mac80211/patches/510-ath9k_fix_ampdu_retry_count.patch deleted file mode 100644 index 8e6e6d0ad..000000000 --- a/package/mac80211/patches/510-ath9k_fix_ampdu_retry_count.patch +++ /dev/null @@ -1,62 +0,0 @@ ---- a/drivers/net/wireless/ath/ath9k/xmit.c -+++ b/drivers/net/wireless/ath/ath9k/xmit.c -@@ -328,6 +328,7 @@ static void ath_tx_complete_aggr(struct - u32 ba[WME_BA_BMP_SIZE >> 5]; - int isaggr, txfail, txpending, sendbar = 0, needreset = 0, nbad = 0; - bool rc_update = true; -+ struct ieee80211_tx_rate rates[4]; - - skb = bf->bf_mpdu; - hdr = (struct ieee80211_hdr *)skb->data; -@@ -335,6 +336,8 @@ static void ath_tx_complete_aggr(struct - tx_info = IEEE80211_SKB_CB(skb); - hw = bf->aphy->hw; - -+ memcpy(rates, tx_info->control.rates, sizeof(rates)); -+ - rcu_read_lock(); - - /* XXX: use ieee80211_find_sta! */ -@@ -375,6 +378,9 @@ static void ath_tx_complete_aggr(struct - txfail = txpending = 0; - bf_next = bf->bf_next; - -+ skb = bf->bf_mpdu; -+ tx_info = IEEE80211_SKB_CB(skb); -+ - if (ATH_BA_ISSET(ba, ATH_BA_INDEX(seq_st, bf->bf_seqno))) { - /* transmit completion, subframe is - * acked by block ack */ -@@ -428,6 +434,7 @@ static void ath_tx_complete_aggr(struct - spin_unlock_bh(&txq->axq_lock); - - if (rc_update && (acked_cnt == 1 || txfail_cnt == 1)) { -+ memcpy(tx_info->control.rates, rates, sizeof(rates)); - ath_tx_rc_status(bf, ts, nbad, txok, true); - rc_update = false; - } else { -@@ -2014,7 +2021,7 @@ static void ath_tx_rc_status(struct ath_ - tx_info->status.rates[i].idx = -1; - } - -- tx_info->status.rates[tx_rateindex].count = bf->bf_retries + 1; -+ tx_info->status.rates[tx_rateindex].count = ts->ts_longretry + 1; - } - - static void ath_wake_mac80211_queue(struct ath_softc *sc, struct ath_txq *txq) -@@ -2125,7 +2132,6 @@ static void ath_tx_processq(struct ath_s - * This frame is sent out as a single frame. - * Use hardware retry status for this frame. - */ -- bf->bf_retries = ts.ts_longretry; - if (ts.ts_status & ATH9K_TXERR_XRETRY) - bf->bf_state.bf_type |= BUF_XRETRY; - ath_tx_rc_status(bf, &ts, 0, txok, true); -@@ -2255,7 +2261,6 @@ void ath_tx_edma_tasklet(struct ath_soft - } - - if (!bf_isampdu(bf)) { -- bf->bf_retries = txs.ts_longretry; - if (txs.ts_status & ATH9K_TXERR_XRETRY) - bf->bf_state.bf_type |= BUF_XRETRY; - ath_tx_rc_status(bf, &txs, 0, txok, true); |