summaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/iwlwifi/iwl-agn.c
diff options
context:
space:
mode:
authorJohannes Berg <johannes.berg@intel.com>2011-03-15 11:33:03 -0700
committerWey-Yi Guy <wey-yi.w.guy@intel.com>2011-03-25 06:57:40 -0700
commitc8823ec1337017e23b99fb0814e2f3d62537f811 (patch)
tree50d8e265a5e4fccb02f4d02c8599b67c9a828bb1 /drivers/net/wireless/iwlwifi/iwl-agn.c
parent7ffef13d7a24654292c4641450f2794224b9eb5d (diff)
downloadtalos-op-linux-c8823ec1337017e23b99fb0814e2f3d62537f811.tar.gz
talos-op-linux-c8823ec1337017e23b99fb0814e2f3d62537f811.zip
iwlagn: fix aggregation queue scheduler setup
iwlagn's hardware scheduler needs to be set up with the right aggregation frame limit and buffer sizes. To achieve this, we need to move the hardware queue setup to when the session becomes operational. Tested-by: Daniel Halperin <dhalperi@cs.washington.edu> Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
Diffstat (limited to 'drivers/net/wireless/iwlwifi/iwl-agn.c')
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-agn.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-agn.c b/drivers/net/wireless/iwlwifi/iwl-agn.c
index b57fbbf3fb64..8fdd1746c102 100644
--- a/drivers/net/wireless/iwlwifi/iwl-agn.c
+++ b/drivers/net/wireless/iwlwifi/iwl-agn.c
@@ -3345,6 +3345,10 @@ int iwlagn_mac_ampdu_action(struct ieee80211_hw *hw,
}
break;
case IEEE80211_AMPDU_TX_OPERATIONAL:
+ buf_size = min_t(int, buf_size, LINK_QUAL_AGG_FRAME_LIMIT_DEF);
+
+ iwlagn_txq_agg_queue_setup(priv, sta, tid, buf_size);
+
/*
* If the limit is 0, then it wasn't initialised yet,
* use the default. We can do that since we take the
OpenPOWER on IntegriCloud