On 2020-03-26 15:29, Kalle Valo wrote:
Sowmiya Sree Elavalagan <ssreeela@xxxxxxxxxxxxxx> wrote:
From: Lei Wang <leiwa@xxxxxxxxxxxxxx>
Set right channel frequencies in VHT160 mode according to the VHT160
interoperability workaround added as part of IEEE Std 802.11™-2016 in
"Table 9-252—VHT Operation Information subfields", band_center_freq2
corresponds to CCFS1 in Table 9-253. Previous implementation
(band_center_freq2 = 0 for VHT160) is only deprecated.
Enable VHT80+80 mode and set the proper peer RX nss value for VHT160
and
VHT80+80 mode.
Based on patches by Sebastian Gottschall:
https://lkml.kernel.org/r/20180704095444.662-1-s.gottschall@xxxxxxxxxx
https://lkml.kernel.org/r/20180704120519.6479-1-s.gottschall@xxxxxxxxxx
Tested: qca9984 with firmware ver 10.4-3.10-00047
Co-developed-by: Sebastian Gottschall <s.gottschall@xxxxxxxxxx>
Signed-off-by: Sebastian Gottschall <s.gottschall@xxxxxxxxxx>
Co-developed-by: Rick Wu <rwu@xxxxxxxxxxxxxx>
Signed-off-by: Rick Wu <rwu@xxxxxxxxxxxxxx>
Signed-off-by: Lei Wang <leiwa@xxxxxxxxxxxxxx>
Signed-off-by: Sowmiya Sree Elavalagan <ssreeela@xxxxxxxxxxxxxx>
Fails to build on GCC 8.1. Did you test this?
In file included from ./include/asm-generic/bug.h:5,
from ./arch/x86/include/asm/bug.h:83,
from ./include/linux/bug.h:5,
from ./include/net/mac80211.h:16,
from drivers/net/wireless/ath/ath10k/mac.h:10,
from drivers/net/wireless/ath/ath10k/mac.c:8:
In function 'ath10k_peer_assoc_h_vht',
inlined from 'ath10k_peer_assoc_prepare' at
drivers/net/wireless/ath/ath10k/mac.c:2790:2:
./include/linux/compiler.h:350:38: error: call to
'__compiletime_assert_2631' declared with attribute error:
BUILD_BUG_ON failed: ((((((~(((0UL)))) - ((((1UL))) << (3)) + 1) &
(~(((0UL))) >> (64 - 1 - (5))))) + (1ULL <<
(__builtin_ffsll((((~(((0UL)))) - ((((1UL))) << (3)) + 1) &
(~(((0UL))) >> (64 - 1 - (5))))) - 1))) & ((((((~(((0UL)))) -
((((1UL))) << (3)) + 1) & (~(((0UL))) >> (64 - 1 - (5))))) + (1ULL <<
(__builtin_ffsll((((~(((0UL)))) - ((((1UL))) << (3)) + 1) &
(~(((0UL))) >> (64 - 1 - (5))))) - 1))) - 1)) != 0
_compiletime_assert(condition, msg, __compiletime_assert_, __LINE__)
^
./include/linux/compiler.h:331:4: note: in definition of macro
'__compiletime_assert'
prefix ## suffix(); \
^~~~~~
./include/linux/compiler.h:350:2: note: in expansion of macro
'_compiletime_assert'
_compiletime_assert(condition, msg, __compiletime_assert_, __LINE__)
^~~~~~~~~~~~~~~~~~~
./include/linux/build_bug.h:39:37: note: in expansion of macro
'compiletime_assert'
#define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
^~~~~~~~~~~~~~~~~~
./include/linux/bitfield.h:49:3: note: in expansion of macro
'BUILD_BUG_ON_MSG'
BUILD_BUG_ON_MSG(__builtin_constant_p(_val) ? \
^~~~~~~~~~~~~~~~
./include/linux/bitfield.h:81:3: note: in expansion of macro
'__BF_FIELD_CHECK'
__BF_FIELD_CHECK(_mask, 0ULL, _val, "FIELD_PREP: "); \
^~~~~~~~~~~~~~~~
drivers/net/wireless/ath/ath10k/mac.c:2631:4: note: in expansion of
macro 'FIELD_PREP'
FIELD_PREP(WMI_PEER_NSS_80_80MHZ_MASK, (rx_nss - 1));
^~~~~~~~~~
./include/linux/compiler.h:350:38: error: call to
'__compiletime_assert_2627' declared with attribute error:
BUILD_BUG_ON failed: ((((((~(((0UL)))) - ((((1UL))) << (0)) + 1) &
(~(((0UL))) >> (64 - 1 - (2))))) + (1ULL <<
(__builtin_ffsll((((~(((0UL)))) - ((((1UL))) << (0)) + 1) &
(~(((0UL))) >> (64 - 1 - (2))))) - 1))) & ((((((~(((0UL)))) -
((((1UL))) << (0)) + 1) & (~(((0UL))) >> (64 - 1 - (2))))) + (1ULL <<
(__builtin_ffsll((((~(((0UL)))) - ((((1UL))) << (0)) + 1) &
(~(((0UL))) >> (64 - 1 - (2))))) - 1))) - 1)) != 0
_compiletime_assert(condition, msg, __compiletime_assert_, __LINE__)
^
./include/linux/compiler.h:331:4: note: in definition of macro
'__compiletime_assert'
prefix ## suffix(); \
^~~~~~
./include/linux/compiler.h:350:2: note: in expansion of macro
'_compiletime_assert'
_compiletime_assert(condition, msg, __compiletime_assert_, __LINE__)
^~~~~~~~~~~~~~~~~~~
./include/linux/build_bug.h:39:37: note: in expansion of macro
'compiletime_assert'
#define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
^~~~~~~~~~~~~~~~~~
./include/linux/bitfield.h:49:3: note: in expansion of macro
'BUILD_BUG_ON_MSG'
BUILD_BUG_ON_MSG(__builtin_constant_p(_val) ? \
^~~~~~~~~~~~~~~~
./include/linux/bitfield.h:81:3: note: in expansion of macro
'__BF_FIELD_CHECK'
__BF_FIELD_CHECK(_mask, 0ULL, _val, "FIELD_PREP: "); \
^~~~~~~~~~~~~~~~
drivers/net/wireless/ath/ath10k/mac.c:2627:4: note: in expansion of
macro 'FIELD_PREP'
FIELD_PREP(WMI_PEER_NSS_160MHZ_MASK, (rx_nss - 1));
^~~~~~~~~~
make[5]: *** [drivers/net/wireless/ath/ath10k/mac.o] Error 1
make[5]: *** Waiting for unfinished jobs....
make[4]: *** [drivers/net/wireless/ath/ath10k] Error 2
make[3]: *** [drivers/net/wireless/ath] Error 2
make[2]: *** [drivers/net/wireless] Error 2
make[1]: *** [drivers/net] Error 2
make: *** [drivers] Error 2
Patch set to Changes Requested.
Hi Kalle,
I checked the build. Build was successful with GCC version 4.8.
Will fix the error and update the patch.
Thanks,
Sowmiya Sree