summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDeepthi Gowri <deepthi@codeaurora.org>2016-09-01 15:47:28 +0530
committerNishank Aggarwal <naggar@codeaurora.org>2016-09-16 21:06:36 +0530
commit1de51e3876865af33ee3214708cd64eec10db05f (patch)
tree4c69b847787f0ecff4a97950a00d0499283ce5fb
parent3f2d02cd32269e37a02215fa247e3c914bbaa6f3 (diff)
qcacld-3.0: Use preauth channel to fetch the band during roaming
qcacld-2.0 to qcacld-3.0 propagation During roaming the connected AP's operating channel is used instead of preauth channel to fetch the band, based on which the data rate is set. Due to this incorect data rate is set. To address this, use the preauth channel during roaming to fetch the band and set the data rate accordingly. CRs-Fixed: 1017943 Change-Id: Ia3bf13c1a93a156eba8461bcdcf3490b9f49c2a2
-rw-r--r--core/mac/src/pe/lim/lim_send_frames_host_roam.c14
-rw-r--r--core/mac/src/pe/lim/lim_send_management_frames.c16
2 files changed, 17 insertions, 13 deletions
diff --git a/core/mac/src/pe/lim/lim_send_frames_host_roam.c b/core/mac/src/pe/lim/lim_send_frames_host_roam.c
index b4cff732b25b..5594dfc78843 100644
--- a/core/mac/src/pe/lim/lim_send_frames_host_roam.c
+++ b/core/mac/src/pe/lim/lim_send_frames_host_roam.c
@@ -407,12 +407,16 @@ void lim_send_reassoc_req_with_ft_ies_mgmt_frame(tpAniSirGlobal mac_ctx,
lim_log(mac_ctx, LOG1, FL("Re-assoc Req Frame is: "));
sir_dump_buf(mac_ctx, SIR_LIM_MODULE_ID, LOG1,
(uint8_t *) frame, (bytes + ft_ies_length));
- if ((SIR_BAND_5_GHZ ==
- lim_get_rf_band(pe_session->currentOperChannel)) ||
- (pe_session->pePersona == QDF_P2P_CLIENT_MODE) ||
- (pe_session->pePersona == QDF_P2P_GO_MODE)) {
+
+ if ((NULL != pe_session->ftPEContext.pFTPreAuthReq) &&
+ (SIR_BAND_5_GHZ == lim_get_rf_band(
+ pe_session->ftPEContext.pFTPreAuthReq->preAuthchannelNum)))
+ tx_flag |= HAL_USE_BD_RATE2_FOR_MANAGEMENT_FRAME;
+ else if ((SIR_BAND_5_GHZ ==
+ lim_get_rf_band(pe_session->currentOperChannel))
+ || (pe_session->pePersona == QDF_P2P_CLIENT_MODE)
+ || (pe_session->pePersona == QDF_P2P_GO_MODE))
tx_flag |= HAL_USE_BD_RATE2_FOR_MANAGEMENT_FRAME;
- }
if (NULL != pe_session->assocReq) {
qdf_mem_free(pe_session->assocReq);
diff --git a/core/mac/src/pe/lim/lim_send_management_frames.c b/core/mac/src/pe/lim/lim_send_management_frames.c
index 43899d80751d..dbd4ff3d9dfd 100644
--- a/core/mac/src/pe/lim/lim_send_management_frames.c
+++ b/core/mac/src/pe/lim/lim_send_management_frames.c
@@ -2265,15 +2265,15 @@ alloc_packet:
}
sir_dump_buf(mac_ctx, SIR_LIM_MODULE_ID, LOG2, frame, frame_len);
- if ((SIR_BAND_5_GHZ == lim_get_rf_band(session->currentOperChannel))
- || (session->pePersona == QDF_P2P_CLIENT_MODE)
- || (session->pePersona == QDF_P2P_GO_MODE)
- || ((NULL != session->ftPEContext.pFTPreAuthReq) &&
- (SIR_BAND_5_GHZ ==
- lim_get_rf_band(session->ftPEContext.pFTPreAuthReq->
- preAuthchannelNum))))
+ if ((NULL != session->ftPEContext.pFTPreAuthReq) &&
+ (SIR_BAND_5_GHZ == lim_get_rf_band(
+ session->ftPEContext.pFTPreAuthReq->preAuthchannelNum)))
+ tx_flag |= HAL_USE_BD_RATE2_FOR_MANAGEMENT_FRAME;
+ else if ((SIR_BAND_5_GHZ ==
+ lim_get_rf_band(session->currentOperChannel))
+ || (session->pePersona == QDF_P2P_CLIENT_MODE)
+ || (session->pePersona == QDF_P2P_GO_MODE))
tx_flag |= HAL_USE_BD_RATE2_FOR_MANAGEMENT_FRAME;
-
if (session->pePersona == QDF_P2P_CLIENT_MODE ||
session->pePersona == QDF_STA_MODE)