aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/iwlwifi/mvm/coex_legacy.c
diff options
context:
space:
mode:
authorEmmanuel Grumbach <emmanuel.grumbach@intel.com>2014-07-07 07:38:39 -0400
committerEmmanuel Grumbach <emmanuel.grumbach@intel.com>2014-07-22 12:21:07 -0400
commit45bbb2ca1e27c79bd3cbdcec040e7daceceeabbb (patch)
tree32ba81e902292eee3255c783047bc2d74295f456 /drivers/net/wireless/iwlwifi/mvm/coex_legacy.c
parent1459f269e836834494e944ea7687177932568d00 (diff)
iwlwifi: mvm: BT Coex - don't change AP SMPS mode
Leave it to default instead - regardless of the BT activity. Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Diffstat (limited to 'drivers/net/wireless/iwlwifi/mvm/coex_legacy.c')
-rw-r--r--drivers/net/wireless/iwlwifi/mvm/coex_legacy.c17
1 files changed, 7 insertions, 10 deletions
diff --git a/drivers/net/wireless/iwlwifi/mvm/coex_legacy.c b/drivers/net/wireless/iwlwifi/mvm/coex_legacy.c
index 9e3ba5a4103d..a3be33359927 100644
--- a/drivers/net/wireless/iwlwifi/mvm/coex_legacy.c
+++ b/drivers/net/wireless/iwlwifi/mvm/coex_legacy.c
@@ -793,13 +793,8 @@ static void iwl_mvm_bt_notif_iterator(void *_data, u8 *mac,
793 smps_mode = IEEE80211_SMPS_AUTOMATIC; 793 smps_mode = IEEE80211_SMPS_AUTOMATIC;
794 break; 794 break;
795 case NL80211_IFTYPE_AP: 795 case NL80211_IFTYPE_AP:
796 /* default smps_mode for AP / GO is OFF */ 796 if (!mvmvif->ap_ibss_active)
797 smps_mode = IEEE80211_SMPS_OFF;
798 if (!mvmvif->ap_ibss_active) {
799 iwl_mvm_update_smps(mvm, vif, IWL_MVM_SMPS_REQ_BT_COEX,
800 smps_mode);
801 return; 797 return;
802 }
803 break; 798 break;
804 default: 799 default:
805 return; 800 return;
@@ -810,10 +805,10 @@ static void iwl_mvm_bt_notif_iterator(void *_data, u8 *mac,
810 /* If channel context is invalid or not on 2.4GHz .. */ 805 /* If channel context is invalid or not on 2.4GHz .. */
811 if ((!chanctx_conf || 806 if ((!chanctx_conf ||
812 chanctx_conf->def.chan->band != IEEE80211_BAND_2GHZ)) { 807 chanctx_conf->def.chan->band != IEEE80211_BAND_2GHZ)) {
813 /* ... relax constraints and disable rssi events */
814 iwl_mvm_update_smps(mvm, vif, IWL_MVM_SMPS_REQ_BT_COEX,
815 smps_mode);
816 if (vif->type == NL80211_IFTYPE_STATION) { 808 if (vif->type == NL80211_IFTYPE_STATION) {
809 /* ... relax constraints and disable rssi events */
810 iwl_mvm_update_smps(mvm, vif, IWL_MVM_SMPS_REQ_BT_COEX,
811 smps_mode);
817 iwl_mvm_bt_coex_reduced_txp(mvm, mvmvif->ap_sta_id, 812 iwl_mvm_bt_coex_reduced_txp(mvm, mvmvif->ap_sta_id,
818 false); 813 false);
819 iwl_mvm_bt_coex_enable_rssi_event(mvm, vif, false, 0); 814 iwl_mvm_bt_coex_enable_rssi_event(mvm, vif, false, 0);
@@ -838,7 +833,9 @@ static void iwl_mvm_bt_notif_iterator(void *_data, u8 *mac,
838 mvmvif->id, data->notif->bt_status, bt_activity_grading, 833 mvmvif->id, data->notif->bt_status, bt_activity_grading,
839 smps_mode); 834 smps_mode);
840 835
841 iwl_mvm_update_smps(mvm, vif, IWL_MVM_SMPS_REQ_BT_COEX, smps_mode); 836 if (vif->type == NL80211_IFTYPE_STATION)
837 iwl_mvm_update_smps(mvm, vif, IWL_MVM_SMPS_REQ_BT_COEX,
838 smps_mode);
842 839
843 /* low latency is always primary */ 840 /* low latency is always primary */
844 if (iwl_mvm_vif_low_latency(mvmvif)) { 841 if (iwl_mvm_vif_low_latency(mvmvif)) {