Browse Source

iwlwifi: mvm: enable MAC_FILTER_IN_BEACON when forced_assoc_off is set

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>
Luciano Coelho 11 years ago
parent
commit
cad3f08c23
1 changed files with 6 additions and 8 deletions
  1. 6 8
      drivers/net/wireless/iwlwifi/mvm/mac-ctxt.c

+ 6 - 8
drivers/net/wireless/iwlwifi/mvm/mac-ctxt.c

@@ -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