qcacld-3.0: Config number of TX sw retry per AC

Video/audio wireless application needs to tune parameters
per AC based. Config the number of TX sw retry per AC via
driver INI configuration file. It helps to improve the
video/audio performance in noisy environment.

Change-Id: Icffb5174b265b6453021b0d0a8ad3e12b695847a
CRs-Fixed: 2212954
This commit is contained in:
Paul Zhang
2018-04-23 16:19:00 +08:00
gecommit door nshrivas
bovenliggende 5869d3c947
commit 33fae2710d
10 gewijzigde bestanden met toevoegingen van 290 en 0 verwijderingen

Bestand weergeven

@@ -8952,6 +8952,102 @@ enum hdd_link_speed_rpt_type {
#define CFG_RX_AGGREGATION_SIZE_MAX (64)
#define CFG_RX_AGGREGATION_SIZE_DEFAULT (64)
/*
* <ini>
* gTxAggSwRetryBE - Configure Tx aggregation sw retry for BE
* @Min: 0
* @Max: 64
* @Default: 0
*
* gTxAggSwRetryBE gives an option to configure Tx aggregation sw
* retry for BE. This can be useful in debugging throughput issues.
*
* Related: None
*
* Supported Feature: STA
*
* Usage: External
*
* </ini>
*/
#define CFG_TX_AGGR_SW_RETRY_BE "gTxAggSwRetryBE"
#define CFG_TX_AGGR_SW_RETRY_BE_MIN (0)
#define CFG_TX_AGGR_SW_RETRY_BE_MAX (64)
#define CFG_TX_AGGR_SW_RETRY_BE_DEFAULT (0)
/*
* <ini>
* gTxAggSwRetryBK - Configure Tx aggregation sw retry for BK
* @Min: 0
* @Max: 64
* @Default: 0
*
* gTxAggSwRetryBK gives an option to configure Tx aggregation sw
* retry for BK. This can be useful in debugging throughput issues.
*
* Related: None
*
* Supported Feature: STA
*
* Usage: External
*
* </ini>
*/
#define CFG_TX_AGGR_SW_RETRY_BK "gTxAggSwRetryBK"
#define CFG_TX_AGGR_SW_RETRY_BK_MIN (0)
#define CFG_TX_AGGR_SW_RETRY_BK_MAX (64)
#define CFG_TX_AGGR_SW_RETRY_BK_DEFAULT (0)
/*
* <ini>
* gTxAggSwRetryVI - Configure Tx aggregation sw retry for VI
* @Min: 0
* @Max: 64
* @Default: 0
*
* gTxAggSwRetryVI gives an option to configure Tx aggregation sw
* retry for VI. This can be useful in debugging throughput issues.
*
* Related: None
*
* Supported Feature: STA
*
* Usage: External
*
* </ini>
*/
#define CFG_TX_AGGR_SW_RETRY_VI "gTxAggSwRetryVI"
#define CFG_TX_AGGR_SW_RETRY_VI_MIN (0)
#define CFG_TX_AGGR_SW_RETRY_VI_MAX (64)
#define CFG_TX_AGGR_SW_RETRY_VI_DEFAULT (0)
/*
* <ini>
* gTxAggSwRetryVO - Configure Tx aggregation sw retry for VO
* @Min: 0
* @Max: 64
* @Default: 0
*
* gTxAggSwRetryVO gives an option to configure Tx aggregation sw
* retry for VO. This can be useful in debugging throughput issues.
*
* Related: None
*
* Supported Feature: STA
*
* Usage: External
*
* </ini>
*/
#define CFG_TX_AGGR_SW_RETRY_VO "gTxAggSwRetryVO"
#define CFG_TX_AGGR_SW_RETRY_VO_MIN (0)
#define CFG_TX_AGGR_SW_RETRY_VO_MAX (64)
#define CFG_TX_AGGR_SW_RETRY_VO_DEFAULT (0)
/*
* fine timing measurement capability information
*
@@ -14795,6 +14891,10 @@ struct hdd_config {
uint32_t tx_aggregation_size_vi;
uint32_t tx_aggregation_size_vo;
uint32_t rx_aggregation_size;
uint32_t tx_aggr_sw_retry_threshold_be;
uint32_t tx_aggr_sw_retry_threshold_bk;
uint32_t tx_aggr_sw_retry_threshold_vi;
uint32_t tx_aggr_sw_retry_threshold_vo;
bool sta_prefer_80MHz_over_160MHz;
uint8_t sap_max_inactivity_override;
bool fw_timeout_crash;

Bestand weergeven

@@ -4283,6 +4283,35 @@ struct reg_table_entry g_registry_table[] = {
CFG_RX_AGGREGATION_SIZE_DEFAULT,
CFG_RX_AGGREGATION_SIZE_MIN,
CFG_RX_AGGREGATION_SIZE_MAX),
REG_VARIABLE(CFG_TX_AGGR_SW_RETRY_BE, WLAN_PARAM_Integer,
struct hdd_config, tx_aggr_sw_retry_threshold_be,
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
CFG_TX_AGGR_SW_RETRY_BE_DEFAULT,
CFG_TX_AGGR_SW_RETRY_BE_MIN,
CFG_TX_AGGR_SW_RETRY_BE_MAX),
REG_VARIABLE(CFG_TX_AGGR_SW_RETRY_BK, WLAN_PARAM_Integer,
struct hdd_config, tx_aggr_sw_retry_threshold_bk,
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
CFG_TX_AGGR_SW_RETRY_BK_DEFAULT,
CFG_TX_AGGR_SW_RETRY_BK_MIN,
CFG_TX_AGGR_SW_RETRY_BK_MAX),
REG_VARIABLE(CFG_TX_AGGR_SW_RETRY_VI, WLAN_PARAM_Integer,
struct hdd_config, tx_aggr_sw_retry_threshold_vi,
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
CFG_TX_AGGR_SW_RETRY_VI_DEFAULT,
CFG_TX_AGGR_SW_RETRY_VI_MIN,
CFG_TX_AGGR_SW_RETRY_VI_MAX),
REG_VARIABLE(CFG_TX_AGGR_SW_RETRY_VO, WLAN_PARAM_Integer,
struct hdd_config, tx_aggr_sw_retry_threshold_vo,
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
CFG_TX_AGGR_SW_RETRY_VO_DEFAULT,
CFG_TX_AGGR_SW_RETRY_VO_MIN,
CFG_TX_AGGR_SW_RETRY_VO_MAX),
REG_VARIABLE(CFG_SAP_MAX_INACTIVITY_OVERRIDE_NAME, WLAN_PARAM_Integer,
struct hdd_config, sap_max_inactivity_override,
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
@@ -8923,6 +8952,14 @@ QDF_STATUS hdd_set_sme_config(struct hdd_context *hdd_ctx)
hdd_ctx->config->tx_aggregation_size_vo;
smeConfig->csrConfig.rx_aggregation_size =
hdd_ctx->config->rx_aggregation_size;
smeConfig->csrConfig.tx_aggr_sw_retry_threshold_be =
hdd_ctx->config->tx_aggr_sw_retry_threshold_be;
smeConfig->csrConfig.tx_aggr_sw_retry_threshold_bk =
hdd_ctx->config->tx_aggr_sw_retry_threshold_bk;
smeConfig->csrConfig.tx_aggr_sw_retry_threshold_vi =
hdd_ctx->config->tx_aggr_sw_retry_threshold_vi;
smeConfig->csrConfig.tx_aggr_sw_retry_threshold_vo =
hdd_ctx->config->tx_aggr_sw_retry_threshold_vo;
smeConfig->csrConfig.enable_bcast_probe_rsp =
hdd_ctx->config->enable_bcast_probe_rsp;
smeConfig->csrConfig.is_fils_enabled =