fw-api: CL 12586165 - update fw common interface files

Change-Id: I5bb7c0cebc164bb9824849196bd3866e57e2581b
WMI: add MLO capabilities specs and SUPPORT_11BE flag
CRs-Fixed: 2262693
This commit is contained in:
spuligil 2021-01-15 18:01:07 -08:00
commit 8e63f355c7
2 changed files with 49 additions and 3 deletions

View file

@ -26648,6 +26648,36 @@ typedef enum wmi_hw_mode_config_type {
WMI_HW_MODE_2G_PHYB = 7, /* Ony PhyB 2G active */
} WMI_HW_MODE_CONFIG_TYPE;
/*
* Per HW mode MLO capability flags
* use bits 31:28 of A_UINT32 hw_mode_config_type for Per HW mode MLO
* capability flags...
* WMI_MLO_CAP_FLAG_NONE: Do not support MLO for the specific HW mode
* WMI_MLO_CAP_FLAG_NON_STR_IN_DBS: Support STR MLO when DBS for the specific
* HW mode
* WMI_MLO_CAP_FLAG_STR_IN_DBS: Support Non-STR MLO when DBS for the
* specific HW mode
* WMI_MLO_CAP_FLAG_NON_STR_IN_SBS: Support STR MLO when SBS for the specific
* HW mode
* WMI_MLO_CAP_FLAG_STR_IN_SBS: Support Non-STR MLO when SBS for the
* specific HW mode
*/
#define WMI_MLO_CAP_FLAG_NONE 0x0
#define WMI_MLO_CAP_FLAG_NON_STR_IN_DBS 0x1
#define WMI_MLO_CAP_FLAG_STR_IN_DBS 0x2
#define WMI_MLO_CAP_FLAG_NON_STR_IN_SBS 0x4
#define WMI_MLO_CAP_FLAG_STR_IN_SBS 0x8
/*
* hw_mode_config_type sub-fields for chips that support 802.11BE/MLO:
* bits 28:0 - hw_mode_config
* bits 31:28 - per HW mode MLO capability flags
*/
#define WMI_BECAP_PHY_GET_HW_MODE_CFG(hw_mode_config_type) WMI_GET_BITS(hw_mode_config_type, 0, 28)
#define WMI_BECAP_PHY_SET_HW_MODE_CFG(hw_mode_config_type, value) WMI_SET_BITS(hw_mode_config_type, 0, 28, value)
#define WMI_BECAP_PHY_GET_MLO_CAP(hw_mode_config_type) WMI_GET_BITS(hw_mode_config_type, 28, 4)
#define WMI_BECAP_PHY_SET_MLO_CAP(hw_mode_config_type, value) WMI_SET_BITS(hw_mode_config_type, 28, 4, value)
#define WMI_SUPPORT_11B_GET(flags) WMI_GET_BITS(flags, 0, 1)
#define WMI_SUPPORT_11B_SET(flags, value) WMI_SET_BITS(flags, 0, 1, value)
@ -26666,6 +26696,9 @@ typedef enum wmi_hw_mode_config_type {
#define WMI_SUPPORT_11AX_GET(flags) WMI_GET_BITS(flags, 5, 1)
#define WMI_SUPPORT_11AX_SET(flags, value) WMI_SET_BITS(flags, 5, 1, value)
#define WMI_SUPPORT_11BE_GET(flags) WMI_GET_BITS(flags, 6, 1)
#define WMI_SUPPORT_11BE_SET(flags, value) WMI_SET_BITS(flags, 6, 1, value)
#define WMI_MAX_MUBFEE_GET(flags) WMI_GET_BITS(flags, 28, 4)
#define WMI_MAX_MUBFEE_SET(flags, value) WMI_SET_BITS(flags, 28, 4, value)
@ -26758,8 +26791,9 @@ typedef struct {
supports_11n:1,
supports_11ac:1,
supports_11ax:1,
supports_11be:1,
unused: 22,
unused: 21,
max_mubfee: 4; /* max MU beamformees supported per MAC */
};
@ -26941,8 +26975,20 @@ typedef struct {
/* hw_mode_config_type
* Identify a particular type of HW mode such as SBS, DBS etc.
* Refer to WMI_HW_MODE_CONFIG_TYPE values.
*
* Use bits 31:28 of hw_mode_config_type for Per HW mode MLO capability
* flags.
* Refer to WMI_MLO_CAP_FLAG_XXX. For legacy chips which do not support
* MLO, these top bits will always be set to 0, so it won't impact the
* legacy chips which treat hw_mode_config_type as 32 bits.
*/
A_UINT32 hw_mode_config_type;
union {
struct {
A_UINT32 hw_mode_config :28,
mlo_cap_flag :4; /* see WMI_MLO_CAP_FLAG_ defs */
};
A_UINT32 hw_mode_config_type;
};
/**************************************************************************
* DON'T ADD ANY FURTHER FIELDS HERE -

View file

@ -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_ 951
#define __WMI_REVISION_ 952
/** The Version Namespace should not be normally changed. Only
* host and firmware of the same WMI namespace will work