qcacld-3.0: Add curr_op_freq in pe_session

Add curr_op_freq in pe_session. And finally remove
currentOperChannel from pe_session in next few changes.

Change-Id: I2529a1637299b8dacf7fa6e2a81db851584453ee
CRs-Fixed: 2489613
This commit is contained in:
Liangwei Dong 2019-07-12 13:26:09 +08:00 • committed by nshrivas
commit 121bcb3def
5 changed files with 28 additions and 14 deletions

View file

@ -217,6 +217,7 @@ struct pe_session {
tSirMacRateSet rateSet;
tSirMacRateSet extRateSet;
tSirMacHTOperatingMode htOperMode;
uint32_t curr_op_freq;
uint8_t currentOperChannel;
uint32_t curr_req_chan_freq;
uint8_t LimRxedBeaconCntDuringHB;

View file

@ -597,7 +597,9 @@ void lim_fill_ft_session(struct mac_context *mac,
ft_session->ssId.length);
/* Copy The channel Id to the session Table */
ft_session->limReassocChannelId = pbssDescription->channelId;
ft_session->currentOperChannel = pbssDescription->channelId;
ft_session->curr_op_freq = pbssDescription->chan_freq;
ft_session->currentOperChannel =
wlan_reg_freq_to_chan(mac->pdev, ft_session->curr_op_freq);
ft_session->limRFBand = lim_get_rf_band(
ft_session->currentOperChannel);

View file

@ -620,9 +620,11 @@ __lim_handle_sme_start_bss_request(struct mac_context *mac_ctx, uint32_t *msg_bu
session->beaconParams.beaconInterval =
sme_start_bss_req->beaconInterval;
/* Store the channel number in session Table */
session->currentOperChannel =
sme_start_bss_req->channelId;
/* Store the oper freq in session Table */
session->curr_op_freq = wlan_reg_chan_to_freq(
mac_ctx->pdev, sme_start_bss_req->channelId);
session->currentOperChannel = wlan_reg_freq_to_chan(
mac_ctx->pdev, session->curr_op_freq);
/* Store Persona */
session->opmode = sme_start_bss_req->bssPersona;
@ -1423,9 +1425,10 @@ __lim_process_sme_join_req(struct mac_context *mac_ctx, void *msg_buf)
session->nwType, session->dot11mode,
sme_join_req->force_24ghz_in_ht20);
/* Copy The channel Id to the session Table */
session->currentOperChannel = bss_desc->channelId;
/* Copy oper freq to the session Table */
session->curr_op_freq = bss_desc->chan_freq;
session->currentOperChannel = wlan_reg_freq_to_chan(
mac_ctx->pdev, session->curr_op_freq);
session->vhtCapability =
IS_DOT11_MODE_VHT(session->dot11mode);
if (session->vhtCapability) {
@ -5069,8 +5072,10 @@ static void lim_process_sme_channel_change_request(struct mac_context *mac_ctx,
(ch_change_req->ch_width ? 1 : 0);
session_entry->htRecommendedTxWidthSet =
session_entry->htSupportedChannelWidthSet;
session_entry->currentOperChannel =
ch_change_req->targetChannel;
session_entry->curr_op_freq = wlan_reg_chan_to_freq(
mac_ctx->pdev, ch_change_req->targetChannel);
session_entry->currentOperChannel = wlan_reg_freq_to_chan(
mac_ctx->pdev, session_entry->curr_op_freq);
session_entry->limRFBand =
lim_get_rf_band(session_entry->currentOperChannel);
session_entry->cac_duration_ms = ch_change_req->cac_duration_ms;

View file

@ -64,7 +64,10 @@ void lim_update_re_assoc_globals(struct mac_context *mac, tpSirAssocRsp pAssocRs
/* Update the current Bss Information */
qdf_mem_copy(pe_session->bssId,
pe_session->limReAssocbssId, sizeof(tSirMacAddr));
pe_session->currentOperChannel = pe_session->limReassocChannelId;
pe_session->curr_op_freq = wlan_reg_chan_to_freq(
mac->pdev, pe_session->limReassocChannelId);
pe_session->currentOperChannel = wlan_reg_freq_to_chan(
mac->pdev, pe_session->curr_op_freq);
pe_session->htSecondaryChannelOffset =
pe_session->reAssocHtSupportedChannelWidthSet;
pe_session->htRecommendedTxWidthSet =

View file

@ -2187,9 +2187,9 @@ void lim_switch_channel_cback(struct mac_context *mac, QDF_STATUS status,
struct scheduler_msg mmhMsg = { 0 };
struct switch_channel_ind *pSirSmeSwitchChInd;
pe_session->currentOperChannel =
wlan_reg_freq_to_chan(mac->pdev,
pe_session->curr_req_chan_freq);
pe_session->curr_op_freq = pe_session->curr_req_chan_freq;
pe_session->currentOperChannel = wlan_reg_freq_to_chan(
mac->pdev, pe_session->curr_op_freq);
/* We need to restore pre-channelSwitch state on the STA */
if (lim_restore_pre_channel_switch_state(mac, pe_session) !=
@ -2322,7 +2322,10 @@ void lim_switch_primary_secondary_channel(struct mac_context *mac,
if (pe_session->currentOperChannel != new_channel) {
pe_warn("switch old chnl: %d --> new chnl: %d",
pe_session->currentOperChannel, new_channel);
pe_session->currentOperChannel = new_channel;
pe_session->curr_op_freq = wlan_reg_chan_to_freq(
mac->pdev, new_channel);
pe_session->currentOperChannel = wlan_reg_freq_to_chan(
mac->pdev, pe_session->curr_op_freq);
}
if (pe_session->htSecondaryChannelOffset !=
pe_session->gLimChannelSwitch.sec_ch_offset) {