BACKPORT: wifi: mac80211: Align with Draft P802.11be_D2.0

Align the mac80211 implementation with P802.11be_D2.0.

Signed-off-by: Ilan Peer <ilan.peer@intel.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>

Bug: 253289327
Change-Id: I1032e96976efaa1241b499e72c44b5cfd0b26c68
(cherry picked from commit 062e8e02dfd43c94b0d601c071e8a5c50bed830e)
[Kiran Kumar Lokere: Skipped changes in drivers/net/wireless/mac80211_hwsim.c
due to missing dependency changes]
Signed-off-by: Kiran Kumar Lokere <quic_klokere@quicinc.com>
Signed-off-by: Veerendranath Jakkam <quic_vjakkam@quicinc.com>
This commit is contained in:
Ilan Peer
2022-06-01 17:43:34 +03:00
committed by Todd Kjos
parent fadbf9a2ca
commit 8e9375450e

View File

@@ -1989,7 +1989,7 @@ struct ieee80211_eht_mcs_nss_supp_bw {
* struct ieee80211_eht_cap_elem_fixed - EHT capabilities fixed data
*
* This structure is the "EHT Capabilities element" fixed fields as
* described in P802.11be_D1.4 section 9.4.2.313.
* described in P802.11be_D2.0 section 9.4.2.313.
*
* @mac_cap_info: MAC capabilities, see IEEE80211_EHT_MAC_CAP*
* @phy_cap_info: PHY capabilities, see IEEE80211_EHT_PHY_CAP*
@@ -2015,20 +2015,27 @@ struct ieee80211_eht_cap_elem {
u8 optional[];
} __packed;
#define IEEE80211_EHT_OPER_INFO_PRESENT 0x1
#define IEEE80211_EHT_OPER_DISABLED_SUBCHANNEL_BITMAP_PRESENT 0x2
#define IEEE80211_EHT_OPER_INFO_PRESENT 0x01
#define IEEE80211_EHT_OPER_DISABLED_SUBCHANNEL_BITMAP_PRESENT 0x02
#define IEEE80211_EHT_OPER_EHT_DEF_PE_DURATION 0x04
#define IEEE80211_EHT_OPER_GROUP_ADDRESSED_BU_IND_LIMIT 0x08
#define IEEE80211_EHT_OPER_GROUP_ADDRESSED_BU_IND_EXP_MASK 0x30
/**
* struct ieee80211_eht_operation - eht operation element
*
* This structure is the "EHT Operation Element" fields as
* described in P802.11be_D1.5 section 9.4.2.311
* described in P802.11be_D2.0 section 9.4.2.311
*
* @params: EHT operation element parameters. See &IEEE80211_EHT_OPER_*
* @basic_mcs_nss: indicates the EHT-MCSs for each number of spatial streams in
* EHT PPDUs that are supported by all EHT STAs in the BSS in transmit and
* receive.
* @optional: optional parts
*/
struct ieee80211_eht_operation {
u8 params;
__le32 basic_mcs_nss;
u8 optional[];
} __packed;
@@ -2707,8 +2714,8 @@ ieee80211_he_spr_size(const u8 *he_spr_ie)
#define S1G_OPER_CH_WIDTH_PRIMARY_1MHZ BIT(0)
#define S1G_OPER_CH_WIDTH_OPER GENMASK(4, 1)
/* EHT MAC capabilities as defined in P802.11be_D1.4 section 9.4.2.313.2 */
#define IEEE80211_EHT_MAC_CAP0_NSEP_PRIO_ACCESS 0x01
/* EHT MAC capabilities as defined in P802.11be_D2.0 section 9.4.2.313.2 */
#define IEEE80211_EHT_MAC_CAP0_EPCS_PRIO_ACCESS 0x01
#define IEEE80211_EHT_MAC_CAP0_OM_CONTROL 0x02
#define IEEE80211_EHT_MAC_CAP0_TRIG_TXOP_SHARING_MODE1 0x04
#define IEEE80211_EHT_MAC_CAP0_TRIG_TXOP_SHARING_MODE2 0x08
@@ -2721,7 +2728,7 @@ ieee80211_he_spr_size(const u8 *he_spr_ie)
#define IEEE80211_EHT_MAC_CAP1_MAX_AMPDU_LEN_MASK 0x01
/* EHT PHY capabilities as defined in P802.11be_D1.4 section 9.4.2.313.3 */
/* EHT PHY capabilities as defined in P802.11be_D2.0 section 9.4.2.313.3 */
#define IEEE80211_EHT_PHY_CAP0_320MHZ_IN_6GHZ 0x02
#define IEEE80211_EHT_PHY_CAP0_242_TONE_RU_GT20MHZ 0x04
#define IEEE80211_EHT_PHY_CAP0_NDP_4_EHT_LFT_32_GI 0x08
@@ -2786,7 +2793,7 @@ ieee80211_he_spr_size(const u8 *he_spr_ie)
#define IEEE80211_EHT_PHY_CAP8_RX_4096QAM_WIDER_BW_DL_OFDMA 0x02
/*
* EHT operation channel width as defined in P802.11be_D1.4 section 9.4.2.311
* EHT operation channel width as defined in P802.11be_D2.0 section 9.4.2.311
*/
#define IEEE80211_EHT_OPER_CHAN_WIDTH 0x7
#define IEEE80211_EHT_OPER_CHAN_WIDTH_20MHZ 0