Ver código fonte

qcacmn: Add support for peer create response event

Add host data structure and api declarations
corresponding to peer response event and register
WMI_PEER_CREATE_CONF_EVENTID in global wmi event_ids.

Change-Id: I143a4a85d079cc113397348512b0d86f500cae5b
CRs-Fixed: 2797197
Naga 4 anos atrás
pai
commit
457c3d62e8

+ 25 - 0
wmi/inc/wmi_unified_param.h

@@ -7244,6 +7244,31 @@ struct wmi_host_pdev_qvit_event {
 	uint32_t pdev_id;
 };
 
+/**
+ * enum wmi_peer_create_status - Peer Create response status
+ * @WMI_PEER_CREATE_SUCCESS: Peer creation successful at fw
+ * @WMI_PEER_EXISTS: Peer with same mac exists at fw
+ * @WMI_PEER_CREATE_FAILED: Peer creation failed at fw
+ */
+enum wmi_peer_create_status {
+	WMI_PEER_CREATE_SUCCESS = 0,
+	WMI_PEER_EXISTS = 1,
+	WMI_PEER_CREATE_FAILED = 2,
+};
+
+/**
+ * struct wmi_host_peer_create_response_event - Peer Create response event param
+ * @vdev_id: vdev id
+ * @mac_address: Peer Mac Address
+ * @status: Peer create status
+ *
+ */
+struct wmi_host_peer_create_response_event {
+	uint32_t vdev_id;
+	struct qdf_mac_addr mac_address;
+	uint32_t status;
+};
+
 /**
  * struct wmi_host_peer_delete_response_event - Peer Delete response event param
  * @vdev_id: vdev id

+ 5 - 0
wmi/inc/wmi_unified_priv.h

@@ -1990,6 +1990,11 @@ QDF_STATUS (*extract_pdev_qvit_event)(wmi_unified_t wmi_hdl,
 uint16_t (*wmi_set_htc_tx_tag)(wmi_unified_t wmi_handle,
 				wmi_buf_t buf, uint32_t cmd_id);
 
+QDF_STATUS (*extract_peer_create_response_event)(
+			wmi_unified_t wmi_handle,
+			void *evt_buf,
+			struct wmi_host_peer_create_response_event *param);
+
 QDF_STATUS (*extract_peer_delete_response_event)(
 			wmi_unified_t wmi_handle,
 			void *evt_buf,

+ 2 - 0
wmi/src/wmi_unified_tlv.c

@@ -14408,6 +14408,8 @@ static void populate_tlv_events_id(uint32_t *event_ids)
 	event_ids[wmi_peer_estimated_linkspeed_event_id] =
 				WMI_PEER_ESTIMATED_LINKSPEED_EVENTID;
 	event_ids[wmi_peer_state_event_id] = WMI_PEER_STATE_EVENTID;
+	event_ids[wmi_peer_create_conf_event_id] =
+					WMI_PEER_CREATE_CONF_EVENTID;
 	event_ids[wmi_peer_delete_response_event_id] =
 					WMI_PEER_DELETE_RESP_EVENTID;
 	event_ids[wmi_peer_delete_all_response_event_id] =