qcacld-3.0: Fix suBFormee/suBFormer in handling assoc request

In handling assoc request make sure to use VHT IE or vendor VHT IE
appropriately for suBFormee/suBFormer calculation.

Change-Id: I3934a0c7229a8a400d1aa54fe3bf0bc3513d4d70
CRs-Fixed: 2159206
This commit is contained in:
Naveen Rawat 2018-02-15 10:47:38 -08:00
parent 819e218bf2
commit 2eb4c8309f

View File

@ -1471,17 +1471,28 @@ static bool lim_update_sta_ds(tpAniSirGlobal mac_ctx, tpSirMacMgmtHdr hdr,
sta_ds->mlmStaContext.htCapability = 0;
sta_ds->mlmStaContext.vhtCapability = 0;
}
if (sta_ds->mlmStaContext.vhtCapability) {
if (sta_ds->mlmStaContext.vhtCapability && vht_caps) {
if (session->vht_config.su_beam_formee &&
assoc_req->VHTCaps.suBeamFormerCap)
vht_caps->suBeamFormerCap)
sta_ds->vhtBeamFormerCapable = 1;
else
sta_ds->vhtBeamFormerCapable = 0;
if (session->vht_config.su_beam_former &&
assoc_req->VHTCaps.suBeamformeeCap)
vht_caps->suBeamformeeCap)
sta_ds->vht_su_bfee_capable = 1;
else
sta_ds->vht_su_bfee_capable = 0;
pe_debug("peer_caps: suBformer: %d, suBformee: %d",
vht_caps->suBeamFormerCap,
vht_caps->suBeamformeeCap);
pe_debug("self_cap: suBformer: %d, suBformee: %d",
session->vht_config.su_beam_former,
session->vht_config.su_beam_formee);
pe_debug("connection's final cap: suBformer: %d, suBformee: %d",
sta_ds->vhtBeamFormerCapable,
sta_ds->vht_su_bfee_capable);
}
lim_intersect_sta_he_caps(assoc_req, session, sta_ds);