Parcourir la source

qcacld-3.0: Update EHT cap IE fields based on D1.0 spec

Update the EHT capability IE fields based on the
802.11be D1.0 spec

Change-Id: Ie36a4e1c99383e7694bcb73cf4a627d80ba3bc44
CRs-Fixed: 2997329
Jia Ding il y a 3 ans
Parent
commit
cdba1cd4af

+ 60 - 6
core/mac/src/cfg/cfgUtil/dot11f.frms

@@ -3271,14 +3271,68 @@ IE he_6ghz_band_cap (EID_EXTN_ID_ELEMENT) OUI (0x3B)
 
 IE eht_cap (EID_EXTN_ID_ELEMENT) OUI (0xFD)
 {
-    eht_mac_cap[6];
-    phy_cap_bytes[11];
     {
-        reserved: 1;
-        supported_ch_width_set: 7;
+	nsep_pri_access: 1;
+	eht_om_ctl: 1;
+	triggered_txop_sharing: 1;
+	reserved: 13;
+    }
+    {
+	reserved2: 1;
+	support_320mhz_6ghz: 1;
+	ru_242tone_wt_20mhz: 1;
+	ndp_4x_eht_ltf_3dot2_us_gi: 1;
+	partial_bw_mu_mimo: 1;
+	su_beamformer: 1;
+	su_beamformee: 1;
+	bfee_ss_le_80mhz: 3;
+	bfee_ss_160mhz: 3;
+	bfee_ss_320mhz: 3;
+	num_sounding_dim_le_80mhz: 3;
+	num_sounding_dim_160mhz: 3;
+	num_sounding_dim_320mhz: 3;
+	ng_16_su_feedback: 1;
+	ng_16_mu_feedback: 1;
+	cb_sz_4_2_su_feedback: 1;
+	cb_sz_7_5_su_feedback: 1;
+	trig_su_bforming_feedback: 1;
+	trig_mu_bforming_partial_bw_feedback: 1;
+	triggered_cqi_feedback: 1;
     }
-    rx_mcs_map, 2;
-    tx_mcs_map, 2;
+    {
+	partial_bw_dl_mu_mimo: 1;
+	psr_based_sr: 1;
+	power_boost_factor: 1;
+	eht_mu_ppdu_4x_ltf_0_8_us_gi: 1;
+	max_nc: 4;
+	non_trig_cqi_feedback: 1;
+	tx_1024_4096_qam_lt_242_tone_ru: 1;
+	rx_1024_4096_qam_lt_242_tone_ru: 1;
+	ppet_present: 1;
+	common_nominal_pkt_padding: 2;
+	max_num_eht_ltf: 5;
+	mcs_15: 4;
+	eht_dup_6ghz: 1;
+	op_sta_rx_ndp_wider_bw_20mhz: 1;
+	non_ofdma_ul_mu_mimo_le_80mhz: 1;
+	non_ofdma_ul_mu_mimo_160mhz: 1;
+	non_ofdma_ul_mu_mimo_320mhz: 1;
+	mu_bformer_le_80mhz: 1;
+	mu_bformer_160mhz: 1;
+	mu_bformer_320mhz: 1;
+	reserved3: 1;
+    }
+    eht_mcs_map_20[0..4];
+    eht_mcs_map_le_80[0..3];
+    eht_mcs_map_160[0..3];
+    eht_mcs_map_320[3][0..1] COUNTIS support_320mhz_6ghz;
+    OPTIONAL UNION ppet (DISCRIMINATOR ppet_present)
+    {
+        ppe_threshold (ppet_present IS 1)
+        {
+            ppe_th[2..62];
+        }
+    };
 }
 
 IE eht_op (EID_EXTN_ID_ELEMENT) OUI (0xFE)

+ 63 - 11
core/mac/src/include/dot11f.h

@@ -26,7 +26,7 @@
  *
  *
  * This file was automatically generated by 'framesc'
- * Sat Jul 17 04:25:45 2021 from the following file(s):
+ * Fri Jul 23 15:12:18 2021 from the following file(s):
  *
  * dot11f.frms
  *
@@ -5149,20 +5149,72 @@ uint32_t dot11f_get_packed_ie_beacon_report_frm_body_fragment_id(
 /* EID 255 (0xff) Extended EID 253 (0xfd) */
 typedef struct sDot11fIEeht_cap {
 	uint8_t             present;
-	uint8_t             eht_mac_cap[6];
-	uint8_t             phy_cap_bytes[11];
-	uint8_t             reserved:1;
-	uint8_t supported_ch_width_set:7;
-	uint16_t            rx_mcs_map;
-	uint16_t            tx_mcs_map;
+	uint16_t      nsep_pri_access:1;
+	uint16_t           eht_om_ctl:1;
+	uint16_t triggered_txop_sharing:1;
+	uint16_t             reserved:13;
+	uint32_t            reserved2:1;
+	uint32_t  support_320mhz_6ghz:1;
+	uint32_t  ru_242tone_wt_20mhz:1;
+	uint32_t ndp_4x_eht_ltf_3dot2_us_gi:1;
+	uint32_t   partial_bw_mu_mimo:1;
+	uint32_t        su_beamformer:1;
+	uint32_t        su_beamformee:1;
+	uint32_t     bfee_ss_le_80mhz:3;
+	uint32_t       bfee_ss_160mhz:3;
+	uint32_t       bfee_ss_320mhz:3;
+	uint32_t num_sounding_dim_le_80mhz:3;
+	uint32_t num_sounding_dim_160mhz:3;
+	uint32_t num_sounding_dim_320mhz:3;
+	uint32_t    ng_16_su_feedback:1;
+	uint32_t    ng_16_mu_feedback:1;
+	uint32_t cb_sz_4_2_su_feedback:1;
+	uint32_t cb_sz_7_5_su_feedback:1;
+	uint32_t trig_su_bforming_feedback:1;
+	uint32_t trig_mu_bforming_partial_bw_feedback:1;
+	uint32_t triggered_cqi_feedback:1;
+	uint32_t partial_bw_dl_mu_mimo:1;
+	uint32_t         psr_based_sr:1;
+	uint32_t   power_boost_factor:1;
+	uint32_t eht_mu_ppdu_4x_ltf_0_8_us_gi:1;
+	uint32_t               max_nc:4;
+	uint32_t non_trig_cqi_feedback:1;
+	uint32_t tx_1024_4096_qam_lt_242_tone_ru:1;
+	uint32_t rx_1024_4096_qam_lt_242_tone_ru:1;
+	uint32_t         ppet_present:1;
+	uint32_t common_nominal_pkt_padding:2;
+	uint32_t      max_num_eht_ltf:5;
+	uint32_t               mcs_15:4;
+	uint32_t         eht_dup_6ghz:1;
+	uint32_t op_sta_rx_ndp_wider_bw_20mhz:1;
+	uint32_t non_ofdma_ul_mu_mimo_le_80mhz:1;
+	uint32_t non_ofdma_ul_mu_mimo_160mhz:1;
+	uint32_t non_ofdma_ul_mu_mimo_320mhz:1;
+	uint32_t  mu_bformer_le_80mhz:1;
+	uint32_t    mu_bformer_160mhz:1;
+	uint32_t    mu_bformer_320mhz:1;
+	uint32_t            reserved3:1;
+	uint8_t             num_eht_mcs_map_20;
+	uint8_t             eht_mcs_map_20[4];
+	uint8_t             num_eht_mcs_map_le_80;
+	uint8_t             eht_mcs_map_le_80[3];
+	uint8_t             num_eht_mcs_map_160;
+	uint8_t             eht_mcs_map_160[3];
+	uint8_t             eht_mcs_map_320[1][3];
+	union {
+		struct {
+			uint8_t num_ppe_th;
+			uint8_t ppe_th[62];
+		} ppe_threshold; /* ppet_present = 1 */
+	} ppet;
 } tDot11fIEeht_cap;
 
 #define DOT11F_EID_EHT_CAP (255)
 
 /* N.B. These #defines do *not* include the EID & length */
-#define DOT11F_IE_EHT_CAP_MIN_LEN (22)
+#define DOT11F_IE_EHT_CAP_MIN_LEN (10)
 
-#define DOT11F_IE_EHT_CAP_MAX_LEN (22)
+#define DOT11F_IE_EHT_CAP_MAX_LEN (85)
 
 #ifdef __cplusplus
 extern "C" {
@@ -6052,7 +6104,7 @@ typedef struct sDot11fIEsta_profile {
 /* N.B. These #defines do *not* include the EID & length */
 #define DOT11F_IE_STA_PROFILE_MIN_LEN (2)
 
-#define DOT11F_IE_STA_PROFILE_MAX_LEN (1177)
+#define DOT11F_IE_STA_PROFILE_MAX_LEN (1240)
 
 #ifdef __cplusplus
 extern "C" {
@@ -10094,7 +10146,7 @@ typedef struct sDot11fIEmlo_ie {
 /* N.B. These #defines do *not* include the EID & length */
 #define DOT11F_IE_MLO_IE_MIN_LEN (2)
 
-#define DOT11F_IE_MLO_IE_MAX_LEN (1196)
+#define DOT11F_IE_MLO_IE_MAX_LEN (1259)
 
 #ifdef __cplusplus
 extern "C" {

Fichier diff supprimé car celui-ci est trop grand
+ 364 - 280
core/mac/src/sys/legacy/src/utils/src/dot11f.c


Certains fichiers n'ont pas été affichés car il y a eu trop de fichiers modifiés dans ce diff