iwlwifi: mvm: enable MAC_FILTER_IN_BEACON when forced_assoc_off is set
authorLuciano Coelho <luciano.coelho@intel.com>
Wed, 14 May 2014 13:17:39 +0000 (16:17 +0300)
committerEmmanuel Grumbach <emmanuel.grumbach@intel.com>
Mon, 19 May 2014 13:39:03 +0000 (16:39 +0300)
Set the MAC_FILTER_IN_BEACON flag in iwl_mvm_mac_ctxt_cmd_sata() also
when forced_assoc_off is set, so it's aligned with when we are not
associated.

Signed-off-by: Luciano Coelho <luciano.coelho@intel.com>
Reviewed-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
drivers/net/wireless/iwlwifi/mvm/mac-ctxt.c

index 2c51e40179b5c01690ea7b3e6c98cf7411c6a64a..28549ba7f2fa3959ff4d2d226bc22b209b7b9470 100644 (file)
@@ -713,14 +713,6 @@ static int iwl_mvm_mac_ctxt_cmd_sta(struct iwl_mvm *mvm,
                                        IEEE80211_P2P_OPPPS_CTWINDOW_MASK);
                ctxt_sta = &cmd.p2p_sta.sta;
        } else {
-               /* Allow beacons to pass through as long as we are not
-                * associated, or we do not have dtim period information.
-                */
-               if (!vif->bss_conf.assoc || !vif->bss_conf.dtim_period)
-                       cmd.filter_flags |= cpu_to_le32(MAC_FILTER_IN_BEACON);
-               else
-                       cmd.filter_flags &= ~cpu_to_le32(MAC_FILTER_IN_BEACON);
-
                ctxt_sta = &cmd.sta;
        }
 
@@ -729,6 +721,12 @@ static int iwl_mvm_mac_ctxt_cmd_sta(struct iwl_mvm *mvm,
            !force_assoc_off) {
                u32 dtim_offs;
 
+               /* Allow beacons to pass through as long as we are not
+                * associated, or we do not have dtim period information.
+                */
+               if (!vif->p2p)
+                       cmd.filter_flags |= cpu_to_le32(MAC_FILTER_IN_BEACON);
+
                /*
                 * The DTIM count counts down, so when it is N that means N
                 * more beacon intervals happen until the DTIM TBTT. Therefore