From e795f456fc564c525e7483aae2865b2f73cc76dc Mon Sep 17 00:00:00 2001 From: Naveen Rawat Date: Mon, 13 Nov 2017 14:47:39 -0800 Subject: [PATCH] qcacld-3.0: Update HE_OPs, basic MCS set interpretation Update HE_OPs, basic MCS set interpretation as per ieee80211ax draft 2.0 Change-Id: I4c64f9e9568068c441e019fd83152d8c55c4c949 CRs-Fixed: 2142645 --- core/mac/src/cfg/cfgUtil/dot11f.frms | 2 +- core/mac/src/include/dot11f.h | 8 +++--- .../mac/src/sys/legacy/src/utils/src/dot11f.c | 28 +++++++++---------- 3 files changed, 19 insertions(+), 19 deletions(-) diff --git a/core/mac/src/cfg/cfgUtil/dot11f.frms b/core/mac/src/cfg/cfgUtil/dot11f.frms index 5ee1505c279b..f8616cdfca24 100644 --- a/core/mac/src/cfg/cfgUtil/dot11f.frms +++ b/core/mac/src/cfg/cfgUtil/dot11f.frms @@ -2926,7 +2926,7 @@ IE he_op (EID_EXTN_ID_ELEMENT) OUI (0x24) bss_col_disabled: 1; reserved2: 1; } - basic_mcs_nss[3]; + basic_mcs_nss[2]; OPTIONAL UNION vht_oper (DISCRIMINATOR vht_oper_present) { info (vht_oper_present IS 1) diff --git a/core/mac/src/include/dot11f.h b/core/mac/src/include/dot11f.h index 17ba671ce1f1..775d33a03ccf 100644 --- a/core/mac/src/include/dot11f.h +++ b/core/mac/src/include/dot11f.h @@ -35,7 +35,7 @@ * * * This file was automatically generated by 'framesc' - * Mon Oct 23 14:40:30 2017 from the following file(s): + * Mon Nov 13 14:20:26 2017 from the following file(s): * * dot11f.frms * @@ -8810,7 +8810,7 @@ typedef struct sDot11fIEhe_op { uint32_t tx_bssid_ind:1; uint32_t bss_col_disabled:1; uint32_t reserved2:1; - uint8_t basic_mcs_nss[3]; + uint8_t basic_mcs_nss[2]; union { struct { uint8_t chan_width; @@ -8828,9 +8828,9 @@ typedef struct sDot11fIEhe_op { #define DOT11F_EID_HE_OP (255) /* N.B. These #defines do *not* include the EID & length */ -#define DOT11F_IE_HE_OP_MIN_LEN (7) +#define DOT11F_IE_HE_OP_MIN_LEN (6) -#define DOT11F_IE_HE_OP_MAX_LEN (11) +#define DOT11F_IE_HE_OP_MAX_LEN (10) #ifdef __cplusplus extern "C" { diff --git a/core/mac/src/sys/legacy/src/utils/src/dot11f.c b/core/mac/src/sys/legacy/src/utils/src/dot11f.c index a79b3389a72b..c894be823477 100644 --- a/core/mac/src/sys/legacy/src/utils/src/dot11f.c +++ b/core/mac/src/sys/legacy/src/utils/src/dot11f.c @@ -33,7 +33,7 @@ * * * This file was automatically generated by 'framesc' - * Mon Oct 23 14:40:30 2017 from the following file(s): + * Mon Nov 13 14:20:26 2017 from the following file(s): * * dot11f.frms * @@ -6721,9 +6721,9 @@ uint32_t dot11f_unpack_ie_he_op(tpAniSirGlobal pCtx, pDst->tx_bssid_ind = tmp81__ >> 29 & 0x1; pDst->bss_col_disabled = tmp81__ >> 30 & 0x1; pDst->reserved2 = tmp81__ >> 31 & 0x1; - DOT11F_MEMCPY(pCtx, pDst->basic_mcs_nss, pBuf, 3); - pBuf += 3; - ielen -= (uint8_t)3; + DOT11F_MEMCPY(pCtx, pDst->basic_mcs_nss, pBuf, 2); + pBuf += 2; + ielen -= (uint8_t)2; switch (pDst->vht_oper_present) { case 1: pDst->vht_oper.info.chan_width = *pBuf; @@ -7430,7 +7430,7 @@ static const tIEDefn IES_AssocResponse[] = { present), 0, "he_cap", 0, 20, 55, SigIehe_cap, {0, 0, 0, 0, 0}, 0, DOT11F_EID_HE_CAP, 35, 0, }, { offsetof(tDot11fAssocResponse, he_op), offsetof(tDot11fIEhe_op, - present), 0, "he_op", 0, 9, 13, SigIehe_op, {0, 0, 0, 0, 0}, + present), 0, "he_op", 0, 8, 12, SigIehe_op, {0, 0, 0, 0, 0}, 0, DOT11F_EID_HE_OP, 36, 0, }, { offsetof(tDot11fAssocResponse, bss_color_change), offsetof(tDot11fIEbss_color_change, present), 0, "bss_color_change", @@ -7723,7 +7723,7 @@ static const tIEDefn IES_Beacon[] = { "he_cap", 0, 20, 55, SigIehe_cap, {0, 0, 0, 0, 0}, 0, DOT11F_EID_HE_CAP, 35, 0, }, { offsetof(tDot11fBeacon, he_op), offsetof(tDot11fIEhe_op, present), 0, - "he_op", 0, 9, 13, SigIehe_op, {0, 0, 0, 0, 0}, + "he_op", 0, 8, 12, SigIehe_op, {0, 0, 0, 0, 0}, 0, DOT11F_EID_HE_OP, 36, 0, }, { offsetof(tDot11fBeacon, bss_color_change), offsetof(tDot11fIEbss_color_change, present), 0, "bss_color_change", @@ -7949,7 +7949,7 @@ static const tIEDefn IES_Beacon2[] = { "he_cap", 0, 20, 55, SigIehe_cap, {0, 0, 0, 0, 0}, 0, DOT11F_EID_HE_CAP, 35, 0, }, { offsetof(tDot11fBeacon2, he_op), offsetof(tDot11fIEhe_op, present), 0, - "he_op", 0, 9, 13, SigIehe_op, {0, 0, 0, 0, 0}, + "he_op", 0, 8, 12, SigIehe_op, {0, 0, 0, 0, 0}, 0, DOT11F_EID_HE_OP, 36, 0, }, { offsetof(tDot11fBeacon2, bss_color_change), offsetof(tDot11fIEbss_color_change, present), 0, "bss_color_change", @@ -8175,7 +8175,7 @@ static const tIEDefn IES_BeaconIEs[] = { 0, "he_cap", 0, 20, 55, SigIehe_cap, {0, 0, 0, 0, 0}, 0, DOT11F_EID_HE_CAP, 35, 0, }, { offsetof(tDot11fBeaconIEs, he_op), offsetof(tDot11fIEhe_op, present), 0, - "he_op", 0, 9, 13, SigIehe_op, {0, 0, 0, 0, 0}, + "he_op", 0, 8, 12, SigIehe_op, {0, 0, 0, 0, 0}, 0, DOT11F_EID_HE_OP, 36, 0, }, { offsetof(tDot11fBeaconIEs, bss_color_change), offsetof(tDot11fIEbss_color_change, present), 0, "bss_color_change", @@ -8820,7 +8820,7 @@ static const tIEDefn IES_ProbeResponse[] = { present), 0, "he_cap", 0, 20, 55, SigIehe_cap, {0, 0, 0, 0, 0}, 0, DOT11F_EID_HE_CAP, 35, 0, }, { offsetof(tDot11fProbeResponse, he_op), offsetof(tDot11fIEhe_op, - present), 0, "he_op", 0, 9, 13, SigIehe_op, {0, 0, 0, 0, 0}, + present), 0, "he_op", 0, 8, 12, SigIehe_op, {0, 0, 0, 0, 0}, 0, DOT11F_EID_HE_OP, 36, 0, }, { offsetof(tDot11fProbeResponse, bss_color_change), offsetof(tDot11fIEbss_color_change, present), 0, "bss_color_change", @@ -9219,7 +9219,7 @@ static const tIEDefn IES_ReAssocResponse[] = { present), 0, "he_cap", 0, 20, 55, SigIehe_cap, {0, 0, 0, 0, 0}, 0, DOT11F_EID_HE_CAP, 35, 0, }, { offsetof(tDot11fReAssocResponse, he_op), offsetof(tDot11fIEhe_op, - present), 0, "he_op", 0, 9, 13, SigIehe_op, {0, 0, 0, 0, 0}, + present), 0, "he_op", 0, 8, 12, SigIehe_op, {0, 0, 0, 0, 0}, 0, DOT11F_EID_HE_OP, 36, 0, }, { offsetof(tDot11fReAssocResponse, bss_color_change), offsetof(tDot11fIEbss_color_change, present), 0, "bss_color_change", @@ -13313,7 +13313,7 @@ uint32_t dot11f_get_packed_ie_he_op(tpAniSirGlobal pCtx, (void)pCtx; while (pIe->present) { *pnNeeded += 4; - *pnNeeded += 3; + *pnNeeded += 2; if (pIe->vht_oper_present) { switch (pIe->vht_oper_present) { case 1: @@ -23509,9 +23509,9 @@ uint32_t dot11f_pack_ie_he_op(tpAniSirGlobal pCtx, *pnConsumed += 4; pBuf += 4; nBuf -= 4 ; - DOT11F_MEMCPY(pCtx, pBuf, pSrc->basic_mcs_nss, 3); - *pnConsumed += 3; - pBuf += 3; + DOT11F_MEMCPY(pCtx, pBuf, pSrc->basic_mcs_nss, 2); + *pnConsumed += 2; + pBuf += 2; if (pSrc->vht_oper_present) { switch (pSrc->vht_oper_present) { case 1: