diff --git a/fw/wmi_tlv_defs.h b/fw/wmi_tlv_defs.h index c3d3cf6fa43e..acdb1ea1a18f 100644 --- a/fw/wmi_tlv_defs.h +++ b/fw/wmi_tlv_defs.h @@ -4014,8 +4014,23 @@ WMITLV_CREATE_PARAM_STRUC(WMI_PDEV_OBSS_PD_SPATIAL_REUSE_CMDID); /* Peer CFR capture cmd */ #define WMITLV_TABLE_WMI_PEER_CFR_CAPTURE_CMDID(id,op,buf,len) \ - WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_peer_cfr_capture_cmd_fixed_param, wmi_peer_cfr_capture_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX) \ - WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_peer_cfr_capture_event_phase_fixed_param, wmi_peer_cfr_capture_event_phase_fixed_param, phase_param, WMITLV_SIZE_FIX) + WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_peer_cfr_capture_cmd_fixed_param, wmi_peer_cfr_capture_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX) +/* + * NOTE: from approximately 7/25/19 to 8/16/19, the below TLV was incorrectly + * added to this WMI_PEER_CFR_CAPTURE_CMDID message. + * Any targets compiled with these versions of the WMI definitions will + * expect that if there is a 2nd TLV in the WMI_PEER_CFR_CAPTURE_CMDID, + * it will be + * WMITLV_TAG_STRUC_wmi_peer_cfr_capture_event_phase_fixed_param + * If in the future a new 2nd TLV is added to this WMI_PEER_CFR_CAPTURE_CMDID + * message, that would cause a target compiled with the erroneous old + * definitions to reject the WMI_PEER_CFR_CAPTURE_CMDID message containing + * the new 2nd TLV, because it would not match the + * WMITLV_TAG_STRUC_wmi_peer_cfr_capture_event_phase_fixed_param + * tag expected by the old target. + * + * WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_peer_cfr_capture_event_phase_fixed_param, wmi_peer_cfr_capture_event_phase_fixed_param, phase_param, WMITLV_SIZE_FIX) + */ WMITLV_CREATE_PARAM_STRUC(WMI_PEER_CFR_CAPTURE_CMDID); /* CHANNEL WIDTH SWITCH commands for peers. */ @@ -5486,7 +5501,8 @@ WMITLV_CREATE_PARAM_STRUC(WMI_ESP_ESTIMATE_EVENTID); /* Peer CFR capture event */ #define WMITLV_TABLE_WMI_PEER_CFR_CAPTURE_EVENTID(id,op,buf,len) \ - WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_peer_cfr_capture_event_fixed_param, wmi_peer_cfr_capture_event_fixed_param, fixed_param, WMITLV_SIZE_FIX) + WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_peer_cfr_capture_event_fixed_param, wmi_peer_cfr_capture_event_fixed_param, fixed_param, WMITLV_SIZE_FIX) \ + WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_peer_cfr_capture_event_phase_fixed_param, wmi_peer_cfr_capture_event_phase_fixed_param, phase_param, WMITLV_SIZE_FIX) WMITLV_CREATE_PARAM_STRUC(WMI_PEER_CFR_CAPTURE_EVENTID); #define WMITLV_TABLE_WMI_PDEV_COLD_BOOT_CAL_DATA_EVENTID(id,op,buf,len) \ diff --git a/fw/wmi_unified.h b/fw/wmi_unified.h index c403d2e99346..7972a74eb577 100644 --- a/fw/wmi_unified.h +++ b/fw/wmi_unified.h @@ -27345,6 +27345,10 @@ typedef struct { #define WMI_PEER_CFR_CAPTURE_EVT_STATUS_OK 0x80000000 #define WMI_PEER_CFR_CAPTURE_EVT_STATUS_OK_S 31 +/* Failed to capture CFR as peer is in power save mode */ +#define WMI_PEER_CFR_CAPTURE_EVT_STATUS_PS_FAILED 0x40000000 +#define WMI_PEER_CFR_CAPTURE_EVT_STATUS_PS_FAILED_S 30 + #define WMI_PEER_CFR_CAPTURE_EVT_STATUS_TX 0x00000003 #define WMI_PEER_CFR_CAPTURE_EVT_STATUS_TX_S 0 diff --git a/fw/wmi_version.h b/fw/wmi_version.h index 6c2e8554e91d..6e16851f2005 100644 --- a/fw/wmi_version.h +++ b/fw/wmi_version.h @@ -36,7 +36,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_ 710 +#define __WMI_REVISION_ 711 /** The Version Namespace should not be normally changed. Only * host and firmware of the same WMI namespace will work