diff options
author | Lennert Buytenhek <buytenh@wantstofly.org> | 2010-01-04 15:58:12 -0500 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2010-01-05 17:13:34 -0500 |
commit | a2292d83b5dcb7f378956a124854d2b17fa53aa3 (patch) | |
tree | 26f935a10f9aa789829dc0e69cf9b5f7c3958aeb /drivers | |
parent | 13935e2cf39b124c9a2ff0349b294e0b1e2e3aef (diff) |
mwl8k: trivial rx-only ampdu implementation
AMPDU receive doesn't need any special handling, so let's enable
this before tackling the transmit side.
Signed-off-by: Lennert Buytenhek <buytenh@marvell.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/net/wireless/mwl8k.c | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/drivers/net/wireless/mwl8k.c b/drivers/net/wireless/mwl8k.c index e0301b6310f9..57ced0db910a 100644 --- a/drivers/net/wireless/mwl8k.c +++ b/drivers/net/wireless/mwl8k.c | |||
@@ -3309,6 +3309,22 @@ static int mwl8k_get_stats(struct ieee80211_hw *hw, | |||
3309 | return mwl8k_cmd_get_stat(hw, stats); | 3309 | return mwl8k_cmd_get_stat(hw, stats); |
3310 | } | 3310 | } |
3311 | 3311 | ||
3312 | static int | ||
3313 | mwl8k_ampdu_action(struct ieee80211_hw *hw, struct ieee80211_vif *vif, | ||
3314 | enum ieee80211_ampdu_mlme_action action, | ||
3315 | struct ieee80211_sta *sta, u16 tid, u16 *ssn) | ||
3316 | { | ||
3317 | switch (action) { | ||
3318 | case IEEE80211_AMPDU_RX_START: | ||
3319 | case IEEE80211_AMPDU_RX_STOP: | ||
3320 | if (!(hw->flags & IEEE80211_HW_AMPDU_AGGREGATION)) | ||
3321 | return -ENOTSUPP; | ||
3322 | return 0; | ||
3323 | default: | ||
3324 | return -ENOTSUPP; | ||
3325 | } | ||
3326 | } | ||
3327 | |||
3312 | static const struct ieee80211_ops mwl8k_ops = { | 3328 | static const struct ieee80211_ops mwl8k_ops = { |
3313 | .tx = mwl8k_tx, | 3329 | .tx = mwl8k_tx, |
3314 | .start = mwl8k_start, | 3330 | .start = mwl8k_start, |
@@ -3324,6 +3340,7 @@ static const struct ieee80211_ops mwl8k_ops = { | |||
3324 | .conf_tx = mwl8k_conf_tx, | 3340 | .conf_tx = mwl8k_conf_tx, |
3325 | .get_tx_stats = mwl8k_get_tx_stats, | 3341 | .get_tx_stats = mwl8k_get_tx_stats, |
3326 | .get_stats = mwl8k_get_stats, | 3342 | .get_stats = mwl8k_get_stats, |
3343 | .ampdu_action = mwl8k_ampdu_action, | ||
3327 | }; | 3344 | }; |
3328 | 3345 | ||
3329 | static void mwl8k_tx_reclaim_handler(unsigned long data) | 3346 | static void mwl8k_tx_reclaim_handler(unsigned long data) |