Skip to content

Commit

Permalink
mwl8k: always apply configuration even when device is idle
Browse files Browse the repository at this point in the history
Fix settings not being applied when the device is idle and the firmware
gets reloaded (because of changing from STA to AP mode). This caused
the device using the wrong channel (and likely band), e.g. a 5 GHz only
card still defaulted to channel 6 in the 2.4 GHz band when left
unconfigured.

This issue was always present, but only made visible with "mwl8k: Do not
call mwl8k_cmd_set_rf_channel unconditionally" (0f4316b), since before
that the channel was (re-)configured at the next _config call even when
it did not change from the mac80211 perspective.

Signed-off-by: Jonas Gorski <jogo@openwrt.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
  • Loading branch information
Jonas Gorski authored and John W. Linville committed Mar 27, 2013
1 parent c55b376 commit fe21bb0
Showing 1 changed file with 4 additions and 6 deletions.
10 changes: 4 additions & 6 deletions drivers/net/wireless/mwl8k.c
Original file line number Diff line number Diff line change
Expand Up @@ -4807,16 +4807,14 @@ static int mwl8k_config(struct ieee80211_hw *hw, u32 changed)
struct mwl8k_priv *priv = hw->priv;
int rc;

if (conf->flags & IEEE80211_CONF_IDLE) {
mwl8k_cmd_radio_disable(hw);
return 0;
}

rc = mwl8k_fw_lock(hw);
if (rc)
return rc;

rc = mwl8k_cmd_radio_enable(hw);
if (conf->flags & IEEE80211_CONF_IDLE)
rc = mwl8k_cmd_radio_disable(hw);
else
rc = mwl8k_cmd_radio_enable(hw);
if (rc)
goto out;

Expand Down

0 comments on commit fe21bb0

Please sign in to comment.