Przeglądaj źródła

qcacmn: Add revised extscan start hotlist monitor API

There is an existing WMI command which is used to start the extscan
hotlist monitor, wmi_unified_get_buf_extscan_hotlist_cmd(), but this
API has multiple issues:
1) The "get_buf" in the name implies it retrieves something, but it
   doesn't.
2) The full name is not a "mirror" of the companion function that
   stops the monitor, wmi_unified_extscan_stop_hotlist_monitor_cmd().
3) The current function has an "int *buf_len" parameter that is unused.

To address these issue introduce a new function with "mirror" naming,
wmi_unified_extscan_start_hotlist_monitor_cmd(), which has an
appropriate parameter list.

It is expected that all clients of the existing API will be moved to
the new API, at which point the existing API can be removed.

Change-Id: Ie705f2462c7d5befa691f1ab57293e55ab68e3e2
CRs-Fixed: 2289368
Jeff Johnson 7 lat temu
rodzic
commit
5d2803d1c7
3 zmienionych plików z 19 dodań i 2 usunięć
  1. 12 0
      wmi_unified_extscan_api.h
  2. 4 2
      wmi_unified_param.h
  3. 3 0
      wmi_unified_priv.h

+ 12 - 0
wmi_unified_extscan_api.h

@@ -44,6 +44,18 @@ QDF_STATUS wmi_unified_extscan_start_change_monitor_cmd(void *wmi_hdl,
 QDF_STATUS wmi_unified_extscan_stop_hotlist_monitor_cmd(void *wmi_hdl,
 		  struct extscan_bssid_hotlist_reset_params *photlist_reset);
 
+/**
+ * wmi_unified_extscan_start_hotlist_monitor_cmd() - start hotlist monitor
+ * @wmi_hdl: wmi handle
+ * @params: hotlist params
+ *
+ * This function configures hotlist monitor to start in fw.
+ *
+ * Return: QDF_STATUS_SUCCESS on success and QDF_STATUS_E_FAILURE for failure
+ */
+QDF_STATUS wmi_unified_extscan_start_hotlist_monitor_cmd(void *wmi_hdl,
+			struct extscan_bssid_hotlist_set_params *params);
+
 QDF_STATUS wmi_unified_stop_extscan_cmd(void *wmi_hdl,
 			  struct extscan_stop_req_params *pstopcmd);
 

+ 4 - 2
wmi_unified_param.h

@@ -3566,20 +3566,22 @@ struct wmi_roam_invoke_cmd {
 };
 
 /**
- * struct ext_scan_setbssid_hotlist_params - set hotlist request
+ * struct extscan_bssid_hotlist_set_params - set hotlist request
  * @request_id: request_id
  * @vdev_id: vdev id
  * @lost_ap_sample_size: number of samples to confirm AP loss
  * @num_ap: Number of hotlist APs
  * @ap: hotlist APs
  */
-struct ext_scan_setbssid_hotlist_params {
+struct extscan_bssid_hotlist_set_params {
 	uint32_t  request_id;
 	uint8_t   vdev_id;
 	uint32_t  lost_ap_sample_size;
 	uint32_t  num_ap;
 	struct ap_threshold_params ap[WMI_WLAN_EXTSCAN_MAX_HOTLIST_APS];
 };
+/* legacy naming */
+#define ext_scan_setbssid_hotlist_params extscan_bssid_hotlist_set_params
 
 /**
  * struct host_mem_req - Host memory request paramseters request by target

+ 3 - 0
wmi_unified_priv.h

@@ -488,6 +488,9 @@ QDF_STATUS (*send_extscan_start_change_monitor_cmd)(wmi_unified_t wmi_handle,
 QDF_STATUS (*send_extscan_stop_hotlist_monitor_cmd)(wmi_unified_t wmi_handle,
 		struct extscan_bssid_hotlist_reset_params *photlist_reset);
 
+QDF_STATUS (*send_extscan_start_hotlist_monitor_cmd)(wmi_unified_t wmi_handle,
+		struct extscan_bssid_hotlist_set_params *params);
+
 QDF_STATUS (*send_stop_extscan_cmd)(wmi_unified_t wmi_handle,
 		  struct extscan_stop_req_params *pstopcmd);