aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless
diff options
context:
space:
mode:
authorEran Harary <eran.harary@intel.com>2014-07-15 07:04:23 -0400
committerEmmanuel Grumbach <emmanuel.grumbach@intel.com>2014-07-22 12:21:13 -0400
commitcc87d322930cc8b5bf17d871896faa6752609a66 (patch)
tree57506b9a66541dba67c7369c5344d97d6afa8769 /drivers/net/wireless
parent473ad712a49f8a7d9d2c5924a964a81a7ebf2e06 (diff)
iwlwifi: mvm: update smart fifo / beacon filtering upon association
When we associate, we may have heard the beacon before the association. In that case, BSS_CHANGED_BEACON_INFO will be set along with BSS_CHANGED_ASSOC in changes in bss_info_change. In this case, we didn't update the smart fifo nor beacon filtering leaving those two feature disabled. Signed-off-by: Eran Harary <eran.harary@intel.com> Reviewed-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Diffstat (limited to 'drivers/net/wireless')
-rw-r--r--drivers/net/wireless/iwlwifi/mvm/mac80211.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/drivers/net/wireless/iwlwifi/mvm/mac80211.c b/drivers/net/wireless/iwlwifi/mvm/mac80211.c
index bd924a1f7804..01af86af979a 100644
--- a/drivers/net/wireless/iwlwifi/mvm/mac80211.c
+++ b/drivers/net/wireless/iwlwifi/mvm/mac80211.c
@@ -1501,14 +1501,18 @@ static void iwl_mvm_bss_info_changed_station(struct iwl_mvm *mvm,
1501 */ 1501 */
1502 iwl_mvm_remove_time_event(mvm, mvmvif, 1502 iwl_mvm_remove_time_event(mvm, mvmvif,
1503 &mvmvif->time_event_data); 1503 &mvmvif->time_event_data);
1504 iwl_mvm_sf_update(mvm, vif, false);
1505 WARN_ON(iwl_mvm_enable_beacon_filter(mvm, vif, 0));
1506 } else if (changes & (BSS_CHANGED_PS | BSS_CHANGED_P2P_PS | 1504 } else if (changes & (BSS_CHANGED_PS | BSS_CHANGED_P2P_PS |
1507 BSS_CHANGED_QOS)) { 1505 BSS_CHANGED_QOS)) {
1508 ret = iwl_mvm_power_update_mac(mvm); 1506 ret = iwl_mvm_power_update_mac(mvm);
1509 if (ret) 1507 if (ret)
1510 IWL_ERR(mvm, "failed to update power mode\n"); 1508 IWL_ERR(mvm, "failed to update power mode\n");
1511 } 1509 }
1510
1511 if (changes & BSS_CHANGED_BEACON_INFO) {
1512 iwl_mvm_sf_update(mvm, vif, false);
1513 WARN_ON(iwl_mvm_enable_beacon_filter(mvm, vif, 0));
1514 }
1515
1512 if (changes & BSS_CHANGED_TXPOWER) { 1516 if (changes & BSS_CHANGED_TXPOWER) {
1513 IWL_DEBUG_CALIB(mvm, "Changing TX Power to %d\n", 1517 IWL_DEBUG_CALIB(mvm, "Changing TX Power to %d\n",
1514 bss_conf->txpower); 1518 bss_conf->txpower);