diff options
author | Johannes Berg <johannes.berg@intel.com> | 2013-10-11 09:57:47 +0200 |
---|---|---|
committer | Johannes Berg <johannes.berg@intel.com> | 2013-10-11 09:57:47 +0200 |
commit | 04a4e1fdd248d7a19d53e6e90f757e99093e3d29 (patch) | |
tree | ae16ad3f90d9dd726838077aae74675ba7ae51fc /drivers/net/wireless/ath/ath9k/main.c | |
parent | 19e737c98479f040e23987e50596a861e5e88b92 (diff) | |
parent | e25aa82a89db9e3b09d02b5481aa375c7712a10d (diff) |
Merge remote-tracking branch 'wireless-next/master' into HEAD
Diffstat (limited to 'drivers/net/wireless/ath/ath9k/main.c')
-rw-r--r-- | drivers/net/wireless/ath/ath9k/main.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/drivers/net/wireless/ath/ath9k/main.c b/drivers/net/wireless/ath/ath9k/main.c index e4f65900132d..cdb3b1e10b95 100644 --- a/drivers/net/wireless/ath/ath9k/main.c +++ b/drivers/net/wireless/ath/ath9k/main.c @@ -362,6 +362,13 @@ void ath9k_tasklet(unsigned long data) type = RESET_TYPE_BB_WATCHDOG; ath9k_queue_reset(sc, type); + + /* + * Increment the ref. counter here so that + * interrupts are enabled in the reset routine. + */ + atomic_inc(&ah->intr_ref_cnt); + ath_dbg(common, ANY, "FATAL: Skipping interrupts\n"); goto out; } @@ -400,10 +407,9 @@ void ath9k_tasklet(unsigned long data) ath9k_btcoex_handle_interrupt(sc, status); -out: /* re-enable hardware interrupt */ ath9k_hw_enable_interrupts(ah); - +out: spin_unlock(&sc->sc_pcu_lock); ath9k_ps_restore(sc); } |