aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristian Daudt <csd@broadcom.com>2016-05-04 20:55:20 -0400
committerKalle Valo <kvalo@codeaurora.org>2016-05-11 14:55:12 -0400
commit496aec577b5183716ed9d8bcc853ad9003485fe8 (patch)
tree07a4478968fec1b07ff39bf79d1fd5b3e19f1a13
parent2f8514b8b03643a598706bf88214b10153324d11 (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>
-rw-r--r--drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcmsdh.c1
-rw-r--r--drivers/net/wireless/broadcom/brcm80211/brcmfmac/chip.c1
-rw-r--r--drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c4
-rw-r--r--include/linux/mmc/sdio_ids.h1
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};
1103MODULE_DEVICE_TABLE(sdio, brcmf_sdmmc_ids); 1104MODULE_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");
609BRCMF_FW_NVRAM_DEF(43430, "brcmfmac43430-sdio.bin", "brcmfmac43430-sdio.txt"); 609BRCMF_FW_NVRAM_DEF(43430, "brcmfmac43430-sdio.bin", "brcmfmac43430-sdio.txt");
610BRCMF_FW_NVRAM_DEF(43455, "brcmfmac43455-sdio.bin", "brcmfmac43455-sdio.txt"); 610BRCMF_FW_NVRAM_DEF(43455, "brcmfmac43455-sdio.bin", "brcmfmac43455-sdio.txt");
611BRCMF_FW_NVRAM_DEF(4354, "brcmfmac4354-sdio.bin", "brcmfmac4354-sdio.txt"); 611BRCMF_FW_NVRAM_DEF(4354, "brcmfmac4354-sdio.bin", "brcmfmac4354-sdio.txt");
612BRCMF_FW_NVRAM_DEF(4356, "brcmfmac4356-sdio.bin", "brcmfmac4356-sdio.txt");
612 613
613static struct brcmf_firmware_mapping brcmf_sdio_fwnames[] = { 614static 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
630static void pkt_align(struct sk_buff *p, int len, int align) 632static 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