Re: [PATCH v2] brcmfmac: Add support for BCM43596 PCIe Wi-Fi

From: Hector Martin
Date: Wed Sep 21 2022 - 00:38:19 EST


On 21/09/2022 09.16, Konrad Dybcio wrote:
> Add support for BCM43596 dual-band AC chip, found in
> SONY Xperia X Performance, XZ and XZs smartphones (and
> *possibly* other devices from other manufacturers).
> The chip doesn't require any special handling and seems to work
> just fine OOTB.
>
> PCIe IDs taken from: https://github.com/sonyxperiadev/kernel/commit/9e43fefbac8e43c3d7792e73ca52a052dd86d7e3.patch
>
> Signed-off-by: Konrad Dybcio <konrad.dybcio@xxxxxxxxxxxxxx>
> ---
> Changes since v1:
> - rebased the patch against -next
>
> drivers/net/wireless/broadcom/brcm80211/brcmfmac/chip.c | 2 ++
> drivers/net/wireless/broadcom/brcm80211/brcmfmac/pcie.c | 4 ++++
> drivers/net/wireless/broadcom/brcm80211/include/brcm_hw_ids.h | 4 ++++
> 3 files changed, 10 insertions(+)
>
[...]
> diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/pcie.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/pcie.c
> index f98641bb1528..2e7fc66adf31 100644
> --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/pcie.c
> +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/pcie.c
> @@ -81,6 +81,7 @@ static const struct brcmf_firmware_mapping brcmf_pcie_fwnames[] = {
> BRCMF_FW_ENTRY(BRCM_CC_43570_CHIP_ID, 0xFFFFFFFF, 43570),
> BRCMF_FW_ENTRY(BRCM_CC_4358_CHIP_ID, 0xFFFFFFFF, 4358),
> BRCMF_FW_ENTRY(BRCM_CC_4359_CHIP_ID, 0xFFFFFFFF, 4359),
> + BRCMF_FW_ENTRY(BRCM_CC_43596_CHIP_ID, 0xFFFFFFFF, 4359),

So this works with the same firmware as 4359? That sounds a bit off. Is
that really the case?

brcmfmac4359-pcie isn't in linux-firmware, but presumably there is
*some* semi-canonical firmware you can find for that chip that other
people are already using. If that works on 43596 *and* you plan on using
that firmware or some other firmware marked 4359, then this is fine. If
you are using separate firmware that shipped with a 43596 device and
isn't itself marked 4359, please make it a separate firmware entry. We
can always symlink the firmwares if it later turns out there is no
reason to have different ones for each chip.

- Hector