Message ID | 20240612234209.2324181-1-quic_pradeepc@quicinc.com |
---|---|
Headers | show |
Series | wifi: ath12k: add MU-MIMO and 160 MHz bandwidth support | expand |
On 6/12/2024 4:42 PM, Pradeep Kumar Chitrapu wrote: > Add support for > 1. enabling MU-MIMO in HE and EHT modes from hardware > 2. setting fixed HE rate/GI/LTF > 3. 160 MHz bandwidth in HE mode > 4. extended NSS bandwidth support > > Tested-on: QCN9274 hw2.0 PCI WLAN.WBE.1.0.1-00029-QCAHKSWPL_SILICONZ-1 > Tested-on: WCN7850 hw2.0 PCI WLAN.HMT.1.0.c5-00481-QCAHMTSWPL_V1.0_V2.0_SILICONZ-3 > > changes in v7: > - rebase and remove patch 01/10 which was merged already. > > changes in v6: > - Change comment in patch 01/10 to represent only AP mode > implementation. > > changes in v5: > - Fix column length to 80 in patch 01/10 > - Fix advertises spelling in patch 09/10 > - Fix choosing spelling in patch 10/10 > > changes in v4: > - Fix ath12k-check warnings in patch 2/10 and 7/10 > - remove "hostapd" reference in patches 2/10 and 3/10 > - remove redundant prerequisite-patch-id's in cover letter > > changes in v3: > - address review comments for fixing ath12k-check issues. > > changes in v2: > - Amend mac80211 patch description as the patch is not specific > to AP mode. > - Amend EHT MU-MIMO patch description to specify future support > for STA mode. > > Pradeep Kumar Chitrapu (9): > wifi: ath12k: push HE MU-MIMO params to hardware > wifi: ath12k: push EHT MU-MIMO params to hardware > wifi: ath12k: move HE MCS mapper to a separate function > wifi: ath12k: generate rx and tx mcs maps for supported HE mcs > wifi: ath12k: fix TX and RX MCS rate configurations in HE mode > wifi: ath12k: add support for setting fixed HE rate/GI/LTF > wifi: ath12k: clean up 80P80 support > wifi: ath12k: add support for 160 MHz bandwidth > wifi: ath12k: add extended NSS bandwidth support for 160 MHz > > drivers/net/wireless/ath/ath12k/core.h | 2 + > drivers/net/wireless/ath/ath12k/mac.c | 1052 ++++++++++++++++++++---- > drivers/net/wireless/ath/ath12k/mac.h | 17 + > drivers/net/wireless/ath/ath12k/wmi.c | 24 +- > drivers/net/wireless/ath/ath12k/wmi.h | 98 ++- > 5 files changed, 985 insertions(+), 208 deletions(-) > > > base-commit: e72048809ec7355a947415ae6836d2eb7fdcda39 This series produces the following warnings when applied to ath-202406171110 In function 'ath12k_peer_assoc_h_he', inlined from 'ath12k_peer_assoc_prepare' at drivers/net/wireless/ath/ath12k/mac.c:2951:2: drivers/net/wireless/ath/ath12k/mac.c:2357:21: warning: 'ath12k_peer_assoc_h_he_limit' reading 16 bytes from a region of size 0 [-Wstringop-overread] 2357 | v = ath12k_peer_assoc_h_he_limit(v, he_mcs_mask); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/net/wireless/ath/ath12k/mac.c:2357:21: note: referencing argument 2 of type 'const u16[8]' {aka 'const short unsigned int[8]'} drivers/net/wireless/ath/ath12k/mac.c: In function 'ath12k_peer_assoc_prepare': drivers/net/wireless/ath/ath12k/mac.c:2139:12: note: in a call to function 'ath12k_peer_assoc_h_he_limit' 2139 | static u16 ath12k_peer_assoc_h_he_limit(u16 tx_mcs_set, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ In function 'ath12k_peer_assoc_h_he', inlined from 'ath12k_peer_assoc_prepare' at drivers/net/wireless/ath/ath12k/mac.c:2951:2: drivers/net/wireless/ath/ath12k/mac.c:2370:21: warning: 'ath12k_peer_assoc_h_he_limit' reading 16 bytes from a region of size 0 [-Wstringop-overread] 2370 | v = ath12k_peer_assoc_h_he_limit(v, he_mcs_mask); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/net/wireless/ath/ath12k/mac.c:2370:21: note: referencing argument 2 of type 'const u16[8]' {aka 'const short unsigned int[8]'} drivers/net/wireless/ath/ath12k/mac.c: In function 'ath12k_peer_assoc_prepare': drivers/net/wireless/ath/ath12k/mac.c:2139:12: note: in a call to function 'ath12k_peer_assoc_h_he_limit' 2139 | static u16 ath12k_peer_assoc_h_he_limit(u16 tx_mcs_set, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ In function 'ath12k_peer_assoc_h_he', inlined from 'ath12k_peer_assoc_prepare' at drivers/net/wireless/ath/ath12k/mac.c:2951:2: drivers/net/wireless/ath/ath12k/mac.c:2370:21: warning: 'ath12k_peer_assoc_h_he_limit' reading 16 bytes from a region of size 0 [-Wstringop-overread] 2370 | v = ath12k_peer_assoc_h_he_limit(v, he_mcs_mask); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/net/wireless/ath/ath12k/mac.c:2370:21: note: referencing argument 2 of type 'const u16[8]' {aka 'const short unsigned int[8]'} drivers/net/wireless/ath/ath12k/mac.c: In function 'ath12k_peer_assoc_prepare': drivers/net/wireless/ath/ath12k/mac.c:2139:12: note: in a call to function 'ath12k_peer_assoc_h_he_limit' 2139 | static u16 ath12k_peer_assoc_h_he_limit(u16 tx_mcs_set, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
On 6/17/2024 11:46 AM, Jeff Johnson wrote: > On 6/12/2024 4:42 PM, Pradeep Kumar Chitrapu wrote: >> Add support for >> 1. enabling MU-MIMO in HE and EHT modes from hardware >> 2. setting fixed HE rate/GI/LTF >> 3. 160 MHz bandwidth in HE mode >> 4. extended NSS bandwidth support >> >> Tested-on: QCN9274 hw2.0 PCI WLAN.WBE.1.0.1-00029-QCAHKSWPL_SILICONZ-1 >> Tested-on: WCN7850 hw2.0 PCI WLAN.HMT.1.0.c5-00481-QCAHMTSWPL_V1.0_V2.0_SILICONZ-3 >> >> changes in v7: >> - rebase and remove patch 01/10 which was merged already. >> >> changes in v6: >> - Change comment in patch 01/10 to represent only AP mode >> implementation. >> >> changes in v5: >> - Fix column length to 80 in patch 01/10 >> - Fix advertises spelling in patch 09/10 >> - Fix choosing spelling in patch 10/10 >> >> changes in v4: >> - Fix ath12k-check warnings in patch 2/10 and 7/10 >> - remove "hostapd" reference in patches 2/10 and 3/10 >> - remove redundant prerequisite-patch-id's in cover letter >> >> changes in v3: >> - address review comments for fixing ath12k-check issues. >> >> changes in v2: >> - Amend mac80211 patch description as the patch is not specific >> to AP mode. >> - Amend EHT MU-MIMO patch description to specify future support >> for STA mode. >> >> Pradeep Kumar Chitrapu (9): >> wifi: ath12k: push HE MU-MIMO params to hardware >> wifi: ath12k: push EHT MU-MIMO params to hardware >> wifi: ath12k: move HE MCS mapper to a separate function >> wifi: ath12k: generate rx and tx mcs maps for supported HE mcs >> wifi: ath12k: fix TX and RX MCS rate configurations in HE mode >> wifi: ath12k: add support for setting fixed HE rate/GI/LTF >> wifi: ath12k: clean up 80P80 support >> wifi: ath12k: add support for 160 MHz bandwidth >> wifi: ath12k: add extended NSS bandwidth support for 160 MHz >> >> drivers/net/wireless/ath/ath12k/core.h | 2 + >> drivers/net/wireless/ath/ath12k/mac.c | 1052 ++++++++++++++++++++---- >> drivers/net/wireless/ath/ath12k/mac.h | 17 + >> drivers/net/wireless/ath/ath12k/wmi.c | 24 +- >> drivers/net/wireless/ath/ath12k/wmi.h | 98 ++- >> 5 files changed, 985 insertions(+), 208 deletions(-) >> >> >> base-commit: e72048809ec7355a947415ae6836d2eb7fdcda39 > > This series produces the following warnings when applied to ath-202406171110 > > In function 'ath12k_peer_assoc_h_he', > inlined from 'ath12k_peer_assoc_prepare' at drivers/net/wireless/ath/ath12k/mac.c:2951:2: > drivers/net/wireless/ath/ath12k/mac.c:2357:21: warning: 'ath12k_peer_assoc_h_he_limit' reading 16 bytes from a region of size 0 [-Wstringop-overread] > 2357 | v = ath12k_peer_assoc_h_he_limit(v, he_mcs_mask); > | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > drivers/net/wireless/ath/ath12k/mac.c:2357:21: note: referencing argument 2 of type 'const u16[8]' {aka 'const short unsigned int[8]'} > drivers/net/wireless/ath/ath12k/mac.c: In function 'ath12k_peer_assoc_prepare': > drivers/net/wireless/ath/ath12k/mac.c:2139:12: note: in a call to function 'ath12k_peer_assoc_h_he_limit' > 2139 | static u16 ath12k_peer_assoc_h_he_limit(u16 tx_mcs_set, > | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ > In function 'ath12k_peer_assoc_h_he', > inlined from 'ath12k_peer_assoc_prepare' at drivers/net/wireless/ath/ath12k/mac.c:2951:2: > drivers/net/wireless/ath/ath12k/mac.c:2370:21: warning: 'ath12k_peer_assoc_h_he_limit' reading 16 bytes from a region of size 0 [-Wstringop-overread] > 2370 | v = ath12k_peer_assoc_h_he_limit(v, he_mcs_mask); > | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > drivers/net/wireless/ath/ath12k/mac.c:2370:21: note: referencing argument 2 of type 'const u16[8]' {aka 'const short unsigned int[8]'} > drivers/net/wireless/ath/ath12k/mac.c: In function 'ath12k_peer_assoc_prepare': > drivers/net/wireless/ath/ath12k/mac.c:2139:12: note: in a call to function 'ath12k_peer_assoc_h_he_limit' > 2139 | static u16 ath12k_peer_assoc_h_he_limit(u16 tx_mcs_set, > | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ > In function 'ath12k_peer_assoc_h_he', > inlined from 'ath12k_peer_assoc_prepare' at drivers/net/wireless/ath/ath12k/mac.c:2951:2: > drivers/net/wireless/ath/ath12k/mac.c:2370:21: warning: 'ath12k_peer_assoc_h_he_limit' reading 16 bytes from a region of size 0 [-Wstringop-overread] > 2370 | v = ath12k_peer_assoc_h_he_limit(v, he_mcs_mask); > | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > drivers/net/wireless/ath/ath12k/mac.c:2370:21: note: referencing argument 2 of type 'const u16[8]' {aka 'const short unsigned int[8]'} > drivers/net/wireless/ath/ath12k/mac.c: In function 'ath12k_peer_assoc_prepare': > drivers/net/wireless/ath/ath12k/mac.c:2139:12: note: in a call to function 'ath12k_peer_assoc_h_he_limit' > 2139 | static u16 ath12k_peer_assoc_h_he_limit(u16 tx_mcs_set, > | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ > Thanks Jeff, ath12k-check issues must be resolved on V3.. Let me check and confirm and fix any issues and resubmit V8