1
0
mirror of git://projects.qi-hardware.com/openwrt-xburst.git synced 2024-12-24 20:27:42 +02:00

mac80211: merge a few pending fixes for channel switch handling

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@27783 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
nbd 2011-07-26 15:11:27 +00:00
parent 8bb1dcdbc2
commit 58e6431f58

View File

@ -1116,3 +1116,31 @@
{0x000081ec, 0x00000000},
{0x000081f0, 0x00000000},
{0x000081f4, 0x00000000},
--- a/net/mac80211/work.c
+++ b/net/mac80211/work.c
@@ -1075,14 +1075,13 @@ static void ieee80211_work_work(struct w
continue;
if (wk->chan != local->tmp_channel)
continue;
- if (ieee80211_work_ct_coexists(wk->chan_type,
- local->tmp_channel_type))
+ if (!ieee80211_work_ct_coexists(wk->chan_type,
+ local->tmp_channel_type))
continue;
remain_off_channel = true;
}
if (!remain_off_channel && local->tmp_channel) {
- bool on_oper_chan = ieee80211_cfg_on_oper_channel(local);
local->tmp_channel = NULL;
/* If tmp_channel wasn't operating channel, then
* we need to go back on-channel.
@@ -1092,7 +1091,7 @@ static void ieee80211_work_work(struct w
* we still need to do a hardware config. Currently,
* we cannot be here while scanning, however.
*/
- if (ieee80211_cfg_on_oper_channel(local) && !on_oper_chan)
+ if (!ieee80211_cfg_on_oper_channel(local))
ieee80211_hw_config(local, 0);
/* At the least, we need to disable offchannel_ps,