brcmfmac: Add support for bcm43340/1 wireless chipsets
Subsystems (2)
PATCH v2 3/10 brcmfmac: Add support for bcm43340/1 wireless chipsets
This patch adds support for the bcm43340 and bcm43341 wireless chipsets. These two chipsets are identical from wireless parts perspective. As such they use the same firmware image.
---
Changes since V1:
- change values for sdio device ids to hex format
--- drivers/net/wireless/brcm80211/brcmfmac/bcmsdh.c | 2 ++ drivers/net/wireless/brcm80211/brcmfmac/chip.c | 1 + drivers/net/wireless/brcm80211/brcmfmac/sdio.c | 5 +++++ drivers/net/wireless/brcm80211/include/brcm_hw_ids.h | 3 +++ include/linux/mmc/sdio_ids.h | 6 ++++-- 5 files changed, 15 insertions(+), 2 deletions(-)
drivers/net/wireless/brcm80211/brcmfmac/bcmsdh.c +2 -0
@@ -1005,6 +1005,8 @@ static const struct sdio_device_id brcmf_sdmmc_ids[] = {BRCMF_SDIO_DEVICE (BRCM_SDIO_4329_DEVICE_ID ),BRCMF_SDIO_DEVICE (BRCM_SDIO_4330_DEVICE_ID ),BRCMF_SDIO_DEVICE (BRCM_SDIO_4334_DEVICE_ID ), +BRCMF_SDIO_DEVICE (BRCM_SDIO_43340_DEVICE_ID ), +BRCMF_SDIO_DEVICE (BRCM_SDIO_43341_DEVICE_ID ),BRCMF_SDIO_DEVICE (BRCM_SDIO_43362_DEVICE_ID ),BRCMF_SDIO_DEVICE (BRCM_SDIO_4335_4339_DEVICE_ID ), BRCMF_SDIO_DEVICE(BRCM_SDIO_4354_DEVICE_ID),
drivers/net/wireless/brcm80211/brcmfmac/chip.c +1 -0
@@ -495,6 +495,7 @@ static void brcmf_chip_get_raminfo(struct brcmf_chip_priv *ci) ci->pub.ramsize =0x48000 ;break ;case BRCM_CC_4334_CHIP_ID : +case BRCM_CC_43340_CHIP_ID : ci->pub.ramsize =0x80000 ;break ;case BRCM_CC_4335_CHIP_ID :
drivers/net/wireless/brcm80211/brcmfmac/sdio.c +5 -0
@@ -608,6 +608,8 @@ static const struct sdiod_drive_str sdiod_drvstr_tab2_3v3[] = {#define BCM4330_NVRAM_NAME "brcm/brcmfmac4330-sdio.txt"#define BCM4334_FIRMWARE_NAME "brcm/brcmfmac4334-sdio.bin"#define BCM4334_NVRAM_NAME "brcm/brcmfmac4334-sdio.txt" +#define BCM43340_FIRMWARE_NAME "brcm/brcmfmac43340-sdio.bin" +#define BCM43340_NVRAM_NAME "brcm/brcmfmac43340-sdio.txt"#define BCM4335_FIRMWARE_NAME "brcm/brcmfmac4335-sdio.bin"#define BCM4335_NVRAM_NAME "brcm/brcmfmac4335-sdio.txt"#define BCM43362_FIRMWARE_NAME "brcm/brcmfmac43362-sdio.bin"
@@ -629,6 +631,8 @@ MODULE_FIRMWARE(BCM4330_FIRMWARE_NAME);MODULE_FIRMWARE (BCM4330_NVRAM_NAME );MODULE_FIRMWARE (BCM4334_FIRMWARE_NAME );MODULE_FIRMWARE (BCM4334_NVRAM_NAME ); +MODULE_FIRMWARE (BCM43340_FIRMWARE_NAME ); +MODULE_FIRMWARE (BCM43340_NVRAM_NAME );MODULE_FIRMWARE (BCM4335_FIRMWARE_NAME );MODULE_FIRMWARE (BCM4335_NVRAM_NAME );MODULE_FIRMWARE (BCM43362_FIRMWARE_NAME );
@@ -660,6 +664,7 @@ static const struct brcmf_firmware_names brcmf_fwname_data[] = { { BRCM_CC_4329_CHIP_ID, 0xFFFFFFFF, BRCMF_FIRMWARE_NVRAM(BCM4329) }, { BRCM_CC_4330_CHIP_ID, 0xFFFFFFFF, BRCMF_FIRMWARE_NVRAM(BCM4330) }, { BRCM_CC_4334_CHIP_ID, 0xFFFFFFFF, BRCMF_FIRMWARE_NVRAM(BCM4334) }, + { BRCM_CC_43340_CHIP_ID, 0xFFFFFFFF, BRCMF_FIRMWARE_NVRAM(BCM43340) }, { BRCM_CC_4335_CHIP_ID, 0xFFFFFFFF, BRCMF_FIRMWARE_NVRAM(BCM4335) }, { BRCM_CC_43362_CHIP_ID, 0xFFFFFFFE, BRCMF_FIRMWARE_NVRAM(BCM43362) }, { BRCM_CC_4339_CHIP_ID, 0xFFFFFFFF, BRCMF_FIRMWARE_NVRAM(BCM4339) },
drivers/net/wireless/brcm80211/include/brcm_hw_ids.h +3 -0
@@ -34,6 +34,7 @@#define BRCM_CC_4329_CHIP_ID 0x4329#define BRCM_CC_4330_CHIP_ID 0x4330#define BRCM_CC_4334_CHIP_ID 0x4334 +#define BRCM_CC_43340_CHIP_ID 43340#define BRCM_CC_43362_CHIP_ID 43362#define BRCM_CC_4335_CHIP_ID 0x4335#define BRCM_CC_4339_CHIP_ID 0x4339
@@ -51,6 +52,8 @@#define BRCM_SDIO_4329_DEVICE_ID BRCM_CC_4329_CHIP_ID#define BRCM_SDIO_4330_DEVICE_ID BRCM_CC_4330_CHIP_ID#define BRCM_SDIO_4334_DEVICE_ID BRCM_CC_4334_CHIP_ID +#define BRCM_SDIO_43340_DEVICE_ID BRCM_CC_43340_CHIP_ID +#define BRCM_SDIO_43341_DEVICE_ID 43341#define BRCM_SDIO_43362_DEVICE_ID BRCM_CC_43362_CHIP_ID#define BRCM_SDIO_4335_4339_DEVICE_ID BRCM_CC_4335_CHIP_ID#define BRCM_SDIO_4354_DEVICE_ID BRCM_CC_4354_CHIP_ID
include/linux/mmc/sdio_ids.h +4 -2
@@ -24,13 +24,15 @@* Vendors and devices. Sort key: vendor first, device next. */ #define SDIO_VENDOR_ID_BROADCOM 0x02d0 -#define SDIO_DEVICE_ID_BROADCOM_43143 43143 +#define SDIO_DEVICE_ID_BROADCOM_43143 0xa887#define SDIO_DEVICE_ID_BROADCOM_43241 0x4324#define SDIO_DEVICE_ID_BROADCOM_4329 0x4329#define SDIO_DEVICE_ID_BROADCOM_4330 0x4330#define SDIO_DEVICE_ID_BROADCOM_4334 0x4334 +#define SDIO_DEVICE_ID_BROADCOM_43340 0xa94c +#define SDIO_DEVICE_ID_BROADCOM_43341 0xa94d#define SDIO_DEVICE_ID_BROADCOM_4335_4339 0x4335 -#define SDIO_DEVICE_ID_BROADCOM_43362 43362 +#define SDIO_DEVICE_ID_BROADCOM_43362 0xa962#define SDIO_DEVICE_ID_BROADCOM_4354 0x4354#define SDIO_VENDOR_ID_INTEL 0x0089
Signature · 1 line
1.9.1
Quoted 3 lines · Arend van Spriel
This patch adds support for the bcm43340 and bcm43341 wireless chipsets. These two chipsets are identical from wireless parts perspective. As such they use the same firmware image.
Kalle,
Just curious. Would this patch have ended up on [1] when I would have filled In-Reply-to: properly during git send-email? If so I can add that to our internal process description.
Regards,
Arend
[1] https://patchwork.kernel.org/patch/5523871/
Quoted 116 lines
Cc Samuel Ortiz<[email protected]>Cc Rob Herring<[email protected]>Signed-off-by John Stultz<[email protected]>[[email protected]: squash to single commit, remove 43341 chipid]Reviewed-by Pieter-Paul Giesberts<[email protected]>Reviewed-by Hante Meuleman<[email protected]>Signed-off-by Arend van Spriel<[email protected]>---
Changes since V1:
- change values for sdio device ids to hex format--- drivers/net/wireless/brcm80211/brcmfmac/bcmsdh.c | 2 ++ drivers/net/wireless/brcm80211/brcmfmac/chip.c | 1 + drivers/net/wireless/brcm80211/brcmfmac/sdio.c | 5 +++++ drivers/net/wireless/brcm80211/include/brcm_hw_ids.h | 3 +++ include/linux/mmc/sdio_ids.h | 6 ++++-- 5 files changed, 15 insertions(+), 2 deletions(-)drivers/net/wireless/brcm80211/brcmfmac/bcmsdh.c +2
-0@@ -1005,6 +1005,8 @@ static const struct sdio_device_id brcmf_sdmmc_ids[] = {BRCMF_SDIO_DEVICE (BRCM_SDIO_4329_DEVICE_ID ),BRCMF_SDIO_DEVICE (BRCM_SDIO_4330_DEVICE_ID ),BRCMF_SDIO_DEVICE (BRCM_SDIO_4334_DEVICE_ID ), +BRCMF_SDIO_DEVICE (BRCM_SDIO_43340_DEVICE_ID ), +BRCMF_SDIO_DEVICE (BRCM_SDIO_43341_DEVICE_ID ),BRCMF_SDIO_DEVICE (BRCM_SDIO_43362_DEVICE_ID ),BRCMF_SDIO_DEVICE (BRCM_SDIO_4335_4339_DEVICE_ID ), BRCMF_SDIO_DEVICE(BRCM_SDIO_4354_DEVICE_ID),drivers/net/wireless/brcm80211/brcmfmac/chip.c +1
-0@@ -495,6 +495,7 @@ static void brcmf_chip_get_raminfo(struct brcmf_chip_priv *ci) ci->pub.ramsize =0x48000 ;break ;case BRCM_CC_4334_CHIP_ID : +case BRCM_CC_43340_CHIP_ID : ci->pub.ramsize =0x80000 ;break ;case BRCM_CC_4335_CHIP_ID :drivers/net/wireless/brcm80211/brcmfmac/sdio.c +5
-0@@ -608,6 +608,8 @@ static const struct sdiod_drive_str sdiod_drvstr_tab2_3v3[] = {#define BCM4330_NVRAM_NAME "brcm/brcmfmac4330-sdio.txt"#define BCM4334_FIRMWARE_NAME "brcm/brcmfmac4334-sdio.bin"#define BCM4334_NVRAM_NAME "brcm/brcmfmac4334-sdio.txt" +#define BCM43340_FIRMWARE_NAME "brcm/brcmfmac43340-sdio.bin" +#define BCM43340_NVRAM_NAME "brcm/brcmfmac43340-sdio.txt"#define BCM4335_FIRMWARE_NAME "brcm/brcmfmac4335-sdio.bin"#define BCM4335_NVRAM_NAME "brcm/brcmfmac4335-sdio.txt"#define BCM43362_FIRMWARE_NAME "brcm/brcmfmac43362-sdio.bin"@@ -629,6 +631,8 @@ MODULE_FIRMWARE(BCM4330_FIRMWARE_NAME);MODULE_FIRMWARE (BCM4330_NVRAM_NAME );MODULE_FIRMWARE (BCM4334_FIRMWARE_NAME );MODULE_FIRMWARE (BCM4334_NVRAM_NAME ); +MODULE_FIRMWARE (BCM43340_FIRMWARE_NAME ); +MODULE_FIRMWARE (BCM43340_NVRAM_NAME );MODULE_FIRMWARE (BCM4335_FIRMWARE_NAME );MODULE_FIRMWARE (BCM4335_NVRAM_NAME );MODULE_FIRMWARE (BCM43362_FIRMWARE_NAME );@@ -660,6 +664,7 @@ static const struct brcmf_firmware_names brcmf_fwname_data[] = { { BRCM_CC_4329_CHIP_ID, 0xFFFFFFFF, BRCMF_FIRMWARE_NVRAM(BCM4329) }, { BRCM_CC_4330_CHIP_ID, 0xFFFFFFFF, BRCMF_FIRMWARE_NVRAM(BCM4330) }, { BRCM_CC_4334_CHIP_ID, 0xFFFFFFFF, BRCMF_FIRMWARE_NVRAM(BCM4334) }, + { BRCM_CC_43340_CHIP_ID, 0xFFFFFFFF, BRCMF_FIRMWARE_NVRAM(BCM43340) }, { BRCM_CC_4335_CHIP_ID, 0xFFFFFFFF, BRCMF_FIRMWARE_NVRAM(BCM4335) }, { BRCM_CC_43362_CHIP_ID, 0xFFFFFFFE, BRCMF_FIRMWARE_NVRAM(BCM43362) }, { BRCM_CC_4339_CHIP_ID, 0xFFFFFFFF, BRCMF_FIRMWARE_NVRAM(BCM4339) },drivers/net/wireless/brcm80211/include/brcm_hw_ids.h +3
-0@@ -34,6 +34,7 @@#define BRCM_CC_4329_CHIP_ID 0x4329#define BRCM_CC_4330_CHIP_ID 0x4330#define BRCM_CC_4334_CHIP_ID 0x4334 +#define BRCM_CC_43340_CHIP_ID 43340#define BRCM_CC_43362_CHIP_ID 43362#define BRCM_CC_4335_CHIP_ID 0x4335#define BRCM_CC_4339_CHIP_ID 0x4339@@ -51,6 +52,8 @@#define BRCM_SDIO_4329_DEVICE_ID BRCM_CC_4329_CHIP_ID#define BRCM_SDIO_4330_DEVICE_ID BRCM_CC_4330_CHIP_ID#define BRCM_SDIO_4334_DEVICE_ID BRCM_CC_4334_CHIP_ID +#define BRCM_SDIO_43340_DEVICE_ID BRCM_CC_43340_CHIP_ID +#define BRCM_SDIO_43341_DEVICE_ID 43341#define BRCM_SDIO_43362_DEVICE_ID BRCM_CC_43362_CHIP_ID#define BRCM_SDIO_4335_4339_DEVICE_ID BRCM_CC_4335_CHIP_ID#define BRCM_SDIO_4354_DEVICE_ID BRCM_CC_4354_CHIP_IDinclude/linux/mmc/sdio_ids.h +4
-2@@ -24,13 +24,15 @@* Vendors and devices. Sort key: vendor first, device next. */ #define SDIO_VENDOR_ID_BROADCOM 0x02d0 -#define SDIO_DEVICE_ID_BROADCOM_43143 43143 +#define SDIO_DEVICE_ID_BROADCOM_43143 0xa887#define SDIO_DEVICE_ID_BROADCOM_43241 0x4324#define SDIO_DEVICE_ID_BROADCOM_4329 0x4329#define SDIO_DEVICE_ID_BROADCOM_4330 0x4330#define SDIO_DEVICE_ID_BROADCOM_4334 0x4334 +#define SDIO_DEVICE_ID_BROADCOM_43340 0xa94c +#define SDIO_DEVICE_ID_BROADCOM_43341 0xa94d#define SDIO_DEVICE_ID_BROADCOM_4335_4339 0x4335 -#define SDIO_DEVICE_ID_BROADCOM_43362 43362 +#define SDIO_DEVICE_ID_BROADCOM_43362 0xa962#define SDIO_DEVICE_ID_BROADCOM_4354 0x4354#define SDIO_VENDOR_ID_INTEL 0x0089
Quoted 10 lines · Arend van Spriel
Quoted 3 lines · Arend van Spriel
This patch adds support for the bcm43340 and bcm43341 wireless chipsets. These two chipsets are identical from wireless parts perspective. As such they use the same firmware image.
Kalle,
Just curious. Would this patch have ended up on [1] when I would have filled In-Reply-to: properly during git send-email? If so I can add that to our internal process description.
Not sure, I'm not very familiar with patchwork yet. I saw some documentation that it's possible to update the patch with pwclient, but I haven't seen anything about doing it via email.
IMHO it's just best to resend the whole series even if just one patch needs changes. Anything else would be just confusing and error prone.
Signature · 1 line
Kalle Valo
Quoted 7 lines · Arend van Spriel
Quoted 4 lines · Arend van Spriel
This patch adds support for the bcm43340 and bcm43341 wireless chipsets. These two chipsets are identical from wireless parts perspective. As such they use the same firmware image.
Quoted 5 lines
Kalle,
Just curious. Would this patch have ended up on [1] when I would have filled
In-Reply-to: properly during git send-email? If so I can add that to our internal process description.
I tried it few times (with OpenWrt and MIPS or MTD) and it didn't work for me.
However there is different thing you can do to help handling patches. When you send a new version, you can sign in to the patchwork and mark old version as superseded.
Kalle Valo
AppliedQuoted 11 lines · Arend van Spriel
This patch adds support for the bcm43340 and bcm43341 wireless chipsets. These two chipsets are identical from wireless parts perspective. As such they use the same firmware image.
Cc Samuel Ortiz <[email protected]>Cc Rob Herring <[email protected]>Signed-off-by John Stultz <[email protected]>[[email protected]: squash to single commit, remove 43341 chipid]Reviewed-by Pieter-Paul Giesberts <[email protected]>Reviewed-by Hante Meuleman <[email protected]>Signed-off-by Arend van Spriel <[email protected]>
Quoted 3 lines
---
Changes since V1:
- change values for sdio device ids to hex format
Thanks, applied to wireless-drivers-next.git.
Signature · 1 line
Kalle Valo