Re: [PATCH wireless-next v2] wifi: brcmfmac: Add support for BCM4361 PCIe chipset

Markuss Broks <[email protected]> Wed, 5 Aug 2026 18:20:45 +0300
Newsgroups org.kernel.vger.linux-wireless,dev.linux.lists.brcm80211,org.kernel.vger.linux-kernel
Message-ID <[email protected]>
Hi Arend,

On 8/5/26 6:16 PM, Arend van Spriel wrote:
> On 05/08/2026 15:56, Markuss Broks wrote:
>> Hi Arend,
>>
>> On 8/5/26 8:46 AM, Arend van Spriel wrote:
>>> On 04/08/2026 16:07, Markuss Broks via B4 Relay wrote:
>>>> From: Markuss Broks <[email protected]>
>>>>
>>>> Those are the required changes for the BCM4361 PCIe chipset support.
>>>
>>> Hi Markuss,
>>>
>>> That is a brief commit message. Maybe you can provide a bit of 
>>> context for this patch answering these questions: Are you using this 
>>> device in some project? What platform are you using (if any)? What 
>>> works and what does not?
>> I was just looking at similar device additions in brcmfmac, and 
>> noticed they didn't have much of a description, so I decided not to 
>> add much either. Should I add some general info about the BCM4361 
>> into the commit message?
>>
>> BCM4361 is used on the Samsung Galaxy S9 device (samsung-starlte), 
>> based on Exynos9810. There it's connected via PCIe link. Not sure if 
>> perhaps there's SDIO or USB or other variants of this chipset. 
>> Everything "basic" seems to work, seems to connect to both 2.4GHz and 
>> 5GHz networks, download speed looks good. Haven't tried station mode, 
>> but I'm not sure what's the proper way to set it up anyway.
>
> Mentioning the platform you tested these patches on is sufficient. So 
> when you say "connect to both 2.4GHz and 5GHz networks" I somehow 
> suspect you already covered station mode.
Okay, sure. I guess I kinda mixed up the terminology here, I meant to 
say that I haven't tested the AP mode, not the station mode, sorry for 
the confusion.
>  >>
>>>> Signed-off-by: Markuss Broks <[email protected]>
>>>> ---
>>>> Changes in v2:
>>>> - EDITME: describe what is new in this series revision.
>>>> - EDITME: use bulletpoints and terse descriptions.
>>>
>>> This really does not look very useful. Those EDITME: are for you! As 
>>> the
>>> actual patch did not change you can probably say:
>>>   - fix subject format indicating wifi subsystem and wireless-next 
>>> repo.
>>
>> Oh, sorry, I did not notice that b4 puts the changelog there if it's 
>> not in the cover letter. It's been a while since I last submitted 
>> something :) I will add the changelog there for v2 and v3 once I 
>> submit a v3.
>
> Sure. No problem.
>
>>>
>>>> - Link to v1: https://patch.msgid.link/20260803-broadcom-staging- 
>>>> [email protected]
>>>> ---
>>>> drivers/net/wireless/broadcom/brcm80211/brcmfmac/chip.c       | 3 +++
>>>> drivers/net/wireless/broadcom/brcm80211/brcmfmac/pcie.c       | 3 +++
>>>> drivers/net/wireless/broadcom/brcm80211/include/brcm_hw_ids.h | 2 ++
>>>> 3 files changed, 8 insertions(+)
>>>
>>> [...]
>>>
>>>> diff --git 
>>>> a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/pcie.c 
>>>> b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/pcie.c
>>>> index 55f4d7b970f2..914ae72a7b74 100644
>>>> --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/pcie.c
>>>> +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/pcie.c
>>>> @@ -59,6 +59,7 @@ BRCMF_FW_CLM_DEF(43570, "brcmfmac43570-pcie");
>>>> BRCMF_FW_DEF(4358, "brcmfmac4358-pcie");
>>>> BRCMF_FW_DEF(4359, "brcmfmac4359-pcie");
>>>> BRCMF_FW_DEF(4359C, "brcmfmac4359c-pcie");
>>>> +BRCMF_FW_CLM_DEF(4361, "brcmfmac4361-pcie");
>>>
>>> Are you sure the CLM blob is required? Can you test without it being 
>>> present in /lib/firmware?
>> I have tried without the CLM blob, it says "no clm blob available, 
>> device might have limited channels available" but seems to at least 
>> somewhat work, I haven't noticed a difference. It's still a good idea 
>> to load it probably, right?
>
> Right. I was just curious whether it has a working CLM blob compiled 
> in firmware or not.
>
>>>
>>>> BRCMF_FW_CLM_DEF(4364B2, "brcmfmac4364b2-pcie");
>>>> BRCMF_FW_CLM_DEF(4364B3, "brcmfmac4364b3-pcie");
>>>> BRCMF_FW_DEF(4365B, "brcmfmac4365b-pcie");
>>>
>>> [...]
>>>
>>>> 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 df3b67ba4db2..b800cbfdece1 100644
>>>> --- a/drivers/net/wireless/broadcom/brcm80211/include/brcm_hw_ids.h
>>>> +++ b/drivers/net/wireless/broadcom/brcm80211/include/brcm_hw_ids.h
>>>
>>> [...]
>>>
>>>> @@ -86,6 +87,7 @@
>>>> #define BRCM_PCIE_43602_2G_DEVICE_ID 0x43bb
>>>> #define BRCM_PCIE_43602_5G_DEVICE_ID 0x43bc
>>>> #define BRCM_PCIE_43602_RAW_DEVICE_ID 43602
>>>> +#define BRCM_PCIE_4361_DEVICE_ID 0x441f
>>>
>>> Please add:
>>> +#define BRCM_PCIE_4361_2G_DEVICE_ID 0x4420
>>> +#define BRCM_PCIE_4361_5G_DEVICE_ID 0x4421
>>
>> Are those some special variants of the chipset?
>
> Not really. The difference is in the radio frontend. 0x441f is a 
> dual-band. The other two have only a single band so the board gets a 
> bit cheaper. The device id is programmed in on-chip OTP so firmware 
> knows what type of board it is running on.
Okay, I see, thanks for the explanation!
>
> Regards,
> Arend

-Markuss