From 3423723ef3f6a7260cb15d6f1baefcce3efd69bb Mon Sep 17 00:00:00 2001 From: Kiran Kumar Reddy A E Date: Sat, 3 Jan 2026 12:01:45 -0800 Subject: [PATCH] fw-api: CL 31305348 - update fw common interface files Change-Id: I07c60c6125d62f5ca7778ce9ea867e59bc0eec38 CRs-Fixed: 3830439 --- fw/wmi_tlv_defs.h | 4 +++- fw/wmi_unified.h | 37 +++++++++++++++++++++++++++++++++++++ fw/wmi_version.h | 2 +- 3 files changed, 41 insertions(+), 2 deletions(-) diff --git a/fw/wmi_tlv_defs.h b/fw/wmi_tlv_defs.h index 40816c1f6681..4fa3ef3bdf9a 100644 --- a/fw/wmi_tlv_defs.h +++ b/fw/wmi_tlv_defs.h @@ -1549,6 +1549,7 @@ typedef enum { WMITLV_TAG_STRUC_wmi_ipa_ring_stats_req_cmd_fixed_param, WMITLV_TAG_STRUC_wmi_ipa_ring_stats_conf_event_fixed_param, WMITLV_TAG_STRUC_wmi_ipa_ring_stat_entry, + WMITLV_TAG_STRUC_wmi_em_dcvs_stats, } WMITLV_TAG_ID; /* * IMPORTANT: Please add _ALL_ WMI Commands Here. @@ -7773,7 +7774,8 @@ WMITLV_CREATE_PARAM_STRUC(WMI_PEER_STATS_INFO_EVENTID); WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_vdev_beacon_stats, vdev_beacon_stats, WMITLV_SIZE_VAR) \ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_vdev_congestion_stats, vdev_congestion_stats, WMITLV_SIZE_VAR) \ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_vdev_data_stats, vdev_data_stats, WMITLV_SIZE_VAR) \ - WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_em_pcie_stats, ctrl_path_em_pcie_stats, WMITLV_SIZE_VAR) + WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_em_pcie_stats, ctrl_path_em_pcie_stats, WMITLV_SIZE_VAR) \ + WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_em_dcvs_stats, ctrl_path_em_dcvs_stats, WMITLV_SIZE_VAR) WMITLV_CREATE_PARAM_STRUC(WMI_CTRL_PATH_STATS_EVENTID); /* diff --git a/fw/wmi_unified.h b/fw/wmi_unified.h index 5b740596370e..72135d85c5f6 100644 --- a/fw/wmi_unified.h +++ b/fw/wmi_unified.h @@ -38235,6 +38235,7 @@ typedef enum { WMI_REQUEST_CTRL_PATH_STA_DAR_STAT = 23, WMI_REQUEST_ENHANCED_STAT = 24, WMI_REQUEST_CTRL_PATH_EM_PCIE_STAT = 25, + WMI_REQUEST_CTRL_PATH_EM_DCVS_STAT = 26, } wmi_ctrl_path_stats_id; typedef enum { @@ -47684,6 +47685,42 @@ typedef struct { A_UINT32 pending_pcie_lanes; /* pending number of PCIe lanes */ } wmi_em_pcie_stats; +typedef struct { + A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_em_dcvs_stats */ + A_UINT32 num_mac; /* Number of active MAC */ + /* DCVS feature config (holds a wmi_dcvs_config_e value) */ + A_UINT32 dcvs_cfg; + A_UINT32 is_cumac; /* set to '1' if SoC has CUMAC, else set to '0' */ + /* pdev_curr_bw: + * Per PDEV BW, represented as a FW-internal BW enum + * (Thus, this field is intended only for interactive debugging, and not + * for interpretation by the host SW.) + */ + A_UINT32 pdev_curr_bw[WMI_EM_PCIE_MAX_NUM_MAC]; + /* pdev_sla_status: + * SLA active status per pdev. + * set to '1' if SLA connection is active per pdev, else set to '0' + */ + A_UINT32 pdev_sla_status[WMI_EM_PCIE_MAX_NUM_MAC]; + A_UINT32 ofdma_ul_user_limit; /* OFDMA UL user limit for SVS entry */ + A_UINT32 ofdma_dl_user_limit; /* OFDMA DL user limit for SVS entry */ + /* set to '1' if OFDMA user limit is applied, else set to '0' */ + A_UINT32 is_ofdma_limit_applied; + A_UINT32 cv_corr_limit; /* CV corr limit for SVS entry */ + /* set to '1' if cv corr limit is applied, else set to '0' */ + A_UINT32 is_cv_corr_limit_applied; + /* set to '1' if mu sniffer limit is applied, else set to '0' */ + A_UINT32 is_mu_sniff_limit_applied[WMI_EM_PCIE_MAX_NUM_MAC]; + A_UINT32 pending_dcvs_vote; /* pending vote level (0-SVS, 1-NOM) */ + /* pending DCVS BW, represented as a FW-internal BW enum */ + A_UINT32 pending_dcvs_bw; + A_UINT32 pending_dcvs_level_switch; /* pending DCVS level change */ + A_UINT32 current_dcvs_vote; /* current vote level (0-SVS, 1-NOM) */ + /* current, DCVS BW, represented as a FW-internal BW enum */ + A_UINT32 current_dcvs_bw; + A_UINT32 current_dcvs_level_switch; /* current DCVS level change */ +} wmi_em_dcvs_stats; + #define WMI_UNIFIED_CHAIN_PHASE_MASK 0x0000ffff #define WMI_UNIFIED_CHAIN_PHASE_GET(tlv, chain_idx) \ diff --git a/fw/wmi_version.h b/fw/wmi_version.h index a3b7876bbba1..c5bb771be73c 100644 --- a/fw/wmi_version.h +++ b/fw/wmi_version.h @@ -37,7 +37,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_ 1691 +#define __WMI_REVISION_ 1692 /** The Version Namespace should not be normally changed. Only * host and firmware of the same WMI namespace will work