qcacld-2.0: CL 4062586 - update fw commmon interface files
Define WMI_RUNTIME_DPD_RECAL_CMDID
Change-Id: I145c909beaff5f4315e686b5905b97b370cdb63a
CRs-Fixed: 865207
diff --git a/CORE/SERVICES/COMMON/wmi_services.h b/CORE/SERVICES/COMMON/wmi_services.h
index b50809e..7a4c1d0 100644
--- a/CORE/SERVICES/COMMON/wmi_services.h
+++ b/CORE/SERVICES/COMMON/wmi_services.h
@@ -338,6 +338,7 @@
WMI_SERVICE_11K_NEIGHBOUR_REPORT_SUPPORT=148, /* Support for 11k neighbor report */
WMI_SERVICE_LISTEN_INTERVAL_OFFLOAD_SUPPORT=149, /* Support listen interval offload */
WMI_SERVICE_BSS_COLOR_OFFLOAD=150, /* Support BSS color change for STA, OBSS color collision detection in FW for AP and STA */
+ WMI_SERVICE_RUNTIME_DPD_RECAL=151, /* Runtime DPD recalibration support */
/******* ADD NEW SERVICES HERE *******/
WMI_MAX_EXT_SERVICE
diff --git a/CORE/SERVICES/COMMON/wmi_tlv_defs.h b/CORE/SERVICES/COMMON/wmi_tlv_defs.h
index d3e0779..b41697b 100644
--- a/CORE/SERVICES/COMMON/wmi_tlv_defs.h
+++ b/CORE/SERVICES/COMMON/wmi_tlv_defs.h
@@ -889,6 +889,7 @@
WMITLV_TAG_STRUC_wmi_bss_color_change_enable_fixed_param,
WMITLV_TAG_STRUC_wmi_obss_color_collision_det_config_fixed_param,
WMITLV_TAG_STRUC_wmi_obss_color_collision_evt_fixed_param,
+ WMITLV_TAG_STRUC_wmi_runtime_dpd_recal_cmd_fixed_param,
} WMITLV_TAG_ID;
/*
@@ -1250,6 +1251,7 @@
OP(WMI_PDEV_GET_NFCAL_POWER_CMDID) \
OP(WMI_BSS_COLOR_CHANGE_ENABLE_CMDID) \
OP(WMI_OBSS_COLOR_COLLISION_DET_CONFIG_CMDID) \
+ OP(WMI_RUNTIME_DPD_RECAL_CMDID) \
/* add new CMD_LIST elements above this line */
/*
@@ -3592,6 +3594,13 @@
#define WMITLV_TABLE_WMI_PDEV_SET_RX_FILTER_PROMISCUOUS_CMDID(id,op,buf,len) \
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_pdev_set_rx_filter_promiscuous_cmd_fixed_param, wmi_pdev_set_rx_filter_promiscuous_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX)
WMITLV_CREATE_PARAM_STRUC(WMI_PDEV_SET_RX_FILTER_PROMISCUOUS_CMDID);
+
+/* Runtime DPD Recalibration Params */
+#define WMITLV_TABLE_WMI_RUNTIME_DPD_RECAL_CMDID(id,op,buf,len) \
+ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_runtime_dpd_recal_cmd_fixed_param, wmi_runtime_dpd_recal_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX)
+
+WMITLV_CREATE_PARAM_STRUC(WMI_RUNTIME_DPD_RECAL_CMDID);
+
/************************** TLV definitions of WMI events *******************************/
/* Service Ready event */
diff --git a/CORE/SERVICES/COMMON/wmi_unified.h b/CORE/SERVICES/COMMON/wmi_unified.h
index 571f696..e195a2e 100644
--- a/CORE/SERVICES/COMMON/wmi_unified.h
+++ b/CORE/SERVICES/COMMON/wmi_unified.h
@@ -881,7 +881,8 @@
WMI_READ_DATA_FROM_FLASH_CMDID,
/* Thermal Throttling SET CONF commands */
WMI_THERM_THROT_SET_CONF_CMDID,
-
+ /* set runtime dpd recalibration params */
+ WMI_RUNTIME_DPD_RECAL_CMDID,
/* Offload 11k related requests */
WMI_11K_OFFLOAD_REPORT_CMDID = WMI_CMD_GRP_START_ID(WMI_GRP_11K_OFFLOAD),
/* invoke neighbor report from FW */
@@ -21363,6 +21364,7 @@
WMI_RETURN_STRING(WMI_BPF_GET_VDEV_WORK_MEMORY_CMDID);
WMI_RETURN_STRING(WMI_BSS_COLOR_CHANGE_ENABLE_CMDID);
WMI_RETURN_STRING(WMI_OBSS_COLOR_COLLISION_DET_CONFIG_CMDID);
+ WMI_RETURN_STRING(WMI_RUNTIME_DPD_RECAL_CMDID);
}
return "Invalid WMI cmd";
@@ -22045,6 +22047,29 @@
A_UINT32 paddr_hi;
} wmi_dma_buf_release_entry;
+typedef struct {
+ A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_runtime_dpd_recal_cmd_fixed_param */
+ A_UINT32 enable; /* Enable/disable */
+
+ /* Thermal Thresholds,
+ * DPD recalibration will be triggered, when current temperature is
+ * either greater than (tmpt_base_c + dlt_tmpt_c_h),
+ * or less than (tmpt_base_c + dlt_tmpt_c_l).
+ * Here tmpt_base_c is the temperature in centigrade when first run dpd calibration.
+ */
+ A_UINT32 dlt_tmpt_c_h;
+ A_UINT32 dlt_tmpt_c_l;
+
+ /* cooling_time_ms
+ * The time (in milliseconds) expected to be needed for the unit
+ * to cool from dlt_tmpt_c_h to dlt_tmpt_c_l.
+ */
+ A_UINT32 cooling_time_ms;
+
+ /* Max duration for dpd re-cal. Unit: ms */
+ A_UINT32 dpd_dur_max_ms;
+} wmi_runtime_dpd_recal_cmd_fixed_param;
+
/* ADD NEW DEFS HERE */
/*****************************************************************************
diff --git a/CORE/SERVICES/COMMON/wmi_version.h b/CORE/SERVICES/COMMON/wmi_version.h
index 3628177..67cf455 100644
--- a/CORE/SERVICES/COMMON/wmi_version.h
+++ b/CORE/SERVICES/COMMON/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_ 495
+#define __WMI_REVISION_ 496
/** The Version Namespace should not be normally changed. Only
* host and firmware of the same WMI namespace will work
diff --git a/CORE/SERVICES/WMI/wmi_unified.c b/CORE/SERVICES/WMI/wmi_unified.c
index e5fa8f7..386a3b7 100644
--- a/CORE/SERVICES/WMI/wmi_unified.c
+++ b/CORE/SERVICES/WMI/wmi_unified.c
@@ -778,6 +778,7 @@
CASE_RETURN_STRING(WMI_BPF_GET_VDEV_WORK_MEMORY_CMDID);
CASE_RETURN_STRING(WMI_BSS_COLOR_CHANGE_ENABLE_CMDID);
CASE_RETURN_STRING(WMI_OBSS_COLOR_COLLISION_DET_CONFIG_CMDID);
+ CASE_RETURN_STRING(WMI_RUNTIME_DPD_RECAL_CMDID);
}
return "Invalid WMI cmd";