mirror of
				git://git.openwrt.org/openwrt/openwrt.git
				synced 2025-10-31 14:04:26 -04:00 
			
		
		
		
	
		
			
				
	
	
		
			54 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			54 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
| 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)
 | |
|  
 |