2022-06-13 09:30:24

by Arend Van Spriel

[permalink] [raw]
Subject: [PATCH 0/7] brcmfmac: support devices from multiple vendors

The bcm43xx family of wifi chipsets found its way to different
groups inside and outside Broadcom. For the fullmac devices this
means that in those difference groups firmware is being developed
and the firmware api is bound to diverge. This series introduces
a design change to accomodate supporting multiple firmware api's.
The vender-specific support can be compiled in brcmfmac or
built as a separate module. Currently the vendor-specific support
does not have any real effect. At the momemt looking into SAE support
which appear to be different for Cypress devices so that might be a
first use-case. Meanwhile wanted to put this series out there and
get feedback on it. Some ideas were taken from iwlwifi which does
similar things for iwlmvm, iwldvm, etc.

The patches apply to the main branch of the wireless-next repository.

Arend van Spriel (7):
brcmfmac: add function to unbind device to bus layer api
brcmfmac: add firmware vendor info in driver data
brcmfmac: add support for vendor-specific firmware api
brcmfmac: add support for Cypress firmware api
brcmfmac: add support Broadcom BCA firmware api
brcmfmac: add vendor name in revinfo debugfs file
brcmfmac: introduce BRCMFMAC exported symbols namespace

.../broadcom/brcm80211/brcmfmac/Kconfig | 30 +++
.../broadcom/brcm80211/brcmfmac/Makefile | 11 +
.../broadcom/brcm80211/brcmfmac/bca/Makefile | 12 +
.../broadcom/brcm80211/brcmfmac/bca/core.c | 27 +++
.../broadcom/brcm80211/brcmfmac/bca/module.c | 27 +++
.../broadcom/brcm80211/brcmfmac/bca/vops.h | 15 ++
.../broadcom/brcm80211/brcmfmac/bcmsdh.c | 50 +++--
.../broadcom/brcm80211/brcmfmac/bus.h | 30 ++-
.../broadcom/brcm80211/brcmfmac/core.c | 12 +-
.../broadcom/brcm80211/brcmfmac/core.h | 8 +
.../broadcom/brcm80211/brcmfmac/cyw/Makefile | 12 +
.../broadcom/brcm80211/brcmfmac/cyw/core.c | 27 +++
.../broadcom/brcm80211/brcmfmac/cyw/module.c | 27 +++
.../broadcom/brcm80211/brcmfmac/cyw/vops.h | 15 ++
.../broadcom/brcm80211/brcmfmac/fwvid.c | 205 ++++++++++++++++++
.../broadcom/brcm80211/brcmfmac/fwvid.h | 47 ++++
.../broadcom/brcm80211/brcmfmac/pcie.c | 64 +++---
.../broadcom/brcm80211/brcmfmac/sdio.c | 12 +-
.../broadcom/brcm80211/brcmfmac/usb.c | 27 ++-
.../broadcom/brcm80211/brcmfmac/wcc/Makefile | 12 +
.../broadcom/brcm80211/brcmfmac/wcc/core.c | 27 +++
.../broadcom/brcm80211/brcmfmac/wcc/module.c | 27 +++
.../broadcom/brcm80211/brcmfmac/wcc/vops.h | 15 ++
23 files changed, 678 insertions(+), 61 deletions(-)
create mode 100644
drivers/net/wireless/broadcom/brcm80211/brcmfmac/bca/Makefile
create mode 100644 drivers/net/wireless/broadcom/brcm80211/brcmfmac/bca/core.c
create mode 100644
drivers/net/wireless/broadcom/brcm80211/brcmfmac/bca/module.c
create mode 100644 drivers/net/wireless/broadcom/brcm80211/brcmfmac/bca/vops.h
create mode 100644
drivers/net/wireless/broadcom/brcm80211/brcmfmac/cyw/Makefile
create mode 100644 drivers/net/wireless/broadcom/brcm80211/brcmfmac/cyw/core.c
create mode 100644
drivers/net/wireless/broadcom/brcm80211/brcmfmac/cyw/module.c
create mode 100644 drivers/net/wireless/broadcom/brcm80211/brcmfmac/cyw/vops.h
create mode 100644 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwvid.c
create mode 100644 drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwvid.h
create mode 100644
drivers/net/wireless/broadcom/brcm80211/brcmfmac/wcc/Makefile
create mode 100644 drivers/net/wireless/broadcom/brcm80211/brcmfmac/wcc/core.c
create mode 100644
drivers/net/wireless/broadcom/brcm80211/brcmfmac/wcc/module.c
create mode 100644 drivers/net/wireless/broadcom/brcm80211/brcmfmac/wcc/vops.h

--
2.32.0


2022-07-28 09:35:38

by Kalle Valo

[permalink] [raw]
Subject: Re: [PATCH 0/7] brcmfmac: support devices from multiple vendors

[email protected] writes:

> The bcm43xx family of wifi chipsets found its way to different
> groups inside and outside Broadcom. For the fullmac devices this
> means that in those difference groups firmware is being developed
> and the firmware api is bound to diverge. This series introduces
> a design change to accomodate supporting multiple firmware api's.
> The vender-specific support can be compiled in brcmfmac or
> built as a separate module. Currently the vendor-specific support
> does not have any real effect. At the momemt looking into SAE support
> which appear to be different for Cypress devices so that might be a
> first use-case. Meanwhile wanted to put this series out there and
> get feedback on it. Some ideas were taken from iwlwifi which does
> similar things for iwlmvm, iwldvm, etc.
>
> The patches apply to the main branch of the wireless-next repository.
>
> Arend van Spriel (7):
> brcmfmac: add function to unbind device to bus layer api
> brcmfmac: add firmware vendor info in driver data
> brcmfmac: add support for vendor-specific firmware api
> brcmfmac: add support for Cypress firmware api
> brcmfmac: add support Broadcom BCA firmware api
> brcmfmac: add vendor name in revinfo debugfs file
> brcmfmac: introduce BRCMFMAC exported symbols namespace

I think there's something wrong in mail formatting, tried to apply just
for a test and it failed:

error: git diff header lacks filename information when removing 1 leading pathname component (line 7)
error: could not build fake ancestor
hint: Use 'git am --show-current-patch=diff' to see the failed patch
Applying: brcmfmac: add function to unbind device to bus layer api
Patch failed at 0001 brcmfmac: add function to unbind device to bus layer api

--
https://patchwork.kernel.org/project/linux-wireless/list/

https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches

2022-07-29 08:52:47

by Arend Van Spriel

[permalink] [raw]
Subject: Re: [PATCH 0/7] brcmfmac: support devices from multiple vendors

On 7/28/2022 11:33 AM, Kalle Valo wrote:
> [email protected] writes:
>
>> The bcm43xx family of wifi chipsets found its way to different
>> groups inside and outside Broadcom. For the fullmac devices this
>> means that in those difference groups firmware is being developed
>> and the firmware api is bound to diverge. This series introduces
>> a design change to accomodate supporting multiple firmware api's.
>> The vender-specific support can be compiled in brcmfmac or
>> built as a separate module. Currently the vendor-specific support
>> does not have any real effect. At the momemt looking into SAE support
>> which appear to be different for Cypress devices so that might be a
>> first use-case. Meanwhile wanted to put this series out there and
>> get feedback on it. Some ideas were taken from iwlwifi which does
>> similar things for iwlmvm, iwldvm, etc.
>>
>> The patches apply to the main branch of the wireless-next repository.
>>
>> Arend van Spriel (7):
>> brcmfmac: add function to unbind device to bus layer api
>> brcmfmac: add firmware vendor info in driver data
>> brcmfmac: add support for vendor-specific firmware api
>> brcmfmac: add support for Cypress firmware api
>> brcmfmac: add support Broadcom BCA firmware api
>> brcmfmac: add vendor name in revinfo debugfs file
>> brcmfmac: introduce BRCMFMAC exported symbols namespace
>
> I think there's something wrong in mail formatting, tried to apply just
> for a test and it failed:
>
> error: git diff header lacks filename information when removing 1 leading pathname component (line 7)
> error: could not build fake ancestor
> hint: Use 'git am --show-current-patch=diff' to see the failed patch
> Applying: brcmfmac: add function to unbind device to bus layer api
> Patch failed at 0001 brcmfmac: add function to unbind device to bus layer api

Hi Kalle,

Looks strange indeed. I will look into it and resend the whole series.

Gr. AvS