* [PATCH] ath9k: reset after PCI FATAL/PERR interrupts
@ 2009-04-12 9:57 Steven Luo
2009-04-13 16:21 ` Sujith
0 siblings, 1 reply; 2+ messages in thread
From: Steven Luo @ 2009-04-12 9:57 UTC (permalink / raw)
To: John W. Linville
Cc: Luis R. Rodriguez, Jouni Malinen, Sujith Manoharan,
Vasanthakumar Thiagarajan, Senthil Balasubramanian,
linux-wireless, ath9k-devel
From: Steven Luo <steven@steven676.net>
ath9k_hw_getisr() doesn't appear to set anything in the status mask for
PCI FATAL or PERR interrupts (AR_INTR_SYNC_HOST1_FATAL/PERR), which
the open-source HAL seems to do. This means that the card isn't reset
after these interrupts.
This patch seems to fix a problem where the wireless drops out with an
"ath9k: received PCI FATAL interrupt" in dmesg after some time; the
hardware is an AR5416 in an ASUS WL-500W running 2.6.28.7 (OpenWRT) and
compat-wireless 2009-03-31.
Signed-off-by: Steven Luo <steven@steven676.net>
---
--- a/drivers/net/wireless/ath9k/hw.c 2009-04-09 23:23:35.000000000 -0700
+++ b/drivers/net/wireless/ath9k/hw.c 2009-04-11 23:29:28.000000000 -0700
@@ -3007,6 +3007,7 @@ bool ath9k_hw_getisr(struct ath_hw *ah,
DPRINTF(ah->ah_sc, ATH_DBG_ANY,
"received PCI PERR interrupt\n");
}
+ *masked |= ATH9K_INT_FATAL;
}
if (sync_cause & AR_INTR_SYNC_RADM_CPL_TIMEOUT) {
DPRINTF(ah->ah_sc, ATH_DBG_INTERRUPT,
^ permalink raw reply [flat|nested] 2+ messages in thread
* [PATCH] ath9k: reset after PCI FATAL/PERR interrupts
2009-04-12 9:57 [PATCH] ath9k: reset after PCI FATAL/PERR interrupts Steven Luo
@ 2009-04-13 16:21 ` Sujith
0 siblings, 0 replies; 2+ messages in thread
From: Sujith @ 2009-04-13 16:21 UTC (permalink / raw)
To: Steven Luo
Cc: John W. Linville, Luis R. Rodriguez, Jouni Malinen,
Vasanthakumar Thiagarajan, Senthil Balasubramanian,
linux-wireless, ath9k-devel
Steven Luo wrote:
> ath9k_hw_getisr() doesn't appear to set anything in the status mask for
> PCI FATAL or PERR interrupts (AR_INTR_SYNC_HOST1_FATAL/PERR), which
> the open-source HAL seems to do. This means that the card isn't reset
> after these interrupts.
>
> This patch seems to fix a problem where the wireless drops out with an
> "ath9k: received PCI FATAL interrupt" in dmesg after some time; the
> hardware is an AR5416 in an ASUS WL-500W running 2.6.28.7 (OpenWRT) and
> compat-wireless 2009-03-31.
>
> Signed-off-by: Steven Luo <steven@steven676.net>
> ---
>
> --- a/drivers/net/wireless/ath9k/hw.c 2009-04-09 23:23:35.000000000 -0700
> +++ b/drivers/net/wireless/ath9k/hw.c 2009-04-11 23:29:28.000000000 -0700
> @@ -3007,6 +3007,7 @@ bool ath9k_hw_getisr(struct ath_hw *ah,
> DPRINTF(ah->ah_sc, ATH_DBG_ANY,
> "received PCI PERR interrupt\n");
> }
> + *masked |= ATH9K_INT_FATAL;
> }
> if (sync_cause & AR_INTR_SYNC_RADM_CPL_TIMEOUT) {
> DPRINTF(ah->ah_sc, ATH_DBG_INTERRUPT,
>
Thanks for the patch. The actual cause of the FATAL interrupt still remains unclear, though.
We'll work on this issue.
Sujith
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2009-04-13 16:18 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-04-12 9:57 [PATCH] ath9k: reset after PCI FATAL/PERR interrupts Steven Luo
2009-04-13 16:21 ` Sujith
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).