aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net
diff options
context:
space:
mode:
authorVasanthakumar Thiagarajan <vasanth@atheros.com>2009-06-13 05:20:25 -0400
committerJohn W. Linville <linville@tuxdriver.com>2009-06-15 15:05:57 -0400
commit159cd468bc885f7a2fbc75bbfe782782e52ef9c9 (patch)
tree3985624889b896a5d87f3ba6b0221ebb1a2cab85 /drivers/net
parent82880a7cf9c059c11cd6ad1868c48969956f966b (diff)
ath9k: Make sure we have current channel in ah_curchan before rf disable/enable
Signed-off-by: Vasanthakumar Thiagarajan <vasanth@atheros.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net')
-rw-r--r--drivers/net/wireless/ath/ath9k/main.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/net/wireless/ath/ath9k/main.c b/drivers/net/wireless/ath/ath9k/main.c
index 89bf07e66d10..6516a426f6ce 100644
--- a/drivers/net/wireless/ath/ath9k/main.c
+++ b/drivers/net/wireless/ath/ath9k/main.c
@@ -1123,6 +1123,9 @@ void ath_radio_enable(struct ath_softc *sc)
1123 ath9k_ps_wakeup(sc); 1123 ath9k_ps_wakeup(sc);
1124 ath9k_hw_configpcipowersave(ah, 0); 1124 ath9k_hw_configpcipowersave(ah, 0);
1125 1125
1126 if (!ah->curchan)
1127 ah->curchan = ath_get_curchannel(sc, sc->hw);
1128
1126 spin_lock_bh(&sc->sc_resetlock); 1129 spin_lock_bh(&sc->sc_resetlock);
1127 r = ath9k_hw_reset(ah, ah->curchan, false); 1130 r = ath9k_hw_reset(ah, ah->curchan, false);
1128 if (r) { 1131 if (r) {
@@ -1175,6 +1178,9 @@ void ath_radio_disable(struct ath_softc *sc)
1175 ath_stoprecv(sc); /* turn off frame recv */ 1178 ath_stoprecv(sc); /* turn off frame recv */
1176 ath_flushrecv(sc); /* flush recv queue */ 1179 ath_flushrecv(sc); /* flush recv queue */
1177 1180
1181 if (!ah->curchan)
1182 ah->curchan = ath_get_curchannel(sc, sc->hw);
1183
1178 spin_lock_bh(&sc->sc_resetlock); 1184 spin_lock_bh(&sc->sc_resetlock);
1179 r = ath9k_hw_reset(ah, ah->curchan, false); 1185 r = ath9k_hw_reset(ah, ah->curchan, false);
1180 if (r) { 1186 if (r) {