aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/ath/ath9k/xmit.c
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2011-01-21 18:52:38 +0100
committerJohn W. Linville <linville@tuxdriver.com>2011-01-21 15:07:37 -0500
commit783cd01e140d9db5c2d2279a96b81e16f9d81fef (patch)
tree87c20e21f1bedf9c1ae556701c6a1cd97b41356e /drivers/net/wireless/ath/ath9k/xmit.c
parent6f4810101a629b31b5427872a09ea092cfc5c4bd (diff)
downloadkernel_samsung_smdk4412-783cd01e140d9db5c2d2279a96b81e16f9d81fef.zip
kernel_samsung_smdk4412-783cd01e140d9db5c2d2279a96b81e16f9d81fef.tar.gz
kernel_samsung_smdk4412-783cd01e140d9db5c2d2279a96b81e16f9d81fef.tar.bz2
ath9k: add missing ps wakeup/restore calls
There are several places where ath_reset() was called without proper calls to ath9k_ps_wakeup/ath9k_ps_restore. To fix this, add those calls directly to ath_reset and drop them from callers where it makes sense. Also add them to the config callback around ath_update_txpow to fix a crash that happens when the tx power changed before any vif is brought up. Signed-off-by: Felix Fietkau <nbd@openwrt.org> Cc: stable@kernel.org Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/ath/ath9k/xmit.c')
-rw-r--r--drivers/net/wireless/ath/ath9k/xmit.c2
1 files changed, 0 insertions, 2 deletions
diff --git a/drivers/net/wireless/ath/ath9k/xmit.c b/drivers/net/wireless/ath/ath9k/xmit.c
index 332d1fe..33a37ed 100644
--- a/drivers/net/wireless/ath/ath9k/xmit.c
+++ b/drivers/net/wireless/ath/ath9k/xmit.c
@@ -2113,9 +2113,7 @@ static void ath_tx_complete_poll_work(struct work_struct *work)
if (needreset) {
ath_dbg(ath9k_hw_common(sc->sc_ah), ATH_DBG_RESET,
"tx hung, resetting the chip\n");
- ath9k_ps_wakeup(sc);
ath_reset(sc, true);
- ath9k_ps_restore(sc);
}
ieee80211_queue_delayed_work(sc->hw, &sc->tx_complete_work,