mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-12 15:49:17 -04:00
fw-api: CL 20873434 - update fw common interface files
Change-Id: Ie5d216c76b6399483af9cfa206ceab92447a21b5 WMI: allow sched modes to be disabled per pdev, vdev, peer, or svc class CRs-Fixed: 2262693
This commit is contained in:
parent
ec38a67be5
commit
9481e99ca9
4 changed files with 133 additions and 2 deletions
|
|
@ -608,6 +608,7 @@ typedef enum {
|
|||
WMI_SERVICE_SLO_SUPPORTED = 355, /* Support for Single Link 11BE */
|
||||
WMI_SERVICE_RTT_11AZ_TB_RSTA_SUPPORT = 356, /* FW support for 11AZ trigger based ranging Responder (RSTA) role */
|
||||
WMI_SERVICE_SUPPORT_11D_FOR_HOST_SCAN = 357,
|
||||
WMI_SERVICE_DETERMINISTIC_SCHEDULER_LEVEL0 = 358, /* FW supports 12.2 level scheduler mode disable commands and stats */
|
||||
|
||||
|
||||
WMI_MAX_EXT2_SERVICE
|
||||
|
|
|
|||
|
|
@ -1330,6 +1330,8 @@ typedef enum {
|
|||
WMITLV_TAG_STRUC_wmi_ctrl_path_pmlo_stats_struct,
|
||||
WMITLV_TAG_STRUC_wmi_ctrl_path_cfr_stats_struct,
|
||||
WMITLV_TAG_STRUC_WMI_COEX_FIX_CHANNEL_CAPABILITIES,
|
||||
WMITLV_TAG_STRUC_wmi_peer_sched_mode_disable_fixed_param,
|
||||
WMITLV_TAG_STRUC_wmi_per_peer_sched_mode_disable,
|
||||
} WMITLV_TAG_ID;
|
||||
|
||||
/*
|
||||
|
|
@ -1844,6 +1846,7 @@ typedef enum {
|
|||
OP(WMI_MLO_AP_VDEV_TID_TO_LINK_MAP_CMDID) \
|
||||
OP(WMI_VDEV_SET_TWT_EDCA_PARAMS_CMDID) \
|
||||
OP(WMI_TAS_POWER_HISTORY_CMDID) \
|
||||
OP(WMI_PEER_SCHED_MODE_DISABLE_CMDID) \
|
||||
/* add new CMD_LIST elements above this line */
|
||||
|
||||
|
||||
|
|
@ -5240,6 +5243,11 @@ WMITLV_CREATE_PARAM_STRUC(WMI_XGAP_ENABLE_CMDID);
|
|||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_UINT32, A_UINT32, odd_livedump_id_list, WMITLV_SIZE_VAR)
|
||||
WMITLV_CREATE_PARAM_STRUC(WMI_ODD_LIVEDUMP_REQUEST_CMDID);
|
||||
|
||||
#define WMITLV_TABLE_WMI_PEER_SCHED_MODE_DISABLE_CMDID(id,op,buf,len) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_peer_sched_mode_disable_fixed_param, wmi_peer_sched_mode_disable_fixed_param, fixed_param, WMITLV_SIZE_FIX) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_per_peer_sched_mode_disable, peer_info, WMITLV_SIZE_VAR)
|
||||
WMITLV_CREATE_PARAM_STRUC(WMI_PEER_SCHED_MODE_DISABLE_CMDID);
|
||||
|
||||
|
||||
|
||||
/************************** TLV definitions of WMI events *******************************/
|
||||
|
|
|
|||
124
fw/wmi_unified.h
124
fw/wmi_unified.h
|
|
@ -736,9 +736,12 @@ typedef enum {
|
|||
/* Mac addr based filtering*/
|
||||
WMI_PEER_TX_FILTER_CMDID,
|
||||
|
||||
/** flush specific tid queues of a peer */
|
||||
/** flush specific tid queues of a peer */
|
||||
WMI_PEER_FLUSH_POLICY_CMDID,
|
||||
|
||||
/* Set disabled scheduler modes for one or more peers */
|
||||
WMI_PEER_SCHED_MODE_DISABLE_CMDID,
|
||||
|
||||
|
||||
/* beacon/management specific commands */
|
||||
|
||||
|
|
@ -7927,6 +7930,21 @@ typedef enum {
|
|||
#define WMI_PDEV_PARAM_IS_HIGHER_MCS_XRETRY_RESTRICTION_SET(word32) WMI_F_MS(word32, WMI_PDEV_PARAM_HIGHER_MCS_XRETRY_RESTRICTION)
|
||||
#define WMI_PDEV_PARAM_GET_XRETRY_THRESHOLD(word32) WMI_F_MS(word32, WMI_PDEV_PARAM_XRETRY_THRESHOLD)
|
||||
|
||||
/*
|
||||
* The WMI_SCHED_MODE_FLAGS enum is used by the following WMI commands:
|
||||
*
|
||||
* WMI_VDEV_PARAM_SET_DISABLED_SCHED_MODES
|
||||
* WMI_PDEV_PARAM_SET_DISABLED_SCHED_MODES
|
||||
* WMI_PEER_SCHED_MODE_DISABLE_CMDID
|
||||
* WMI_SAWF_SVC_CLASS_CFG_CMDID
|
||||
*/
|
||||
typedef enum {
|
||||
WMI_SCHED_MODE_DL_MU_MIMO = 0x00000001,
|
||||
WMI_SCHED_MODE_UL_MU_MIMO = 0x00000002,
|
||||
WMI_SCHED_MODE_DL_OFDMA = 0x00000004,
|
||||
WMI_SCHED_MODE_UL_OFDMA = 0x00000008,
|
||||
} WMI_SCHED_MODE_FLAGS;
|
||||
|
||||
typedef enum {
|
||||
/** TX chain mask */
|
||||
WMI_PDEV_PARAM_TX_CHAIN_MASK = 0x1,
|
||||
|
|
@ -8932,6 +8950,34 @@ typedef enum {
|
|||
* based ranging.
|
||||
*/
|
||||
WMI_PDEV_PARAM_RTT_11AZ_RSID_RANGE,
|
||||
|
||||
/*
|
||||
* Disable the indicated DL and UL scheduler for the PDEV.
|
||||
*
|
||||
* This command is not supported in STA mode.
|
||||
*
|
||||
* A value of 1 in a given bit position disables the corresponding mode,
|
||||
* and a value of 0 enables the mode. The WMI_SCHED_MODE_FLAGS enum defines
|
||||
* the bit positions for each mode.
|
||||
*
|
||||
* A single 32 bit value is used to store the following configuration
|
||||
* bitmap.
|
||||
*
|
||||
* This command differs from WMI_VDEV_PARAM_SET_HEMU_MODE and
|
||||
* WMI_VDEV_PARAM_SET_EHT_MU_MODE in that it is intended for use during
|
||||
* normal AP operation, and will never cause a VAP restart or other
|
||||
* capability bit modification. It simply controls the scheduler
|
||||
* behavior.
|
||||
*
|
||||
* bit | sched mode
|
||||
* ---------------
|
||||
* 0 | DL MU-MIMO
|
||||
* 1 | UL MU-MIMO
|
||||
* 2 | DL OFDMA
|
||||
* 3 | UL OFDMA
|
||||
* 4..31 | RESERVED
|
||||
*/
|
||||
WMI_PDEV_PARAM_SET_DISABLED_SCHED_MODES,
|
||||
} WMI_PDEV_PARAM;
|
||||
|
||||
#define WMI_PDEV_ONLY_BSR_TRIG_IS_ENABLED(trig_type) WMI_GET_BITS(trig_type, 0, 1)
|
||||
|
|
@ -15137,6 +15183,34 @@ typedef enum {
|
|||
*/
|
||||
WMI_VDEV_PARAM_EXTRA_EHT_LTF, /* 0x8011 */
|
||||
|
||||
/*
|
||||
* Disable the indicated DL and UL scheduler for the VDEV.
|
||||
*
|
||||
* This command is not supported in STA mode.
|
||||
*
|
||||
* A value of 1 in a given bit position disables the corresponding
|
||||
* mode, and a value of 0 enables the mode. The WMI_SCHED_MODE_FLAGS
|
||||
* enum defines the bit positions for each mode.
|
||||
*
|
||||
* A single 32 bit value is used to store the following configuration
|
||||
* bitmap.
|
||||
*
|
||||
* This command differs from WMI_VDEV_PARAM_SET_HEMU_MODE and
|
||||
* WMI_VDEV_PARAM_SET_EHT_MU_MODE in that it is intended for use during
|
||||
* normal AP operation, and will never cause a VAP restart or other
|
||||
* capability bit modification. It simply controls the scheduler
|
||||
* behavior.
|
||||
*
|
||||
* bit | sched mode
|
||||
* ---------------
|
||||
* 0 | DL MU-MIMO
|
||||
* 1 | UL MU-MIMO
|
||||
* 2 | DL OFDMA
|
||||
* 3 | UL OFDMA
|
||||
* 4..31 | RESERVED
|
||||
*/
|
||||
WMI_VDEV_PARAM_SET_DISABLED_SCHED_MODES, /* 0x8012 */
|
||||
|
||||
/*=== END VDEV_PARAM_PROTOTYPE SECTION ===*/
|
||||
} WMI_VDEV_PARAM;
|
||||
|
||||
|
|
@ -40782,6 +40856,7 @@ typedef enum {
|
|||
WMI_SAWF_SVC_CLASS_PARAM_DEFAULT_PRIORITY = 0,
|
||||
WMI_SAWF_SVC_CLASS_PARAM_DEFAULT_TID = 0xffffffff,
|
||||
WMI_SAWF_SVC_CLASS_PARAM_DEFAULT_MSDU_LOSS_RATE = 0,
|
||||
WMI_SAWF_SVC_CLASS_PARAM_DEFAULT_DISABLED_SCHED_MODE = 0,
|
||||
} WMI_SAWF_SVC_CLASS_PARAM_DEFAULTS;
|
||||
|
||||
typedef struct {
|
||||
|
|
@ -40863,6 +40938,17 @@ typedef struct {
|
|||
* since 100 / 1000000 = 1 / 10000.
|
||||
*/
|
||||
A_UINT32 msdu_loss_rate_ppm;
|
||||
/*
|
||||
* The disabled DL and UL scheduler modes bitmap.
|
||||
*
|
||||
* Each bit in the "disabled_sched_modes" bitmap indicates whether a
|
||||
* specific scheduler mode may be selected by the fast loop scheduler. A
|
||||
* "1" bit indicates that mode is disabled, and a "0" bit indicates the
|
||||
* mode is enabled.
|
||||
*
|
||||
* The WMI_SCHED_MODE_FLAGS enum defines the bit positions for each mode.
|
||||
*/
|
||||
A_UINT32 disabled_sched_modes;
|
||||
} wmi_sawf_svc_class_cfg_cmd_fixed_param;
|
||||
|
||||
typedef struct {
|
||||
|
|
@ -41167,6 +41253,42 @@ typedef struct {
|
|||
*/
|
||||
} wmi_mlo_link_removal_cmd_fixed_param;
|
||||
|
||||
typedef struct {
|
||||
A_UINT32 tlv_header; /** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_per_peer_sched_mode_disable */
|
||||
|
||||
/* Peer MAC Address */
|
||||
wmi_mac_addr peer_macaddr;
|
||||
|
||||
/*
|
||||
* The disabled DL and UL scheduler modes bitmap.
|
||||
*
|
||||
* This command is not supported in STA mode.
|
||||
*
|
||||
* A value of 1 in a given bit position disables the corresponding mode,
|
||||
* and a value of 0 enables the mode. The WMI_SCHED_MODE_FLAGS enum defines
|
||||
* the bit positions for each mode.
|
||||
*
|
||||
* A single 32 bit value is used to store the following configuration
|
||||
* bitmap.
|
||||
*
|
||||
* bit | sched mode
|
||||
* ---------------
|
||||
* 0 | DL MU-MIMO
|
||||
* 1 | UL MU-MIMO
|
||||
* 2 | DL OFDMA
|
||||
* 3 | UL OFDMA
|
||||
* 4..31 | RESERVED
|
||||
*/
|
||||
A_UINT32 disabled_sched_modes;
|
||||
} wmi_per_peer_sched_mode_disable;
|
||||
|
||||
typedef struct {
|
||||
A_UINT32 tlv_header; /** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_peer_sched_mode_disable_fixed_param */
|
||||
A_UINT32 pdev_id;
|
||||
/* The TLVs for each peer follows:
|
||||
* wmi_per_peer_sched_mode_disable per_peer_sched_mode_disable[];
|
||||
*/
|
||||
} wmi_peer_sched_mode_disable_fixed_param;
|
||||
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -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_ 1253
|
||||
#define __WMI_REVISION_ 1254
|
||||
|
||||
/** The Version Namespace should not be normally changed. Only
|
||||
* host and firmware of the same WMI namespace will work
|
||||
|
|
|
|||
Loading…
Reference in a new issue