aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEmmanuel Grumbach <emmanuel.grumbach@intel.com>2013-05-28 14:36:16 -0400
committerJohannes Berg <johannes.berg@intel.com>2013-06-04 07:13:20 -0400
commit7c8e4159bac47354ea9eee40ac7a0f713c0be5db (patch)
treea28a34b72f42a9995ea845196f8ac720d39688fd
parente96d551f4bc6a13942aa5837ca6739c61d540945 (diff)
iwlwifi: mvm: don't start BA agreement when BT is active
Otherwise WiFi would kill BT. Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
-rw-r--r--drivers/net/wireless/iwlwifi/mvm/rs.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/drivers/net/wireless/iwlwifi/mvm/rs.c b/drivers/net/wireless/iwlwifi/mvm/rs.c
index 7dfc212c4f0e..20269994d8db 100644
--- a/drivers/net/wireless/iwlwifi/mvm/rs.c
+++ b/drivers/net/wireless/iwlwifi/mvm/rs.c
@@ -401,6 +401,17 @@ static int rs_tl_turn_on_agg_for_tid(struct iwl_mvm *mvm,
401 401
402 load = rs_tl_get_load(lq_data, tid); 402 load = rs_tl_get_load(lq_data, tid);
403 403
404 /*
405 * Don't create TX aggregation sessions when in high
406 * BT traffic, as they would just be disrupted by BT.
407 */
408 if (BT_MBOX_MSG(&mvm->last_bt_notif, 3, TRAFFIC_LOAD) >= 2) {
409 IWL_DEBUG_COEX(mvm, "BT traffic (%d), no aggregation allowed\n",
410 BT_MBOX_MSG(&mvm->last_bt_notif,
411 3, TRAFFIC_LOAD));
412 return ret;
413 }
414
404 if ((iwlwifi_mod_params.auto_agg) || (load > IWL_AGG_LOAD_THRESHOLD)) { 415 if ((iwlwifi_mod_params.auto_agg) || (load > IWL_AGG_LOAD_THRESHOLD)) {
405 IWL_DEBUG_HT(mvm, "Starting Tx agg: STA: %pM tid: %d\n", 416 IWL_DEBUG_HT(mvm, "Starting Tx agg: STA: %pM tid: %d\n",
406 sta->addr, tid); 417 sta->addr, tid);