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. -- https://patchwork.kernel.org/patch/11458023/ https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches