aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorArik Nemtsov <arik@wizery.com>2011-03-22 04:07:47 -0400
committerLuciano Coelho <coelho@ti.com>2011-04-19 09:49:13 -0400
commit17e672d6e4b5a8a3f330a70dfd58d25a2cb497b5 (patch)
tree2b1e0a871efb2ef0d3c45f5e82a4496bbb24bc5f
parent4a31c11c7d8c482598754a577a8fb71abb61ffa0 (diff)
wl12xx: configure channel/band while FW is off
Initialize the channel and band from mac80211 conf even when the FW is not yet loaded. This mitigates a bug in AP-mode where the channel was never changed from its initial setting after FW boot and was therefore never configured to FW. Reported-by: Alexander Boukaty <alexanderb@ti.com> Signed-off-by: Arik Nemtsov <arik@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
-rw-r--r--drivers/net/wireless/wl12xx/main.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/drivers/net/wireless/wl12xx/main.c b/drivers/net/wireless/wl12xx/main.c
index 9663326c0dfa..5545c3b94d2e 100644
--- a/drivers/net/wireless/wl12xx/main.c
+++ b/drivers/net/wireless/wl12xx/main.c
@@ -1706,7 +1706,12 @@ static int wl1271_op_config(struct ieee80211_hw *hw, u32 changed)
1706 mutex_lock(&wl->mutex); 1706 mutex_lock(&wl->mutex);
1707 1707
1708 if (unlikely(wl->state == WL1271_STATE_OFF)) { 1708 if (unlikely(wl->state == WL1271_STATE_OFF)) {
1709 ret = -EAGAIN; 1709 /* we support configuring the channel and band while off */
1710 if ((changed & IEEE80211_CONF_CHANGE_CHANNEL)) {
1711 wl->band = conf->channel->band;
1712 wl->channel = channel;
1713 }
1714
1710 goto out; 1715 goto out;
1711 } 1716 }
1712 1717