mac80211: ath11k: sync with ath-next
[openwrt/staging/nbd.git] / package / kernel / mac80211 / patches / ath11k / 0068-wifi-ath11k-Remove-disabling-of-80-80-and-160-MHz.patch
1 From b100722a777f6455d913666a376f81342b2cb995 Mon Sep 17 00:00:00 2001
2 From: Muna Sinada <quic_msinada@quicinc.com>
3 Date: Mon, 17 Apr 2023 13:22:27 -0700
4 Subject: [PATCH] wifi: ath11k: Remove disabling of 80+80 and 160 MHz
5
6 This is a regression fix for 80+80 and 160 MHz support bits being
7 cleared, therefore not adverised. Remove disable of 80+80 and 160 MHz
8 capability flags and assign valid center frequency 2 similar to
9 VHT80_80.
10
11 Fixes: 38dfe775d0ab ("wifi: ath11k: push MU-MIMO params from hostapd to hardware")
12 Reported-by: Robert Marko <robert.marko@sartura.hr>
13 Tested-by: Robert Marko <robert.marko@sartura.hr> # IPQ8074 WLAN.HK.2.9.0.1-01385-QCAHKSWPL_SILICONZ-1
14 Link: https://bugzilla.kernel.org/show_bug.cgi?id=217299
15 Co-developed-by: P Praneesh <quic_ppranees@quicinc.com>
16 Signed-off-by: P Praneesh <quic_ppranees@quicinc.com>
17 Signed-off-by: Muna Sinada <quic_msinada@quicinc.com>
18 Signed-off-by: Kalle Valo <quic_kvalo@quicinc.com>
19 Link: https://lore.kernel.org/r/1681762947-13882-1-git-send-email-quic_msinada@quicinc.com
20 ---
21 drivers/net/wireless/ath/ath11k/mac.c | 4 ----
22 drivers/net/wireless/ath/ath11k/wmi.c | 3 ++-
23 2 files changed, 2 insertions(+), 5 deletions(-)
24
25 --- a/drivers/net/wireless/ath/ath11k/mac.c
26 +++ b/drivers/net/wireless/ath/ath11k/mac.c
27 @@ -5585,10 +5585,6 @@ static int ath11k_mac_copy_he_cap(struct
28
29 he_cap_elem->mac_cap_info[1] &=
30 IEEE80211_HE_MAC_CAP1_TF_MAC_PAD_DUR_MASK;
31 - he_cap_elem->phy_cap_info[0] &=
32 - ~IEEE80211_HE_PHY_CAP0_CHANNEL_WIDTH_SET_160MHZ_IN_5G;
33 - he_cap_elem->phy_cap_info[0] &=
34 - ~IEEE80211_HE_PHY_CAP0_CHANNEL_WIDTH_SET_80PLUS80_MHZ_IN_5G;
35
36 he_cap_elem->phy_cap_info[5] &=
37 ~IEEE80211_HE_PHY_CAP5_BEAMFORMEE_NUM_SND_DIM_UNDER_80MHZ_MASK;
38 --- a/drivers/net/wireless/ath/ath11k/wmi.c
39 +++ b/drivers/net/wireless/ath/ath11k/wmi.c
40 @@ -871,7 +871,8 @@ static void ath11k_wmi_put_wmi_channel(s
41
42 chan->band_center_freq2 = arg->channel.band_center_freq1;
43
44 - } else if (arg->channel.mode == MODE_11AC_VHT80_80) {
45 + } else if ((arg->channel.mode == MODE_11AC_VHT80_80) ||
46 + (arg->channel.mode == MODE_11AX_HE80_80)) {
47 chan->band_center_freq2 = arg->channel.band_center_freq2;
48 } else {
49 chan->band_center_freq2 = 0;