The chainmasks have to be updated before setting the channel,
since the HW reset routine uses them to set the appropriate registers.
Signed-off-by: Sujith <[email protected]>
---
drivers/net/wireless/ath9k/main.c | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/net/wireless/ath9k/main.c b/drivers/net/wireless/ath9k/main.c
index f590fce..416b2ac 100644
--- a/drivers/net/wireless/ath9k/main.c
+++ b/drivers/net/wireless/ath9k/main.c
@@ -2144,13 +2144,13 @@ static int ath9k_config(struct ieee80211_hw *hw, u32 changed)
conf->ht.channel_type);
}
+ ath_update_chainmask(sc, conf_is_ht(conf));
+
if (ath_set_channel(sc, &sc->sc_ah->ah_channels[pos]) < 0) {
DPRINTF(sc, ATH_DBG_FATAL, "Unable to set channel\n");
mutex_unlock(&sc->mutex);
return -EINVAL;
}
-
- ath_update_chainmask(sc, conf_is_ht(conf));
}
if (changed & IEEE80211_CONF_CHANGE_POWER)
--
1.6.0.3