OSDN Git Service

ath11k: re-enable ht_cap/vht_cap for 5G band for WCN6855
authorWen Gong <wgong@codeaurora.org>
Tue, 28 Sep 2021 11:00:43 +0000 (14:00 +0300)
committerKalle Valo <kvalo@codeaurora.org>
Tue, 28 Sep 2021 13:22:20 +0000 (16:22 +0300)
WCN6855 uses single_pdev_only, so it supports both the 5G and 6G bands
in the same ath11k/pdev and it needs to enable ht_cap/vht_cap for the 5G
band, otherwise it will downgrade to non-HT mode for the 5G band. Some
chips like QCN9074 only support the 6G band, not the 5G band, and use
the flag ar->supports_6ghz which is true to discard ht_cap/vht_cap.

Tested-on: WCN6855 hw2.0 PCI WLAN.HSP.1.1-01720.1-QCAHSPSWPL_V1_V2_SILICONZ_LITE-1

Signed-off-by: Wen Gong <wgong@codeaurora.org>
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
Link: https://lore.kernel.org/r/20210804181217.88751-2-jouni@codeaurora.org
drivers/net/wireless/ath/ath11k/mac.c

index a92943d..f7f76a3 100644 (file)
@@ -4545,7 +4545,9 @@ static void ath11k_mac_setup_ht_vht_cap(struct ath11k *ar,
                                                    rate_cap_rx_chainmask);
        }
 
-       if (cap->supported_bands & WMI_HOST_WLAN_5G_CAP && !ar->supports_6ghz) {
+       if (cap->supported_bands & WMI_HOST_WLAN_5G_CAP &&
+           (ar->ab->hw_params.single_pdev_only ||
+            !ar->supports_6ghz)) {
                band = &ar->mac.sbands[NL80211_BAND_5GHZ];
                ht_cap = cap->band[NL80211_BAND_5GHZ].ht_cap_info;
                if (ht_cap_info)