fw-api: CL 16706477 - update fw common interface files
Change-Id: Ie5acce062c30232e9e8dc55e046d19d6124e70d7 WMI: add pdev params to control rate limits, drop down, and probe intervals CRs-Fixed: 2262693
This commit is contained in:
@@ -7960,7 +7960,63 @@ typedef enum {
|
||||
*/
|
||||
WMI_PDEV_PARAM_PDEV_STATS_TX_XRETRY_EXT,
|
||||
|
||||
/*
|
||||
* Per PDEV level, set the highest rate cap allowed.
|
||||
* The accepted input values NSS are between 1-8, inclusive.
|
||||
* The accepted input values MCS are between 0-15, inclusive.
|
||||
* FW will use the input values as is.
|
||||
* The rate cap is specified in NSS, MCS format each 4bits.
|
||||
* i.e., NSS and MCS combined as shown below:
|
||||
* b'0-b'7 indicate the NSS (NSS value can be from 1-8)
|
||||
* b'8-b'15 indicate the MCS (MCS value can be from 0-15)
|
||||
* b'16 Enable or disable nss cap
|
||||
* b'17 Enable or disable mcs cap
|
||||
*/
|
||||
WMI_PDEV_PARAM_RATE_UPPER_CAP,
|
||||
|
||||
/*
|
||||
* Per PDEV level, set number of MCS to be dropped based
|
||||
* on configured retries.
|
||||
* bit | config_mode
|
||||
* -----------------
|
||||
* 0-7 | param value for number MCS to be dropped
|
||||
* 8-15| param value for excess retries
|
||||
* 16 | If set to 0, number of MCS to be dropped is disabled, i.e.
|
||||
* | fall back to default mode.
|
||||
* | The default value of MCS to be dropped is 1.
|
||||
* 17 | if set to 0, retries is disabled/use default retries.
|
||||
* | The default value of retries is 3.
|
||||
*/
|
||||
WMI_PDEV_PARAM_SET_RATE_DROP_DOWN_RETRY_THRESH,
|
||||
|
||||
/*
|
||||
* Param value to configure min/max probe interval for MCS of current NSS.
|
||||
* If probe interval expired, ratectrl will probe for MCS of current NSS.
|
||||
* If probe was successful, rate control updates the probe time with a
|
||||
* min of probe interval.
|
||||
* If probe failed for MCS of current NSS, rate control updates the probe
|
||||
* time by multiplying the probe period with 2, which is not greater than
|
||||
* max probe interval.
|
||||
* units = milliseconds
|
||||
* bits | config_mode
|
||||
* 0-15 | mimimum probe time for MCS
|
||||
* 16-31| maximum probe time for MCS
|
||||
*/
|
||||
WMI_PDEV_PARAM_MIN_MAX_MCS_PROBE_INTERVAL,
|
||||
|
||||
/* Param value to configure min/max probe interval for NSS.
|
||||
* Rate control will probe for alternate NSS if probe time is expired.
|
||||
* If probe for an alternate NSS was successful, rate control updates
|
||||
* the probe time with a min of probe interval.
|
||||
* If probe failed for alternate NSS, rate control updates the probe time
|
||||
* by multiplying the probe period with 2, which is not greater than
|
||||
* max probe interval.
|
||||
* units = milliseconds
|
||||
* bits | config_mode
|
||||
* 0-15 | minimum probe time for alternate NSS
|
||||
* 16-32| maximum probe time for alternate NSS
|
||||
*/
|
||||
WMI_PDEV_PARAM_MIN_MAX_NSS_PROBE_INTERVAL,
|
||||
} WMI_PDEV_PARAM;
|
||||
|
||||
#define WMI_PDEV_ONLY_BSR_TRIG_IS_ENABLED(trig_type) WMI_GET_BITS(trig_type, 0, 1)
|
||||
@@ -8032,6 +8088,36 @@ typedef enum {
|
||||
#define WMI_PDEV_SRG_SEP_PD_THRESH_CTRL_FRAME_SET(pd_threshold_cfg, value) WMI_SET_BITS(pd_threshold_cfg, 8, 8, value)
|
||||
#define WMI_PDEV_SRG_SEP_PD_THRESH_CTRL_FRAME_GET(pd_threshold_cfg) WMI_GET_BITS(pd_threshold_cfg, 8, 8)
|
||||
|
||||
|
||||
#define WMI_PDEV_UPPER_CAP_NSS_GET(value) WMI_GET_BITS(value, 0, 8)
|
||||
#define WMI_PDEV_UPPER_CAP_NSS_SET(_value, value) WMI_SET_BITS(_value, 0, 8, value)
|
||||
#define WMI_PDEV_UPPER_CAP_MCS_GET(value) WMI_GET_BITS(value, 8, 8)
|
||||
#define WMI_PDEV_UPPER_CAP_MCS_SET(_value, value) WMI_SET_BITS(_value, 8, 8, value)
|
||||
#define WMI_PDEV_UPPER_CAP_NSS_VALID_GET(value) WMI_GET_BITS(value, 16, 1)
|
||||
#define WMI_PDEV_UPPER_CAP_NSS_VALID_SET(_value, value) WMI_SET_BITS(_value, 16, 1, value)
|
||||
#define WMI_PDEV_UPPER_CAP_MCS_VALID_GET(value) WMI_GET_BITS(value, 17, 1)
|
||||
#define WMI_PDEV_UPPER_CAP_MCS_VALID_SET(_value, value) WMI_SET_BITS(_value, 17, 1, value)
|
||||
|
||||
#define WMI_PDEV_RATE_DROP_NUM_MCS_GET(value) WMI_GET_BITS(value, 0, 8)
|
||||
#define WMI_PDEV_RATE_DROP_NUM_MCS_SET(_value, value) WMI_SET_BITS(_value, 0, 8, value)
|
||||
#define WMI_PDEV_RATE_DROP_RETRY_THRSH_GET(value) WMI_GET_BITS(value, 8, 8)
|
||||
#define WMI_PDEV_RATE_DROP_RETRY_THRSH_SET(_value, value) WMI_SET_BITS(_value, 8, 8, value)
|
||||
#define WMI_PDEV_RATE_DROP_NUM_MCS_VALID_GET(value) WMI_GET_BITS(value, 16, 1)
|
||||
#define WMI_PDEV_RATE_DROP_NUM_MCS_VALID_SET(_value, value) WMI_SET_BITS(_value, 16, 1, value)
|
||||
#define WMI_PDEV_RATE_DROP_RETRY_THRSH_VALID_GET(value) WMI_GET_BITS(value, 17, 1)
|
||||
#define WMI_PDEV_RATE_DROP_RETRY_THRSH_VALID_SET(_value, value) WMI_SET_BITS(_value, 17, 1, value)
|
||||
|
||||
#define WMI_PDEV_RATE_MIN_MCS_PROBE_INTERVAL_GET(value) WMI_GET_BITS(value, 0, 16)
|
||||
#define WMI_PDEV_RATE_MIN_MCS_PROBE_INTERVAL_SET(_value, value) WMI_SET_BITS(_value, 0, 16, value)
|
||||
#define WMI_PDEV_RATE_MAX_MCS_PROBE_INTERVAL_GET(value) WMI_GET_BITS(value, 16, 16)
|
||||
#define WMI_PDEV_RATE_MAX_MCS_PROBE_INTERVAL_SET(_value, value) WMI_SET_BITS(_value, 16, 16, value)
|
||||
|
||||
#define WMI_PDEV_RATE_MIN_NSS_PROBE_INTERVAL_GET(value) WMI_GET_BITS(value, 0, 16)
|
||||
#define WMI_PDEV_RATE_MIN_NSS_PROBE_INTERVAL_SET(_value, value) WMI_SET_BITS(_value, 0, 16, value)
|
||||
#define WMI_PDEV_RATE_MAX_NSS_PROBE_INTERVAL_GET(value) WMI_GET_BITS(value, 16, 16)
|
||||
#define WMI_PDEV_RATE_MAX_NSS_PROBE_INTERVAL_SET(_value, value) WMI_SET_BITS(_value, 16, 16, value)
|
||||
|
||||
|
||||
typedef struct {
|
||||
A_UINT32 tlv_header; /** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_pdev_set_param_cmd_fixed_param */
|
||||
/** pdev_id for identifying the MAC
|
||||
|
Reference in New Issue
Block a user