summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--core/wma/inc/wma.h13
-rw-r--r--core/wma/src/wma_dev_if.c18
2 files changed, 31 insertions, 0 deletions
diff --git a/core/wma/inc/wma.h b/core/wma/inc/wma.h
index e62753ea7040..d8c7c211ecd1 100644
--- a/core/wma/inc/wma.h
+++ b/core/wma/inc/wma.h
@@ -506,6 +506,19 @@ enum ds_mode {
#define WMA_SCAN_END_EVENT (WMI_SCAN_EVENT_COMPLETED | \
WMI_SCAN_EVENT_DEQUEUED | \
WMI_SCAN_EVENT_START_FAILED)
+/*
+ * PROBE_REQ_TX_DELAY
+ * param to specify probe request Tx delay for scans triggered on this VDEV
+ */
+#define PROBE_REQ_TX_DELAY 10
+
+/* PROBE_REQ_TX_TIME_GAP
+ * param to specify the time gap between each set of probe request transmission.
+ * The number of probe requests in each set depends on the ssid_list and,
+ * bssid_list in the scan request. This parameter will get applied only,
+ * for the scans triggered on this VDEV.
+ */
+#define PROBE_REQ_TX_TIME_GAP 20
/**
* struct probeTime_dwellTime - probe time, dwell time map
diff --git a/core/wma/src/wma_dev_if.c b/core/wma/src/wma_dev_if.c
index 6415dd41ecd3..d4ed7cad39ba 100644
--- a/core/wma/src/wma_dev_if.c
+++ b/core/wma/src/wma_dev_if.c
@@ -2173,6 +2173,24 @@ ol_txrx_vdev_handle wma_vdev_attach(tp_wma_handle wma_handle,
self_sta_req->fils_max_chan_guard_time);
if (QDF_IS_STATUS_ERROR(ret))
WMA_LOGE("Failed to set WMI_VDEV_PARAM_FILS_MAX_CHANNEL_GUARD_TIME");
+
+ /* Pass down the Probe Request tx delay(in ms) to FW */
+ ret = wma_vdev_set_param(
+ wma_handle->wmi_handle,
+ self_sta_req->session_id,
+ WMI_VDEV_PARAM_PROBE_DELAY,
+ PROBE_REQ_TX_DELAY);
+ if (QDF_IS_STATUS_ERROR(ret))
+ WMA_LOGE("Failed to set WMI_VDEV_PARAM_PROBE_DELAY");
+
+ /* Pass down the probe request tx time gap(in ms) to FW */
+ ret = wma_vdev_set_param(
+ wma_handle->wmi_handle,
+ self_sta_req->session_id,
+ WMI_VDEV_PARAM_REPEAT_PROBE_TIME,
+ PROBE_REQ_TX_TIME_GAP);
+ if (QDF_IS_STATUS_ERROR(ret))
+ WMA_LOGE("Failed to set WMI_VDEV_PARAM_REPEAT_PROBE_TIME");
}
/* Initialize BMISS parameters */