From 757864a62d6a7d0dcec30663bb51a5cddae64e92 Mon Sep 17 00:00:00 2001 From: spuligil Date: Sat, 9 Apr 2022 06:01:13 -0700 Subject: [PATCH] fw-api: CL 17771149 - update fw common interface files Change-Id: I5986a055ef93b21646d3ab227d6886537e33c234 WMI: report min,max tx pwr as signed values CRs-Fixed: 2262693 --- fw/wmi_services.h | 1 + fw/wmi_tlv_defs.h | 4 +++- fw/wmi_unified.h | 11 +++++++++++ fw/wmi_version.h | 2 +- 4 files changed, 16 insertions(+), 2 deletions(-) diff --git a/fw/wmi_services.h b/fw/wmi_services.h index 053022bee21e..40f9db0829ed 100644 --- a/fw/wmi_services.h +++ b/fw/wmi_services.h @@ -584,6 +584,7 @@ typedef enum { WMI_SERVICE_PDEV_RSSI_DBM_CONV_EVENT_SUPPORT = 331, /* FW supports advertising RSSI dB to dBm conversion params to host via WMI_PDEV_RSSI_DBM_CONVERSION_PARAMS_INFO_EVENTID */ WMI_SERVICE_PDEV_TELEMETRY_STATS_SUPPORT = 332, WMI_SERVICE_ROAM_STAT_PER_CANDIDATE_FRAME_INFO_SUPPORT = 333, /* FW supports to send frame info for each candidate in roam stat */ + WMI_SERVICE_HW_TX_POWER_CAPS_SIGNED_SUPPORT = 334, /* Indicates FW supports updating of Tx power capabilities as signed value */ WMI_MAX_EXT2_SERVICE diff --git a/fw/wmi_tlv_defs.h b/fw/wmi_tlv_defs.h index 12cc02d2947b..9ac19257bf63 100644 --- a/fw/wmi_tlv_defs.h +++ b/fw/wmi_tlv_defs.h @@ -201,6 +201,7 @@ typedef enum { WMITLV_TAG_ARRAY_STRUC, WMITLV_TAG_ARRAY_FIXED_STRUC, WMITLV_TAG_ARRAY_INT16, + WMITLV_TAG_ARRAY_INT32, WMITLV_TAG_LAST_ARRAY_ENUM = 31, /* Last entry of ARRAY type tags */ WMITLV_TAG_STRUC_wmi_service_ready_event_fixed_param, WMITLV_TAG_STRUC_HAL_REG_CAPABILITIES, @@ -5058,7 +5059,8 @@ WMITLV_CREATE_PARAM_STRUC(WMI_SERVICE_READY_EXT_EVENTID); WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_htt_msdu_idx_to_htt_msdu_qtype, htt_msdu_idx_to_qtype_map, WMITLV_SIZE_VAR) \ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_dbs_or_sbs_cap_ext, dbs_or_sbs_cap_ext, WMITLV_SIZE_VAR) \ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_cust_bdf_version_capabilities, cust_bdf_version_capabilities, WMITLV_SIZE_VAR) \ - WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_sw_cal_ver_cap, sw_cal_ver_cap, WMITLV_SIZE_VAR) + WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_sw_cal_ver_cap, sw_cal_ver_cap, WMITLV_SIZE_VAR) \ + WMITLV_FXAR(id,op,buf,len, WMITLV_TAG_ARRAY_INT32, A_INT32, hw_tx_power_signed, WMITLV_SIZE_FIX, WMI_HW_TX_POWER_CAPS_MAX) WMITLV_CREATE_PARAM_STRUC(WMI_SERVICE_READY_EXT2_EVENTID); #define WMITLV_TABLE_WMI_SPECTRAL_CAPABILITIES_EVENTID(id,op,buf,len) \ diff --git a/fw/wmi_unified.h b/fw/wmi_unified.h index b191eda7e788..617f4fb43a6f 100644 --- a/fw/wmi_unified.h +++ b/fw/wmi_unified.h @@ -2818,6 +2818,16 @@ typedef enum { #define WMI_SET_PROJECT_ID(hw_bd_info, val) ((hw_bd_info)[PROJECT_ID] = (val)) #define WMI_SET_BOARD_DATA_REV(hw_bd_info, val) ((hw_bd_info)[BOARD_DATA_REV] = (val)) +/* + * Enum to indicate which Tx power capability is provided in which element of + * hw_tx_power_signed + */ +typedef enum { + WMI_HW_MIN_TX_POWER_SIGNED = 0, + WMI_HW_MAX_TX_POWER_SIGNED = 1, + WMI_HW_TX_POWER_CAPS_MAX, +} wmi_hw_tx_power_caps; + /** * The following struct holds optional payload for * wmi_service_ready_event_fixed_param,e.g., 11ac pass some of the @@ -3261,6 +3271,7 @@ typedef struct { * WMI_SCAN_RADIO_CAPABILITIES_EXT2 wmi_scan_radio_caps[]; * wmi_htt_msdu_idx_to_htt_msdu_qtype htt_msdu_idx_to_qtype_map[]; * wmi_dbs_or_sbs_cap_ext dbs_or_sbs_cap_ext; + * A_INT32 hw_tx_power_signed[WMI_HW_TX_POWER_CAPS_MAX]; */ } wmi_service_ready_ext2_event_fixed_param; diff --git a/fw/wmi_version.h b/fw/wmi_version.h index 7c3fb780ce0d..f0cea44db1bf 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_ 1141 +#define __WMI_REVISION_ 1142 /** The Version Namespace should not be normally changed. Only * host and firmware of the same WMI namespace will work