mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-15 01:01:56 -04:00
qcacld-3.0: Update nw type for tdls peer after channel switch rsp
When firmware sends wma_csa_offload_handler() event, peer should switch to new channel and update network type. But only frequency is getting updated, network type is old. Add check to update network type based on channel frequency Change-Id: Icd70823f98cfd528863cfb9ec1c2bf5e78e9912b CRs-Fixed: 2813847
This commit is contained in:
parent
1fc261e982
commit
e22c1947b4
1 changed files with 13 additions and 0 deletions
|
|
@ -2848,6 +2848,7 @@ void lim_process_switch_channel_rsp(struct mac_context *mac,
|
|||
QDF_STATUS status;
|
||||
uint16_t channelChangeReasonCode;
|
||||
struct pe_session *pe_session;
|
||||
struct wlan_channel *vdev_chan;
|
||||
/* we need to process the deferred message since the initiating req. there might be nested request. */
|
||||
/* in the case of nested request the new request initiated from the response will take care of resetting */
|
||||
/* the deffered flag. */
|
||||
|
|
@ -2865,6 +2866,18 @@ void lim_process_switch_channel_rsp(struct mac_context *mac,
|
|||
pe_session->chainMask = rsp->chain_mask;
|
||||
pe_session->smpsMode = rsp->smps_mode;
|
||||
pe_session->channelChangeReasonCode = 0xBAD;
|
||||
|
||||
vdev_chan = wlan_vdev_mlme_get_des_chan(pe_session->vdev);
|
||||
|
||||
if (WLAN_REG_IS_24GHZ_CH_FREQ(vdev_chan->ch_freq)) {
|
||||
if (vdev_chan->ch_phymode == WLAN_PHYMODE_11B)
|
||||
pe_session->nwType = eSIR_11B_NW_TYPE;
|
||||
else
|
||||
pe_session->nwType = eSIR_11G_NW_TYPE;
|
||||
} else {
|
||||
pe_session->nwType = eSIR_11A_NW_TYPE;
|
||||
}
|
||||
pe_debug("new network type for peer: %d", pe_session->nwType);
|
||||
switch (channelChangeReasonCode) {
|
||||
case LIM_SWITCH_CHANNEL_REASSOC:
|
||||
lim_process_switch_channel_re_assoc_req(mac, pe_session, status);
|
||||
|
|
|
|||
Loading…
Reference in a new issue