diff options
author | Luis R. Rodriguez <lrodriguez@atheros.com> | 2010-12-07 18:13:22 -0500 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2010-12-08 15:38:45 -0500 |
commit | ff9f0b639f33c92a89b0799263ab625444be6ee1 (patch) | |
tree | 781c4564dded92afcdc6f6301778fe183da5baad /drivers | |
parent | b7e8941b2df518186d9f7679c007f6b619bb4e89 (diff) |
ath9k: skip ATH9K_INT_TIM_TIMER when we are idle
We should not be idle when we get the ATH9K_INT_TIM_TIMER,
otherwise its a sign of something broken in our design with
our idle state machine and mac80211. Skip these and WARN once
just in case this is triggerable.
Cc: Paul Stewart <pstew@google.com>
Cc: Amod Bodas <amod.bodas@atheros.com>
signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/net/wireless/ath/ath9k/main.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/net/wireless/ath/ath9k/main.c b/drivers/net/wireless/ath/ath9k/main.c index 3e0c8a1874b4..41a312a3d401 100644 --- a/drivers/net/wireless/ath/ath9k/main.c +++ b/drivers/net/wireless/ath/ath9k/main.c | |||
@@ -765,6 +765,8 @@ irqreturn_t ath_isr(int irq, void *dev) | |||
765 | 765 | ||
766 | if (!(ah->caps.hw_caps & ATH9K_HW_CAP_AUTOSLEEP)) | 766 | if (!(ah->caps.hw_caps & ATH9K_HW_CAP_AUTOSLEEP)) |
767 | if (status & ATH9K_INT_TIM_TIMER) { | 767 | if (status & ATH9K_INT_TIM_TIMER) { |
768 | if (ATH_DBG_WARN_ON_ONCE(sc->ps_idle)) | ||
769 | goto chip_reset; | ||
768 | /* Clear RxAbort bit so that we can | 770 | /* Clear RxAbort bit so that we can |
769 | * receive frames */ | 771 | * receive frames */ |
770 | ath9k_setpower(sc, ATH9K_PM_AWAKE); | 772 | ath9k_setpower(sc, ATH9K_PM_AWAKE); |