diff --git a/fw/wmi_unified.h b/fw/wmi_unified.h index 2d653078e065..75f375f4c1b3 100644 --- a/fw/wmi_unified.h +++ b/fw/wmi_unified.h @@ -5848,11 +5848,15 @@ typedef struct { * Access Category (0x0=BE, 0x1=BK, 0x2=VI, 0x3=VO) * If tx_ac_enable bit is not set, tx_aggr_size is applied * for all Access Categories - * bit 2 (aggr_type): TX Aggregation Type (0=A-MPDU, 1=A-MSDU) - * bit 3 (tx_aggr_size_disable): If set tx_aggr_size is invalid - * bit 4 (rx_aggr_size_disable): If set rx_aggr_size is invalid - * bit 5 (tx_ac_enable): If set, above ac bitmap is valid. - * bits 31:6: Reserved bits. should be set to zero. + * bit 2 (aggr_type): TX Aggregation Type (0=A-MPDU, 1=A-MSDU) + * bit 3 (tx_aggr_size_disable): If set tx_aggr_size is invalid + * bit 4 (rx_aggr_size_disable): If set rx_aggr_size is invalid + * bit 5 (tx_ac_enable): If set, above ac bitmap is valid. + * bit 6 (256 BA support enable) If set, Default 256 BA size is expected + * from host + * bit 7 (1024 BA support enable) If set, Default 1024 BA size is expected + * from host + * bits 31:8: Reserved bits. should be set to zero. */ A_UINT32 enable_bitmap; } wmi_vdev_set_custom_aggr_size_cmd_fixed_param; @@ -5873,6 +5877,10 @@ typedef enum { #define WMI_VDEV_CUSTOM_RX_AGGR_SZ_DIS_NUM_BITS 1 #define WMI_VDEV_CUSTOM_TX_AC_EN_BITPOS 5 #define WMI_VDEV_CUSTOM_TX_AC_EN_NUM_BITS 1 +#define WMI_VDEV_CUSTOM_AGGR_256_BA_EN_BITPOS 6 +#define WMI_VDEV_CUSTOM_AGGR_256_BA_EN_NUM_BITS 1 +#define WMI_VDEV_CUSTOM_AGGR_1024_BA_EN_BITPOS 7 +#define WMI_VDEV_CUSTOM_AGGR_1024_BA_EN_NUM_BITS 1 #define WMI_VDEV_CUSTOM_AGGR_AC_SET(param, value) \ WMI_SET_BITS(param, WMI_VDEV_CUSTOM_AGGR_AC_BITPOS, \ @@ -5909,6 +5917,20 @@ typedef enum { WMI_GET_BITS(param, WMI_VDEV_CUSTOM_TX_AC_EN_BITPOS, \ WMI_VDEV_CUSTOM_TX_AC_EN_NUM_BITS) +#define WMI_VDEV_CUSTOM_AGGR_256_BA_EN_SET(param, value) \ + WMI_SET_BITS(param, WMI_VDEV_CUSTOM_AGGR_256_BA_EN_BITPOS, \ + WMI_VDEV_CUSTOM_AGGR_256_BA_EN_NUM_BITS, value) +#define WMI_VDEV_CUSTOM_AGGR_256_BA_EN_GET(param) \ + WMI_GET_BITS(param, WMI_VDEV_CUSTOM_AGGR_256_BA_EN_BITPOS, \ + WMI_VDEV_CUSTOM_AGGR_256_BA_EN_NUM_BITS) + +#define WMI_VDEV_CUSTOM_AGGR_1024_BA_EN_SET(param, value) \ + WMI_SET_BITS(param, WMI_VDEV_CUSTOM_AGGR_1024_BA_EN_BITPOS, \ + WMI_VDEV_CUSTOM_AGGR_1024_BA_EN_NUM_BITS, value) +#define WMI_VDEV_CUSTOM_AGGR_1024_BA_EN_GET(param) \ + WMI_GET_BITS(param, WMI_VDEV_CUSTOM_AGGR_1024_BA_EN_BITPOS, \ + WMI_VDEV_CUSTOM_AGGR_1024_BA_EN_NUM_BITS) + typedef enum { WMI_VDEV_CUSTOM_SW_RETRY_TYPE_NONAGGR = 0, WMI_VDEV_CUSTOM_SW_RETRY_TYPE_AGGR = 1, diff --git a/fw/wmi_version.h b/fw/wmi_version.h index 81e59a47ac06..5e6e5465c1d6 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_ 950 +#define __WMI_REVISION_ 951 /** The Version Namespace should not be normally changed. Only * host and firmware of the same WMI namespace will work