diff --git a/fw/wmi_tlv_defs.h b/fw/wmi_tlv_defs.h index 9e9fecb009d5..2d39ef39164f 100644 --- a/fw/wmi_tlv_defs.h +++ b/fw/wmi_tlv_defs.h @@ -1457,6 +1457,7 @@ typedef enum { WMITLV_TAG_STRUC_wmi_get_scan_cache_result_cmd_fixed_param, WMITLV_TAG_STRUC_wmi_scan_cache_result_event_fixed_param, WMITLV_TAG_STRUC_wmi_scan_cache_info, + WMITLV_TAG_STRUC_wmi_POWER_BOOST_CAPABILITIES, } WMITLV_TAG_ID; /* * IMPORTANT: Please add _ALL_ WMI Commands Here. @@ -5753,7 +5754,8 @@ WMITLV_CREATE_PARAM_STRUC(WMI_SERVICE_READY_EXT_EVENTID); WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_aux_dev_capabilities, aux_dev_caps, WMITLV_SIZE_VAR) \ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_enhanced_aoa_caps_param, aoa_caps_param, WMITLV_SIZE_VAR) \ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_enhanced_aoa_per_band_caps_param, aoa_per_band_caps_param, WMITLV_SIZE_VAR) \ - WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_sar_flag_tlv_param, sar_flags, WMITLV_SIZE_VAR) + WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_sar_flag_tlv_param, sar_flags, WMITLV_SIZE_VAR) \ + WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, WMI_POWER_BOOST_CAPABILITIES, power_boost_capabilities, WMITLV_SIZE_VAR) 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 63d2bf7cd723..f3163f4ccd8c 100644 --- a/fw/wmi_unified.h +++ b/fw/wmi_unified.h @@ -3543,11 +3543,6 @@ typedef struct { #define WMI_TARGET_CAP_MPDU_STATS_PER_TX_NSS_SUPPORT_SET(target_cap_flags, value)\ WMI_SET_BITS(target_cap_flags, 16, 1, value) -#define WMI_TARGET_CAP_POWER_BOOST_SUPPORT_GET(target_cap_flags) \ - WMI_GET_BITS(target_cap_flags, 17, 1) -#define WMI_TARGET_CAP_POWER_BOOST_SUPPORT_SET(target_cap_flags) \ - WMI_SET_BITS(target_cap_flags, 17, 1, value) - /* * wmi_htt_msdu_idx_to_htt_msdu_qtype GET/SET APIs @@ -3747,8 +3742,7 @@ typedef struct { * Bit 14 - Support for ML monitor mode * Bit 15 - Support for Qdata Tx LCE filter installation * Bit 16 - Support for MPDU stats per tx Nss capability - * Bit 17 - Support for Power Boost capability - * Bits 31:18 - Reserved + * Bits 31:17 - Reserved */ A_UINT32 target_cap_flags; @@ -3850,6 +3844,7 @@ typedef struct { * wmi_dbs_or_sbs_cap_ext dbs_or_sbs_cap_ext; * A_INT32 hw_tx_power_signed[WMI_HW_TX_POWER_CAPS_MAX]; * wmi_aux_dev_capabilities aux_dev_caps[]; + * WMI_POWER_BOOST_CAPABILITIES power_boost_capabilities[]; */ } wmi_service_ready_ext2_event_fixed_param; @@ -49407,6 +49402,30 @@ typedef struct { */ } wmi_scan_cache_result_fixed_param; +#define WMI_POWER_BOOST_CAPABILITIES_PHY_ID_GET(word32) WMI_GET_BITS(word32, 0, 4) +#define WMI_POWER_BOOST_CAPABILITIES_PHY_ID_SET(word32, value) WMI_SET_BITS(word32, 0, 4, value) +#define WMI_POWER_BOOST_CAPABILITIES_POWER_BOOST_ENABLE_GET(word32) WMI_GET_BITS(word32, 4, 1) +#define WMI_POWER_BOOST_CAPABILITIES_POWER_BOOST_ENABLE_SET(word32, value) WMI_SET_BITS(word32, 4, 1, value) + +typedef struct { + A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_POWER_BOOST_CAPABILITIES */ + union { + A_UINT32 phy_id__power_boost_enable__word32; + struct { + /* + * bits 3:0 -> PHY ID + * bit 4 -> power boost enable flag + * bits 31:5 -> reserved + */ + A_UINT32 + phy_id: 4, + /* Power Boost feature is enabled or not */ + power_boost_enable: 1, + reserved: 27; + }; + }; +} WMI_POWER_BOOST_CAPABILITIES; + /* ADD NEW DEFS HERE */ diff --git a/fw/wmi_version.h b/fw/wmi_version.h index de1d75f13142..dee168392908 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_ 1532 +#define __WMI_REVISION_ 1533 /** The Version Namespace should not be normally changed. Only * host and firmware of the same WMI namespace will work