diff options
author | John W. Linville <linville@tuxdriver.com> | 2013-01-28 13:54:03 -0500 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2013-01-28 13:54:03 -0500 |
commit | 9ebea3829fac7505e0cd2642fbd13cfa9c038831 (patch) | |
tree | ed690568a27b7231b8a507e8ba07c1ae34868e5c /net/mac80211/scan.c | |
parent | c5e818ef081c4144177fdbdeed154332cd7e4d7a (diff) | |
parent | 83f0c6d1f502bd75bb4a9e31e8d64e59c6894ad1 (diff) |
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless
Conflicts:
drivers/net/wireless/ath/ath9k/main.c
drivers/net/wireless/iwlwifi/dvm/tx.c
Diffstat (limited to 'net/mac80211/scan.c')
-rw-r--r-- | net/mac80211/scan.c | 15 |
1 files changed, 5 insertions, 10 deletions
diff --git a/net/mac80211/scan.c b/net/mac80211/scan.c index 06cbe26892a8..607684c47d55 100644 --- a/net/mac80211/scan.c +++ b/net/mac80211/scan.c | |||
@@ -291,7 +291,7 @@ static void __ieee80211_scan_completed(struct ieee80211_hw *hw, bool aborted, | |||
291 | if (!was_hw_scan) { | 291 | if (!was_hw_scan) { |
292 | ieee80211_configure_filter(local); | 292 | ieee80211_configure_filter(local); |
293 | drv_sw_scan_complete(local); | 293 | drv_sw_scan_complete(local); |
294 | ieee80211_offchannel_return(local, true); | 294 | ieee80211_offchannel_return(local); |
295 | } | 295 | } |
296 | 296 | ||
297 | ieee80211_recalc_idle(local); | 297 | ieee80211_recalc_idle(local); |
@@ -340,7 +340,7 @@ static int ieee80211_start_sw_scan(struct ieee80211_local *local) | |||
340 | local->next_scan_state = SCAN_DECISION; | 340 | local->next_scan_state = SCAN_DECISION; |
341 | local->scan_channel_idx = 0; | 341 | local->scan_channel_idx = 0; |
342 | 342 | ||
343 | ieee80211_offchannel_stop_vifs(local, true); | 343 | ieee80211_offchannel_stop_vifs(local); |
344 | 344 | ||
345 | ieee80211_configure_filter(local); | 345 | ieee80211_configure_filter(local); |
346 | 346 | ||
@@ -677,12 +677,8 @@ static void ieee80211_scan_state_suspend(struct ieee80211_local *local, | |||
677 | local->scan_channel = NULL; | 677 | local->scan_channel = NULL; |
678 | ieee80211_hw_config(local, IEEE80211_CONF_CHANGE_CHANNEL); | 678 | ieee80211_hw_config(local, IEEE80211_CONF_CHANGE_CHANNEL); |
679 | 679 | ||
680 | /* | 680 | /* disable PS */ |
681 | * Re-enable vifs and beaconing. Leave PS | 681 | ieee80211_offchannel_return(local); |
682 | * in off-channel state..will put that back | ||
683 | * on-channel at the end of scanning. | ||
684 | */ | ||
685 | ieee80211_offchannel_return(local, false); | ||
686 | 682 | ||
687 | *next_delay = HZ / 5; | 683 | *next_delay = HZ / 5; |
688 | /* afterwards, resume scan & go to next channel */ | 684 | /* afterwards, resume scan & go to next channel */ |
@@ -692,8 +688,7 @@ static void ieee80211_scan_state_suspend(struct ieee80211_local *local, | |||
692 | static void ieee80211_scan_state_resume(struct ieee80211_local *local, | 688 | static void ieee80211_scan_state_resume(struct ieee80211_local *local, |
693 | unsigned long *next_delay) | 689 | unsigned long *next_delay) |
694 | { | 690 | { |
695 | /* PS already is in off-channel mode */ | 691 | ieee80211_offchannel_stop_vifs(local); |
696 | ieee80211_offchannel_stop_vifs(local, false); | ||
697 | 692 | ||
698 | if (local->ops->flush) { | 693 | if (local->ops->flush) { |
699 | drv_flush(local, false); | 694 | drv_flush(local, false); |