diff --git a/fw/wmi_unified.h b/fw/wmi_unified.h index 72f31b9da2..ae4d11b01f 100644 --- a/fw/wmi_unified.h +++ b/fw/wmi_unified.h @@ -15866,6 +15866,10 @@ typedef struct { #define WMI_MLO_FLAGS_SET_LINK_DEL(mlo_flags, value) WMI_SET_BITS(mlo_flags, 9, 1, value) #define WMI_MLO_FLAGS_GET_BRIDGE_PEER(mlo_flags) WMI_GET_BITS(mlo_flags, 10, 1) #define WMI_MLO_FLAGS_SET_BRIDGE_PEER(mlo_flags, value) WMI_SET_BITS(mlo_flags, 10, 1, value) +#define WMI_MLO_FLAGS_GET_NSTR_BITMAP_PRESENT(mlo_flags) WMI_GET_BITS(mlo_flags, 11, 1) +#define WMI_MLO_FLAGS_SET_NSTR_BITMAP_PRESENT(mlo_flags, value) WMI_SET_BITS(mlo_flags, 11, 1, value) +#define WMI_MLO_FLAGS_GET_NSTR_BITMAP_SIZE(mlo_flags) WMI_GET_BITS(mlo_flags, 12, 1) +#define WMI_MLO_FLAGS_SET_NSTR_BITMAP_SIZE(mlo_flags, value) WMI_SET_BITS(mlo_flags, 12, 1, value) /* this structure used for pass mlo flags*/ typedef struct { @@ -15882,7 +15886,15 @@ typedef struct { mlo_link_add:1, /* Indicate dynamic link addition in an MLD VAP */ mlo_link_del:1, /* Indicate dynamic link deletion in an MLD VAP */ mlo_bridge_peer:1, /* Indicate if this link has bridge_peer */ - unused: 21; + nstr_bitmap_present:1, /* Indicate if at least one NSTR link pair is present in the MLD */ + /* nstr_bitmap_size: + * Set to 1 if the length of the corresponding NSTR + * Indication Bitmap subfield is equal to 2 octets. + * Set to 0 if the length of the corresponding NSTR + * Indication Bitmap subfield is equal to 1 octet. + */ + nstr_bitmap_size:1, + unused: 19; }; A_UINT32 mlo_flags; }; @@ -18545,6 +18557,11 @@ typedef struct { * data is in TLV data[] */ A_UINT32 buf_len; + /** bw: + * Bandwidth to use for the injected frame, of type wmi_channel_width. + * This bw spec shall be ignored unless the bw_valid flag is set. + */ + A_UINT32 bw; /* * The TLVs follows: * A_UINT8 data[]; <-- Variable length data @@ -20294,6 +20311,13 @@ typedef struct { A_UINT32 msd_ofdm_ed_thr; /** Medium Synchronization Max Num of TXOPs */ A_UINT32 msd_max_num_txops; + /** max_num_simultaneous_links: + * The maximum number of affiliated STAs in the non-AP MLD that + * support simultaneous transmission or reception of frames. + */ + A_UINT32 max_num_simultaneous_links; + /** NSTR indication bitmap received in assoc req */ + A_UINT32 nstr_indication_bitmap; } wmi_peer_assoc_mlo_params; typedef struct { @@ -34724,6 +34748,18 @@ typedef enum wmi_hw_mode_config_type { #define WMI_EXT_MLD_OPERATION_PARAMETER_UPDATE_SUPP_GET(ext_mld_capability) WMI_GET_BITS(ext_mld_capability, 0, 1) #define WMI_EXT_MLD_OPERATION_PARAMETER_UPDATE_SUPP_SET(ext_mld_capability, value) WMI_SET_BITS(ext_mld_capability, 0, 1, value) +/* + * 11BE MSD Capability Set and Get macros + */ +#define WMI_MEDIUM_SYNC_DURATION_GET(msd_capability) WMI_GET_BITS(msd_capability, 0, 8) +#define WMI_MEDIUM_SYNC_DURATION_SET(msd_capability,value) WMI_SET_BITS(msd_capability, 0, 8, value) + +#define WMI_MEDIUM_SYNC_OFDM_ED_THRESHOLD_GET(msd_capability) WMI_GET_BITS(msd_capability, 8, 4) +#define WMI_MEDIUM_SYNC_OFDM_ED_THRESHOLD_SET(msd_capability, value) WMI_SET_BITS(msd_capability, 8, 4, value) + +#define WMI_MEDIUM_SYNC_MAX_NO_TXOPS_GET(msd_capability) WMI_GET_BITS(msd_capability, 12, 4) +#define WMI_MEDIUM_SYNC_MAX_NO_TXOPS_SET(msd_capability, value) WMI_SET_BITS(msd_capability, 12, 4, value) + typedef struct { A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_WMI_MAC_PHY_CAPABILITIES */ /* hw_mode_id - identify a particular set of HW characteristics, as specified @@ -35007,6 +35043,15 @@ typedef struct { }; A_UINT32 ext_mld_capability; }; + union { + struct { + A_UINT32 medium_sync_duration:8, + medium_sync_ofdm_ed_threshold:4, + medium_sync_max_no_txops:4, + reserved4: 16; + }; + A_UINT32 msd_capability; + }; } WMI_MAC_PHY_CAPABILITIES_EXT; typedef struct { diff --git a/fw/wmi_version.h b/fw/wmi_version.h index 10528fab06..cc0172bd43 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_ 1332 +#define __WMI_REVISION_ 1333 /** The Version Namespace should not be normally changed. Only * host and firmware of the same WMI namespace will work