diff --git a/fw/wmi_services.h b/fw/wmi_services.h index ae9f2b69e5d4..7ed9332a1b20 100644 --- a/fw/wmi_services.h +++ b/fw/wmi_services.h @@ -718,6 +718,7 @@ typedef enum { WMI_SERVICE_11BN = 458, /* Indicates FW supports 802.11bn */ WMI_SERVICE_HOST_AWARE_POWERSAVE = 459, /* FW supports indicating the powerstate of FW to host */ + WMI_SERVICE_PDEV_DIV_STATES_REPORT = 460, /* FW supports reporting antenna diversity states */ WMI_MAX_EXT2_SERVICE diff --git a/fw/wmi_unified.h b/fw/wmi_unified.h index 64048b7e412a..85accae8c459 100644 --- a/fw/wmi_unified.h +++ b/fw/wmi_unified.h @@ -10762,6 +10762,16 @@ typedef struct { */ } wmi_pdev_tpc_config_event_fixed_param; + +typedef enum { + WMI_ASD_PRIMARY_ANT = 0, + WMI_ASD_DIVERSITY_ANT = 1, + WMI_ASD_THIRD_ANT = 2, + WMI_ASD_FOURTH_ANT = 3, + + WMI_ASD_MAX_ANTTYPE = 4 +} WMI_ASD_ANT_TYPE; + typedef struct { /** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_pdev_div_rssi_antid_event_fixed_param */ A_UINT32 tlv_header; @@ -10775,6 +10785,17 @@ typedef struct { wmi_mac_addr macaddr; /* EVM value for stream0 and stream1 20Mhz, dB units */ A_INT32 chain_evm[WMI_MAX_CHAINS]; + /** num_antennas_valid: + * how many elements in the WMI_ASD_MAX_ANTTYPE arrays below + * contain valid info + */ + A_UINT32 num_antennas_valid; + /** switch count on each antenna attached to each chain */ + A_UINT32 ant_cnt[WMI_MAX_CHAINS][WMI_ASD_MAX_ANTTYPE]; + /** stay duration on each antenna attached to each chain (units: ms) */ + A_UINT32 ant_dur[WMI_MAX_CHAINS][WMI_ASD_MAX_ANTTYPE]; + /** RSSI on each antenna attached to each chain in dbm */ + A_INT32 ant_rssi[WMI_MAX_CHAINS][WMI_ASD_MAX_ANTTYPE]; } wmi_pdev_div_rssi_antid_event_fixed_param; typedef struct { diff --git a/fw/wmi_version.h b/fw/wmi_version.h index 71bf687b5891..e185fece7f03 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_ 1633 +#define __WMI_REVISION_ 1634 /** The Version Namespace should not be normally changed. Only * host and firmware of the same WMI namespace will work