From 20abccf5ff8d75c3940ee83579d8c0d1cfb0d076 Mon Sep 17 00:00:00 2001 From: JasonHuang Date: Wed, 5 Oct 2022 03:24:29 -0500 Subject: [PATCH 116/296] brcmfmac: set HE 6GHz capabilities for bring-up SAP Need to set correct HE 6GHz capabilities to match hostapd configuration. Signed-off-by: JasonHuang --- .../broadcom/brcm80211/brcmfmac/cfg80211.c | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c index bfb2466ec268..3a9c4bffc096 100644 --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c @@ -9,6 +9,7 @@ #include #include #include +#include #include #include #include @@ -8419,6 +8420,7 @@ static void brcmf_update_he_cap(struct ieee80211_supported_band *band, struct ieee80211_sta_he_cap *he_cap = &data->he_cap; struct ieee80211_he_cap_elem *he_cap_elem = &he_cap->he_cap_elem; struct ieee80211_he_mcs_nss_supp *he_mcs = &he_cap->he_mcs_nss_supp; + struct ieee80211_he_6ghz_capa *he_6ghz_capa = &data->he_6ghz_capa; if (data == NULL) { brcmf_dbg(INFO, "failed to allco mem\n"); @@ -8487,7 +8489,18 @@ static void brcmf_update_he_cap(struct ieee80211_supported_band *band, /* HE Supported MCS and NSS Set */ he_mcs->rx_mcs_80 = cpu_to_le16(0xfffa); he_mcs->tx_mcs_80 = cpu_to_le16(0xfffa); - + /* HE 6 GHz band capabilities */ + if (band->band == NL80211_BAND_6GHZ) { + u16 capa = 0; + + capa = FIELD_PREP(IEEE80211_HE_6GHZ_CAP_MIN_MPDU_START, + IEEE80211_HT_MPDU_DENSITY_8) | + FIELD_PREP(IEEE80211_HE_6GHZ_CAP_MAX_AMPDU_LEN_EXP, + IEEE80211_VHT_MAX_AMPDU_1024K) | + FIELD_PREP(IEEE80211_HE_6GHZ_CAP_MAX_MPDU_LEN, + IEEE80211_VHT_CAP_MAX_MPDU_LENGTH_11454); + he_6ghz_capa->capa = cpu_to_le16(capa); + } band->n_iftype_data = idx; band->iftype_data = data; } -- 2.25.1