qcacld-3.0: Remove unused params from struct bss_params

struct bss_params has many legacy params which are not used. So
remove the unused params from struct bss_params.

Change-Id: I7d930e83ff0ce56bf8fb07789f9fca9f94fb6f74
CRs-Fixed: 2530215
This commit is contained in:
Abhishek Singh 2019-09-18 17:55:22 +05:30 • committed by nshrivas
commit 7944c9aef9
10 changed files with 49 additions and 287 deletions

View file

@ -2443,10 +2443,10 @@ pe_roam_synch_callback(struct mac_context *mac_ctx,
return status;
}
add_bss_params->bss_idx = roam_sync_ind_ptr->roamed_vdev_id;
ft_session_ptr->bss_idx = (uint8_t)add_bss_params->bss_idx;
add_bss_params->vdev_id = roam_sync_ind_ptr->roamed_vdev_id;
ft_session_ptr->bss_idx = add_bss_params->vdev_id;
curr_sta_ds->bssId = add_bss_params->bss_idx;
curr_sta_ds->bssId = add_bss_params->vdev_id;
curr_sta_ds->staIndex = add_bss_params->staContext.staIdx;
mac_ctx->roam.reassocRespLen = roam_sync_ind_ptr->reassocRespLength;
mac_ctx->roam.pReassocResp =

View file

@ -3529,8 +3529,6 @@ void lim_sta_add_bss_update_ht_parameter(uint32_t bss_chan_freq,
if (!ht_inf->present)
return;
add_bss->htOperMode = ht_inf->opMode;
add_bss->dualCTSProtection = ht_inf->dualCTSProtection;
if (chan_width_support && ht_cap->supportedChannelWidthSet) {
add_bss->ch_width = ht_inf->recommendedTxWidthSet;
if (ht_inf->secondaryChannelOffset ==
@ -3543,20 +3541,9 @@ void lim_sta_add_bss_update_ht_parameter(uint32_t bss_chan_freq,
add_bss->ch_width = CH_WIDTH_20MHZ;
add_bss->chan_freq_seg0 = 0;
}
add_bss->llnNonGFCoexist = ht_inf->nonGFDevicesPresent;
add_bss->fLsigTXOPProtectionFullSupport =
ht_inf->lsigTXOPProtectionFullSupport;
add_bss->fRIFSMode = ht_inf->rifsMode;
pe_debug("htOperMode: %d dualCTSProtection: %d txChannelWidth: %d",
add_bss->htOperMode,
add_bss->dualCTSProtection,
pe_debug("center_freq_0: %d ch_width %d", add_bss->chan_freq_seg0,
add_bss->ch_width);
pe_debug("center_freq_0: %d llnNonGFCoexist: %d",
add_bss->chan_freq_seg0,
add_bss->llnNonGFCoexist);
pe_debug("fLsigTXOPProtectionFullSupport: %d fRIFSMode: %d",
add_bss->fLsigTXOPProtectionFullSupport,
add_bss->fRIFSMode);
}
QDF_STATUS lim_sta_send_add_bss(struct mac_context *mac, tpSirAssocRsp pAssocRsp,
@ -3597,32 +3584,13 @@ QDF_STATUS lim_sta_send_add_bss(struct mac_context *mac, tpSirAssocRsp pAssocRsp
pe_debug("BSSID: " QDF_MAC_ADDR_STR,
QDF_MAC_ADDR_ARRAY(pAddBssParams->bssId));
pAddBssParams->bssType = eSIR_INFRASTRUCTURE_MODE;
pAddBssParams->operMode = BSS_OPERATIONAL_MODE_STA;
/* Update PE session ID */
pAddBssParams->sessionId = pe_session->peSessionId;
pAddBssParams->bss_idx = pe_session->smeSessionId;
pAddBssParams->vdev_id = pe_session->smeSessionId;
pAddBssParams->beaconInterval = bssDescription->beaconInterval;
pAddBssParams->dtimPeriod = pBeaconStruct->tim.dtimPeriod;
pAddBssParams->updateBss = updateEntry;
pAddBssParams->cfParamSet.cfpCount = pBeaconStruct->cfParamSet.cfpCount;
pAddBssParams->cfParamSet.cfpPeriod =
pBeaconStruct->cfParamSet.cfpPeriod;
pAddBssParams->cfParamSet.cfpMaxDuration =
pBeaconStruct->cfParamSet.cfpMaxDuration;
pAddBssParams->cfParamSet.cfpDurRemaining =
pBeaconStruct->cfParamSet.cfpDurRemaining;
pAddBssParams->rateSet.numRates = pAssocRsp->supportedRates.numRates;
qdf_mem_copy(pAddBssParams->rateSet.rate,
pAssocRsp->supportedRates.rate,
pAssocRsp->supportedRates.numRates);
if (IS_DOT11_MODE_11B(pe_session->dot11mode) &&
bssDescription->nwType != eSIR_11B_NW_TYPE) {
pAddBssParams->nwType = eSIR_11B_NW_TYPE;
@ -3632,31 +3600,15 @@ QDF_STATUS lim_sta_send_add_bss(struct mac_context *mac, tpSirAssocRsp pAssocRsp
pAddBssParams->shortSlotTimeSupported =
(uint8_t) pAssocRsp->capabilityInfo.shortSlotTime;
pAddBssParams->llaCoexist =
(uint8_t) pe_session->beaconParams.llaCoexist;
pAddBssParams->llbCoexist =
(uint8_t) pe_session->beaconParams.llbCoexist;
pAddBssParams->llgCoexist =
(uint8_t) pe_session->beaconParams.llgCoexist;
pAddBssParams->ht20Coexist =
(uint8_t) pe_session->beaconParams.ht20Coexist;
pe_debug("BSS Type %d Beacon Interval: %d dtimPeriod: %d "
"cfpCount: %d", pAddBssParams->bssType,
pAddBssParams->beaconInterval, pAddBssParams->dtimPeriod,
pAddBssParams->cfParamSet.cfpCount);
pe_debug("Beacon Interval: %d dtimPeriod: %d",
pAddBssParams->beaconInterval, pAddBssParams->dtimPeriod);
pe_debug("cfpPeriod: %d cfpMaxDuration: %d cfpDurRemaining: %d "
"numRates: %d", pAddBssParams->cfParamSet.cfpPeriod,
pAddBssParams->cfParamSet.cfpMaxDuration,
pAddBssParams->cfParamSet.cfpDurRemaining,
pAddBssParams->rateSet.numRates);
pe_debug("nwType:%d shortSlotTimeSupported: %d llaCoexist: %d "
"llbCoexist: %d llgCoexist: %d ht20Coexist: %d",
pe_debug("nwType:%d shortSlotTimeSupported: %d llbCoexist: %d",
pAddBssParams->nwType, pAddBssParams->shortSlotTimeSupported,
pAddBssParams->llaCoexist, pAddBssParams->llbCoexist,
pAddBssParams->llgCoexist, pAddBssParams->ht20Coexist);
pAddBssParams->llbCoexist);
pAddBssParams->dot11_mode = pe_session->dot11mode;
pe_debug("dot11_mode: %d", pAddBssParams->dot11_mode);
@ -3965,9 +3917,6 @@ QDF_STATUS lim_sta_send_add_bss(struct mac_context *mac, tpSirAssocRsp pAssocRsp
pAddBssParams->maxTxPower = pe_session->maxTxPower;
pe_debug("maxTxPower: %d", pAddBssParams->maxTxPower);
/* FIXME_GEN4 - Any other value that can be used for initialization? */
pAddBssParams->status = QDF_STATUS_SUCCESS;
pAddBssParams->respReqd = true;
/* update persona */
pAddBssParams->halPersona = (uint8_t)pe_session->opmode;
@ -4095,62 +4044,25 @@ QDF_STATUS lim_sta_send_add_bss_pre_assoc(struct mac_context *mac,
pe_debug("BSSID: " QDF_MAC_ADDR_STR,
QDF_MAC_ADDR_ARRAY(pAddBssParams->bssId));
/* Incorrect BSS Type which caused UMA Descriptor to be overwritten on
* top of an already established Infra link. This lead to issues in
* concurrent data transfer.
*/
pAddBssParams->bssType = pe_session->bssType; /* eSIR_INFRASTRUCTURE_MODE; */
pAddBssParams->operMode = BSS_OPERATIONAL_MODE_STA;
pAddBssParams->beaconInterval = bssDescription->beaconInterval;
pAddBssParams->dtimPeriod = pBeaconStruct->tim.dtimPeriod;
pAddBssParams->updateBss = false;
pAddBssParams->cfParamSet.cfpCount = pBeaconStruct->cfParamSet.cfpCount;
pAddBssParams->cfParamSet.cfpPeriod =
pBeaconStruct->cfParamSet.cfpPeriod;
pAddBssParams->cfParamSet.cfpMaxDuration =
pBeaconStruct->cfParamSet.cfpMaxDuration;
pAddBssParams->cfParamSet.cfpDurRemaining =
pBeaconStruct->cfParamSet.cfpDurRemaining;
pAddBssParams->rateSet.numRates =
pBeaconStruct->supportedRates.numRates;
qdf_mem_copy(pAddBssParams->rateSet.rate,
pBeaconStruct->supportedRates.rate,
pBeaconStruct->supportedRates.numRates);
pAddBssParams->nwType = bssDescription->nwType;
pAddBssParams->shortSlotTimeSupported =
(uint8_t) pBeaconStruct->capabilityInfo.shortSlotTime;
pAddBssParams->llaCoexist =
(uint8_t) pe_session->beaconParams.llaCoexist;
pAddBssParams->llbCoexist =
(uint8_t) pe_session->beaconParams.llbCoexist;
pAddBssParams->llgCoexist =
(uint8_t) pe_session->beaconParams.llgCoexist;
pAddBssParams->ht20Coexist =
(uint8_t) pe_session->beaconParams.ht20Coexist;
pe_debug("BSS Type %d Beacon Interval: %d dtimPeriod: %d "
"cfpCount: %d", pAddBssParams->bssType,
pAddBssParams->beaconInterval, pAddBssParams->dtimPeriod,
pAddBssParams->cfParamSet.cfpCount);
pe_debug("Beacon Interval: %d dtimPeriod: %d",
pAddBssParams->beaconInterval, pAddBssParams->dtimPeriod);
pe_debug("cfpPeriod: %d cfpMaxDuration: %d cfpDurRemaining: %d"
" numRates: %d", pAddBssParams->cfParamSet.cfpPeriod,
pAddBssParams->cfParamSet.cfpMaxDuration,
pAddBssParams->cfParamSet.cfpDurRemaining,
pAddBssParams->rateSet.numRates);
pe_debug("nwType:%d shortSlotTimeSupported: %d"
"llaCoexist: %d llbCoexist: %d llgCoexist: %d ht20Coexist: %d",
pe_debug("nwType:%d shortSlotTimeSupported: %d llbCoexist: %d",
pAddBssParams->nwType, pAddBssParams->shortSlotTimeSupported,
pAddBssParams->llaCoexist, pAddBssParams->llbCoexist,
pAddBssParams->llgCoexist, pAddBssParams->ht20Coexist);
pAddBssParams->llbCoexist);
/* Use the advertised capabilities from the received beacon/PR */
if (IS_DOT11_MODE_HT(pe_session->dot11mode)) {
@ -4405,13 +4317,9 @@ QDF_STATUS lim_sta_send_add_bss_pre_assoc(struct mac_context *mac,
pAddBssParams->maxTxPower = pe_session->maxTxPower;
pe_debug("maxTxPower: %d", pAddBssParams->maxTxPower);
pAddBssParams->status = QDF_STATUS_SUCCESS;
pAddBssParams->respReqd = true;
pAddBssParams->staContext.smesessionId = pe_session->smeSessionId;
pAddBssParams->staContext.sessionId = pe_session->peSessionId;
pAddBssParams->sessionId = pe_session->peSessionId;
pAddBssParams->bss_idx = pe_session->smeSessionId;
pAddBssParams->vdev_id = pe_session->smeSessionId;
pAddBssParams->halPersona = (uint8_t)pe_session->opmode;
@ -4460,9 +4368,14 @@ QDF_STATUS lim_sta_send_add_bss_pre_assoc(struct mac_context *mac,
if (lim_is_fils_connection(pe_session))
pAddBssParams->no_ptk_4_way = true;
pAddBssParams->status = wma_pre_assoc_req(pAddBssParams);
lim_process_sta_add_bss_rsp_pre_assoc(mac, pAddBssParams, pe_session);
retCode = wma_pre_assoc_req(pAddBssParams);
lim_process_sta_add_bss_rsp_pre_assoc(mac, pAddBssParams,
pe_session, retCode);
qdf_mem_free(pAddBssParams);
/*
* Set retCode sucess as lim_process_sta_add_bss_rsp_pre_assoc take
* care of failure
*/
retCode = QDF_STATUS_SUCCESS;
returnFailure:

View file

@ -153,43 +153,17 @@ void lim_ft_prepare_add_bss_req(struct mac_context *mac,
/* Fill in struct bss_params self_mac_addr */
qdf_mem_copy(pAddBssParams->self_mac_addr, ft_session->self_mac_addr,
sizeof(tSirMacAddr));
pAddBssParams->bssType = ft_session->bssType;
pAddBssParams->operMode = BSS_OPERATIONAL_MODE_STA;
pAddBssParams->beaconInterval = bssDescription->beaconInterval;
pAddBssParams->dtimPeriod = pBeaconStruct->tim.dtimPeriod;
pAddBssParams->updateBss = false;
pAddBssParams->reassocReq = true;
pAddBssParams->cfParamSet.cfpCount = pBeaconStruct->cfParamSet.cfpCount;
pAddBssParams->cfParamSet.cfpPeriod =
pBeaconStruct->cfParamSet.cfpPeriod;
pAddBssParams->cfParamSet.cfpMaxDuration =
pBeaconStruct->cfParamSet.cfpMaxDuration;
pAddBssParams->cfParamSet.cfpDurRemaining =
pBeaconStruct->cfParamSet.cfpDurRemaining;
pAddBssParams->rateSet.numRates =
pBeaconStruct->supportedRates.numRates;
qdf_mem_copy(pAddBssParams->rateSet.rate,
pBeaconStruct->supportedRates.rate,
pBeaconStruct->supportedRates.numRates);
pAddBssParams->nwType = bssDescription->nwType;
pAddBssParams->shortSlotTimeSupported =
(uint8_t) pBeaconStruct->capabilityInfo.shortSlotTime;
pAddBssParams->llaCoexist =
(uint8_t) ft_session->beaconParams.llaCoexist;
pAddBssParams->llbCoexist =
(uint8_t) ft_session->beaconParams.llbCoexist;
pAddBssParams->llgCoexist =
(uint8_t) ft_session->beaconParams.llgCoexist;
pAddBssParams->ht20Coexist =
(uint8_t) ft_session->beaconParams.ht20Coexist;
#ifdef WLAN_FEATURE_11W
pAddBssParams->rmfEnabled = ft_session->limRmfEnabled;
#endif
@ -408,14 +382,9 @@ void lim_ft_prepare_add_bss_req(struct mac_context *mac,
pAddBssParams->staContext.rmfEnabled = 1;
}
#endif
pAddBssParams->status = QDF_STATUS_SUCCESS;
pAddBssParams->respReqd = true;
pAddBssParams->staContext.sessionId = ft_session->peSessionId;
pAddBssParams->staContext.smesessionId = ft_session->smeSessionId;
pAddBssParams->sessionId = ft_session->peSessionId;
pAddBssParams->bss_idx = ft_session->smeSessionId;
pAddBssParams->vdev_id = ft_session->smeSessionId;
/* Set a new state for MLME */
if (!lim_is_roam_synch_in_progress(ft_session)) {

View file

@ -300,7 +300,6 @@ lim_mlm_add_bss(struct mac_context *mac_ctx,
{
struct scheduler_msg msg_buf = {0};
struct bss_params *addbss_param = NULL;
struct wlan_mlme_qos *qos_aggr = &mac_ctx->mlme_cfg->qos_mlme_params;
uint32_t retcode;
bool is_ch_dfs = false;
@ -317,35 +316,10 @@ lim_mlm_add_bss(struct mac_context *mac_ctx,
qdf_mem_copy(addbss_param->self_mac_addr,
session->self_mac_addr, sizeof(tSirMacAddr));
addbss_param->bssType = mlm_start_req->bssType;
if (mlm_start_req->bssType == eSIR_IBSS_MODE)
addbss_param->operMode = BSS_OPERATIONAL_MODE_STA;
else if (mlm_start_req->bssType == eSIR_INFRA_AP_MODE)
addbss_param->operMode = BSS_OPERATIONAL_MODE_AP;
else if (mlm_start_req->bssType == eSIR_NDI_MODE)
addbss_param->operMode = BSS_OPERATIONAL_MODE_NDI;
addbss_param->shortSlotTimeSupported = session->shortSlotTimeSupported;
addbss_param->beaconInterval = mlm_start_req->beaconPeriod;
addbss_param->dtimPeriod = mlm_start_req->dtimPeriod;
addbss_param->wps_state = mlm_start_req->wps_state;
addbss_param->cfParamSet.cfpCount = mlm_start_req->cfParamSet.cfpCount;
addbss_param->cfParamSet.cfpPeriod =
mlm_start_req->cfParamSet.cfpPeriod;
addbss_param->cfParamSet.cfpMaxDuration =
mlm_start_req->cfParamSet.cfpMaxDuration;
addbss_param->cfParamSet.cfpDurRemaining =
mlm_start_req->cfParamSet.cfpDurRemaining;
addbss_param->rateSet.numRates = mlm_start_req->rateSet.numRates;
if (addbss_param->rateSet.numRates > WLAN_SUPPORTED_RATES_IE_MAX_LEN) {
pe_warn("num of sup rates %d exceeding the limit %d, resetting",
addbss_param->rateSet.numRates,
WLAN_SUPPORTED_RATES_IE_MAX_LEN);
addbss_param->rateSet.numRates = WLAN_SUPPORTED_RATES_IE_MAX_LEN;
}
qdf_mem_copy(addbss_param->rateSet.rate, mlm_start_req->rateSet.rate,
addbss_param->rateSet.numRates);
addbss_param->nwType = mlm_start_req->nwType;
addbss_param->htCapable = mlm_start_req->htCapable;
@ -363,9 +337,6 @@ lim_mlm_add_bss(struct mac_context *mac_ctx,
addbss_param->chan_freq_seg1 =
wlan_reg_chan_to_freq(mac_ctx->pdev,
session->ch_center_freq_seg1);
addbss_param->htOperMode = mlm_start_req->htOperMode;
addbss_param->dualCTSProtection = mlm_start_req->dualCTSProtection;
addbss_param->txChannelWidthSet = mlm_start_req->txChannelWidthSet;
addbss_param->op_chan_freq =
wlan_reg_chan_to_freq(mac_ctx->pdev,
@ -374,10 +345,7 @@ lim_mlm_add_bss(struct mac_context *mac_ctx,
addbss_param->rmfEnabled = session->limRmfEnabled;
#endif
/* Update PE sessionId */
addbss_param->sessionId = mlm_start_req->sessionId;
addbss_param->bss_idx = session->smeSessionId;
addbss_param->vdev_id = session->smeSessionId;
/* Send the SSID to HAL to enable SSID matching for IBSS */
addbss_param->ssId.length = mlm_start_req->ssId.length;
@ -392,19 +360,11 @@ lim_mlm_add_bss(struct mac_context *mac_ctx,
mlm_start_req->ssId.ssId, addbss_param->ssId.length);
addbss_param->bHiddenSSIDEn = mlm_start_req->ssidHidden;
pe_debug("TRYING TO HIDE SSID %d", addbss_param->bHiddenSSIDEn);
/* CR309183. Disable Proxy Probe Rsp. Host handles Probe Requests. Until FW fixed. */
addbss_param->bProxyProbeRespEn = 0;
addbss_param->obssProtEnabled = mlm_start_req->obssProtEnabled;
addbss_param->maxTxPower = session->maxTxPower;
mlm_add_sta(mac_ctx, &addbss_param->staContext,
addbss_param->bssId, addbss_param->htCapable,
session);
addbss_param->status = QDF_STATUS_SUCCESS;
addbss_param->respReqd = 1;
/* Set a new state for MLME */
session->limMlmState = eLIM_MLM_WT_ADD_BSS_RSP_STATE;
MTRACE(mac_trace(mac_ctx, TRACE_CODE_MLM_STATE, session->peSessionId,
@ -440,26 +400,6 @@ lim_mlm_add_bss(struct mac_context *mac_ctx,
addbss_param->cac_duration_ms = mlm_start_req->cac_duration_ms;
addbss_param->dfs_regdomain = mlm_start_req->dfs_regdomain;
addbss_param->beacon_tx_rate = session->beacon_tx_rate;
if (QDF_IBSS_MODE == addbss_param->halPersona) {
if (!(mac_ctx->mlme_cfg)) {
pe_err("Mlme cfg NULL");
return eSIR_SME_INVALID_PARAMETERS;
}
addbss_param->nss_2g = mac_ctx->vdev_type_nss_2g.ibss;
addbss_param->nss_5g = mac_ctx->vdev_type_nss_5g.ibss;
addbss_param->tx_aggregation_size =
qos_aggr->tx_aggregation_size;
addbss_param->tx_aggregation_size_be =
qos_aggr->tx_aggregation_size_be;
addbss_param->tx_aggregation_size_bk =
qos_aggr->tx_aggregation_size_bk;
addbss_param->tx_aggregation_size_vi =
qos_aggr->tx_aggregation_size_vi;
addbss_param->tx_aggregation_size_vo =
qos_aggr->tx_aggregation_size_vo;
addbss_param->rx_aggregation_size =
qos_aggr->rx_aggregation_size;
}
pe_debug("dot11_mode:%d nss value:%d",
addbss_param->dot11_mode, addbss_param->nss);

View file

@ -2121,7 +2121,8 @@ static void lim_update_fils_auth_mode(struct pe_session *session_entry,
void lim_process_sta_add_bss_rsp_pre_assoc(struct mac_context *mac_ctx,
struct bss_params *add_bss_params,
struct pe_session *session_entry)
struct pe_session *session_entry,
QDF_STATUS status)
{
tAniAuthType cfgAuthType, authMode;
tLimMlmAuthReq *pMlmAuthReq;
@ -2131,7 +2132,7 @@ void lim_process_sta_add_bss_rsp_pre_assoc(struct mac_context *mac_ctx,
pe_err("Invalid body pointer in message");
goto joinFailure;
}
if (QDF_IS_STATUS_SUCCESS(add_bss_params->status)) {
if (QDF_IS_STATUS_SUCCESS(status)) {
sta = dph_add_hash_entry(mac_ctx,
add_bss_params->staContext.staMac,
DPH_STA_HASH_INDEX_PEER,
@ -2143,9 +2144,9 @@ void lim_process_sta_add_bss_rsp_pre_assoc(struct mac_context *mac_ctx,
add_bss_params->staContext.staMac, LOGE);
goto joinFailure;
}
session_entry->bss_idx = (uint8_t)add_bss_params->bss_idx;
session_entry->vdev_id = add_bss_params->vdev_id;
/* Success, handle below */
sta->bssId = add_bss_params->bss_idx;
sta->bssId = add_bss_params->vdev_id;
/* STA Index(genr by HAL) for the BSS entry is stored here */
sta->staIndex = add_bss_params->staContext.staIdx;
/* Trigger Authentication with AP */

View file

@ -1267,6 +1267,7 @@ bool lim_send_assoc_ind_to_sme(struct mac_context *mac_ctx,
* @mac_ctx: Pointer to mac context
* @pAddBssParams: Bss params including rsp data
* @session_entry: PE session handle
* @status: Qdf status
*
* This function is called to process a WMA_ADD_BSS_RSP from HAL.
* Upon receipt of this message from HAL if the state is pre assoc.
@ -1275,5 +1276,6 @@ bool lim_send_assoc_ind_to_sme(struct mac_context *mac_ctx,
*/
void lim_process_sta_add_bss_rsp_pre_assoc(struct mac_context *mac_ctx,
struct bss_params *add_bss_params,
struct pe_session *session_entry);
struct pe_session *session_entry,
QDF_STATUS status);
#endif /* __LIM_TYPES_H */

View file

@ -1241,7 +1241,6 @@ struct wma_vdev_start_req {
bool is_dfs;
uint8_t vdev_id;
uint32_t op_chan_freq;
uint8_t oper_mode;
tSirMacSSid ssid;
uint8_t hidden_ssid;
uint8_t pmf_enabled;

View file

@ -372,49 +372,29 @@ typedef struct sLimMlmSetKeysReq {
* struct struct bss_params - parameters required for add bss params
* @bssId: MAC Address/BSSID
* @self_mac_addr: Self Mac Address
* @bssType: BSS type
* @operMode: AP - 0; STA - 1;
* @nwType: network type
* @shortSlotTimeSupported: is short slot time supported or not
* @llaCoexist: is 11a coexist or not
* @llbCoexist: 11b coexist supported or not
* @llgCoexist: 11g coexist supported or not
* @ht20Coexist: HT20 coexist supported or not
* @fLsigTXOPProtectionFullSupport: TXOP protection supported or not
* @fRIFSMode: RIFS is supported or not
* @beaconInterval: beacon interval
* @dtimPeriod: DTIM period
* @cfParamSet: CF Param Set
* @rateSet: MAC Rate Set
* @htCapable: Enable/Disable HT capabilities
* @obssProtEnabled: Enable/Disable OBSS protection
* @rmfEnabled: RMF enabled/disabled
* @htOperMode: HT Operating Mode
* @HT Operating Mode: Dual CTS Protection: 0 - Unused, 1 - Used
* @txChannelWidthSet: TX Width Set: 0 - 20 MHz only, 1 - 20/40 MHz
* @op_chan_freq: Current Operating frequency
* @staContext: sta context
* @status: status
* @bss_idx: BSS index allocated by HAL
* @vdev_id: vdev id
* @updateBss: update the existing BSS entry, if this flag is set
* @ssId: Add BSSID info for rxp filter
* @respReqd: send the response message to LIM only when this flag is set
* @sessionId: PE session id
* @txMgmtPower: tx power used for mgmt frames
* @maxTxPower: max power to be used after applying the power constraint
* @extSetStaKeyParamValid: Ext Bss Config Msg if set
* @extSetStaKeyParam: SetStaKeyParams for ext bss msg
* @bHiddenSSIDEn: To Enable Hidden ssid.
* @bProxyProbeRespEn: To Enable Disable FW Proxy Probe Resp
* @halPersona: Persona for the BSS can be STA,AP,GO,CLIENT value
* @bSpectrumMgtEnabled: Spectrum Management Capability, 1:Enabled, 0:Disabled.
* @vhtCapable: VHT capablity
* @vhtTxChannelWidthSet: VHT tx channel width
* @chan_freq_seg0: center freq seq 0
* @chan_freq_seg1: center freq seq 1
* @reassocReq: Set only during roaming reassociation
* @chainMask: chain mask
* @smpsMode: SMPS mode
* @dot11_mode: 802.11 mode
* @he_capable: HE Capability
* @cac_duration_ms: cac duration in milliseconds
@ -424,71 +404,41 @@ typedef struct sLimMlmSetKeysReq {
struct bss_params {
tSirMacAddr bssId;
tSirMacAddr self_mac_addr;
enum bss_type bssType;
uint8_t operMode;
tSirNwType nwType;
uint8_t shortSlotTimeSupported;
uint8_t llaCoexist;
uint8_t llbCoexist;
uint8_t llgCoexist;
uint8_t ht20Coexist;
uint8_t llnNonGFCoexist;
uint8_t fLsigTXOPProtectionFullSupport;
uint8_t fRIFSMode;
tSirMacBeaconInterval beaconInterval;
uint8_t dtimPeriod;
tSirMacCfParamSet cfParamSet;
tSirMacRateSet rateSet;
uint8_t htCapable;
uint8_t obssProtEnabled;
uint8_t rmfEnabled;
tSirMacHTOperatingMode htOperMode;
uint8_t dualCTSProtection;
uint8_t txChannelWidthSet;
uint32_t op_chan_freq;
tAddStaParams staContext;
QDF_STATUS status;
uint16_t bss_idx;
uint8_t vdev_id;
/* HAL should update the existing BSS entry, if this flag is set.
* PE will set this flag in case of reassoc, where we want to resue the
* the old bssID and still return success.
*/
uint8_t updateBss;
tSirMacSSid ssId;
uint8_t respReqd;
uint8_t sessionId;
int8_t maxTxPower;
uint8_t extSetStaKeyParamValid;
tSetStaKeyParams extSetStaKeyParam;
uint8_t bHiddenSSIDEn;
uint8_t bProxyProbeRespEn;
uint8_t halPersona;
uint8_t bSpectrumMgtEnabled;
uint8_t vhtCapable;
enum phy_ch_width ch_width;
uint32_t chan_freq_seg0;
uint32_t chan_freq_seg1;
uint8_t reassocReq; /* Set only during roaming reassociation */
uint16_t chainMask;
uint16_t smpsMode;
uint8_t dot11_mode;
uint8_t nonRoamReassoc;
uint8_t wps_state;
uint8_t nss;
uint8_t nss_2g;
uint8_t nss_5g;
uint16_t beacon_tx_rate;
uint32_t tx_aggregation_size;
uint32_t tx_aggregation_size_be;
uint32_t tx_aggregation_size_bk;
uint32_t tx_aggregation_size_vi;
uint32_t tx_aggregation_size_vo;
uint32_t rx_aggregation_size;
#ifdef WLAN_FEATURE_11AX
bool he_capable;
tDot11fIEhe_cap he_config;
tDot11fIEhe_op he_op;
uint32_t he_sta_obsspd;
#endif

View file

@ -216,7 +216,6 @@ static void wma_add_bss_ibss_mode(tp_wma_handle wma, struct bss_params *add_bss)
/* start ibss vdev */
add_bss->operMode = BSS_OPERATIONAL_MODE_IBSS;
add_bss->staContext.staIdx = cdp_peer_get_local_peer_id(soc, peer);
/*
@ -249,7 +248,6 @@ static void wma_add_bss_ibss_mode(tp_wma_handle wma, struct bss_params *add_bss)
req.dtim_period = add_bss->dtimPeriod;
req.hidden_ssid = add_bss->bHiddenSSIDEn;
req.is_dfs = add_bss->bSpectrumMgtEnabled;
req.oper_mode = BSS_OPERATIONAL_MODE_IBSS;
req.ssid.length = add_bss->ssId.length;
if (req.ssid.length > 0)
qdf_mem_copy(req.ssid.ssId, add_bss->ssId.ssId,
@ -284,7 +282,7 @@ peer_cleanup:
if (peer)
wma_remove_peer(wma, add_bss->bssId, vdev_id, peer, false);
send_fail_resp:
wma_send_add_bss_resp(wma, add_bss->bss_idx, QDF_STATUS_E_FAILURE);
wma_send_add_bss_resp(wma, add_bss->vdev_id, QDF_STATUS_E_FAILURE);
}
/**
@ -3657,7 +3655,6 @@ static void wma_add_bss_ap_mode(tp_wma_handle wma, struct bss_params *add_bss)
req.beacon_tx_rate = add_bss->beacon_tx_rate;
req.hidden_ssid = add_bss->bHiddenSSIDEn;
req.is_dfs = add_bss->bSpectrumMgtEnabled;
req.oper_mode = BSS_OPERATIONAL_MODE_AP;
req.ssid.length = add_bss->ssId.length;
req.cac_duration_ms = add_bss->cac_duration_ms;
req.dfs_regdomain = add_bss->dfs_regdomain;
@ -3688,7 +3685,7 @@ static void wma_add_bss_ap_mode(tp_wma_handle wma, struct bss_params *add_bss)
peer_cleanup:
wma_remove_peer(wma, add_bss->bssId, vdev_id, peer, false);
send_fail_resp:
wma_send_add_bss_resp(wma, add_bss->bss_idx, QDF_STATUS_E_FAILURE);
wma_send_add_bss_resp(wma, add_bss->vdev_id, QDF_STATUS_E_FAILURE);
}
static QDF_STATUS wma_update_iface_params(tp_wma_handle wma,
@ -3758,14 +3755,13 @@ QDF_STATUS wma_save_bss_params(tp_wma_handle wma, struct bss_params *add_bss)
status = QDF_STATUS_E_FAILURE;
else
status = QDF_STATUS_SUCCESS;
add_bss->bss_idx = add_bss->staContext.smesessionId;
add_bss->vdev_id = add_bss->staContext.smesessionId;
qdf_mem_copy(add_bss->staContext.staMac, add_bss->bssId,
sizeof(add_bss->staContext.staMac));
WMA_LOGD("%s: opermode %d update_bss %d nw_type %d bssid %pM staIdx %d status %d",
__func__, add_bss->operMode,
add_bss->updateBss, add_bss->nwType, add_bss->bssId,
add_bss->staContext.staIdx, add_bss->status);
WMA_LOGD("%s: update_bss %d nw_type %d bssid %pM staIdx %d status %d",
__func__, add_bss->updateBss, add_bss->nwType, add_bss->bssId,
add_bss->staContext.staIdx, status);
return status;
}
@ -3897,7 +3893,6 @@ QDF_STATUS wma_add_bss_lfr2_vdev_start(struct bss_params *add_bss)
req.hidden_ssid = add_bss->bHiddenSSIDEn;
req.is_dfs = add_bss->bSpectrumMgtEnabled;
req.ssid.length = add_bss->ssId.length;
req.oper_mode = BSS_OPERATIONAL_MODE_STA;
if (req.ssid.length > 0)
qdf_mem_copy(req.ssid.ssId, add_bss->ssId.ssId,
add_bss->ssId.length);
@ -3958,16 +3953,14 @@ QDF_STATUS wma_send_peer_assoc_req(struct bss_params *add_bss)
pdev = cds_get_context(QDF_MODULE_ID_TXRX);
if (!pdev) {
WMA_LOGE("%s Failed to get pdev", __func__);
add_bss->status = QDF_STATUS_E_FAILURE;
goto send_resp;
}
iface = &wma->interfaces[vdev_id];
status = wma_update_iface_params(wma, add_bss);
if (QDF_IS_STATUS_ERROR(status)) {
add_bss->status = QDF_STATUS_E_FAILURE;
if (QDF_IS_STATUS_ERROR(status))
goto send_resp;
}
peer = wma_cdp_find_peer_by_addr(add_bss->bssId, &peer_id);
if (add_bss->nonRoamReassoc && peer) {
add_bss->staContext.staIdx = peer_id;
@ -3979,7 +3972,6 @@ QDF_STATUS wma_send_peer_assoc_req(struct bss_params *add_bss)
if (!peer) {
WMA_LOGE("%s: %d Failed to find peer %pM",
__func__, __LINE__, add_bss->bssId);
add_bss->status = QDF_STATUS_E_FAILURE;
goto send_resp;
}
@ -3995,10 +3987,8 @@ QDF_STATUS wma_send_peer_assoc_req(struct bss_params *add_bss)
cdp_peer_state_update(soc, pdev, add_bss->bssId,
OL_TXRX_PEER_STATE_CONN);
status = wma_set_cdp_vdev_pause_reason(wma, vdev_id);
if (QDF_IS_STATUS_ERROR(status)) {
add_bss->status = QDF_STATUS_E_FAILURE;
if (QDF_IS_STATUS_ERROR(status))
goto peer_cleanup;
}
}
wmi_unified_send_txbf(wma, &add_bss->staContext);
@ -4020,7 +4010,6 @@ QDF_STATUS wma_send_peer_assoc_req(struct bss_params *add_bss)
&add_bss->staContext);
if (QDF_IS_STATUS_ERROR(status)) {
WMA_LOGE("Failed to send peer assoc status:%d", status);
add_bss->status = QDF_STATUS_E_FAILURE;
goto peer_cleanup;
}
peer_assoc_sent = true;
@ -4046,7 +4035,7 @@ QDF_STATUS wma_send_peer_assoc_req(struct bss_params *add_bss)
qdf_mem_copy(iface->bssid, add_bss->bssId, QDF_MAC_ADDR_SIZE);
send_bss_resp:
add_bss->status = wma_save_bss_params(wma, add_bss);
wma_save_bss_params(wma, add_bss);
if (!wmi_service_enabled(wma->wmi_handle,
wmi_service_peer_assoc_conf)) {

View file

@ -96,7 +96,6 @@ void wma_add_bss_ndi_mode(tp_wma_handle wma, struct bss_params *add_bss)
req.chan_freq_seg1 = add_bss->chan_freq_seg1;
req.vht_capable = add_bss->vhtCapable;
req.max_txpow = add_bss->maxTxPower;
req.oper_mode = add_bss->operMode;
status = wma_vdev_start(wma, &req, false);
if (status != QDF_STATUS_SUCCESS)
@ -109,7 +108,7 @@ void wma_add_bss_ndi_mode(tp_wma_handle wma, struct bss_params *add_bss)
return;
send_fail_resp:
wma_send_add_bss_resp(wma, add_bss->bss_idx, QDF_STATUS_E_FAILURE);
wma_send_add_bss_resp(wma, add_bss->vdev_id, QDF_STATUS_E_FAILURE);
}
/**