iwlwifi: support truly passive scanning
If passive scanning is requested we should not ask the microcode to do active scanning after detecting traffic on a channel -- that should only be used when an active scan is requested but some channels are marked passive. Signed-off-by: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: Reinette Chatre <reinette.chatre@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
Родитель
1ecf9fc131
Коммит
b097ad2975
|
@ -712,7 +712,12 @@ static void iwl_bg_request_scan(struct work_struct *data)
|
|||
} else if (priv->scan_bands & BIT(IEEE80211_BAND_5GHZ)) {
|
||||
band = IEEE80211_BAND_5GHZ;
|
||||
rate = IWL_RATE_6M_PLCP;
|
||||
scan->good_CRC_th = IWL_GOOD_CRC_TH;
|
||||
/*
|
||||
* If active scaning is requested but a certain channel
|
||||
* is marked passive, we can do active scanning if we
|
||||
* detect transmissions.
|
||||
*/
|
||||
scan->good_CRC_th = is_active ? IWL_GOOD_CRC_TH : 0;
|
||||
|
||||
/* Force use of chains B and C (0x6) for scan Rx for 4965
|
||||
* Avoid A (0x1) because of its off-channel reception on A-band.
|
||||
|
|
|
@ -3078,7 +3078,12 @@ static void iwl3945_bg_request_scan(struct work_struct *data)
|
|||
band = IEEE80211_BAND_2GHZ;
|
||||
} else if (priv->scan_bands & BIT(IEEE80211_BAND_5GHZ)) {
|
||||
scan->tx_cmd.rate = IWL_RATE_6M_PLCP;
|
||||
scan->good_CRC_th = IWL_GOOD_CRC_TH;
|
||||
/*
|
||||
* If active scaning is requested but a certain channel
|
||||
* is marked passive, we can do active scanning if we
|
||||
* detect transmissions.
|
||||
*/
|
||||
scan->good_CRC_th = is_active ? IWL_GOOD_CRC_TH : 0;
|
||||
band = IEEE80211_BAND_5GHZ;
|
||||
} else {
|
||||
IWL_WARN(priv, "Invalid scan band count\n");
|
||||
|
|
Загрузка…
Ссылка в новой задаче