diff options
author | Shahar Levi <shahar_levi@ti.com> | 2011-09-08 01:44:05 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2011-09-14 13:56:52 -0400 |
commit | 1ea57b1f12c045db5fca5d1299963ca1c70983ea (patch) | |
tree | c8f52d94f2d634dd36693f047a5a7560c2e37393 /net | |
parent | 5fbdf4a2dfbc320bb8422c88c0f59b624043add1 (diff) |
mac80211: Update device channel in case of HW channel switch supported
The hw.conf.channel value is not updated properly for drivers that
support HW channel switch. Since the switch is done entirely by the
driver and we don't call ieee80211_hw_config(), this value remains
untouched. This patch fixes that by setting the new channel directly in
ieee80211_chswitch_work().
Signed-off-by: Shahar Levi <shahar_levi@ti.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'net')
-rw-r--r-- | net/mac80211/mlme.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c index ca97b80b2651..2f92ae2f9706 100644 --- a/net/mac80211/mlme.c +++ b/net/mac80211/mlme.c | |||
@@ -390,6 +390,9 @@ static void ieee80211_chswitch_work(struct work_struct *work) | |||
390 | /* call "hw_config" only if doing sw channel switch */ | 390 | /* call "hw_config" only if doing sw channel switch */ |
391 | ieee80211_hw_config(sdata->local, | 391 | ieee80211_hw_config(sdata->local, |
392 | IEEE80211_CONF_CHANGE_CHANNEL); | 392 | IEEE80211_CONF_CHANGE_CHANNEL); |
393 | } else { | ||
394 | /* update the device channel directly */ | ||
395 | sdata->local->hw.conf.channel = sdata->local->oper_channel; | ||
393 | } | 396 | } |
394 | 397 | ||
395 | /* XXX: shouldn't really modify cfg80211-owned data! */ | 398 | /* XXX: shouldn't really modify cfg80211-owned data! */ |