From 07cba1a25b43834f24f8be302bd025f2f89493c5 Mon Sep 17 00:00:00 2001 From: Aditya Garg <85610623+AdityaGarg8@users.noreply.github.com> Date: Mon, 20 Jan 2025 22:21:35 +0530 Subject: [PATCH] Wifi fix --- ...e-random-seed-flag-for-BCM4355-and-B.patch | 49 +++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 5001-wifi-brcmfmac-use-random-seed-flag-for-BCM4355-and-B.patch diff --git a/5001-wifi-brcmfmac-use-random-seed-flag-for-BCM4355-and-B.patch b/5001-wifi-brcmfmac-use-random-seed-flag-for-BCM4355-and-B.patch new file mode 100644 index 0000000..745ebb4 --- /dev/null +++ b/5001-wifi-brcmfmac-use-random-seed-flag-for-BCM4355-and-B.patch @@ -0,0 +1,49 @@ +From 62705bca896c71150242465917e9fcd79735ea4b Mon Sep 17 00:00:00 2001 +From: Aditya Garg +Date: Mon, 20 Jan 2025 21:36:54 +0530 +Subject: [PATCH] wifi: brcmfmac: use random seed flag for BCM4355 and BCM4364 + firmware + +Before 6.13, random seed to the firmware was given based on the logic +whether the device had valid OTP or not, and such devices were found +mainly on the T2 and Apple Silicon Macs. In 6.13, the logic was changed, +and the device table was used for this purpose, so as to cover the special +case of BCM43752 chip. + +During the transition, the device table for BCM4364 and BCM4355 Wi-Fi chips +which had valid OTP was not modified, thus breaking Wi-Fi on these devices. +This patch adds does the necessary changes, similar to the ones done for +other chips. + +Fixes: ea11a89c3ac6 ("wifi: brcmfmac: add flag for random seed during firmware download") +Cc: stable@vger.kernel.org +Signed-off-by: Aditya Garg +--- + drivers/net/wireless/broadcom/brcm80211/brcmfmac/pcie.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/pcie.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/pcie.c +index e4395b1f8..d2caa80e9 100644 +--- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/pcie.c ++++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/pcie.c +@@ -2712,7 +2712,7 @@ static const struct pci_device_id brcmf_pcie_devid_table[] = { + BRCMF_PCIE_DEVICE(BRCM_PCIE_4350_DEVICE_ID, WCC), + BRCMF_PCIE_DEVICE_SUB(0x4355, BRCM_PCIE_VENDOR_ID_BROADCOM, 0x4355, WCC), + BRCMF_PCIE_DEVICE(BRCM_PCIE_4354_RAW_DEVICE_ID, WCC), +- BRCMF_PCIE_DEVICE(BRCM_PCIE_4355_DEVICE_ID, WCC), ++ BRCMF_PCIE_DEVICE(BRCM_PCIE_4355_DEVICE_ID, WCC_SEED), + BRCMF_PCIE_DEVICE(BRCM_PCIE_4356_DEVICE_ID, WCC), + BRCMF_PCIE_DEVICE(BRCM_PCIE_43567_DEVICE_ID, WCC), + BRCMF_PCIE_DEVICE(BRCM_PCIE_43570_DEVICE_ID, WCC), +@@ -2723,7 +2723,7 @@ static const struct pci_device_id brcmf_pcie_devid_table[] = { + BRCMF_PCIE_DEVICE(BRCM_PCIE_43602_2G_DEVICE_ID, WCC), + BRCMF_PCIE_DEVICE(BRCM_PCIE_43602_5G_DEVICE_ID, WCC), + BRCMF_PCIE_DEVICE(BRCM_PCIE_43602_RAW_DEVICE_ID, WCC), +- BRCMF_PCIE_DEVICE(BRCM_PCIE_4364_DEVICE_ID, WCC), ++ BRCMF_PCIE_DEVICE(BRCM_PCIE_4364_DEVICE_ID, WCC_SEED), + BRCMF_PCIE_DEVICE(BRCM_PCIE_4365_DEVICE_ID, BCA), + BRCMF_PCIE_DEVICE(BRCM_PCIE_4365_2G_DEVICE_ID, BCA), + BRCMF_PCIE_DEVICE(BRCM_PCIE_4365_5G_DEVICE_ID, BCA), +-- +2.39.5 (Apple Git-154) +