aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/iwlwifi/iwl4965-base.c
diff options
context:
space:
mode:
authorTomas Winkler <tomas.winkler@intel.com>2008-07-18 01:53:02 -0400
committerJohn W. Linville <linville@tuxdriver.com>2008-08-04 15:09:07 -0400
commitd783b061077f92af55244aef1df8780b0f46b5af (patch)
tree854ba1f88294a11ed636d51005ac793d7e6f438e /drivers/net/wireless/iwlwifi/iwl4965-base.c
parentea95bba41e69c616bb1512cf59d22f33266b8568 (diff)
iwlwifi: move iwl4965_mac_ampdu_action to iwl4965-base.c
This patch moves iwl4965_mac_ampdu_action to iwl4965-base.c. Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Zhu Yi <yi.zhu@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/iwlwifi/iwl4965-base.c')
-rw-r--r--drivers/net/wireless/iwlwifi/iwl4965-base.c35
1 files changed, 34 insertions, 1 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl4965-base.c b/drivers/net/wireless/iwlwifi/iwl4965-base.c
index 2001b09738ff..a34280f65c1a 100644
--- a/drivers/net/wireless/iwlwifi/iwl4965-base.c
+++ b/drivers/net/wireless/iwlwifi/iwl4965-base.c
@@ -65,7 +65,7 @@
65 * NOTE: DRV_NAME is defined in iwlwifi.h for use by iwl-debug.h and printk 65 * NOTE: DRV_NAME is defined in iwlwifi.h for use by iwl-debug.h and printk
66 */ 66 */
67 67
68#define DRV_DESCRIPTION "Intel(R) Wireless WiFi Link 4965AGN driver for Linux" 68#define DRV_DESCRIPTION "Intel(R) Wireless WiFi Link AGN driver for Linux"
69 69
70#ifdef CONFIG_IWLWIFI_DEBUG 70#ifdef CONFIG_IWLWIFI_DEBUG
71#define VD "d" 71#define VD "d"
@@ -3345,6 +3345,39 @@ static int iwl4965_mac_conf_tx(struct ieee80211_hw *hw, u16 queue,
3345 return 0; 3345 return 0;
3346} 3346}
3347 3347
3348static int iwl4965_mac_ampdu_action(struct ieee80211_hw *hw,
3349 enum ieee80211_ampdu_mlme_action action,
3350 const u8 *addr, u16 tid, u16 *ssn)
3351{
3352 struct iwl_priv *priv = hw->priv;
3353 DECLARE_MAC_BUF(mac);
3354
3355 IWL_DEBUG_HT("A-MPDU action on addr %s tid %d\n",
3356 print_mac(mac, addr), tid);
3357
3358 if (!(priv->cfg->sku & IWL_SKU_N))
3359 return -EACCES;
3360
3361 switch (action) {
3362 case IEEE80211_AMPDU_RX_START:
3363 IWL_DEBUG_HT("start Rx\n");
3364 return iwl_rx_agg_start(priv, addr, tid, *ssn);
3365 case IEEE80211_AMPDU_RX_STOP:
3366 IWL_DEBUG_HT("stop Rx\n");
3367 return iwl_rx_agg_stop(priv, addr, tid);
3368 case IEEE80211_AMPDU_TX_START:
3369 IWL_DEBUG_HT("start Tx\n");
3370 return iwl_tx_agg_start(priv, addr, tid, ssn);
3371 case IEEE80211_AMPDU_TX_STOP:
3372 IWL_DEBUG_HT("stop Tx\n");
3373 return iwl_tx_agg_stop(priv, addr, tid);
3374 default:
3375 IWL_DEBUG_HT("unknown\n");
3376 return -EINVAL;
3377 break;
3378 }
3379 return 0;
3380}
3348static int iwl4965_mac_get_tx_stats(struct ieee80211_hw *hw, 3381static int iwl4965_mac_get_tx_stats(struct ieee80211_hw *hw,
3349 struct ieee80211_tx_queue_stats *stats) 3382 struct ieee80211_tx_queue_stats *stats)
3350{ 3383{