This series builds around the patch from Hector Martin which enables
SAE offload for WCC vendor devices like the BCM4378.
Other patches involve exposing firmware interface layer functions to
per-vendor modules and allowing per-vendor feature detection or override.
This series applies to the main branch of the wireless-next repository.
Arend van Spriel (3):
wifi: brcmfmac: export firmware interface functions
wifi: brcmfmac: add per-vendor feature detection callback
wifi: brcmfmac: move feature overrides before feature_disable
Hector Martin (1):
wifi: brcmfmac: cfg80211: Use WSEC to set SAE password
.../broadcom/brcm80211/brcmfmac/bca/core.c | 8 ++
.../broadcom/brcm80211/brcmfmac/cfg80211.c | 58 ++++----
.../broadcom/brcm80211/brcmfmac/cfg80211.h | 2 +
.../broadcom/brcm80211/brcmfmac/core.c | 2 +-
.../broadcom/brcm80211/brcmfmac/cyw/core.c | 28 ++++
.../broadcom/brcm80211/brcmfmac/feature.c | 11 +-
.../broadcom/brcm80211/brcmfmac/fwil.c | 116 ++--------------
.../broadcom/brcm80211/brcmfmac/fwil.h | 127 +++++++++++++++---
.../broadcom/brcm80211/brcmfmac/fwil_types.h | 2 +-
.../broadcom/brcm80211/brcmfmac/fwvid.h | 25 ++++
.../broadcom/brcm80211/brcmfmac/wcc/core.c | 9 ++
12 files changed, 224 insertions(+), 167 deletions(-)
--
2.32.0
Hi Arend,
kernel test robot noticed the following build warnings:
[auto build test WARNING on wireless-next/main]
[also build test WARNING on wireless/main linus/master v6.7-rc8 next-20231222]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]
url: https://github.com/intel-lab-lkp/linux/commits/Arend-van-Spriel/wifi-brcmfmac-export-firmware-interface-functions/20240101-164717
base: https://git.kernel.org/pub/scm/linux/kernel/git/wireless/wireless-next.git main
patch link: https://lore.kernel.org/r/20240101084430.161821-2-arend.vanspriel%40broadcom.com
patch subject: [PATCH 1/4] wifi: brcmfmac: export firmware interface functions
config: m68k-allmodconfig (https://download.01.org/0day-ci/archive/20240102/[email protected]/config)
compiler: m68k-linux-gcc (GCC) 13.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240102/[email protected]/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <[email protected]>
| Closes: https://lore.kernel.org/oe-kbuild-all/[email protected]/
All warnings (new ones prefixed by >>):
In file included from include/uapi/linux/swab.h:8,
from include/linux/swab.h:5,
from include/uapi/linux/byteorder/big_endian.h:14,
from include/linux/byteorder/big_endian.h:5,
from arch/m68k/include/uapi/asm/byteorder.h:5,
from include/asm-generic/bitops/le.h:6,
from arch/m68k/include/asm/bitops.h:566,
from include/linux/bitops.h:68,
from include/linux/kernel.h:23,
from drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c:8:
In function '__arch_swab32',
inlined from '__fswab32' at include/uapi/linux/swab.h:60:9,
inlined from 'brcmf_fil_cmd_int_get' at drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwil.h:99:19,
inlined from 'brcmf_cfg80211_get_station_ibss' at drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c:3088:8:
>> arch/m68k/include/uapi/asm/swab.h:22:9: warning: 'rate' is used uninitialized [-Wuninitialized]
22 | __asm__("rolw #8,%0; swap %0; rolw #8,%0" : "=d" (val) : "0" (val));
| ^~~~~~~
drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c: In function 'brcmf_cfg80211_get_station_ibss':
drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c:3084:13: note: 'rate' was declared here
3084 | u32 rate;
| ^~~~
vim +/rate +22 arch/m68k/include/uapi/asm/swab.h
9863a0babc2f0d arch/m68k/include/asm/swab.h Greg Ungerer 2009-03-16 19
9863a0babc2f0d arch/m68k/include/asm/swab.h Greg Ungerer 2009-03-16 20 static inline __attribute_const__ __u32 __arch_swab32(__u32 val)
9863a0babc2f0d arch/m68k/include/asm/swab.h Greg Ungerer 2009-03-16 21 {
9863a0babc2f0d arch/m68k/include/asm/swab.h Greg Ungerer 2009-03-16 @22 __asm__("rolw #8,%0; swap %0; rolw #8,%0" : "=d" (val) : "0" (val));
9863a0babc2f0d arch/m68k/include/asm/swab.h Greg Ungerer 2009-03-16 23 return val;
9863a0babc2f0d arch/m68k/include/asm/swab.h Greg Ungerer 2009-03-16 24 }
9863a0babc2f0d arch/m68k/include/asm/swab.h Greg Ungerer 2009-03-16 25 #define __arch_swab32 __arch_swab32
6aeea60aee9454 arch/m68k/include/asm/swab.h Harvey Harrison 2009-01-20 26 #endif
9863a0babc2f0d arch/m68k/include/asm/swab.h Greg Ungerer 2009-03-16 27
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
Hi Arend,
kernel test robot noticed the following build warnings:
[auto build test WARNING on wireless-next/main]
[also build test WARNING on wireless/main linus/master v6.7-rc8 next-20231222]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]
url: https://github.com/intel-lab-lkp/linux/commits/Arend-van-Spriel/wifi-brcmfmac-export-firmware-interface-functions/20240101-164717
base: https://git.kernel.org/pub/scm/linux/kernel/git/wireless/wireless-next.git main
patch link: https://lore.kernel.org/r/20240101084430.161821-2-arend.vanspriel%40broadcom.com
patch subject: [PATCH 1/4] wifi: brcmfmac: export firmware interface functions
config: sparc-allmodconfig (https://download.01.org/0day-ci/archive/20240102/[email protected]/config)
compiler: sparc64-linux-gcc (GCC) 13.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240102/[email protected]/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <[email protected]>
| Closes: https://lore.kernel.org/oe-kbuild-all/[email protected]/
All warnings (new ones prefixed by >>):
In file included from include/linux/swab.h:5,
from include/uapi/linux/byteorder/big_endian.h:14,
from include/linux/byteorder/big_endian.h:5,
from arch/sparc/include/uapi/asm/byteorder.h:5,
from arch/sparc/include/asm/bitops_64.h:16,
from arch/sparc/include/asm/bitops.h:5,
from include/linux/bitops.h:68,
from include/linux/kernel.h:23,
from drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c:8:
In function '__fswab32',
inlined from 'brcmf_fil_cmd_int_get' at drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwil.h:99:19,
inlined from 'brcmf_cfg80211_get_station_ibss' at drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c:3088:8:
>> include/uapi/linux/swab.h:19:45: warning: 'rate' is used uninitialized [-Wuninitialized]
19 | (((__u32)(x) & (__u32)0x000000ffUL) << 24) | \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~
include/uapi/linux/swab.h:62:16: note: in expansion of macro '___constant_swab32'
62 | return ___constant_swab32(val);
| ^~~~~~~~~~~~~~~~~~
drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c: In function 'brcmf_cfg80211_get_station_ibss':
drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c:3084:13: note: 'rate' was declared here
3084 | u32 rate;
| ^~~~
vim +/rate +19 include/uapi/linux/swab.h
607ca46e97a1b6 David Howells 2012-10-13 9
607ca46e97a1b6 David Howells 2012-10-13 10 /*
607ca46e97a1b6 David Howells 2012-10-13 11 * casts are necessary for constants, because we never know how for sure
607ca46e97a1b6 David Howells 2012-10-13 12 * how U/UL/ULL map to __u16, __u32, __u64. At least not in a portable way.
607ca46e97a1b6 David Howells 2012-10-13 13 */
607ca46e97a1b6 David Howells 2012-10-13 14 #define ___constant_swab16(x) ((__u16)( \
607ca46e97a1b6 David Howells 2012-10-13 15 (((__u16)(x) & (__u16)0x00ffU) << 8) | \
607ca46e97a1b6 David Howells 2012-10-13 16 (((__u16)(x) & (__u16)0xff00U) >> 8)))
607ca46e97a1b6 David Howells 2012-10-13 17
607ca46e97a1b6 David Howells 2012-10-13 18 #define ___constant_swab32(x) ((__u32)( \
607ca46e97a1b6 David Howells 2012-10-13 @19 (((__u32)(x) & (__u32)0x000000ffUL) << 24) | \
607ca46e97a1b6 David Howells 2012-10-13 20 (((__u32)(x) & (__u32)0x0000ff00UL) << 8) | \
607ca46e97a1b6 David Howells 2012-10-13 21 (((__u32)(x) & (__u32)0x00ff0000UL) >> 8) | \
607ca46e97a1b6 David Howells 2012-10-13 22 (((__u32)(x) & (__u32)0xff000000UL) >> 24)))
607ca46e97a1b6 David Howells 2012-10-13 23
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
On January 2, 2024 4:31:53 AM kernel test robot <[email protected]> wrote:
> Hi Arend,
>
> kernel test robot noticed the following build warnings:
[...]
> 'brcmf_cfg80211_get_station_ibss' at
> drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c:3088:8:
>>> include/uapi/linux/swab.h:19:45: warning: 'rate' is used uninitialized
>>> [-Wuninitialized]
> 19 | (((__u32)(x) & (__u32)0x000000ffUL) << 24) | \
> | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~
> include/uapi/linux/swab.h:62:16: note: in expansion of macro
> '___constant_swab32'
> 62 | return ___constant_swab32(val);
> | ^~~~~~~~~~~~~~~~~~
> drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c: In function
> 'brcmf_cfg80211_get_station_ibss':
> drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c:3084:13: note:
> 'rate' was declared here
> 3084 | u32 rate;
> | ^~~~
Will fix it and respin this patch series.
Regards,
Arend