From 1c5ee2772cc69aeb7e4262429915f36b4ca60bf5 Mon Sep 17 00:00:00 2001 From: spuligil Date: Wed, 17 Aug 2022 04:10:06 -0700 Subject: [PATCH] fw-api: CL 19232954 - update fw common interface files Change-Id: I92b48bea6d1f415aee01698d07561cda51fdbc98 WMI: add regulatory FCC rule info elem in REG_CHAN_LIST_CC_EXT_EVENT msg CRs-Fixed: 2262693 --- fw/wmi_tlv_defs.h | 5 ++++- fw/wmi_unified.h | 16 ++++++++++++++++ fw/wmi_version.h | 2 +- 3 files changed, 21 insertions(+), 2 deletions(-) diff --git a/fw/wmi_tlv_defs.h b/fw/wmi_tlv_defs.h index dc64d6d55af7..9d4b73ee526f 100644 --- a/fw/wmi_tlv_defs.h +++ b/fw/wmi_tlv_defs.h @@ -1293,6 +1293,7 @@ typedef enum { WMITLV_TAG_STRUC_wmi_ipa_link_stats, WMITLV_TAG_STRUC_wmi_ipa_per_mac_stats, WMITLV_TAG_STRUC_wmi_pdev_featureset_cmd_fixed_param, + WMITLV_TAG_STRUC_wmi_regulatory_fcc_rule_struct, } WMITLV_TAG_ID; /* @@ -1798,6 +1799,7 @@ typedef enum { OP(WMI_WOW_COAP_GET_BUF_INFO_CMDID) \ OP(WMI_COEX_DBAM_CMDID) \ OP(WMI_PDEV_FEATURESET_CMDID) \ + OP(WMI_ROAM_MLO_CONFIG_CMDID) \ /* add new CMD_LIST elements above this line */ @@ -6278,7 +6280,8 @@ WMITLV_CREATE_PARAM_STRUC(WMI_REG_CHAN_LIST_CC_EVENTID); #define WMITLV_TABLE_WMI_REG_CHAN_LIST_CC_EXT_EVENTID(id,op,buf,len) \ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_reg_chan_list_cc_event_ext_fixed_param, wmi_reg_chan_list_cc_event_ext_fixed_param, fixed_param, WMITLV_SIZE_FIX) \ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_regulatory_rule_ext_struct, reg_rule_array, WMITLV_SIZE_VAR) \ - WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_regulatory_chan_priority_struct, reg_chan_priority, WMITLV_SIZE_VAR) + WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_regulatory_chan_priority_struct, reg_chan_priority, WMITLV_SIZE_VAR) \ + WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_regulatory_fcc_rule_struct, reg_fcc_rule, WMITLV_SIZE_VAR) WMITLV_CREATE_PARAM_STRUC(WMI_REG_CHAN_LIST_CC_EXT_EVENTID); /* WMI AFC info event */ diff --git a/fw/wmi_unified.h b/fw/wmi_unified.h index d82b3cf74589..be038be35274 100644 --- a/fw/wmi_unified.h +++ b/fw/wmi_unified.h @@ -32619,6 +32619,21 @@ typedef struct { */ } wmi_regulatory_chan_priority_struct; +#define WMI_REG_FCC_RULE_CHAN_FREQ_GET(freq_info) WMI_GET_BITS(freq_info, 0, 16) +#define WMI_REG_FCC_RULE_CHAN_FREQ_SET(freq_info, value) WMI_SET_BITS(freq_info, 0, 16, value) +#define WMI_REG_FCC_RULE_FCC_TX_POWER_GET(freq_info) WMI_GET_BITS(freq_info, 16, 8) +#define WMI_REG_FCC_RULE_FCC_TX_POWER_SET(freq_info, value) WMI_SET_BITS(freq_info, 16, 8, value) + +typedef struct { + A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_regulatory_fcc_rule_struct */ + A_UINT32 freq_info; + /* freq_info: + * bits 15:0 = u16 channel frequency (in MHz units) + * bits 23:16 = u8 FCC_Tx_power (dBm units) + * bits 31:24 = u8 reserved for future + */ +} wmi_regulatory_fcc_rule_struct; + typedef enum { WMI_REG_DFS_UNINIT_REGION = 0, WMI_REG_DFS_FCC_REGION = 1, @@ -32727,6 +32742,7 @@ typedef struct { * then the 5G elements, then the 6G elements (AP SG, AP LPI, AP VLP, * client SP x4, client LPI x4, client vlp x4). * - wmi_regulatory_chan_priority_struct reg_chan_priority[] + * - wmi_regulatory_fcc_rule_struct reg_fcc_rule[] */ } wmi_reg_chan_list_cc_event_ext_fixed_param; diff --git a/fw/wmi_version.h b/fw/wmi_version.h index 74a988f38446..0acb78dccd58 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_ 1195 +#define __WMI_REVISION_ 1196 /** The Version Namespace should not be normally changed. Only * host and firmware of the same WMI namespace will work