qcacld-3.0: Use LDPC flag from Vendor IE for VHT20 case
qcacld-2.0 to qcacld-3.0 propagation Update LDPC flag from Vendor IE instead of VHT capabilities for VHT20 case. Change-Id: I7bb916353586529fb78f1caeda68687663e44af2 CRs-Fixed: 2091292
This commit is contained in:

committed by
nshrivas

parent
ad8cfa1185
commit
2e2ac0338d
@@ -3606,6 +3606,7 @@ tSirRetStatus lim_sta_send_add_bss(tpAniSirGlobal pMac, tpSirAssocRsp pAssocRsp,
|
|||||||
uint32_t retCode;
|
uint32_t retCode;
|
||||||
tpDphHashNode pStaDs = NULL;
|
tpDphHashNode pStaDs = NULL;
|
||||||
uint8_t chanWidthSupp = 0;
|
uint8_t chanWidthSupp = 0;
|
||||||
|
bool is_vht_cap_in_vendor_ie = false;
|
||||||
uint32_t enableTxBF20MHz;
|
uint32_t enableTxBF20MHz;
|
||||||
tDot11fIEVHTCaps *vht_caps = NULL;
|
tDot11fIEVHTCaps *vht_caps = NULL;
|
||||||
tDot11fIEVHTOperation *vht_oper = NULL;
|
tDot11fIEVHTOperation *vht_oper = NULL;
|
||||||
@@ -3851,6 +3852,7 @@ tSirRetStatus lim_sta_send_add_bss(tpAniSirGlobal pMac, tpSirAssocRsp pAssocRsp,
|
|||||||
else if (pAssocRsp->vendor_vht_ie.VHTCaps.present) {
|
else if (pAssocRsp->vendor_vht_ie.VHTCaps.present) {
|
||||||
vht_caps = &pAssocRsp->vendor_vht_ie.VHTCaps;
|
vht_caps = &pAssocRsp->vendor_vht_ie.VHTCaps;
|
||||||
pe_debug("VHT Caps are in vendor Specfic IE");
|
pe_debug("VHT Caps are in vendor Specfic IE");
|
||||||
|
is_vht_cap_in_vendor_ie = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((vht_caps != NULL) && (vht_caps->suBeamFormerCap ||
|
if ((vht_caps != NULL) && (vht_caps->suBeamFormerCap ||
|
||||||
@@ -3931,17 +3933,17 @@ tSirRetStatus lim_sta_send_add_bss(tpAniSirGlobal pMac, tpSirAssocRsp pAssocRsp,
|
|||||||
* hardcode this values to 0.
|
* hardcode this values to 0.
|
||||||
*/
|
*/
|
||||||
if (psessionEntry->htConfig.ht_sgi20) {
|
if (psessionEntry->htConfig.ht_sgi20) {
|
||||||
pAddBssParams->staContext.fShortGI20Mhz =
|
pAddBssParams->staContext.fShortGI20Mhz =
|
||||||
(uint8_t)pAssocRsp->HTCaps.shortGI20MHz;
|
(uint8_t)pAssocRsp->HTCaps.shortGI20MHz;
|
||||||
} else {
|
} else {
|
||||||
pAddBssParams->staContext.fShortGI20Mhz = false;
|
pAddBssParams->staContext.fShortGI20Mhz = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (psessionEntry->htConfig.ht_sgi40) {
|
if (psessionEntry->htConfig.ht_sgi40) {
|
||||||
pAddBssParams->staContext.fShortGI40Mhz =
|
pAddBssParams->staContext.fShortGI40Mhz =
|
||||||
(uint8_t) pAssocRsp->HTCaps.shortGI40MHz;
|
(uint8_t) pAssocRsp->HTCaps.shortGI40MHz;
|
||||||
} else {
|
} else {
|
||||||
pAddBssParams->staContext.fShortGI40Mhz = false;
|
pAddBssParams->staContext.fShortGI40Mhz = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!pAddBssParams->staContext.vhtCapable)
|
if (!pAddBssParams->staContext.vhtCapable)
|
||||||
@@ -3973,11 +3975,16 @@ tSirRetStatus lim_sta_send_add_bss(tpAniSirGlobal pMac, tpSirAssocRsp pAssocRsp,
|
|||||||
pe_debug("VHT Caps is in vendor Specfic IE");
|
pe_debug("VHT Caps is in vendor Specfic IE");
|
||||||
}
|
}
|
||||||
if (vht_caps != NULL &&
|
if (vht_caps != NULL &&
|
||||||
(psessionEntry->txLdpcIniFeatureEnabled & 0x2))
|
(psessionEntry->txLdpcIniFeatureEnabled & 0x2)) {
|
||||||
pAddBssParams->staContext.vhtLdpcCapable =
|
if (!is_vht_cap_in_vendor_ie)
|
||||||
(uint8_t) vht_caps->ldpcCodingCap;
|
pAddBssParams->staContext.vhtLdpcCapable =
|
||||||
else
|
(uint8_t) pAssocRsp->VHTCaps.ldpcCodingCap;
|
||||||
|
else
|
||||||
|
pAddBssParams->staContext.vhtLdpcCapable =
|
||||||
|
(uint8_t) vht_caps->ldpcCodingCap;
|
||||||
|
} else {
|
||||||
pAddBssParams->staContext.vhtLdpcCapable = 0;
|
pAddBssParams->staContext.vhtLdpcCapable = 0;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (pBeaconStruct->HTInfo.present)
|
if (pBeaconStruct->HTInfo.present)
|
||||||
|
Reference in New Issue
Block a user