qcacld-3.0: Update MCS set on add_sta in LFR2 scenario

In LFR2 scenario, STA roams to IOT AP with which max nss
capability is advertised because ini configured vendor OUI
and data for max nss is found in AP's beacons or probe
responses. On receiving association response with reduced
nss, nss is not updated as part of add_sta. This is resulting
in incorrect nss to be sent in peer_assoc command.

Fix is to update MCS set so that appropriate nss is sent in
peer_assoc command.

Change-Id: Id137a09f24063c8260c21eda6cd74cbb571b9129
CRs-Fixed: 2464318
This commit is contained in:
Yeshwanth Sriram Guntuka 2019-06-03 18:07:23 +05:30 committed by nshrivas
parent c0a982c47c
commit 1c7d239b15
2 changed files with 19 additions and 0 deletions

View File

@ -389,11 +389,24 @@ QDF_STATUS lim_add_ft_sta_self(struct mac_context *mac_ctx, uint16_t assoc_id,
tpAddStaParams add_sta_params = NULL;
QDF_STATUS ret_code = QDF_STATUS_SUCCESS;
struct scheduler_msg msg_q = {0};
tpDphHashNode sta_ds;
sta_ds = dph_get_hash_entry(mac_ctx, DPH_STA_HASH_INDEX_PEER,
&session_entry->dph.dphHashTable);
if (!sta_ds) {
pe_err("Could not get hash entry at DPH");
return QDF_STATUS_E_FAILURE;
}
add_sta_params = session_entry->ftPEContext.pAddStaReq;
add_sta_params->assocId = assoc_id;
add_sta_params->smesessionId = session_entry->smeSessionId;
qdf_mem_copy(add_sta_params->supportedRates.supportedMCSSet,
sta_ds->supportedRates.supportedMCSSet,
SIR_MAC_MAX_SUPPORTED_MCS_SET);
if (lim_is_fils_connection(session_entry))
add_sta_params->no_ptk_4_way = true;

View File

@ -5495,6 +5495,12 @@ static void wma_add_sta_req_sta_mode(tp_wma_handle wma, tpAddStaParams params)
((tAddStaParams *)iface->addBssStaContext)->no_ptk_4_way =
params->no_ptk_4_way;
qdf_mem_copy(((tAddStaParams *)iface->addBssStaContext)->
supportedRates.supportedMCSSet,
params->supportedRates.supportedMCSSet,
SIR_MAC_MAX_SUPPORTED_MCS_SET);
ret = wma_send_peer_assoc(wma,
iface->nwType,
(tAddStaParams *) iface->addBssStaContext);