Parcourir la source

qcacld-3.0: update EHT capabilities IE as per draft 3.0

Update dot11f EHT capabilities IE definitions as per 11be draft 3.0
specification.

Change-Id: Ia63bd7e22aa911292809009b000fe37edb1ccf4d
CRs-Fixed: 3453055
Aasir Rasheed il y a 2 ans
Parent
commit
396ffff767

+ 7 - 2
core/mac/src/cfg/cfgUtil/dot11f.frms

@@ -3306,7 +3306,9 @@ IE eht_cap (EID_EXTN_ID_ELEMENT) OUI (0x6C)
 	max_a_mpdu_len_exponent_ext: 1;
 	eht_trs_support: 1;
 	txop_return_support_txop_share_m2: 1;
-	reserved: 5;
+	two_bqrs_support: 1;
+	eht_link_adaptation_support: 2;
+	reserved: 2;
     }
     {
 	reserved2: 1;
@@ -3356,7 +3358,10 @@ IE eht_cap (EID_EXTN_ID_ELEMENT) OUI (0x6C)
     {
 	rx_1k_qam_in_wider_bw_dl_ofdma: 1;
 	rx_4k_qam_in_wider_bw_dl_ofdma: 1;
-	reserved3: 6;
+	limited_cap_support_20mhz: 1;
+	triggered_mu_bf_full_bw_fb_and_dl_mumimo: 1;
+	mru_support_20mhz: 1;
+	reserved3: 3;
     }
     {
 	bw_20_rx_max_nss_for_mcs_0_to_7: 4;

+ 8 - 3
core/mac/src/include/dot11f.h

@@ -27,7 +27,7 @@
  *
  *
  * This file was automatically generated by 'framesc'
- * Tue Dec 13 17:55:43 2022 from the following file(s):
+ * Thu Apr  6 23:52:53 2023 from the following file(s):
  *
  * dot11f.frms
  *
@@ -8829,7 +8829,9 @@ typedef struct sDot11fIEeht_cap {
 	uint16_t max_a_mpdu_len_exponent_ext:1;
 	uint16_t      eht_trs_support:1;
 	uint16_t txop_return_support_txop_share_m2:1;
-	uint16_t             reserved:5;
+	uint16_t     two_bqrs_support:1;
+	uint16_t eht_link_adaptation_support:2;
+	uint16_t             reserved:2;
 	uint32_t            reserved2:1;
 	uint32_t  support_320mhz_6ghz:1;
 	uint32_t  ru_242tone_wt_20mhz:1;
@@ -8873,7 +8875,10 @@ typedef struct sDot11fIEeht_cap {
 	uint32_t tb_sounding_feedback_rl:1;
 	uint8_t rx_1k_qam_in_wider_bw_dl_ofdma:1;
 	uint8_t rx_4k_qam_in_wider_bw_dl_ofdma:1;
-	uint8_t            reserved3:6;
+	uint8_t limited_cap_support_20mhz:1;
+	uint8_t triggered_mu_bf_full_bw_fb_and_dl_mumimo:1;
+	uint8_t    mru_support_20mhz:1;
+	uint8_t            reserved3:3;
 	uint32_t bw_20_rx_max_nss_for_mcs_0_to_7:4;
 	uint32_t bw_20_tx_max_nss_for_mcs_0_to_7:4;
 	uint32_t bw_20_rx_max_nss_for_mcs_8_and_9:4;

+ 15 - 5
core/mac/src/sys/legacy/src/utils/src/dot11f.c

@@ -25,7 +25,7 @@
  *
  *
  * This file was automatically generated by 'framesc'
- * Tue Dec 13 17:55:43 2022 from the following file(s):
+ * Thu Apr  6 23:52:53 2023 from the following file(s):
  *
  * dot11f.frms
  *
@@ -8679,7 +8679,9 @@ uint32_t dot11f_unpack_ie_eht_cap(tpAniSirGlobal pCtx,
 	pDst->max_a_mpdu_len_exponent_ext = tmp78__ >> 8 & 0x1;
 	pDst->eht_trs_support = tmp78__ >> 9 & 0x1;
 	pDst->txop_return_support_txop_share_m2 = tmp78__ >> 10 & 0x1;
-	pDst->reserved = tmp78__ >> 11 & 0x1f;
+	pDst->two_bqrs_support = tmp78__ >> 11 & 0x1;
+	pDst->eht_link_adaptation_support = tmp78__ >> 12 & 0x3;
+	pDst->reserved = tmp78__ >> 14 & 0x3;
 	if (unlikely(ielen < 4)) {
 		pDst->present = 0;
 		return DOT11F_INCOMPLETE_IE;
@@ -8747,7 +8749,10 @@ uint32_t dot11f_unpack_ie_eht_cap(tpAniSirGlobal pCtx,
 	ielen -= 1;
 	pDst->rx_1k_qam_in_wider_bw_dl_ofdma = tmp81__ >> 0 & 0x1;
 	pDst->rx_4k_qam_in_wider_bw_dl_ofdma = tmp81__ >> 1 & 0x1;
-	pDst->reserved3 = tmp81__ >> 2 & 0x3f;
+	pDst->limited_cap_support_20mhz = tmp81__ >> 2 & 0x1;
+	pDst->triggered_mu_bf_full_bw_fb_and_dl_mumimo = tmp81__ >> 3 & 0x1;
+	pDst->mru_support_20mhz = tmp81__ >> 4 & 0x1;
+	pDst->reserved3 = tmp81__ >> 5 & 0x7;
 	if (unlikely(ielen < 4)) {
 		pDst->present = 0;
 		return DOT11F_INCOMPLETE_IE;
@@ -28501,7 +28506,9 @@ uint32_t dot11f_pack_ie_eht_cap(tpAniSirGlobal pCtx,
 		tmp191__ |= (pSrc->max_a_mpdu_len_exponent_ext << 8);
 		tmp191__ |= (pSrc->eht_trs_support << 9);
 		tmp191__ |= (pSrc->txop_return_support_txop_share_m2 << 10);
-		tmp191__ |= (pSrc->reserved << 11);
+		tmp191__ |= (pSrc->two_bqrs_support << 11);
+		tmp191__ |= (pSrc->eht_link_adaptation_support << 12);
+		tmp191__ |= (pSrc->reserved << 14);
 		if (unlikely(nBuf < 2))
 			return DOT11F_INCOMPLETE_IE;
 
@@ -28569,7 +28576,10 @@ uint32_t dot11f_pack_ie_eht_cap(tpAniSirGlobal pCtx,
 		tmp194__ = 0U;
 		tmp194__ |= (pSrc->rx_1k_qam_in_wider_bw_dl_ofdma << 0);
 		tmp194__ |= (pSrc->rx_4k_qam_in_wider_bw_dl_ofdma << 1);
-		tmp194__ |= (pSrc->reserved3 << 2);
+		tmp194__ |= (pSrc->limited_cap_support_20mhz << 2);
+		tmp194__ |= (pSrc->triggered_mu_bf_full_bw_fb_and_dl_mumimo << 3);
+		tmp194__ |= (pSrc->mru_support_20mhz << 4);
+		tmp194__ |= (pSrc->reserved3 << 5);
 		if (unlikely(nBuf < 1))
 			return DOT11F_INCOMPLETE_IE;