diff options
author | Christian Daudt <csd@broadcom.com> | 2016-05-04 20:55:20 -0400 |
---|---|---|
committer | Kalle Valo <kvalo@codeaurora.org> | 2016-05-11 14:55:12 -0400 |
commit | 496aec577b5183716ed9d8bcc853ad9003485fe8 (patch) | |
tree | 07a4478968fec1b07ff39bf79d1fd5b3e19f1a13 | |
parent | 2f8514b8b03643a598706bf88214b10153324d11 (diff) |
brcmfmac: Add 4356 sdio support
This adds support for the 4356-sdio wireless chip.
Signed-off-by: Christian Daudt <csd@broadcom.com>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
4 files changed, 6 insertions, 1 deletions
diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcmsdh.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcmsdh.c index 2fc0597f2cd0..c7550dab6a23 100644 --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcmsdh.c +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcmsdh.c | |||
@@ -1098,6 +1098,7 @@ static const struct sdio_device_id brcmf_sdmmc_ids[] = { | |||
1098 | BRCMF_SDIO_DEVICE(SDIO_DEVICE_ID_BROADCOM_43430), | 1098 | BRCMF_SDIO_DEVICE(SDIO_DEVICE_ID_BROADCOM_43430), |
1099 | BRCMF_SDIO_DEVICE(SDIO_DEVICE_ID_BROADCOM_4345), | 1099 | BRCMF_SDIO_DEVICE(SDIO_DEVICE_ID_BROADCOM_4345), |
1100 | BRCMF_SDIO_DEVICE(SDIO_DEVICE_ID_BROADCOM_4354), | 1100 | BRCMF_SDIO_DEVICE(SDIO_DEVICE_ID_BROADCOM_4354), |
1101 | BRCMF_SDIO_DEVICE(SDIO_DEVICE_ID_BROADCOM_4356), | ||
1101 | { /* end: all zeroes */ } | 1102 | { /* end: all zeroes */ } |
1102 | }; | 1103 | }; |
1103 | MODULE_DEVICE_TABLE(sdio, brcmf_sdmmc_ids); | 1104 | MODULE_DEVICE_TABLE(sdio, brcmf_sdmmc_ids); |
diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/chip.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/chip.c index 0e8f2a079907..d3fd6b1db1d9 100644 --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/chip.c +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/chip.c | |||
@@ -1333,6 +1333,7 @@ bool brcmf_chip_sr_capable(struct brcmf_chip *pub) | |||
1333 | 1333 | ||
1334 | switch (pub->chip) { | 1334 | switch (pub->chip) { |
1335 | case BRCM_CC_4354_CHIP_ID: | 1335 | case BRCM_CC_4354_CHIP_ID: |
1336 | case BRCM_CC_4356_CHIP_ID: | ||
1336 | /* explicitly check SR engine enable bit */ | 1337 | /* explicitly check SR engine enable bit */ |
1337 | pmu_cc3_mask = BIT(2); | 1338 | pmu_cc3_mask = BIT(2); |
1338 | /* fall-through */ | 1339 | /* fall-through */ |
diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c index 4252fa82b89c..67e69bff2545 100644 --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c | |||
@@ -609,6 +609,7 @@ BRCMF_FW_NVRAM_DEF(4339, "brcmfmac4339-sdio.bin", "brcmfmac4339-sdio.txt"); | |||
609 | BRCMF_FW_NVRAM_DEF(43430, "brcmfmac43430-sdio.bin", "brcmfmac43430-sdio.txt"); | 609 | BRCMF_FW_NVRAM_DEF(43430, "brcmfmac43430-sdio.bin", "brcmfmac43430-sdio.txt"); |
610 | BRCMF_FW_NVRAM_DEF(43455, "brcmfmac43455-sdio.bin", "brcmfmac43455-sdio.txt"); | 610 | BRCMF_FW_NVRAM_DEF(43455, "brcmfmac43455-sdio.bin", "brcmfmac43455-sdio.txt"); |
611 | BRCMF_FW_NVRAM_DEF(4354, "brcmfmac4354-sdio.bin", "brcmfmac4354-sdio.txt"); | 611 | BRCMF_FW_NVRAM_DEF(4354, "brcmfmac4354-sdio.bin", "brcmfmac4354-sdio.txt"); |
612 | BRCMF_FW_NVRAM_DEF(4356, "brcmfmac4356-sdio.bin", "brcmfmac4356-sdio.txt"); | ||
612 | 613 | ||
613 | static struct brcmf_firmware_mapping brcmf_sdio_fwnames[] = { | 614 | static struct brcmf_firmware_mapping brcmf_sdio_fwnames[] = { |
614 | BRCMF_FW_NVRAM_ENTRY(BRCM_CC_43143_CHIP_ID, 0xFFFFFFFF, 43143), | 615 | BRCMF_FW_NVRAM_ENTRY(BRCM_CC_43143_CHIP_ID, 0xFFFFFFFF, 43143), |
@@ -624,7 +625,8 @@ static struct brcmf_firmware_mapping brcmf_sdio_fwnames[] = { | |||
624 | BRCMF_FW_NVRAM_ENTRY(BRCM_CC_4339_CHIP_ID, 0xFFFFFFFF, 4339), | 625 | BRCMF_FW_NVRAM_ENTRY(BRCM_CC_4339_CHIP_ID, 0xFFFFFFFF, 4339), |
625 | BRCMF_FW_NVRAM_ENTRY(BRCM_CC_43430_CHIP_ID, 0xFFFFFFFF, 43430), | 626 | BRCMF_FW_NVRAM_ENTRY(BRCM_CC_43430_CHIP_ID, 0xFFFFFFFF, 43430), |
626 | BRCMF_FW_NVRAM_ENTRY(BRCM_CC_4345_CHIP_ID, 0xFFFFFFC0, 43455), | 627 | BRCMF_FW_NVRAM_ENTRY(BRCM_CC_4345_CHIP_ID, 0xFFFFFFC0, 43455), |
627 | BRCMF_FW_NVRAM_ENTRY(BRCM_CC_4354_CHIP_ID, 0xFFFFFFFF, 4354) | 628 | BRCMF_FW_NVRAM_ENTRY(BRCM_CC_4354_CHIP_ID, 0xFFFFFFFF, 4354), |
629 | BRCMF_FW_NVRAM_ENTRY(BRCM_CC_4356_CHIP_ID, 0xFFFFFFFF, 4356) | ||
628 | }; | 630 | }; |
629 | 631 | ||
630 | static void pkt_align(struct sk_buff *p, int len, int align) | 632 | static void pkt_align(struct sk_buff *p, int len, int align) |
diff --git a/include/linux/mmc/sdio_ids.h b/include/linux/mmc/sdio_ids.h index 83430f2ea757..0d126aeb3ec0 100644 --- a/include/linux/mmc/sdio_ids.h +++ b/include/linux/mmc/sdio_ids.h | |||
@@ -36,6 +36,7 @@ | |||
36 | #define SDIO_DEVICE_ID_BROADCOM_43430 0xa9a6 | 36 | #define SDIO_DEVICE_ID_BROADCOM_43430 0xa9a6 |
37 | #define SDIO_DEVICE_ID_BROADCOM_4345 0x4345 | 37 | #define SDIO_DEVICE_ID_BROADCOM_4345 0x4345 |
38 | #define SDIO_DEVICE_ID_BROADCOM_4354 0x4354 | 38 | #define SDIO_DEVICE_ID_BROADCOM_4354 0x4354 |
39 | #define SDIO_DEVICE_ID_BROADCOM_4356 0x4356 | ||
39 | 40 | ||
40 | #define SDIO_VENDOR_ID_INTEL 0x0089 | 41 | #define SDIO_VENDOR_ID_INTEL 0x0089 |
41 | #define SDIO_DEVICE_ID_INTEL_IWMC3200WIMAX 0x1402 | 42 | #define SDIO_DEVICE_ID_INTEL_IWMC3200WIMAX 0x1402 |