diff mbox series

[v2] ath11k: set WMI_PEER_40MHZ while peer assoc for 6 GHz

Message ID 20220119034211.28622-1-quic_wgong@quicinc.com
State New
Headers show
Series [v2] ath11k: set WMI_PEER_40MHZ while peer assoc for 6 GHz | expand

Commit Message

Wen Gong Jan. 19, 2022, 3:42 a.m. UTC
When station connect to AP of 6 GHz with 40 MHz bandwidth, the TX is
always stay 20 MHz, it is because the flag WMI_PEER_40MHZ is not set
while peer assoc. Add the flag if remote peer is 40 MHz bandwidth.

Tested-on: WCN6855 hw2.0 PCI WLAN.HSP.1.1-03003-QCAHSPSWPL_V1_V2_SILICONZ_LITE-2

Fixes: c3a7d7eb4c98 ("ath11k: add 6 GHz params in peer assoc command")
Signed-off-by: Wen Gong <quic_wgong@quicinc.com>
---
v2:
   1. rebased to ath.git ath-202201171245
   2. change commit log

 drivers/net/wireless/ath/ath11k/mac.c | 3 +++
 1 file changed, 3 insertions(+)


base-commit: 7ed59172e3753f2a4d7a39515f1c937ea9edb968

Comments

Kalle Valo Jan. 28, 2022, 12:33 p.m. UTC | #1
Wen Gong <quic_wgong@quicinc.com> wrote:

> When station connect to AP of 6 GHz with 40 MHz bandwidth, the TX is
> always stay 20 MHz, it is because the flag WMI_PEER_40MHZ is not set
> while peer assoc. Add the flag if remote peer is 40 MHz bandwidth.
> 
> Tested-on: WCN6855 hw2.0 PCI WLAN.HSP.1.1-03003-QCAHSPSWPL_V1_V2_SILICONZ_LITE-2
> 
> Fixes: c3a7d7eb4c98 ("ath11k: add 6 GHz params in peer assoc command")
> Signed-off-by: Wen Gong <quic_wgong@quicinc.com>
> Signed-off-by: Kalle Valo <quic_kvalo@quicinc.com>

Patch applied to ath-next branch of ath.git, thanks.

1cb747192de2 ath11k: set WMI_PEER_40MHZ while peer assoc for 6 GHz
diff mbox series

Patch

diff --git a/drivers/net/wireless/ath/ath11k/mac.c b/drivers/net/wireless/ath/ath11k/mac.c
index 02228c4da4d0..90fcd6adf2d5 100644
--- a/drivers/net/wireless/ath/ath11k/mac.c
+++ b/drivers/net/wireless/ath/ath11k/mac.c
@@ -2319,6 +2319,9 @@  static void ath11k_peer_assoc_h_he_6ghz(struct ath11k *ar,
 	if (!arg->he_flag || band != NL80211_BAND_6GHZ || !sta->he_6ghz_capa.capa)
 		return;
 
+	if (sta->bandwidth == IEEE80211_STA_RX_BW_40)
+		arg->bw_40 = true;
+
 	if (sta->bandwidth == IEEE80211_STA_RX_BW_80)
 		arg->bw_80 = true;