qcacld-3.0: Do not update beacon for ESE

Currently driver updates beacon for ESE connections as well
as part of SIR_HAL_ROAM_INVOKE. Due to this, there is a
possibility that firmware may receive rejection of reassoc
request because of stale beacon and results in roaming failure.
Hence, do not update beacon for ESE connections so that firmware
can use latest beacon to avoid roaming failure.

Change-Id: Id10cec040c36e559eacf82388f3d702afc17ce5a
CRs-Fixed: 2150713
This commit is contained in:
Padma, Santhosh Kumar 2017-11-29 15:44:27 +05:30 committed by snandini
parent 2d1f77c9a0
commit 5bc0c24d7f

View File

@ -15213,6 +15213,7 @@ QDF_STATUS sme_fast_reassoc(tHalHandle hal, tCsrRoamProfile *profile,
QDF_STATUS status;
struct wma_roam_invoke_cmd *fastreassoc;
struct scheduler_msg msg = {0};
tpAniSirGlobal mac_ctx = PMAC_STRUCT(hal);
fastreassoc = qdf_mem_malloc(sizeof(*fastreassoc));
if (NULL == fastreassoc) {
@ -15250,6 +15251,16 @@ QDF_STATUS sme_fast_reassoc(tHalHandle hal, tCsrRoamProfile *profile,
fastreassoc->frame_len = 0;
}
if (csr_is_auth_type_ese(mac_ctx->roam.roamSession[vdev_id].
connectedProfile.AuthType)) {
sme_debug("Beacon is not required for ESE");
if (fastreassoc->frame_len) {
qdf_mem_free(fastreassoc->frame_buf);
fastreassoc->frame_buf = NULL;
fastreassoc->frame_len = 0;
}
}
msg.type = SIR_HAL_ROAM_INVOKE;
msg.reserved = 0;
msg.bodyptr = fastreassoc;