Pārlūkot izejas kodu

qcacld-3.0: CL 1427715 update fw common interface files

qcacld-2.0 to qcacld-3.0 propagation

WMI changes to add reassoc_req_frame in wmi_roam_synch_event
add WMI_INIT flag for special WOW platform that no need pcie reset

Change-Id: Ica7653166239e5590d1daa62ec46971d8c905915
CRs-fixed: 865207
Manikandan Mohan 9 gadi atpakaļ
vecāks
revīzija
30728082b2
3 mainītis faili ar 27 papildinājumiem un 2 dzēšanām
  1. 2 1
      target/inc/wmi_tlv_defs.h
  2. 24 0
      target/inc/wmi_unified.h
  3. 1 1
      target/inc/wmi_version.h

+ 2 - 1
target/inc/wmi_tlv_defs.h

@@ -2567,7 +2567,8 @@ WMITLV_CREATE_PARAM_STRUC(WMI_ROAM_EVENTID);
 	WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_BYTE, A_UINT8, reassoc_rsp_frame, WMITLV_SIZE_VAR) \
 	WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_channel, wmi_channel, chan, WMITLV_SIZE_FIX) \
 	WMITLV_ELEM(id, op, buf, len, WMITLV_TAG_ARRAY_STRUC, wmi_key_material, key, WMITLV_SIZE_VAR) \
-	WMITLV_ELEM(id, op, buf, len, WMITLV_TAG_ARRAY_UINT32, A_UINT32, status, WMITLV_SIZE_FIX)
+	WMITLV_ELEM(id, op, buf, len, WMITLV_TAG_ARRAY_UINT32, A_UINT32, status, WMITLV_SIZE_VAR) \
+	WMITLV_ELEM(id, op, buf, len, WMITLV_TAG_ARRAY_BYTE, A_UINT8, reassoc_req_frame, WMITLV_SIZE_VAR)
 WMITLV_CREATE_PARAM_STRUC(WMI_ROAM_SYNCH_EVENTID);
 
 /* WOW Wakeup Host Event */

+ 24 - 0
target/inc/wmi_unified.h

@@ -1985,8 +1985,29 @@ typedef struct {
 	 * @brief num_ocb_schedules - The supported number of OCB schedule segments
 	 */
 	A_UINT32 num_ocb_schedules;
+	/**
+	 * @brief specific configuration from host, such as per platform configuration
+	 */
+	#define WMI_RSRC_CFG_FLAG_WOW_IGN_PCIE_RST_S 0
+	#define WMI_RSRC_CFG_FLAG_WOW_IGN_PCIE_RST_M 0x1
+	A_UINT32 flag1;
 } wmi_resource_config;
 
+#define WMI_RSRC_CFG_FLAG_SET(word32, flag, value) \
+	do { \
+		(word32) &= ~WMI_RSRC_CFG_FLAG_ ## flag ## _M; \
+		(word32) |= ((value) << WMI_RSRC_CFG_FLAG_ ## flag ## _S) & \
+		WMI_RSRC_CFG_FLAG_ ## flag ## _M; \
+	} while (0)
+#define WMI_RSRC_CFG_FLAG_GET(word32, flag) \
+		(((word32) & WMI_RSRC_CFG_FLAG_ ## flag ## _M) >> \
+		WMI_RSRC_CFG_FLAG_ ## flag ## _S)
+
+#define WMI_RSRC_CFG_FLAG_WOW_IGN_PCIE_RST_SET(word32, value) \
+		WMI_RSRC_CFG_FLAG_SET((word32), WOW_IGN_PCIE_RST, (value))
+#define WMI_RSRC_CFG_FLAG_WOW_IGN_PCIE_RST_GET(word32) \
+		WMI_RSRC_CFG_FLAG_GET((word32), WOW_IGN_PCIE_RST)
+
 typedef struct {
 	A_UINT32 tlv_header;            /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_init_cmd_fixed_param */
 
@@ -9689,6 +9710,8 @@ typedef struct {
 	A_UINT32 bcn_probe_rsp_len;
 	/** the length of reassoc rsp */
 	A_UINT32 reassoc_rsp_len;
+	/** the length of reassoc req */
+	A_UINT32 reassoc_req_len;
 	/**
 	 * TLV (tag length value ) parameters follows roam_synch_event
 	 * The TLV's are:
@@ -9698,6 +9721,7 @@ typedef struct {
 	 *     wmi_key_material key;
 	 *     A_UINT32 status; subnet changed status not being used
 	 *     currently. will pass the information using roam_status.
+	 *     A_UINT8 reassoc_req_frame[]; length identified by reassoc_req_len
 	 **/
 } wmi_roam_synch_event_fixed_param;
 

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