diff --git a/fw/wmi_tlv_defs.h b/fw/wmi_tlv_defs.h index 08b548d823f7..15d51bb00ceb 100644 --- a/fw/wmi_tlv_defs.h +++ b/fw/wmi_tlv_defs.h @@ -1328,6 +1328,7 @@ typedef enum { WMITLV_TAG_STRUC_wmi_tas_power_history_cmd_fixed_param, WMITLV_TAG_STRUC_wmi_tas_power_history_event_fixed_param, WMITLV_TAG_STRUC_wmi_ctrl_path_pmlo_stats_struct, + WMITLV_TAG_STRUC_wmi_ctrl_path_cfr_stats_struct, } WMITLV_TAG_ID; /* @@ -6670,7 +6671,8 @@ WMITLV_CREATE_PARAM_STRUC(WMI_PEER_STATS_INFO_EVENTID); WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_ctrl_path_bmiss_stats_struct, ctrl_path_bmiss_stats, WMITLV_SIZE_VAR) \ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_ctrl_path_odd_addr_read_struct, ctrl_path_odd_addr_read, WMITLV_SIZE_VAR) \ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_ctrl_path_afc_stats_struct, ctrl_path_afc_stats, WMITLV_SIZE_VAR) \ - WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_ctrl_path_pmlo_stats_struct, ctrl_path_pmlo_stats, WMITLV_SIZE_VAR) + WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_ctrl_path_pmlo_stats_struct, ctrl_path_pmlo_stats, WMITLV_SIZE_VAR) \ + WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_ctrl_path_cfr_stats_struct, ctrl_path_cfr_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 d2e86e2c25b6..ced5ecf1f40b 100644 --- a/fw/wmi_unified.h +++ b/fw/wmi_unified.h @@ -12361,6 +12361,27 @@ typedef struct { }; } wmi_ctrl_path_pmlo_stats_struct; +typedef struct { + /** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_ctrl_path_cfr_stats_struct */ + A_UINT32 tlv_header; + /* + * This index is used for formatting the printout of this stats TLV. + * A stats header is added when the index=0. + */ + A_UINT32 index; + wmi_mac_addr cfr_peer_mac_addr; + A_UINT32 peer_in_use; + A_UINT32 capture_in_progress; + /* capture_method: 0 means oneshot request, otherwise periodic request */ + A_UINT32 capture_method; + A_UINT32 periodicity; /* Time in ms */ + A_UINT32 latest_req_timestamp; /* Time in ms */ + A_UINT32 latest_resp_timestamp; /* Time in ms */ + A_UINT32 cfr_req_count; + A_UINT32 cfr_resp_success_count; + A_UINT32 cfr_resp_failure_count; +} wmi_ctrl_path_cfr_stats_struct; + typedef struct { /** TLV tag and len; tag equals * WMITLV_TAG_STRUC_wmi_ctrl_path_stats_event_fixed_param */ @@ -30947,6 +30968,7 @@ typedef enum { WMI_REQUEST_CTRL_PATH_ODD_ADDR_READ = 10, WMI_REQUEST_CTRL_PATH_AFC_STAT = 11, WMI_REQUEST_CTRL_PATH_PMLO_STAT = 12, + WMI_REQUEST_CTRL_PATH_CFR_STAT = 13, } wmi_ctrl_path_stats_id; typedef enum { diff --git a/fw/wmi_version.h b/fw/wmi_version.h index eca1fb414bdb..f9bb25ee6aeb 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_ 1244 +#define __WMI_REVISION_ 1245 /** The Version Namespace should not be normally changed. Only * host and firmware of the same WMI namespace will work