Skip to content

Commit 602852f

Browse files
marcanjannau
authored andcommitted
wifi: brcmfmac: Add BCM4388 support
Signed-off-by: Hector Martin <marcan@marcan.st>
1 parent e41cd46 commit 602852f

3 files changed

Lines changed: 13 additions & 0 deletions

File tree

drivers/net/wireless/broadcom/brcm80211/brcmfmac/chip.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -712,6 +712,7 @@ static u32 brcmf_chip_tcm_rambase(struct brcmf_chip_priv *ci)
712712
case BRCM_CC_4366_CHIP_ID:
713713
case BRCM_CC_43664_CHIP_ID:
714714
case BRCM_CC_43666_CHIP_ID:
715+
case BRCM_CC_4388_CHIP_ID:
715716
return 0x200000;
716717
case BRCM_CC_4355_CHIP_ID:
717718
case BRCM_CC_4359_CHIP_ID:

drivers/net/wireless/broadcom/brcm80211/brcmfmac/pcie.c

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,8 @@ BRCMF_FW_CLM_DEF(4377B3, "brcmfmac4377b3-pcie");
7070
BRCMF_FW_CLM_DEF(4378B1, "brcmfmac4378b1-pcie");
7171
BRCMF_FW_CLM_DEF(4378B3, "brcmfmac4378b3-pcie");
7272
BRCMF_FW_CLM_DEF(4387C2, "brcmfmac4387c2-pcie");
73+
BRCMF_FW_CLM_DEF(4388B0, "brcmfmac4388b0-pcie");
74+
BRCMF_FW_CLM_DEF(4388C0, "brcmfmac4388c0-pcie");
7375

7476
/* firmware config files */
7577
MODULE_FIRMWARE(BRCMF_FW_DEFAULT_PATH "brcmfmac*-pcie.txt");
@@ -108,6 +110,8 @@ static const struct brcmf_firmware_mapping brcmf_pcie_fwnames[] = {
108110
BRCMF_FW_ENTRY(BRCM_CC_4378_CHIP_ID, 0x0000000F, 4378B1), /* revision ID 3 */
109111
BRCMF_FW_ENTRY(BRCM_CC_4378_CHIP_ID, 0xFFFFFFE0, 4378B3), /* revision ID 5 */
110112
BRCMF_FW_ENTRY(BRCM_CC_4387_CHIP_ID, 0xFFFFFFFF, 4387C2), /* revision ID 7 */
113+
BRCMF_FW_ENTRY(BRCM_CC_4388_CHIP_ID, 0x0000000F, 4388B0),
114+
BRCMF_FW_ENTRY(BRCM_CC_4388_CHIP_ID, 0xFFFFFFF0, 4388C0), /* revision ID 4 */
111115
};
112116

113117
#define BRCMF_PCIE_FW_UP_TIMEOUT 5000 /* msec */
@@ -2392,6 +2396,11 @@ static int brcmf_pcie_read_otp(struct brcmf_pciedev_info *devinfo)
23922396
base = 0x113c;
23932397
words = 0x170;
23942398
break;
2399+
case BRCM_CC_4388_CHIP_ID:
2400+
coreid = BCMA_CORE_GCI;
2401+
base = 0x115c;
2402+
words = 0x150;
2403+
break;
23952404
default:
23962405
/* OTP not supported on this chip */
23972406
return 0;
@@ -3037,6 +3046,7 @@ static const struct pci_device_id brcmf_pcie_devid_table[] = {
30373046
BRCMF_PCIE_DEVICE(BRCM_PCIE_4377_DEVICE_ID, WCC),
30383047
BRCMF_PCIE_DEVICE(BRCM_PCIE_4378_DEVICE_ID, WCC),
30393048
BRCMF_PCIE_DEVICE(BRCM_PCIE_4387_DEVICE_ID, WCC),
3049+
BRCMF_PCIE_DEVICE(BRCM_PCIE_4388_DEVICE_ID, WCC),
30403050

30413051
{ /* end: all zeroes */ }
30423052
};

drivers/net/wireless/broadcom/brcm80211/include/brcm_hw_ids.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,7 @@
5555
#define BRCM_CC_4377_CHIP_ID 0x4377
5656
#define BRCM_CC_4378_CHIP_ID 0x4378
5757
#define BRCM_CC_4387_CHIP_ID 0x4387
58+
#define BRCM_CC_4388_CHIP_ID 0x4388
5859
#define CY_CC_4373_CHIP_ID 0x4373
5960
#define CY_CC_43012_CHIP_ID 43012
6061
#define CY_CC_43439_CHIP_ID 43439
@@ -97,6 +98,7 @@
9798
#define BRCM_PCIE_4377_DEVICE_ID 0x4488
9899
#define BRCM_PCIE_4378_DEVICE_ID 0x4425
99100
#define BRCM_PCIE_4387_DEVICE_ID 0x4433
101+
#define BRCM_PCIE_4388_DEVICE_ID 0x4434
100102

101103
/* brcmsmac IDs */
102104
#define BCM4313_D11N2G_ID 0x4727 /* 4313 802.11n 2.4G device */

0 commit comments

Comments
 (0)