diff options
Diffstat (limited to 'package/kernel/mac80211/patches/359-brcmfmac-process-interrupt-regardless-sdiod-state.patch')
-rw-r--r-- | package/kernel/mac80211/patches/359-brcmfmac-process-interrupt-regardless-sdiod-state.patch | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/package/kernel/mac80211/patches/359-brcmfmac-process-interrupt-regardless-sdiod-state.patch b/package/kernel/mac80211/patches/359-brcmfmac-process-interrupt-regardless-sdiod-state.patch new file mode 100644 index 0000000000..d420308383 --- /dev/null +++ b/package/kernel/mac80211/patches/359-brcmfmac-process-interrupt-regardless-sdiod-state.patch @@ -0,0 +1,27 @@ +From: Arend van Spriel <arend@broadcom.com> +Date: Tue, 14 Apr 2015 20:10:29 +0200 +Subject: [PATCH] brcmfmac: process interrupt regardless sdiod state + +When the sdio bus state is not ready to process we abort the +interrupt service routine. This is not wanted as it keeps the +interrupt source active. Better clear the interrupt source. + +Reviewed-by: Hante Meuleman <meuleman@broadcom.com> +Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com> +Reviewed-by: Franky (Zhenhui) Lin <frankyl@broadcom.com> +Signed-off-by: Arend van Spriel <arend@broadcom.com> +--- + +--- a/drivers/net/wireless/brcm80211/brcmfmac/sdio.c ++++ b/drivers/net/wireless/brcm80211/brcmfmac/sdio.c +@@ -3555,10 +3555,6 @@ void brcmf_sdio_isr(struct brcmf_sdio *b + return; + } + +- if (bus->sdiodev->state != BRCMF_SDIOD_DATA) { +- brcmf_err("bus is down. we have nothing to do\n"); +- return; +- } + /* Count the interrupt call */ + bus->sdcnt.intrcount++; + if (in_interrupt()) |