You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
53 lines
1.9 KiB
53 lines
1.9 KiB
From 9c3438ed215adba7025268ee1f0b6f7a2af12316 Mon Sep 17 00:00:00 2001
|
|
From: Ian Molton <ian@mnementh.co.uk>
|
|
Date: Tue, 19 Dec 2017 13:47:14 +0100
|
|
Subject: [PATCH] brcmfmac: Clean up interrupt macros
|
|
|
|
Make it more obvious that this code acually enables interrupts, and
|
|
provide nice definitions for the bits in the register.
|
|
|
|
Signed-off-by: Ian Molton <ian@mnementh.co.uk>
|
|
Acked-by: Arend van Spriel <arend.vanspriel@broadcom.com>
|
|
Signed-off-by: Arend van Spriel <arend.vanspriel@broadcom.com>
|
|
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
|
|
---
|
|
drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcmsdh.c | 3 ++-
|
|
drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.h | 8 +++++---
|
|
2 files changed, 7 insertions(+), 4 deletions(-)
|
|
|
|
--- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcmsdh.c
|
|
+++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcmsdh.c
|
|
@@ -149,7 +149,8 @@ int brcmf_sdiod_intr_register(struct brc
|
|
|
|
/* must configure SDIO_CCCR_IENx to enable irq */
|
|
data = brcmf_sdiod_func0_rb(sdiodev, SDIO_CCCR_IENx, &ret);
|
|
- data |= 1 << SDIO_FUNC_1 | 1 << SDIO_FUNC_2 | 1;
|
|
+ data |= SDIO_CCCR_IEN_FUNC1 | SDIO_CCCR_IEN_FUNC2 |
|
|
+ SDIO_CCCR_IEN_FUNC0;
|
|
brcmf_sdiod_func0_wb(sdiodev, SDIO_CCCR_IENx, data, &ret);
|
|
|
|
/* redirect, configure and enable io for interrupt signal */
|
|
--- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.h
|
|
+++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.h
|
|
@@ -24,9 +24,6 @@
|
|
/* Maximum number of I/O funcs */
|
|
#define NUM_SDIO_FUNCS 3
|
|
|
|
-#define SDIO_FUNC_1 1
|
|
-#define SDIO_FUNC_2 2
|
|
-
|
|
#define SDIOD_FBR_SIZE 0x100
|
|
|
|
/* io_en */
|
|
@@ -52,6 +49,11 @@
|
|
#define SDIO_CCCR_BRCM_CARDCAP_CMD14_EXT BIT(2)
|
|
#define SDIO_CCCR_BRCM_CARDCAP_CMD_NODEC BIT(3)
|
|
|
|
+/* Interrupt enable bits for each function */
|
|
+#define SDIO_CCCR_IEN_FUNC0 BIT(0)
|
|
+#define SDIO_CCCR_IEN_FUNC1 BIT(1)
|
|
+#define SDIO_CCCR_IEN_FUNC2 BIT(2)
|
|
+
|
|
#define SDIO_CCCR_BRCM_CARDCTRL 0xf1
|
|
#define SDIO_CCCR_BRCM_CARDCTRL_WLANRESET BIT(1)
|
|
|
|
|