summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKapil Gupta <kapgupta@codeaurora.org>2017-02-13 15:51:52 +0530
committerKapil Gupta <kapgupta@codeaurora.org>2017-02-23 16:55:27 +0530
commit20454a222cfa91bd31f9e559a7a3bea596e205f5 (patch)
tree5fc2cd7badb19d18d29e1cf51f26280974d1db67
parentcbd5e76e86240a87cbc033405250db95f2882b89 (diff)
qcacmn: Add monitor time for PER based roam
Curretly FW considers minimum time of hysteresis for PER based roam as constant value which is 25 seconds. Add changes to make this time configurable using ini. Change-Id: Iadb5f6a005b069e0d6190df34e382927425ec1af CRs-Fixed: 2005849
-rw-r--r--wmi/inc/wmi_unified_param.h6
-rw-r--r--wmi/src/wmi_unified_tlv.c3
2 files changed, 9 insertions, 0 deletions
diff --git a/wmi/inc/wmi_unified_param.h b/wmi/inc/wmi_unified_param.h
index f393b0c572b1..6591ba25c451 100644
--- a/wmi/inc/wmi_unified_param.h
+++ b/wmi/inc/wmi_unified_param.h
@@ -6659,6 +6659,10 @@ struct wmi_adaptive_dwelltime_params {
* will be considered for PER based scan in rx path
* @per_rest_time: time for which PER based roam will wait once it
* issues a roam scan.
+ * @tx_per_mon_time: Minimum time required to be considered as valid scenario
+ * for PER based roam in tx path
+ * @rx_per_mon_time: Minimum time required to be considered as valid scenario
+ * for PER based roam in rx path
*/
struct wmi_per_roam_config {
uint32_t enable;
@@ -6669,6 +6673,8 @@ struct wmi_per_roam_config {
uint32_t tx_rate_thresh_percnt;
uint32_t rx_rate_thresh_percnt;
uint32_t per_rest_time;
+ uint32_t tx_per_mon_time;
+ uint32_t rx_per_mon_time;
};
/**
diff --git a/wmi/src/wmi_unified_tlv.c b/wmi/src/wmi_unified_tlv.c
index 704fbba0b63a..09f19d6fd8b6 100644
--- a/wmi/src/wmi_unified_tlv.c
+++ b/wmi/src/wmi_unified_tlv.c
@@ -11129,6 +11129,9 @@ QDF_STATUS send_per_roam_config_cmd_tlv(wmi_unified_t wmi_handle,
(req_buf->per_config.tx_rate_thresh_percnt << 16) |
(req_buf->per_config.rx_rate_thresh_percnt & 0x0000ffff);
wmi_per_config->per_rest_time = req_buf->per_config.per_rest_time;
+ wmi_per_config->pkt_err_rate_mon_time =
+ (req_buf->per_config.tx_per_mon_time << 16) |
+ (req_buf->per_config.rx_per_mon_time & 0x0000ffff);
/* Send per roam config parameters */
status = wmi_unified_cmd_send(wmi_handle, buf,