ath9k: Reset chip on baseband hang
Resetting hardware helps to recover from baseband hang/panic for AR9003 based chips. Cc: stable@kernel.org Signed-off-by: Rajkumar Manoharan <rmanoharan@atheros.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
parent
fb23d86382
commit
a4d86d953b
|
@ -670,7 +670,8 @@ void ath9k_tasklet(unsigned long data)
|
||||||
u32 status = sc->intrstatus;
|
u32 status = sc->intrstatus;
|
||||||
u32 rxmask;
|
u32 rxmask;
|
||||||
|
|
||||||
if (status & ATH9K_INT_FATAL) {
|
if ((status & ATH9K_INT_FATAL) ||
|
||||||
|
(status & ATH9K_INT_BB_WATCHDOG)) {
|
||||||
ath_reset(sc, true);
|
ath_reset(sc, true);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -737,6 +738,7 @@ irqreturn_t ath_isr(int irq, void *dev)
|
||||||
{
|
{
|
||||||
#define SCHED_INTR ( \
|
#define SCHED_INTR ( \
|
||||||
ATH9K_INT_FATAL | \
|
ATH9K_INT_FATAL | \
|
||||||
|
ATH9K_INT_BB_WATCHDOG | \
|
||||||
ATH9K_INT_RXORN | \
|
ATH9K_INT_RXORN | \
|
||||||
ATH9K_INT_RXEOL | \
|
ATH9K_INT_RXEOL | \
|
||||||
ATH9K_INT_RX | \
|
ATH9K_INT_RX | \
|
||||||
|
|
Loading…
Reference in New Issue