diff options
author | Sujith <Sujith.Manoharan@atheros.com> | 2008-10-29 10:19:28 +0530 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2008-11-10 15:17:32 -0500 |
commit | 8469cdef1f123e2e3e56645f1ac26c7cfb333d9c (patch) | |
tree | 40f9cffd53ee14f16334dcb96447484eeb93e0d6 /net/mac80211/ht.c | |
parent | dca3edb88ef567671886a85c5e40d491ccecf934 (diff) | |
download | op-kernel-dev-8469cdef1f123e2e3e56645f1ac26c7cfb333d9c.zip op-kernel-dev-8469cdef1f123e2e3e56645f1ac26c7cfb333d9c.tar.gz |
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 'net/mac80211/ht.c')
-rw-r--r-- | net/mac80211/ht.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/net/mac80211/ht.c b/net/mac80211/ht.c index 08009d4..3e231d75 100644 --- a/net/mac80211/ht.c +++ b/net/mac80211/ht.c @@ -987,7 +987,7 @@ void ieee80211_process_addba_resp(struct ieee80211_local *local, { struct ieee80211_hw *hw = &local->hw; u16 capab; - u16 tid; + u16 tid, start_seq_num; u8 *state; capab = le16_to_cpu(mgmt->u.action.u.addba_resp.capab); @@ -1024,6 +1024,14 @@ void ieee80211_process_addba_resp(struct ieee80211_local *local, local->hw.ampdu_queues) ieee80211_wake_queue(hw, sta->tid_to_tx_q[tid]); + if (local->ops->ampdu_action) { + (void)local->ops->ampdu_action(hw, + IEEE80211_AMPDU_TX_RESUME, + &sta->sta, tid, &start_seq_num); + } +#ifdef CONFIG_MAC80211_HT_DEBUG + printk(KERN_DEBUG "Resuming TX aggregation for tid %d\n", tid); +#endif /* CONFIG_MAC80211_HT_DEBUG */ spin_unlock_bh(&sta->lock); } else { sta->ampdu_mlme.addba_req_num[tid]++; |