aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJohannes Berg <johannes.berg@intel.com>2010-04-13 04:04:33 -0400
committerReinette Chatre <reinette.chatre@intel.com>2010-04-16 16:54:06 -0400
commitfa58b6a3b34944bb9fc0129ba2534bd91d082d61 (patch)
tree35317378ff0288e6e4c6a8bb6a4929951599b493
parentb2e8690d5a4d1868ee12f50aa00c138bec985b3c (diff)
iwlwifi: don't check monitor for scanning
Monitor mode operation need not (and probably should not) affect scanning this way since real monitoring can not properly happen while scanning anyway. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-agn-lib.c2
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-core.c3
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-core.h1
-rw-r--r--drivers/net/wireless/iwlwifi/iwl3945-base.c3
4 files changed, 1 insertions, 8 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-agn-lib.c b/drivers/net/wireless/iwlwifi/iwl-agn-lib.c
index 2d00e83ec0a5..ccf335775ec3 100644
--- a/drivers/net/wireless/iwlwifi/iwl-agn-lib.c
+++ b/drivers/net/wireless/iwlwifi/iwl-agn-lib.c
@@ -1458,8 +1458,6 @@ void iwlagn_request_scan(struct iwl_priv *priv)
1458 1458
1459 } 1459 }
1460 scan->tx_cmd.len = cpu_to_le16(cmd_len); 1460 scan->tx_cmd.len = cpu_to_le16(cmd_len);
1461 if (iwl_is_monitor_mode(priv))
1462 scan->filter_flags = RXON_FILTER_PROMISC_MSK;
1463 1461
1464 scan->filter_flags |= (RXON_FILTER_ACCEPT_GRP_MSK | 1462 scan->filter_flags |= (RXON_FILTER_ACCEPT_GRP_MSK |
1465 RXON_FILTER_BCON_AWARE_MSK); 1463 RXON_FILTER_BCON_AWARE_MSK);
diff --git a/drivers/net/wireless/iwlwifi/iwl-core.c b/drivers/net/wireless/iwlwifi/iwl-core.c
index aa86ef9fb426..d282bef5d7ea 100644
--- a/drivers/net/wireless/iwlwifi/iwl-core.c
+++ b/drivers/net/wireless/iwlwifi/iwl-core.c
@@ -834,11 +834,10 @@ static u8 iwl_count_chain_bitmap(u32 chain_bitmap)
834 * never called for monitor mode. The only way mac80211 informs us about 834 * never called for monitor mode. The only way mac80211 informs us about
835 * monitor mode is through configuring filters (call to configure_filter). 835 * monitor mode is through configuring filters (call to configure_filter).
836 */ 836 */
837bool iwl_is_monitor_mode(struct iwl_priv *priv) 837static bool iwl_is_monitor_mode(struct iwl_priv *priv)
838{ 838{
839 return !!(priv->staging_rxon.filter_flags & RXON_FILTER_PROMISC_MSK); 839 return !!(priv->staging_rxon.filter_flags & RXON_FILTER_PROMISC_MSK);
840} 840}
841EXPORT_SYMBOL(iwl_is_monitor_mode);
842 841
843/** 842/**
844 * iwl_set_rxon_chain - Set up Rx chain usage in "staging" RXON image 843 * iwl_set_rxon_chain - Set up Rx chain usage in "staging" RXON image
diff --git a/drivers/net/wireless/iwlwifi/iwl-core.h b/drivers/net/wireless/iwlwifi/iwl-core.h
index d9ec0307220c..e267a218e3e0 100644
--- a/drivers/net/wireless/iwlwifi/iwl-core.h
+++ b/drivers/net/wireless/iwlwifi/iwl-core.h
@@ -351,7 +351,6 @@ void iwl_configure_filter(struct ieee80211_hw *hw,
351 unsigned int changed_flags, 351 unsigned int changed_flags,
352 unsigned int *total_flags, u64 multicast); 352 unsigned int *total_flags, u64 multicast);
353int iwl_set_hw_params(struct iwl_priv *priv); 353int iwl_set_hw_params(struct iwl_priv *priv);
354bool iwl_is_monitor_mode(struct iwl_priv *priv);
355void iwl_post_associate(struct iwl_priv *priv); 354void iwl_post_associate(struct iwl_priv *priv);
356void iwl_bss_info_changed(struct ieee80211_hw *hw, 355void iwl_bss_info_changed(struct ieee80211_hw *hw,
357 struct ieee80211_vif *vif, 356 struct ieee80211_vif *vif,
diff --git a/drivers/net/wireless/iwlwifi/iwl3945-base.c b/drivers/net/wireless/iwlwifi/iwl3945-base.c
index 64b20e78376e..e7263ed693c4 100644
--- a/drivers/net/wireless/iwlwifi/iwl3945-base.c
+++ b/drivers/net/wireless/iwlwifi/iwl3945-base.c
@@ -2963,9 +2963,6 @@ void iwl3945_request_scan(struct iwl_priv *priv)
2963 /* select Rx antennas */ 2963 /* select Rx antennas */
2964 scan->flags |= iwl3945_get_antenna_flags(priv); 2964 scan->flags |= iwl3945_get_antenna_flags(priv);
2965 2965
2966 if (iwl_is_monitor_mode(priv))
2967 scan->filter_flags = RXON_FILTER_PROMISC_MSK;
2968
2969 scan->channel_count = 2966 scan->channel_count =
2970 iwl3945_get_channels_for_scan(priv, band, is_active, n_probes, 2967 iwl3945_get_channels_for_scan(priv, band, is_active, n_probes,
2971 (void *)&scan->data[le16_to_cpu(scan->tx_cmd.len)]); 2968 (void *)&scan->data[le16_to_cpu(scan->tx_cmd.len)]);