qcacld-3.0: Update RNR IE as per D1.5 specs
Update dot11f RNR IE definitions as per 11be draft 1.5 specification. Change-Id: I66aca72d021d2f13e51d92f226784b5f8d58f68d CRs-Fixed: 3210817
This commit is contained in:

committed by
Madan Koyyalamudi

parent
3904e7a125
commit
e1bdcfc022
@@ -2563,11 +2563,12 @@ IE reduced_neighbor_report (EID_RNR_IE)
|
|||||||
short_ssid, 4;
|
short_ssid, 4;
|
||||||
bss_params, 1;
|
bss_params, 1;
|
||||||
psd_20mhz, 1;
|
psd_20mhz, 1;
|
||||||
|
mld_id, 1;
|
||||||
{
|
{
|
||||||
mld_id: 8;
|
|
||||||
link_id: 4;
|
link_id: 4;
|
||||||
bss_param_change_cnt: 8;
|
bss_param_change_cnt: 8;
|
||||||
reserved: 12;
|
all_updates_included: 1;
|
||||||
|
reserved: 3;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
@@ -27,7 +27,7 @@
|
|||||||
*
|
*
|
||||||
*
|
*
|
||||||
* This file was automatically generated by 'framesc'
|
* This file was automatically generated by 'framesc'
|
||||||
* Fri Jun 10 20:28:00 2022 from the following file(s):
|
* Mon Jun 13 10:50:26 2022 from the following file(s):
|
||||||
*
|
*
|
||||||
* dot11f.frms
|
* dot11f.frms
|
||||||
*
|
*
|
||||||
@@ -10216,10 +10216,11 @@ typedef struct sDot11fIEreduced_neighbor_report {
|
|||||||
uint32_t short_ssid;
|
uint32_t short_ssid;
|
||||||
uint8_t bss_params;
|
uint8_t bss_params;
|
||||||
uint8_t psd_20mhz;
|
uint8_t psd_20mhz;
|
||||||
uint32_t mld_id:8;
|
uint8_t mld_id;
|
||||||
uint32_t link_id:4;
|
uint16_t link_id:4;
|
||||||
uint32_t bss_param_change_cnt:8;
|
uint16_t bss_param_change_cnt:8;
|
||||||
uint32_t reserved:12;
|
uint16_t all_updates_included:1;
|
||||||
|
uint16_t reserved:3;
|
||||||
} tbtt_info_16; /* tbtt_info_len = 16 */
|
} tbtt_info_16; /* tbtt_info_len = 16 */
|
||||||
} tbtt_info;
|
} tbtt_info;
|
||||||
} tDot11fIEreduced_neighbor_report;
|
} tDot11fIEreduced_neighbor_report;
|
||||||
@@ -10229,7 +10230,7 @@ typedef struct sDot11fIEreduced_neighbor_report {
|
|||||||
/* N.B. These #defines do *not* include the EID & length */
|
/* N.B. These #defines do *not* include the EID & length */
|
||||||
#define DOT11F_IE_REDUCED_NEIGHBOR_REPORT_MIN_LEN (5)
|
#define DOT11F_IE_REDUCED_NEIGHBOR_REPORT_MIN_LEN (5)
|
||||||
|
|
||||||
#define DOT11F_IE_REDUCED_NEIGHBOR_REPORT_MAX_LEN (21)
|
#define DOT11F_IE_REDUCED_NEIGHBOR_REPORT_MAX_LEN (20)
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
extern "C" {
|
extern "C" {
|
||||||
|
@@ -25,7 +25,7 @@
|
|||||||
*
|
*
|
||||||
*
|
*
|
||||||
* This file was automatically generated by 'framesc'
|
* This file was automatically generated by 'framesc'
|
||||||
* Fri Jun 10 20:28:00 2022 from the following file(s):
|
* Mon Jun 13 10:50:26 2022 from the following file(s):
|
||||||
*
|
*
|
||||||
* dot11f.frms
|
* dot11f.frms
|
||||||
*
|
*
|
||||||
@@ -10087,7 +10087,7 @@ uint32_t dot11f_unpack_ie_reduced_neighbor_report(tpAniSirGlobal pCtx,
|
|||||||
{
|
{
|
||||||
uint32_t status = DOT11F_PARSE_SUCCESS;
|
uint32_t status = DOT11F_PARSE_SUCCESS;
|
||||||
uint16_t tmp109__;
|
uint16_t tmp109__;
|
||||||
uint32_t tmp110__;
|
uint16_t tmp110__;
|
||||||
(void) pBuf; (void)ielen; /* Shutup the compiler */
|
(void) pBuf; (void)ielen; /* Shutup the compiler */
|
||||||
if (pDst->present)
|
if (pDst->present)
|
||||||
return DOT11F_DUPLICATE_IE;
|
return DOT11F_DUPLICATE_IE;
|
||||||
@@ -10415,18 +10415,26 @@ uint32_t dot11f_unpack_ie_reduced_neighbor_report(tpAniSirGlobal pCtx,
|
|||||||
pDst->tbtt_info.tbtt_info_16.psd_20mhz = *pBuf;
|
pDst->tbtt_info.tbtt_info_16.psd_20mhz = *pBuf;
|
||||||
pBuf += 1;
|
pBuf += 1;
|
||||||
ielen -= (uint8_t)1;
|
ielen -= (uint8_t)1;
|
||||||
if (unlikely(ielen < 4)) {
|
if (unlikely(ielen < 1)) {
|
||||||
pDst->present = 0;
|
pDst->present = 0;
|
||||||
return DOT11F_INCOMPLETE_IE;
|
return DOT11F_INCOMPLETE_IE;
|
||||||
}
|
}
|
||||||
|
|
||||||
framesntohl(pCtx, &tmp110__, pBuf, 0);
|
pDst->tbtt_info.tbtt_info_16.mld_id = *pBuf;
|
||||||
pBuf += 4;
|
pBuf += 1;
|
||||||
ielen -= 4;
|
ielen -= (uint8_t)1;
|
||||||
pDst->tbtt_info.tbtt_info_16.mld_id = tmp110__ >> 0 & 0xff;
|
if (unlikely(ielen < 2)) {
|
||||||
pDst->tbtt_info.tbtt_info_16.link_id = tmp110__ >> 8 & 0xf;
|
pDst->present = 0;
|
||||||
pDst->tbtt_info.tbtt_info_16.bss_param_change_cnt = tmp110__ >> 12 & 0xff;
|
return DOT11F_INCOMPLETE_IE;
|
||||||
pDst->tbtt_info.tbtt_info_16.reserved = tmp110__ >> 20 & 0xfff;
|
}
|
||||||
|
|
||||||
|
framesntohs(pCtx, &tmp110__, pBuf, 0);
|
||||||
|
pBuf += 2;
|
||||||
|
ielen -= 2;
|
||||||
|
pDst->tbtt_info.tbtt_info_16.link_id = tmp110__ >> 0 & 0xf;
|
||||||
|
pDst->tbtt_info.tbtt_info_16.bss_param_change_cnt = tmp110__ >> 4 & 0xff;
|
||||||
|
pDst->tbtt_info.tbtt_info_16.all_updates_included = tmp110__ >> 12 & 0x1;
|
||||||
|
pDst->tbtt_info.tbtt_info_16.reserved = tmp110__ >> 13 & 0x7;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
(void)pCtx;
|
(void)pCtx;
|
||||||
@@ -11000,7 +11008,7 @@ static const tIEDefn IES_AssocResponse[] = {
|
|||||||
4, DOT11F_EID_MBO_IE, 0, 0, },
|
4, DOT11F_EID_MBO_IE, 0, 0, },
|
||||||
{ offsetof(tDot11fAssocResponse, reduced_neighbor_report),
|
{ offsetof(tDot11fAssocResponse, reduced_neighbor_report),
|
||||||
offsetof(tDot11fIEreduced_neighbor_report, present), 0,
|
offsetof(tDot11fIEreduced_neighbor_report, present), 0,
|
||||||
"reduced_neighbor_report", 0, 7, 23, SigIereduced_neighbor_report,
|
"reduced_neighbor_report", 0, 7, 22, SigIereduced_neighbor_report,
|
||||||
{0, 0, 0, 0, 0}, 0, DOT11F_EID_REDUCED_NEIGHBOR_REPORT, 0, 0, },
|
{0, 0, 0, 0, 0}, 0, DOT11F_EID_REDUCED_NEIGHBOR_REPORT, 0, 0, },
|
||||||
{0, 0, 0, NULL, 0, 0, 0, 0, {0, 0, 0, 0, 0}, 0, 0xff, 0, },};
|
{0, 0, 0, NULL, 0, 0, 0, 0, {0, 0, 0, 0, 0}, 0, 0xff, 0, },};
|
||||||
|
|
||||||
@@ -11320,7 +11328,7 @@ static const tIEDefn IES_Beacon[] = {
|
|||||||
4, DOT11F_EID_QCN_IE, 0, 0, },
|
4, DOT11F_EID_QCN_IE, 0, 0, },
|
||||||
{ offsetof(tDot11fBeacon, reduced_neighbor_report),
|
{ offsetof(tDot11fBeacon, reduced_neighbor_report),
|
||||||
offsetof(tDot11fIEreduced_neighbor_report, present), 0,
|
offsetof(tDot11fIEreduced_neighbor_report, present), 0,
|
||||||
"reduced_neighbor_report", 0, 7, 23, SigIereduced_neighbor_report,
|
"reduced_neighbor_report", 0, 7, 22, SigIereduced_neighbor_report,
|
||||||
{0, 0, 0, 0, 0}, 0, DOT11F_EID_REDUCED_NEIGHBOR_REPORT, 0, 0, },
|
{0, 0, 0, 0, 0}, 0, DOT11F_EID_REDUCED_NEIGHBOR_REPORT, 0, 0, },
|
||||||
{0, 0, 0, NULL, 0, 0, 0, 0, {0, 0, 0, 0, 0}, 0, 0xff, 0, },};
|
{0, 0, 0, NULL, 0, 0, 0, 0, {0, 0, 0, 0, 0}, 0, 0xff, 0, },};
|
||||||
|
|
||||||
@@ -11569,7 +11577,7 @@ static const tIEDefn IES_Beacon2[] = {
|
|||||||
4, DOT11F_EID_QCN_IE, 0, 0, },
|
4, DOT11F_EID_QCN_IE, 0, 0, },
|
||||||
{ offsetof(tDot11fBeacon2, reduced_neighbor_report),
|
{ offsetof(tDot11fBeacon2, reduced_neighbor_report),
|
||||||
offsetof(tDot11fIEreduced_neighbor_report, present), 0,
|
offsetof(tDot11fIEreduced_neighbor_report, present), 0,
|
||||||
"reduced_neighbor_report", 0, 7, 23, SigIereduced_neighbor_report,
|
"reduced_neighbor_report", 0, 7, 22, SigIereduced_neighbor_report,
|
||||||
{0, 0, 0, 0, 0}, 0, DOT11F_EID_REDUCED_NEIGHBOR_REPORT, 0, 0, },
|
{0, 0, 0, 0, 0}, 0, DOT11F_EID_REDUCED_NEIGHBOR_REPORT, 0, 0, },
|
||||||
{0, 0, 0, NULL, 0, 0, 0, 0, {0, 0, 0, 0, 0}, 0, 0xff, 0, },};
|
{0, 0, 0, NULL, 0, 0, 0, 0, {0, 0, 0, 0, 0}, 0, 0xff, 0, },};
|
||||||
|
|
||||||
@@ -11818,7 +11826,7 @@ static const tIEDefn IES_BeaconIEs[] = {
|
|||||||
4, DOT11F_EID_QCN_IE, 0, 0, },
|
4, DOT11F_EID_QCN_IE, 0, 0, },
|
||||||
{ offsetof(tDot11fBeaconIEs, reduced_neighbor_report),
|
{ offsetof(tDot11fBeaconIEs, reduced_neighbor_report),
|
||||||
offsetof(tDot11fIEreduced_neighbor_report, present), 0,
|
offsetof(tDot11fIEreduced_neighbor_report, present), 0,
|
||||||
"reduced_neighbor_report", 0, 7, 23, SigIereduced_neighbor_report,
|
"reduced_neighbor_report", 0, 7, 22, SigIereduced_neighbor_report,
|
||||||
{0, 0, 0, 0, 0}, 0, DOT11F_EID_REDUCED_NEIGHBOR_REPORT, 0, 0, },
|
{0, 0, 0, 0, 0}, 0, DOT11F_EID_REDUCED_NEIGHBOR_REPORT, 0, 0, },
|
||||||
{0, 0, 0, NULL, 0, 0, 0, 0, {0, 0, 0, 0, 0}, 0, 0xff, 0, },};
|
{0, 0, 0, NULL, 0, 0, 0, 0, {0, 0, 0, 0, 0}, 0, 0xff, 0, },};
|
||||||
|
|
||||||
@@ -12495,7 +12503,7 @@ static const tIEDefn IES_ProbeResponse[] = {
|
|||||||
4, DOT11F_EID_QCN_IE, 0, 0, },
|
4, DOT11F_EID_QCN_IE, 0, 0, },
|
||||||
{ offsetof(tDot11fProbeResponse, reduced_neighbor_report),
|
{ offsetof(tDot11fProbeResponse, reduced_neighbor_report),
|
||||||
offsetof(tDot11fIEreduced_neighbor_report, present), 0,
|
offsetof(tDot11fIEreduced_neighbor_report, present), 0,
|
||||||
"reduced_neighbor_report", 0, 7, 23, SigIereduced_neighbor_report,
|
"reduced_neighbor_report", 0, 7, 22, SigIereduced_neighbor_report,
|
||||||
{0, 0, 0, 0, 0}, 0, DOT11F_EID_REDUCED_NEIGHBOR_REPORT, 0, 0, },
|
{0, 0, 0, 0, 0}, 0, DOT11F_EID_REDUCED_NEIGHBOR_REPORT, 0, 0, },
|
||||||
{0, 0, 0, NULL, 0, 0, 0, 0, {0, 0, 0, 0, 0}, 0, 0xff, 0, },};
|
{0, 0, 0, NULL, 0, 0, 0, 0, {0, 0, 0, 0, 0}, 0, 0xff, 0, },};
|
||||||
|
|
||||||
@@ -12936,7 +12944,7 @@ static const tIEDefn IES_ReAssocResponse[] = {
|
|||||||
4, DOT11F_EID_MBO_IE, 0, 0, },
|
4, DOT11F_EID_MBO_IE, 0, 0, },
|
||||||
{ offsetof(tDot11fReAssocResponse, reduced_neighbor_report),
|
{ offsetof(tDot11fReAssocResponse, reduced_neighbor_report),
|
||||||
offsetof(tDot11fIEreduced_neighbor_report, present), 0,
|
offsetof(tDot11fIEreduced_neighbor_report, present), 0,
|
||||||
"reduced_neighbor_report", 0, 7, 23, SigIereduced_neighbor_report,
|
"reduced_neighbor_report", 0, 7, 22, SigIereduced_neighbor_report,
|
||||||
{0, 0, 0, 0, 0}, 0, DOT11F_EID_REDUCED_NEIGHBOR_REPORT, 0, 0, },
|
{0, 0, 0, 0, 0}, 0, DOT11F_EID_REDUCED_NEIGHBOR_REPORT, 0, 0, },
|
||||||
{0, 0, 0, NULL, 0, 0, 0, 0, {0, 0, 0, 0, 0}, 0, 0xff, 0, },};
|
{0, 0, 0, NULL, 0, 0, 0, 0, {0, 0, 0, 0, 0}, 0, 0xff, 0, },};
|
||||||
|
|
||||||
@@ -17583,7 +17591,8 @@ uint32_t dot11f_get_packed_ie_reduced_neighbor_report(tpAniSirGlobal pCtx,
|
|||||||
*pnNeeded += 4;
|
*pnNeeded += 4;
|
||||||
*pnNeeded += 1;
|
*pnNeeded += 1;
|
||||||
*pnNeeded += 1;
|
*pnNeeded += 1;
|
||||||
*pnNeeded += 4;
|
*pnNeeded += 1;
|
||||||
|
*pnNeeded += 2;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@@ -29543,7 +29552,7 @@ uint32_t dot11f_pack_ie_reduced_neighbor_report(tpAniSirGlobal pCtx,
|
|||||||
uint32_t nConsumedOnEntry = *pnConsumed;
|
uint32_t nConsumedOnEntry = *pnConsumed;
|
||||||
uint32_t nNeeded = 0U;
|
uint32_t nNeeded = 0U;
|
||||||
uint16_t tmp220__;
|
uint16_t tmp220__;
|
||||||
uint32_t tmp221__;
|
uint16_t tmp221__;
|
||||||
uint32_t status = DOT11F_PARSE_SUCCESS;
|
uint32_t status = DOT11F_PARSE_SUCCESS;
|
||||||
status = dot11f_get_packed_ie_reduced_neighbor_report(pCtx, pSrc, &nNeeded);
|
status = dot11f_get_packed_ie_reduced_neighbor_report(pCtx, pSrc, &nNeeded);
|
||||||
if (!DOT11F_SUCCEEDED(status))
|
if (!DOT11F_SUCCEEDED(status))
|
||||||
@@ -29698,18 +29707,21 @@ uint32_t dot11f_pack_ie_reduced_neighbor_report(tpAniSirGlobal pCtx,
|
|||||||
*pBuf = pSrc->tbtt_info.tbtt_info_16.psd_20mhz;
|
*pBuf = pSrc->tbtt_info.tbtt_info_16.psd_20mhz;
|
||||||
*pnConsumed += 1;
|
*pnConsumed += 1;
|
||||||
pBuf += 1;
|
pBuf += 1;
|
||||||
|
*pBuf = pSrc->tbtt_info.tbtt_info_16.mld_id;
|
||||||
|
*pnConsumed += 1;
|
||||||
|
pBuf += 1;
|
||||||
tmp221__ = 0U;
|
tmp221__ = 0U;
|
||||||
tmp221__ |= (pSrc->tbtt_info.tbtt_info_16.mld_id << 0);
|
tmp221__ |= (pSrc->tbtt_info.tbtt_info_16.link_id << 0);
|
||||||
tmp221__ |= (pSrc->tbtt_info.tbtt_info_16.link_id << 8);
|
tmp221__ |= (pSrc->tbtt_info.tbtt_info_16.bss_param_change_cnt << 4);
|
||||||
tmp221__ |= (pSrc->tbtt_info.tbtt_info_16.bss_param_change_cnt << 12);
|
tmp221__ |= (pSrc->tbtt_info.tbtt_info_16.all_updates_included << 12);
|
||||||
tmp221__ |= (pSrc->tbtt_info.tbtt_info_16.reserved << 20);
|
tmp221__ |= (pSrc->tbtt_info.tbtt_info_16.reserved << 13);
|
||||||
if (unlikely(nBuf < 4))
|
if (unlikely(nBuf < 2))
|
||||||
return DOT11F_INCOMPLETE_IE;
|
return DOT11F_INCOMPLETE_IE;
|
||||||
|
|
||||||
frameshtonl(pCtx, pBuf, tmp221__, 0);
|
frameshtons(pCtx, pBuf, tmp221__, 0);
|
||||||
*pnConsumed += 4;
|
*pnConsumed += 2;
|
||||||
/* fieldsEndFlag = 1 */
|
/* fieldsEndFlag = 1 */
|
||||||
nBuf -= 4 ;
|
nBuf -= 2 ;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
Reference in New Issue
Block a user