summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorArif Hussain <arifhussain@codeaurora.org>2016-11-03 11:09:58 -0700
committerGerrit - the friendly Code Review server <code-review@localhost>2016-11-07 11:25:43 -0800
commit5e4c5ad8bc75fb8aa5bdf72a563952e6d1009a0b (patch)
tree6d9727b2e2ef20fdfc41f7da2b124b1ccae40c1c
parent2414c93395a3b2709b987eec72594a8265e5388d (diff)
qcacld-3.0: Use at least MaxChannelTime dwell time for RRM scan
Use at least gPassive/gActiveMaxChannelTime dwell time in RRM scan request, sometimes it’s impossible to detect AP's in scan with very low dwell time specially in case of Passive beacon report request. Change-Id: Id06c98d8119fbcf59b167ca310972799bf7df487 CRs-Fixed: 1085637
-rw-r--r--core/sme/src/rrm/sme_rrm.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/core/sme/src/rrm/sme_rrm.c b/core/sme/src/rrm/sme_rrm.c
index 11d3f69cb208..34d9308eb416 100644
--- a/core/sme/src/rrm/sme_rrm.c
+++ b/core/sme/src/rrm/sme_rrm.c
@@ -650,6 +650,7 @@ static QDF_STATUS sme_rrm_issue_scan_req(tpAniSirGlobal mac_ctx)
QDF_STATUS status = QDF_STATUS_SUCCESS;
tpRrmSMEContext sme_rrm_ctx = &mac_ctx->rrm.rrmSmeContext;
uint32_t session_id;
+ uint32_t max_chan_time;
tSirScanType scan_type;
uint64_t current_time;
@@ -709,6 +710,23 @@ static QDF_STATUS sme_rrm_issue_scan_req(tpAniSirGlobal mac_ctx)
sms_log(mac_ctx, LOG1, FL("Scan Type(%d) Max Dwell Time(%d)"),
scan_req.scanType, scan_req.maxChnTime);
+ /*
+ * Use gPassive/gActiveMaxChannelTime if maxChanTime is less
+ * than default.
+ */
+ if (eSIR_ACTIVE_SCAN == scan_type)
+ max_chan_time =
+ mac_ctx->roam.configParam.nActiveMaxChnTime;
+ else
+ max_chan_time =
+ mac_ctx->roam.configParam.nPassiveMaxChnTime;
+
+ if (scan_req.maxChnTime < max_chan_time) {
+ scan_req.maxChnTime = max_chan_time;
+ sms_log(mac_ctx, LOG1,
+ FL("Setting default max %d ChanTime"),
+ max_chan_time);
+ }
/*
* For RRM scans timing is very important especially when the