Przeglądaj źródła

qcacmn: Remove structure wmi_tdls_params

Using both structure wmi_tdls_params and tdls_info if TDLS component
sets FW states, which will cause memory corruption potentially. Use
enum wmi_tdls_state as type of tdls state.

Change-Id: Ia1e78a5c6d8aee9ab5166c0704dd7827f42c2457
CRs-Fixed: 2372452
Wu Gao 6 lat temu
rodzic
commit
78f8d208b3
3 zmienionych plików z 6 dodań i 41 usunięć
  1. 0 37
      wmi_unified_param.h
  2. 2 1
      wmi_unified_priv.h
  3. 4 3
      wmi_unified_sta_api.h

+ 0 - 37
wmi_unified_param.h

@@ -2637,43 +2637,6 @@ struct fw_dump_req_param {
 	struct fw_dump_seg_req_param segment[WMI_MAX_NUM_FW_SEGMENTS];
 };
 
-/**
- * struct wmi_tdls_params - TDLS parameters
- * @vdev_id: vdev id
- * @tdls_state: TDLS state
- * @notification_interval_ms: notification inerval
- * @tx_discovery_threshold: tx discovery threshold
- * @tx_teardown_threshold: tx teardown threashold
- * @rssi_teardown_threshold: RSSI teardown threshold
- * @rssi_delta: RSSI delta
- * @tdls_options: TDLS options
- * @peer_traffic_ind_window: raffic indication window
- * @peer_traffic_response_timeout: traffic response timeout
- * @puapsd_mask: uapsd mask
- * @puapsd_inactivity_time: uapsd inactivity time
- * @puapsd_rx_frame_threshold: uapsd rx frame threshold
- * @teardown_notification_ms: tdls teardown notification interval
- * @tdls_peer_kickout_threshold: tdls packet threshold for
- *    peer kickout operation
- */
-struct wmi_tdls_params {
-	uint32_t vdev_id;
-	uint32_t tdls_state;
-	uint32_t notification_interval_ms;
-	uint32_t tx_discovery_threshold;
-	uint32_t tx_teardown_threshold;
-	int32_t rssi_teardown_threshold;
-	int32_t rssi_delta;
-	uint32_t tdls_options;
-	uint32_t peer_traffic_ind_window;
-	uint32_t peer_traffic_response_timeout;
-	uint32_t puapsd_mask;
-	uint32_t puapsd_inactivity_time;
-	uint32_t puapsd_rx_frame_threshold;
-	uint32_t teardown_notification_ms;
-	uint32_t tdls_peer_kickout_threshold;
-};
-
 /**
  * struct dhcp_offload_info_params - dhcp offload parameters
  * @vdev_id: request data length

+ 2 - 1
wmi_unified_priv.h

@@ -935,7 +935,8 @@ QDF_STATUS (*send_set_tdls_offchan_mode_cmd)(wmi_unified_t wmi_handle,
 			      struct tdls_channel_switch_params *chan_switch_params);
 
 QDF_STATUS (*send_update_fw_tdls_state_cmd)(wmi_unified_t wmi_handle,
-					 void *tdls_param, uint8_t tdls_state);
+					    struct tdls_info *tdls_param,
+					    enum wmi_tdls_state tdls_state);
 
 QDF_STATUS (*send_update_tdls_peer_state_cmd)(wmi_unified_t wmi_handle,
 				struct tdls_peer_state_params *peerStateParams,

+ 4 - 3
wmi_unified_sta_api.h

@@ -185,13 +185,14 @@ QDF_STATUS wmi_unified_set_tdls_offchan_mode_cmd(void *wmi_hdl,
 /**
  * wmi_unified_update_fw_tdls_state_cmd() - send enable/disable tdls for a vdev
  * @wmi_handle: wmi handle
- * @pwmaTdlsparams: TDLS params
+ * @tdls_param: TDLS params
+ * @tdls_state: TDLS state
  *
  * Return: QDF_STATUS_SUCCESS on success and QDF_STATUS_E_FAILURE for failure
  */
 QDF_STATUS wmi_unified_update_fw_tdls_state_cmd(void *wmi_hdl,
-						void *tdls_param,
-						uint8_t tdls_state);
+						struct tdls_info *tdls_param,
+						enum wmi_tdls_state tdls_state);
 
 /**
  * wmi_unified_update_tdls_peer_state_cmd() - update TDLS peer state