ath9k: Re-enable interrupts after a channel change failure
PATCH v2 1/1 ath9k: Re-enable interrupts after a channel change failure
ath_complete_reset will not be called if ath9k_hw_reset is unsuccessful, so we need to re-enable intertupts to balence the previous ath_prepare_reset call. Also schedule a reset as a best effort method to recover the chip from whatever state caused the channel change failure.
Fixes https://bugzilla.kernel.org/show_bug.cgi?id=55771
Signed-off-by Robert Shade <[email protected]>
---
V2
- (hopefully) Fixed whitespace issues
- Removed call to ath9k_hw_set_interrupts
--- drivers/net/wireless/ath/ath9k/main.c | 4 ++++ 1 file changed, 4 insertions(+)
drivers/net/wireless/ath/ath9k/main.c +4 -0
@@ -280,6 +280,10 @@ static int ath_reset_internal(struct ath_softc *sc, struct ath9k_channel *hchan)if (r) {ath_err (common,"Unable to reset channel, reset status %d\n" , r); + +ath9k_hw_enable_interrupts (ah); +ath9k_queue_reset (sc,RESET_TYPE_BB_HANG ); + goto out; }
Signature · 1 line
1.8.2