summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoryeshwanth sriram guntuka <ysriramg@codeaurora.org>2017-02-14 15:05:23 +0530
committerqcabuildsw <qcabuildsw@localhost>2017-02-22 00:07:06 -0800
commit6c174775a2b4bf7954c4523b6b33ed901b9db2a1 (patch)
treea4dd6b0ce8ca42c260ec9ac06f8f3ee11dad6a97
parent93aa2775e30bdcd4a48263548bbc7c92768fe980 (diff)
qcacld-3.0: Update params to PE session entry on roam
On roam, obss scan params, sta ext capabilites and qos map set are not updated to pe session entry before returning from lim_process_assoc_rsp_frame. Fix is to copy QoS map set, update obss scan params and sta ext capabilities in PE session entry before return. Change-Id: Iad35491c04452b6d459dde94713fc9c627c098e1 CRs-Fixed: 2007784
-rw-r--r--core/mac/src/pe/lim/lim_process_assoc_rsp_frame.c22
1 files changed, 12 insertions, 10 deletions
diff --git a/core/mac/src/pe/lim/lim_process_assoc_rsp_frame.c b/core/mac/src/pe/lim/lim_process_assoc_rsp_frame.c
index 6e2305d58510..ab211a1adc80 100644
--- a/core/mac/src/pe/lim/lim_process_assoc_rsp_frame.c
+++ b/core/mac/src/pe/lim/lim_process_assoc_rsp_frame.c
@@ -858,6 +858,16 @@ lim_process_assoc_rsp_frame(tpAniSirGlobal mac_ctx,
session_entry, assoc_rsp->statusCode ? eSIR_FAILURE :
eSIR_SUCCESS, assoc_rsp->statusCode);
+ if (assoc_rsp->QosMapSet.present)
+ qdf_mem_copy(&session_entry->QosMapSet,
+ &assoc_rsp->QosMapSet, sizeof(tSirQosMapSet));
+ else
+ qdf_mem_zero(&session_entry->QosMapSet, sizeof(tSirQosMapSet));
+
+ if (assoc_rsp->obss_scanparams.present)
+ lim_update_obss_scanparams(session_entry,
+ &assoc_rsp->obss_scanparams);
+
if (subtype == LIM_REASSOC) {
lim_log
(mac_ctx, LOG1, FL("Successfully Reassociated with BSS"));
@@ -901,6 +911,8 @@ lim_process_assoc_rsp_frame(tpAniSirGlobal mac_ctx,
lim_log(mac_ctx, LOG1, FL("Sending self sta"));
lim_update_assoc_sta_datas(mac_ctx, sta_ds, assoc_rsp,
session_entry);
+ lim_update_stads_ext_cap(mac_ctx, session_entry,
+ assoc_rsp, sta_ds);
/* Store assigned AID for TIM processing */
session_entry->limAID = assoc_rsp->aid & 0x3FFF;
/* Downgrade the EDCA parameters if needed */
@@ -1020,16 +1032,6 @@ lim_process_assoc_rsp_frame(tpAniSirGlobal mac_ctx,
lim_diag_event_report(mac_ctx, WLAN_PE_DIAG_CONNECTED, session_entry,
eSIR_SUCCESS, eSIR_SUCCESS);
#endif
- if (assoc_rsp->obss_scanparams.present)
- lim_update_obss_scanparams(session_entry,
- &assoc_rsp->obss_scanparams);
-
- if (assoc_rsp->QosMapSet.present)
- qdf_mem_copy(&session_entry->QosMapSet,
- &assoc_rsp->QosMapSet, sizeof(tSirQosMapSet));
- else
- qdf_mem_zero(&session_entry->QosMapSet, sizeof(tSirQosMapSet));
-
lim_update_stads_ext_cap(mac_ctx, session_entry, assoc_rsp, sta_ds);
/* Update the BSS Entry, this entry was added during preassoc. */
if (eSIR_SUCCESS == lim_sta_send_add_bss(mac_ctx, assoc_rsp,