소스 검색

qcacld-3.0: CL 1529540 - update fw common interface files

Propagation from qcacld-2.0 to qcacld-3.0

Tufello USB Wlan Adapter - Flash Read

Change-Id: Ib90306a871febe43a076ae8b104442bbc3a4960c
CRs-Fixed: 865207
Pradeep Reddy POTTETI 8 년 전
부모
커밋
4189bf9ed9
3개의 변경된 파일40개의 추가작업 그리고 5개의 파일을 삭제
  1. 13 0
      target/inc/wmi_tlv_defs.h
  2. 26 4
      target/inc/wmi_unified.h
  3. 1 1
      target/inc/wmi_version.h

+ 13 - 0
target/inc/wmi_tlv_defs.h

@@ -718,6 +718,8 @@ typedef enum {
 	WMITLV_TAG_STRUC_wmi_peer_reorder_queue_remove_cmd_fixed_param,
 	WMITLV_TAG_STRUC_wmi_set_multiple_mcast_filter_cmd_fixed_param,
 	WMITLV_TAG_STRUC_wmi_mgmt_tx_compl_bundle_event_fixed_param,
+	WMITLV_TAG_STRUC_wmi_read_data_from_flash_cmd_fixed_param,
+	WMITLV_TAG_STRUC_wmi_read_data_from_flash_event_fixed_param,
 } WMITLV_TAG_ID;
 
 /*
@@ -1010,6 +1012,7 @@ typedef enum {
 	OP(WMI_PEER_REORDER_QUEUE_SETUP_CMDID) \
 	OP(WMI_PEER_REORDER_QUEUE_REMOVE_CMDID) \
 	OP(WMI_SET_MULTIPLE_MCAST_FILTER_CMDID) \
+	OP(WMI_READ_DATA_FROM_FLASH_CMDID) \
 	/* add new CMD_LIST elements above this line */
 
 /*
@@ -1162,6 +1165,7 @@ typedef enum {
 	OP(WMI_RADIO_TX_POWER_LEVEL_STATS_EVENTID) \
 	OP(WMI_P2P_LISTEN_OFFLOAD_STOPPED_EVENTID) \
 	OP(WMI_MGMT_TX_BUNDLE_COMPLETION_EVENTID) \
+	OP(WMI_READ_DATA_FROM_FLASH_EVENTID) \
 	/* add new EVT_LIST elements above this line */
 
 /* TLV definitions of WMI commands */
@@ -2529,6 +2533,10 @@ WMITLV_CREATE_PARAM_STRUC(WMI_LRO_CONFIG_CMDID);
 	WMITLV_ELEM(id, op, buf, len, WMITLV_TAG_ARRAY_BYTE, A_UINT8, data, WMITLV_SIZE_VAR)
 WMITLV_CREATE_PARAM_STRUC(WMI_TRANSFER_DATA_TO_FLASH_CMDID);
 
+#define WMITLV_TABLE_WMI_READ_DATA_FROM_FLASH_CMDID(id, op, buf, len) \
+	WMITLV_ELEM(id, op, buf, len, WMITLV_TAG_STRUC_wmi_read_data_from_flash_cmd_fixed_param, wmi_read_data_from_flash_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX)
+WMITLV_CREATE_PARAM_STRUC(WMI_READ_DATA_FROM_FLASH_CMDID);
+
 #define WMITLV_TABLE_WMI_CONFIG_ENHANCED_MCAST_FILTER_CMDID(id, op, buf, len) \
 	WMITLV_ELEM(id, op, buf, len, WMITLV_TAG_STRUC_wmi_config_enhanced_mcast_filter_fixed_param, wmi_config_enhanced_mcast_filter_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX)
 WMITLV_CREATE_PARAM_STRUC(WMI_CONFIG_ENHANCED_MCAST_FILTER_CMDID);
@@ -3176,6 +3184,11 @@ WMITLV_CREATE_PARAM_STRUC(WMI_RSSI_BREACH_EVENTID);
 	WMITLV_ELEM(id, op, buf, len, WMITLV_TAG_STRUC_wmi_transfer_data_to_flash_complete_event_fixed_param, wmi_transfer_data_to_flash_complete_event_fixed_param, fixed_param, WMITLV_SIZE_FIX)
 WMITLV_CREATE_PARAM_STRUC(WMI_TRANSFER_DATA_TO_FLASH_COMPLETE_EVENTID);
 
+#define WMITLV_TABLE_WMI_READ_DATA_FROM_FLASH_EVENTID(id, op, buf, len) \
+	WMITLV_ELEM(id, op, buf, len, WMITLV_TAG_STRUC_wmi_read_data_from_flash_event_fixed_param, wmi_read_data_from_flash_event_fixed_param, fixed_param, WMITLV_SIZE_FIX) \
+	WMITLV_ELEM(id, op, buf, len, WMITLV_TAG_ARRAY_BYTE, A_UINT8, data, WMITLV_SIZE_VAR)
+WMITLV_CREATE_PARAM_STRUC(WMI_READ_DATA_FROM_FLASH_EVENTID);
+
 /* Diagnostics Event */
 #define WMITLV_TABLE_WMI_DIAG_EVENTID(id,op,buf,len) \
 	WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_BYTE, A_UINT8, bufp, WMITLV_SIZE_VAR)

+ 26 - 4
target/inc/wmi_unified.h

@@ -798,6 +798,8 @@ typedef enum {
 	WMI_DBGLOG_TIME_STAMP_SYNC_CMDID,
 	/** Command for host to set/delete multiple mcast filters */
 	WMI_SET_MULTIPLE_MCAST_FILTER_CMDID,
+	/** upload a requested section of data from firmware flash to host */
+	WMI_READ_DATA_FROM_FLASH_CMDID,
 
 	/* GPIO Configuration */
 	WMI_GPIO_CONFIG_CMDID = WMI_CMD_GRP_START_ID(WMI_GRP_GPIO),
@@ -1289,6 +1291,9 @@ typedef enum {
 	/** event to report SCPC calibrated data to host */
 	WMI_PDEV_UTF_SCPC_EVENTID,
 
+	/** event to provide requested data from the target's flash memory */
+	WMI_READ_DATA_FROM_FLASH_EVENTID,
+
 	/* GPIO Event */
 	WMI_GPIO_INPUT_EVENTID = WMI_EVT_GRP_START_ID(WMI_GRP_GPIO),
 	/** upload H_CV info WMI event
@@ -14945,10 +14950,6 @@ typedef struct {
 	A_UINT32 toeplitz_hash_ipv6_40;
 } wmi_lro_info_cmd_fixed_param;
 
-/*
- * This structure is used to set the pattern for WOW host wakeup pin pulse
- * pattern confirguration.
- */
 typedef struct {
 	/*
 	 * TLV tag and len; tag equals
@@ -14971,6 +14972,27 @@ typedef struct {
 	A_UINT32 status;
 } wmi_transfer_data_to_flash_complete_event_fixed_param;
 
+typedef struct {
+	/*
+	 * TLV tag and len; tag equals
+	 * WMITLV_TAG_STRUC_wmi_read_data_from_flash_cmd_fixed_param
+	 */
+	A_UINT32 tlv_header;
+	A_UINT32 offset; /* flash offset to read, starting from 0 */
+	A_UINT32 length; /* data length to read, unit: byte */
+} wmi_read_data_from_flash_cmd_fixed_param;
+
+typedef struct {
+	/*
+	 * TLV tag and len; tag equals
+	 * WMITLV_TAG_STRUC_wmi_read_data_from_flash_event_fixed_param
+	 */
+	A_UINT32 tlv_header;
+	A_UINT32 status; /* Return status. 0 for success, non-zero otherwise */
+	A_UINT32 offset; /* flash offset reading from, starting from 0 */
+	A_UINT32 length; /* length of data being reported, unit: byte */
+} wmi_read_data_from_flash_event_fixed_param;
+
 typedef enum {
 	ENHANCED_MCAST_FILTER_DISABLED,
 	ENHANCED_MCAST_FILTER_ENABLED

+ 1 - 1
target/inc/wmi_version.h

@@ -36,7 +36,7 @@
 #define __WMI_VER_MINOR_    0
 /** WMI revision number has to be incremented when there is a
  *  change that may or may not break compatibility */
-#define __WMI_REVISION_ 264
+#define __WMI_REVISION_ 265
 
 /** The Version Namespace should not be normally changed. Only
  *  host and firmware of the same WMI namespace will work