Browse Source

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

qcacld-2.0 to qcacld-3.0 propagation

add WMI_TRANSFER_TO_FLASH message defs.

CRs-Fixed: 935128
Change-Id: I21c55e7aee54c4f6beb6f455a395d1e2a233c9d9
Nirav Shah 9 years ago
parent
commit
bf6450fa5b
4 changed files with 46 additions and 3 deletions
  1. 1 0
      core/wmi/wmi_unified.c
  2. 14 2
      target/inc/wmi_tlv_defs.h
  3. 30 0
      target/inc/wmi_unified.h
  4. 1 1
      target/inc/wmi_version.h

+ 1 - 0
core/wmi/wmi_unified.c

@@ -529,6 +529,7 @@ static uint8_t *get_wmi_cmd_string(WMI_CMD_ID wmi_command)
 		CASE_RETURN_STRING(WMI_THERMAL_MGMT_CMDID);
 		CASE_RETURN_STRING(WMI_RSSI_BREACH_MONITOR_CONFIG_CMDID);
 		CASE_RETURN_STRING(WMI_LRO_CONFIG_CMDID);
+		CASE_RETURN_STRING(WMI_TRANSFER_DATA_TO_FLASH_CMDID);
 		CASE_RETURN_STRING(WMI_MAWC_SENSOR_REPORT_IND_CMDID);
 		CASE_RETURN_STRING(WMI_ROAM_CONFIGURE_MAWC_CMDID);
 		CASE_RETURN_STRING(WMI_NLO_CONFIGURE_MAWC_CMDID);

+ 14 - 2
target/inc/wmi_tlv_defs.h

@@ -600,6 +600,8 @@ typedef enum {
 	WMITLV_TAG_STRUC_wmi_ap_ps_egap_param_cmd_fixed_param,
 	WMITLV_TAG_STRUC_wmi_ap_ps_egap_info_event_fixed_param,
 	WMITLV_TAG_STRUC_WMI_PMF_OFFLOAD_SET_SA_QUERY_CMD_fixed_param,
+	WMITLV_TAG_STRUC_wmi_transfer_data_to_flash_cmd_fixed_param,
+	WMITLV_TAG_STRUC_wmi_transfer_data_to_flash_complete_event_fixed_param,
 } WMITLV_TAG_ID;
 
 /*
@@ -837,7 +839,8 @@ typedef enum {
 	OP(WMI_EXTSCAN_CONFIGURE_MAWC_CMDID) \
 	OP(WMI_WOW_HOSTWAKEUP_GPIO_PIN_PATTERN_CONFIG_CMDID) \
 	OP(WMI_AP_PS_EGAP_PARAM_CMDID) \
-	OP(WMI_PMF_OFFLOAD_SET_SA_QUERY_CMDID)
+	OP(WMI_PMF_OFFLOAD_SET_SA_QUERY_CMDID) \
+	OP(WMI_TRANSFER_DATA_TO_FLASH_CMDID)
 /*
  * IMPORTANT: Please add _ALL_ WMI Events Here.
  * Otherwise, these WMI TLV Functions will be process them.
@@ -952,7 +955,8 @@ typedef enum {
 	OP(WMI_MGMT_TX_COMPLETION_EVENTID) \
 	OP(WMI_MAWC_ENABLE_SENSOR_EVENTID) \
 	OP(WMI_PEER_ASSOC_CONF_EVENTID) \
-	OP(WMI_AP_PS_EGAP_INFO_EVENTID)
+	OP(WMI_AP_PS_EGAP_INFO_EVENTID) \
+	OP(WMI_TRANSFER_DATA_TO_FLASH_COMPLETE_EVENTID)
 
 /* TLV definitions of WMI commands */
 
@@ -2186,6 +2190,10 @@ WMITLV_CREATE_PARAM_STRUC(WMI_SET_ANTENNA_DIVERSITY_CMDID);
 	WMITLV_ELEM(id, op, buf, len, WMITLV_TAG_STRUC_wmi_lro_info_cmd_fixed_param, wmi_lro_info_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX)
 WMITLV_CREATE_PARAM_STRUC(WMI_LRO_CONFIG_CMDID);
 
+#define WMITLV_TABLE_WMI_TRANSFER_DATA_TO_FLASH_CMDID(id, op, buf, len) \
+	WMITLV_ELEM(id, op, buf, len, WMITLV_TAG_STRUC_wmi_transfer_data_to_flash_cmd_fixed_param, wmi_transfer_data_to_flash_cmd_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_TRANSFER_DATA_TO_FLASH_CMDID);
 
 /* MAWC sensor report indication cmd */
 #define WMITLV_TABLE_WMI_MAWC_SENSOR_REPORT_IND_CMDID(id, op, buf, len) \
@@ -2616,6 +2624,10 @@ WMITLV_CREATE_PARAM_STRUC(WMI_DEBUG_MESG_FLUSH_COMPLETE_EVENTID);
 	WMITLV_ELEM(id, op, buf, len, WMITLV_TAG_STRUC_wmi_rssi_breach_event_fixed_param, wmi_rssi_breach_event_fixed_param, fixed_param, WMITLV_SIZE_FIX)
 WMITLV_CREATE_PARAM_STRUC(WMI_RSSI_BREACH_EVENTID);
 
+#define WMITLV_TABLE_WMI_TRANSFER_DATA_TO_FLASH_COMPLETE_EVENTID(id, op, buf, len)\
+	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);
+
 /* 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)

+ 30 - 0
target/inc/wmi_unified.h

@@ -701,6 +701,8 @@ typedef enum {
 	/* Enable/disable Large Receive Offload processing;
 	 * provide cfg params */
 	WMI_LRO_CONFIG_CMDID,
+	/*transfer data from host to firmware to write flash */
+	WMI_TRANSFER_DATA_TO_FLASH_CMDID,
 	/* GPIO Configuration */
 	WMI_GPIO_CONFIG_CMDID = WMI_CMD_GRP_START_ID(WMI_GRP_GPIO),
 	WMI_GPIO_OUTPUT_CMDID,
@@ -1118,6 +1120,8 @@ typedef enum {
 	WMI_DEBUG_MESG_FLUSH_COMPLETE_EVENTID,
 	/* event to report mix/max RSSI breach events */
 	WMI_RSSI_BREACH_EVENTID,
+	/* event to report completion of data storage into flash memory */
+	WMI_TRANSFER_DATA_TO_FLASH_COMPLETE_EVENTID,
 
 	/* GPIO Event */
 	WMI_GPIO_INPUT_EVENTID = WMI_EVT_GRP_START_ID(WMI_GRP_GPIO),
@@ -12262,6 +12266,32 @@ 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
+	 * WMITLV_TAG_STRUC_wmi_transfer_data_to_flash_cmd_fixed_param
+	 */
+	A_UINT32 tlv_header;
+	/* flash offset to write, starting from 0 */
+	A_UINT32 offset;
+	/* vaild data length in buffer, unit: byte */
+	A_UINT32 length;
+} wmi_transfer_data_to_flash_cmd_fixed_param;
+
+typedef struct {
+	/*
+	 * TLV tag and len; tag equals
+	 * WMITLV_TAG_STRUC_wmi_transfer_data_to_flash_complete_event_fixed_param
+	 */
+	A_UINT32 tlv_header;
+	/* Return status. 0 for success, non-zero otherwise */
+	A_UINT32 status;
+} wmi_transfer_data_to_flash_complete_event_fixed_param;
+
 /* ADD NEW DEFS HERE */
 
 /*****************************************************************************

+ 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_ 176
+#define __WMI_REVISION_ 177
 
 /** The Version Namespace should not be normally changed. Only
  *  host and firmware of the same WMI namespace will work