qcacld-3.0: Configure the A-MPDU subframe per AC
Video/audio wireless application needs to tune parameters per AC based. Configure A-MPDU subframe parameter per AC via driver ini configuration file. Change-Id: Id63be7aacf6465edee08f7a2f4c8a119f9bd6346 CRs-Fixed: 2212932
This commit is contained in:
@@ -8823,6 +8823,110 @@ enum hdd_link_speed_rpt_type {
|
||||
#define CFG_TX_AGGREGATION_SIZE_MAX (64)
|
||||
#define CFG_TX_AGGREGATION_SIZE_DEFAULT (64)
|
||||
|
||||
/*
|
||||
* <ini>
|
||||
* gTxAggregationSizeBE - To configure Tx aggregation size for BE queue
|
||||
* in no of MPDUs
|
||||
* @Min: 0
|
||||
* @Max: 64
|
||||
* @Default: 0
|
||||
*
|
||||
* gTxAggregationSizeBE gives an option to configure Tx aggregation size
|
||||
* for BE queue in no of MPDUs.This can be useful in debugging
|
||||
* throughput issues
|
||||
*
|
||||
* Related: None
|
||||
*
|
||||
* Supported Feature: STA
|
||||
*
|
||||
* Usage: Internal/External
|
||||
*
|
||||
* </ini>
|
||||
*/
|
||||
|
||||
#define CFG_TX_AGGREGATION_SIZEBE "gTxAggregationSizeBE"
|
||||
#define CFG_TX_AGGREGATION_SIZEBE_MIN (0)
|
||||
#define CFG_TX_AGGREGATION_SIZEBE_MAX (64)
|
||||
#define CFG_TX_AGGREGATION_SIZEBE_DEFAULT (0)
|
||||
|
||||
/*
|
||||
* <ini>
|
||||
* gTxAggregationSizeBK - To configure Tx aggregation size for BK queue
|
||||
* in no of MPDUs
|
||||
* @Min: 0
|
||||
* @Max: 64
|
||||
* @Default: 0
|
||||
*
|
||||
* gTxAggregationSizeBK gives an option to configure Tx aggregation size
|
||||
* for BK queue in no of MPDUs.This can be useful in debugging
|
||||
* throughput issues
|
||||
*
|
||||
* Related: None
|
||||
*
|
||||
* Supported Feature: STA
|
||||
*
|
||||
* Usage: Internal/External
|
||||
*
|
||||
* </ini>
|
||||
*/
|
||||
|
||||
#define CFG_TX_AGGREGATION_SIZEBK "gTxAggregationSizeBK"
|
||||
#define CFG_TX_AGGREGATION_SIZEBK_MIN (0)
|
||||
#define CFG_TX_AGGREGATION_SIZEBK_MAX (64)
|
||||
#define CFG_TX_AGGREGATION_SIZEBK_DEFAULT (0)
|
||||
|
||||
/*
|
||||
* <ini>
|
||||
* gTxAggregationSizeVI - To configure Tx aggregation size for VI queue
|
||||
* in no of MPDUs
|
||||
* @Min: 0
|
||||
* @Max: 64
|
||||
* @Default: 0
|
||||
*
|
||||
* gTxAggregationSizeVI gives an option to configure Tx aggregation size
|
||||
* for VI queue in no of MPDUs.This can be useful in debugging
|
||||
* throughput issues
|
||||
*
|
||||
* Related: None
|
||||
*
|
||||
* Supported Feature: STA
|
||||
*
|
||||
* Usage: Internal/External
|
||||
*
|
||||
* </ini>
|
||||
*/
|
||||
|
||||
#define CFG_TX_AGGREGATION_SIZEVI "gTxAggregationSizeVI"
|
||||
#define CFG_TX_AGGREGATION_SIZEVI_MIN (0)
|
||||
#define CFG_TX_AGGREGATION_SIZEVI_MAX (64)
|
||||
#define CFG_TX_AGGREGATION_SIZEVI_DEFAULT (0)
|
||||
|
||||
/*
|
||||
* <ini>
|
||||
* gTxAggregationSizeVO - To configure Tx aggregation size for VO queue
|
||||
* in no of MPDUs
|
||||
* @Min: 0
|
||||
* @Max: 64
|
||||
* @Default: 0
|
||||
*
|
||||
* gTxAggregationSizeVO gives an option to configure Tx aggregation size
|
||||
* for BE queue in no of MPDUs.This can be useful in debugging
|
||||
* throughput issues
|
||||
*
|
||||
* Related: None
|
||||
*
|
||||
* Supported Feature: STA
|
||||
*
|
||||
* Usage: Internal/External
|
||||
*
|
||||
* </ini>
|
||||
*/
|
||||
|
||||
#define CFG_TX_AGGREGATION_SIZEVO "gTxAggregationSizeVO"
|
||||
#define CFG_TX_AGGREGATION_SIZEVO_MIN (0)
|
||||
#define CFG_TX_AGGREGATION_SIZEVO_MAX (64)
|
||||
#define CFG_TX_AGGREGATION_SIZEVO_DEFAULT (0)
|
||||
|
||||
/*
|
||||
* <ini>
|
||||
* gRxAggregationSize - Gives an option to configure Rx aggregation size
|
||||
@@ -14686,6 +14790,10 @@ struct hdd_config {
|
||||
bool goptimize_chan_avoid_event;
|
||||
bool enable_go_cts2self_for_sta;
|
||||
uint32_t tx_aggregation_size;
|
||||
uint32_t tx_aggregation_size_be;
|
||||
uint32_t tx_aggregation_size_bk;
|
||||
uint32_t tx_aggregation_size_vi;
|
||||
uint32_t tx_aggregation_size_vo;
|
||||
uint32_t rx_aggregation_size;
|
||||
bool sta_prefer_80MHz_over_160MHz;
|
||||
uint8_t sap_max_inactivity_override;
|
||||
|
@@ -4243,11 +4243,39 @@ struct reg_table_entry g_registry_table[] = {
|
||||
CFG_OPTIMIZE_CA_EVENT_ENABLE),
|
||||
|
||||
REG_VARIABLE(CFG_TX_AGGREGATION_SIZE, WLAN_PARAM_Integer,
|
||||
struct hdd_config, tx_aggregation_size,
|
||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
||||
CFG_TX_AGGREGATION_SIZE_DEFAULT,
|
||||
CFG_TX_AGGREGATION_SIZE_MIN,
|
||||
CFG_TX_AGGREGATION_SIZE_MAX),
|
||||
struct hdd_config, tx_aggregation_size,
|
||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
||||
CFG_TX_AGGREGATION_SIZE_DEFAULT,
|
||||
CFG_TX_AGGREGATION_SIZE_MIN,
|
||||
CFG_TX_AGGREGATION_SIZE_MAX),
|
||||
|
||||
REG_VARIABLE(CFG_TX_AGGREGATION_SIZEBE, WLAN_PARAM_Integer,
|
||||
struct hdd_config, tx_aggregation_size_be,
|
||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
||||
CFG_TX_AGGREGATION_SIZEBE_DEFAULT,
|
||||
CFG_TX_AGGREGATION_SIZEBE_MIN,
|
||||
CFG_TX_AGGREGATION_SIZEBE_MAX),
|
||||
|
||||
REG_VARIABLE(CFG_TX_AGGREGATION_SIZEBK, WLAN_PARAM_Integer,
|
||||
struct hdd_config, tx_aggregation_size_bk,
|
||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
||||
CFG_TX_AGGREGATION_SIZEBK_DEFAULT,
|
||||
CFG_TX_AGGREGATION_SIZEBK_MIN,
|
||||
CFG_TX_AGGREGATION_SIZEBK_MAX),
|
||||
|
||||
REG_VARIABLE(CFG_TX_AGGREGATION_SIZEVI, WLAN_PARAM_Integer,
|
||||
struct hdd_config, tx_aggregation_size_vi,
|
||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
||||
CFG_TX_AGGREGATION_SIZEVI_DEFAULT,
|
||||
CFG_TX_AGGREGATION_SIZEVI_MIN,
|
||||
CFG_TX_AGGREGATION_SIZEVI_MAX),
|
||||
|
||||
REG_VARIABLE(CFG_TX_AGGREGATION_SIZEVO, WLAN_PARAM_Integer,
|
||||
struct hdd_config, tx_aggregation_size_vo,
|
||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
||||
CFG_TX_AGGREGATION_SIZEVO_DEFAULT,
|
||||
CFG_TX_AGGREGATION_SIZEVO_MIN,
|
||||
CFG_TX_AGGREGATION_SIZEVO_MAX),
|
||||
|
||||
REG_VARIABLE(CFG_RX_AGGREGATION_SIZE, WLAN_PARAM_Integer,
|
||||
struct hdd_config, rx_aggregation_size,
|
||||
@@ -8885,6 +8913,14 @@ QDF_STATUS hdd_set_sme_config(struct hdd_context *hdd_ctx)
|
||||
|
||||
smeConfig->csrConfig.tx_aggregation_size =
|
||||
hdd_ctx->config->tx_aggregation_size;
|
||||
smeConfig->csrConfig.tx_aggregation_size_be =
|
||||
hdd_ctx->config->tx_aggregation_size_be;
|
||||
smeConfig->csrConfig.tx_aggregation_size_bk =
|
||||
hdd_ctx->config->tx_aggregation_size_bk;
|
||||
smeConfig->csrConfig.tx_aggregation_size_vi =
|
||||
hdd_ctx->config->tx_aggregation_size_vi;
|
||||
smeConfig->csrConfig.tx_aggregation_size_vo =
|
||||
hdd_ctx->config->tx_aggregation_size_vo;
|
||||
smeConfig->csrConfig.rx_aggregation_size =
|
||||
hdd_ctx->config->rx_aggregation_size;
|
||||
smeConfig->csrConfig.enable_bcast_probe_rsp =
|
||||
|
Reference in New Issue
Block a user