diff --git a/fw/wmi_tlv_defs.h b/fw/wmi_tlv_defs.h index e9a1d24908..1a1ddf1c6e 100644 --- a/fw/wmi_tlv_defs.h +++ b/fw/wmi_tlv_defs.h @@ -915,6 +915,7 @@ typedef enum { WMITLV_TAG_STRUC_wmi_vdev_set_custom_sw_retry_th_cmd_fixed_param, WMITLV_TAG_STRUC_wmi_get_tpc_power_cmd_fixed_param, WMITLV_TAG_STRUC_wmi_get_tpc_power_evt_fixed_param, + WMITLV_TAG_STRUC_wmi_dma_buf_release_spectral_meta_data, } WMITLV_TAG_ID; /* @@ -4935,7 +4936,8 @@ WMITLV_CREATE_PARAM_STRUC(WMI_PDEV_DMA_RING_CFG_RSP_EVENTID); /* dma buffer release event */ #define WMITLV_TABLE_WMI_PDEV_DMA_RING_BUF_RELEASE_EVENTID(id,op,buf,len) \ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_dma_buf_release_fixed_param, wmi_dma_buf_release_fixed_param, fixed_param, WMITLV_SIZE_FIX) \ - WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_dma_buf_release_entry, entries, WMITLV_SIZE_VAR) + WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_dma_buf_release_entry, entries, WMITLV_SIZE_VAR) \ + WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_dma_buf_release_spectral_meta_data, meta_data, WMITLV_SIZE_VAR) WMITLV_CREATE_PARAM_STRUC(WMI_PDEV_DMA_RING_BUF_RELEASE_EVENTID); diff --git a/fw/wmi_unified.h b/fw/wmi_unified.h index 830b8750d6..bc520f5c4d 100644 --- a/fw/wmi_unified.h +++ b/fw/wmi_unified.h @@ -22523,8 +22523,10 @@ typedef struct { A_UINT32 pdev_id; /** ID of pdev whose DMA ring produced the data */ A_UINT32 mod_id; /* see WMI_DMA_RING_SUPPORTED_MODULE */ A_UINT32 num_buf_release_entry; + A_UINT32 num_meta_data_entry; /* This TLV is followed by another TLV of array of structs. - * wmi_dma_buf_release_entry entries; + * wmi_dma_buf_release_entry entries[num_buf_release_entry]; + * wmi_dma_buf_release_spectral_meta_data meta_datat[num_meta_data_entry]; */ } wmi_dma_buf_release_fixed_param; @@ -22541,6 +22543,19 @@ typedef struct { A_UINT32 paddr_hi; } wmi_dma_buf_release_entry; +typedef struct { + A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_dma_buf_release_spectral_meta_data */ + /** + * meta data information. + * Host uses the noise floor values as one of the major parameter + * to classify the spectral data. + * This information will not be provided by ucode unlike the fft reports + * which gets DMAed to DDR buffer. + * Hence sending the NF values in dBm units as meta data information. + */ + A_INT32 noise_floor[WMI_MAX_CHAINS]; +} wmi_dma_buf_release_spectral_meta_data; + typedef struct { A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_runtime_dpd_recal_cmd_fixed_param */ A_UINT32 enable; /* Enable/disable */ diff --git a/fw/wmi_version.h b/fw/wmi_version.h index 55d753c9a5..637c70bb44 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_ 530 +#define __WMI_REVISION_ 531 /** The Version Namespace should not be normally changed. Only * host and firmware of the same WMI namespace will work