From: Luis R. Rodriguez Date: Tue, 7 Dec 2010 23:13:22 +0000 (-0800) Subject: ath9k: skip ATH9K_INT_TIM_TIMER when we are idle X-Git-Url: http://git.cdn.openwrt.org/?a=commitdiff_plain;h=ff9f0b639f33c92a89b0799263ab625444be6ee1;p=openwrt%2Fstaging%2Fblogic.git 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 Cc: Amod Bodas signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville --- 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) if (!(ah->caps.hw_caps & ATH9K_HW_CAP_AUTOSLEEP)) if (status & ATH9K_INT_TIM_TIMER) { + if (ATH_DBG_WARN_ON_ONCE(sc->ps_idle)) + goto chip_reset; /* Clear RxAbort bit so that we can * receive frames */ ath9k_setpower(sc, ATH9K_PM_AWAKE);