mirror of
https://github.com/coolsnowwolf/lede.git
synced 2025-07-19 01:56:59 +08:00
94 lines
4.0 KiB
Diff
94 lines
4.0 KiB
Diff
From f95a34b8e22248b66182a277a825dbb751f25a88 Mon Sep 17 00:00:00 2001
|
|
From: Hector Martin <marcan@marcan.st>
|
|
Date: Tue, 21 Dec 2021 17:50:15 +0900
|
|
Subject: [PATCH 099/171] brcmfmac: pcie: Add IDs/properties for BCM4355
|
|
|
|
This chip is present on at least these Apple T2 Macs:
|
|
|
|
* hawaii: MacBook Air 13" (Late 2018)
|
|
* hawaii: MacBook Air 13" (True Tone, 2019)
|
|
|
|
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
|
|
Signed-off-by: Hector Martin <marcan@marcan.st>
|
|
---
|
|
drivers/net/wireless/broadcom/brcm80211/brcmfmac/chip.c | 1 +
|
|
drivers/net/wireless/broadcom/brcm80211/brcmfmac/pcie.c | 8 ++++++++
|
|
.../net/wireless/broadcom/brcm80211/include/brcm_hw_ids.h | 2 ++
|
|
3 files changed, 11 insertions(+)
|
|
|
|
diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/chip.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/chip.c
|
|
index 7f1d6cea2141..6ac6a4414eda 100644
|
|
--- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/chip.c
|
|
+++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/chip.c
|
|
@@ -727,6 +727,7 @@ static u32 brcmf_chip_tcm_rambase(struct brcmf_chip_priv *ci)
|
|
return 0x200000;
|
|
case BRCM_CC_4359_CHIP_ID:
|
|
return (ci->pub.chiprev < 9) ? 0x180000 : 0x160000;
|
|
+ case BRCM_CC_4355_CHIP_ID:
|
|
case BRCM_CC_4364_CHIP_ID:
|
|
case CY_CC_4373_CHIP_ID:
|
|
return 0x160000;
|
|
diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/pcie.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/pcie.c
|
|
index 1e2afca5a60b..67f79985e4b8 100644
|
|
--- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/pcie.c
|
|
+++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/pcie.c
|
|
@@ -50,6 +50,7 @@ enum brcmf_pcie_state {
|
|
BRCMF_FW_DEF(43602, "brcmfmac43602-pcie");
|
|
BRCMF_FW_DEF(4350, "brcmfmac4350-pcie");
|
|
BRCMF_FW_DEF(4350C, "brcmfmac4350c2-pcie");
|
|
+BRCMF_FW_CLM_DEF(4355C1, "brcmfmac4355c1-pcie");
|
|
BRCMF_FW_CLM_DEF(4356, "brcmfmac4356-pcie");
|
|
BRCMF_FW_CLM_DEF(43570, "brcmfmac43570-pcie");
|
|
BRCMF_FW_DEF(4358, "brcmfmac4358-pcie");
|
|
@@ -76,6 +77,7 @@ static const struct brcmf_firmware_mapping brcmf_pcie_fwnames[] = {
|
|
BRCMF_FW_ENTRY(BRCM_CC_4350_CHIP_ID, 0x000000FF, 4350C),
|
|
BRCMF_FW_ENTRY(BRCM_CC_4350_CHIP_ID, 0xFFFFFF00, 4350),
|
|
BRCMF_FW_ENTRY(BRCM_CC_43525_CHIP_ID, 0xFFFFFFF0, 4365C),
|
|
+ BRCMF_FW_ENTRY(BRCM_CC_4355_CHIP_ID, 0xFFFFFFFF, 4355C1), /* 12 */
|
|
BRCMF_FW_ENTRY(BRCM_CC_4356_CHIP_ID, 0xFFFFFFFF, 4356),
|
|
BRCMF_FW_ENTRY(BRCM_CC_43567_CHIP_ID, 0xFFFFFFFF, 43570),
|
|
BRCMF_FW_ENTRY(BRCM_CC_43569_CHIP_ID, 0xFFFFFFFF, 43570),
|
|
@@ -2001,6 +2003,11 @@ static int brcmf_pcie_read_otp(struct brcmf_pciedev_info *devinfo)
|
|
int ret;
|
|
|
|
switch (devinfo->ci->chip) {
|
|
+ case BRCM_CC_4355_CHIP_ID:
|
|
+ coreid = BCMA_CORE_CHIPCOMMON;
|
|
+ base = 0x8c0;
|
|
+ words = 0xb2;
|
|
+ break;
|
|
case BRCM_CC_4378_CHIP_ID:
|
|
coreid = BCMA_CORE_GCI;
|
|
base = 0x1120;
|
|
@@ -2475,6 +2482,7 @@ static const struct pci_device_id brcmf_pcie_devid_table[] = {
|
|
BRCMF_PCIE_DEVICE(BRCM_PCIE_4350_DEVICE_ID),
|
|
BRCMF_PCIE_DEVICE_SUB(0x4355, BRCM_PCIE_VENDOR_ID_BROADCOM, 0x4355),
|
|
BRCMF_PCIE_DEVICE(BRCM_PCIE_4354_RAW_DEVICE_ID),
|
|
+ BRCMF_PCIE_DEVICE(BRCM_PCIE_4355_DEVICE_ID),
|
|
BRCMF_PCIE_DEVICE(BRCM_PCIE_4356_DEVICE_ID),
|
|
BRCMF_PCIE_DEVICE(BRCM_PCIE_43567_DEVICE_ID),
|
|
BRCMF_PCIE_DEVICE(BRCM_PCIE_43570_DEVICE_ID),
|
|
diff --git a/drivers/net/wireless/broadcom/brcm80211/include/brcm_hw_ids.h b/drivers/net/wireless/broadcom/brcm80211/include/brcm_hw_ids.h
|
|
index 43158a404652..81ada150ee30 100644
|
|
--- a/drivers/net/wireless/broadcom/brcm80211/include/brcm_hw_ids.h
|
|
+++ b/drivers/net/wireless/broadcom/brcm80211/include/brcm_hw_ids.h
|
|
@@ -37,6 +37,7 @@
|
|
#define BRCM_CC_4350_CHIP_ID 0x4350
|
|
#define BRCM_CC_43525_CHIP_ID 43525
|
|
#define BRCM_CC_4354_CHIP_ID 0x4354
|
|
+#define BRCM_CC_4355_CHIP_ID 0x4355
|
|
#define BRCM_CC_4356_CHIP_ID 0x4356
|
|
#define BRCM_CC_43566_CHIP_ID 43566
|
|
#define BRCM_CC_43567_CHIP_ID 43567
|
|
@@ -70,6 +71,7 @@
|
|
#define BRCM_PCIE_4350_DEVICE_ID 0x43a3
|
|
#define BRCM_PCIE_4354_DEVICE_ID 0x43df
|
|
#define BRCM_PCIE_4354_RAW_DEVICE_ID 0x4354
|
|
+#define BRCM_PCIE_4355_DEVICE_ID 0x43dc
|
|
#define BRCM_PCIE_4356_DEVICE_ID 0x43ec
|
|
#define BRCM_PCIE_43567_DEVICE_ID 0x43d3
|
|
#define BRCM_PCIE_43570_DEVICE_ID 0x43d9
|
|
--
|
|
2.34.1
|
|
|