+++ /dev/null
-From c63722cfd441bd3a99c65fa4c40bc65d7776e772 Mon Sep 17 00:00:00 2001
-From: Alexander Bondar <alexander.bondar@intel.com>
-Date: Mon, 10 Mar 2014 22:02:26 +0200
-Subject: iwlwifi: mvm: Change beacon filter enablement condition
-
-From: Alexander Bondar <alexander.bondar@intel.com>
-
-commit c63722cfd441bd3a99c65fa4c40bc65d7776e772 upstream.
-
-Enable beacon filter only if at least one beacon from candidate
-AP is received before or after association. Check this condition before
-enabling BF upon secured association completion. Add BF enablement to
-mac80211 event that indicates beacon is received after association.
-Too early beacon filtering enablement can lead to disconnection due to
-missing AP's beacon after association.
-
-Signed-off-by: Alexander Bondar <alexander.bondar@intel.com>
-Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
-Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-
----
- drivers/net/wireless/iwlwifi/mvm/mac80211.c | 5 ++++-
- 1 file changed, 4 insertions(+), 1 deletion(-)
-
---- a/drivers/net/wireless/iwlwifi/mvm/mac80211.c
-+++ b/drivers/net/wireless/iwlwifi/mvm/mac80211.c
-@@ -971,6 +971,7 @@ static void iwl_mvm_bss_info_changed_sta
- */
- iwl_mvm_remove_time_event(mvm, mvmvif,
- &mvmvif->time_event_data);
-+ WARN_ON(iwl_mvm_enable_beacon_filter(mvm, vif, CMD_SYNC));
- } else if (changes & (BSS_CHANGED_PS | BSS_CHANGED_P2P_PS |
- BSS_CHANGED_QOS)) {
- ret = iwl_mvm_power_update_mode(mvm, vif);
-@@ -1304,7 +1305,9 @@ static int iwl_mvm_mac_sta_state(struct
- } else if (old_state == IEEE80211_STA_ASSOC &&
- new_state == IEEE80211_STA_AUTHORIZED) {
- /* enable beacon filtering */
-- WARN_ON(iwl_mvm_enable_beacon_filter(mvm, vif));
-+ if (vif->bss_conf.dtim_period)
-+ WARN_ON(iwl_mvm_enable_beacon_filter(mvm, vif,
-+ CMD_SYNC));
- ret = 0;
- } else if (old_state == IEEE80211_STA_AUTHORIZED &&
- new_state == IEEE80211_STA_ASSOC) {