aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/ath9k/xmit.c
diff options
context:
space:
mode:
authorSujith <Sujith.Manoharan@atheros.com>2008-10-29 00:49:28 -0400
committerJohn W. Linville <linville@tuxdriver.com>2008-11-10 15:17:32 -0500
commit8469cdef1f123e2e3e56645f1ac26c7cfb333d9c (patch)
tree40f9cffd53ee14f16334dcb96447484eeb93e0d6 /drivers/net/wireless/ath9k/xmit.c
parentdca3edb88ef567671886a85c5e40d491ccecf934 (diff)
mac80211: Add a new event in ieee80211_ampdu_mlme_action
Send a notification to the driver on succesful reception of an ADDBA response, add IEEE80211_AMPDU_TX_RESUME for this purpose. Signed-off-by: Sujith <Sujith.Manoharan@atheros.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/ath9k/xmit.c')
-rw-r--r--drivers/net/wireless/ath9k/xmit.c19
1 files changed, 19 insertions, 0 deletions
diff --git a/drivers/net/wireless/ath9k/xmit.c b/drivers/net/wireless/ath9k/xmit.c
index 7e6f4e59a5d1..fe386b6dadac 100644
--- a/drivers/net/wireless/ath9k/xmit.c
+++ b/drivers/net/wireless/ath9k/xmit.c
@@ -2371,6 +2371,25 @@ int ath_tx_aggr_stop(struct ath_softc *sc, struct ieee80211_sta *sta, u16 tid)
2371 return 0; 2371 return 0;
2372} 2372}
2373 2373
2374/* Resume tx aggregation */
2375
2376void ath_tx_aggr_resume(struct ath_softc *sc, struct ieee80211_sta *sta, u16 tid)
2377{
2378 struct ath_atx_tid *txtid;
2379 struct ath_node *an;
2380
2381 an = (struct ath_node *)sta->drv_priv;
2382
2383 if (sc->sc_flags & SC_OP_TXAGGR) {
2384 txtid = ATH_AN_2_TID(an, tid);
2385 txtid->baw_size =
2386 IEEE80211_MIN_AMPDU_BUF << sta->ht_cap.ampdu_factor;
2387 txtid->state |= AGGR_ADDBA_COMPLETE;
2388 txtid->state &= ~AGGR_ADDBA_PROGRESS;
2389 ath_tx_resume_tid(sc, txtid);
2390 }
2391}
2392
2374/* 2393/*
2375 * Performs transmit side cleanup when TID changes from aggregated to 2394 * Performs transmit side cleanup when TID changes from aggregated to
2376 * unaggregated. 2395 * unaggregated.