diff options
Diffstat (limited to 'net/mac80211/scan.c')
| -rw-r--r-- | net/mac80211/scan.c | 9 | 
1 files changed, 5 insertions, 4 deletions
diff --git a/net/mac80211/scan.c b/net/mac80211/scan.c index 4aeca4b0c3cb..a413e52f7691 100644 --- a/net/mac80211/scan.c +++ b/net/mac80211/scan.c @@ -597,8 +597,8 @@ static int __ieee80211_start_scan(struct ieee80211_sub_if_data *sdata,  		/* We need to ensure power level is at max for scanning. */  		ieee80211_hw_config(local, 0); -		if ((req->channels[0]->flags & -		     IEEE80211_CHAN_NO_IR) || +		if ((req->channels[0]->flags & (IEEE80211_CHAN_NO_IR | +						IEEE80211_CHAN_RADAR)) ||  		    !req->n_ssids) {  			next_delay = IEEE80211_PASSIVE_CHANNEL_TIME;  		} else { @@ -645,7 +645,7 @@ ieee80211_scan_get_channel_time(struct ieee80211_channel *chan)  	 * TODO: channel switching also consumes quite some time,  	 * add that delay as well to get a better estimation  	 */ -	if (chan->flags & IEEE80211_CHAN_NO_IR) +	if (chan->flags & (IEEE80211_CHAN_NO_IR | IEEE80211_CHAN_RADAR))  		return IEEE80211_PASSIVE_CHANNEL_TIME;  	return IEEE80211_PROBE_DELAY + IEEE80211_CHANNEL_TIME;  } @@ -777,7 +777,8 @@ static void ieee80211_scan_state_set_channel(struct ieee80211_local *local,  	 *  	 * In any case, it is not necessary for a passive scan.  	 */ -	if (chan->flags & IEEE80211_CHAN_NO_IR || !scan_req->n_ssids) { +	if ((chan->flags & (IEEE80211_CHAN_NO_IR | IEEE80211_CHAN_RADAR)) || +	    !scan_req->n_ssids) {  		*next_delay = IEEE80211_PASSIVE_CHANNEL_TIME;  		local->next_scan_state = SCAN_DECISION;  		return;  | 
