qcacld-3.0: Add ini parameter for chain selection optimization
Add ini support to Enable/Disable chain selection optimization for one chain dtim. Change-Id: I95999a4204f2d978abc9951688332400b9670f0e CRs-Fixed: 2189150
Esse commit está contido em:

commit de
snandini

pai
659acb30da
commit
191d164636
@@ -14341,6 +14341,24 @@ enum hdd_external_acs_freq_band {
|
||||
#define CFG_WMI_WQ_WATCHDOG_MIN (0)
|
||||
#define CFG_WMI_WQ_WATCHDOG_MAX (30) /* 30s */
|
||||
#define CFG_WMI_WQ_WATCHDOG_DEFAULT (20) /* 20s */
|
||||
|
||||
/*
|
||||
* <ini>
|
||||
* gEnableDTIMSelectionDiversity - Enable/Disable chain
|
||||
* selection optimization for one chain dtim
|
||||
* @Min: 0
|
||||
* @Max: 30
|
||||
* @Default: 5
|
||||
*
|
||||
* Usage: External
|
||||
*
|
||||
* </ini>
|
||||
*/
|
||||
#define CFG_DTIM_SELECTION_DIVERSITY_NAME "gEnableDTIMSelectionDiversity"
|
||||
#define CFG_DTIM_SELECTION_DIVERSITY_MIN (0)
|
||||
#define CFG_DTIM_SELECTION_DIVERSITY_MAX (30)
|
||||
#define CFG_DTIM_SELECTION_DIVERSITY_DEFAULT (5)
|
||||
|
||||
/*
|
||||
* Type declarations
|
||||
*/
|
||||
@@ -15251,6 +15269,7 @@ struct hdd_config {
|
||||
uint32_t neighbor_report_offload_cache_timeout;
|
||||
uint32_t neighbor_report_offload_max_req_cap;
|
||||
uint16_t wmi_wq_watchdog_timeout;
|
||||
bool enable_dtim_selection_diversity;
|
||||
};
|
||||
|
||||
#define VAR_OFFSET(_Struct, _Var) (offsetof(_Struct, _Var))
|
||||
|
@@ -5526,6 +5526,14 @@ struct reg_table_entry g_registry_table[] = {
|
||||
CFG_WMI_WQ_WATCHDOG_DEFAULT,
|
||||
CFG_WMI_WQ_WATCHDOG_MIN,
|
||||
CFG_WMI_WQ_WATCHDOG_MAX),
|
||||
|
||||
REG_VARIABLE(CFG_DTIM_SELECTION_DIVERSITY_NAME,
|
||||
WLAN_PARAM_Integer,
|
||||
struct hdd_config, enable_dtim_selection_diversity,
|
||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
||||
CFG_DTIM_SELECTION_DIVERSITY_DEFAULT,
|
||||
CFG_DTIM_SELECTION_DIVERSITY_MIN,
|
||||
CFG_DTIM_SELECTION_DIVERSITY_MAX),
|
||||
};
|
||||
|
||||
|
||||
@@ -7416,6 +7424,9 @@ void hdd_cfg_print(struct hdd_context *hdd_ctx)
|
||||
hdd_debug("Name = [%s] value = [%d]",
|
||||
CFG_ENABLE_GCMP_NAME,
|
||||
hdd_ctx->config->gcmp_enabled);
|
||||
hdd_debug("Name = [%s] value = [%d]",
|
||||
CFG_DTIM_SELECTION_DIVERSITY_NAME,
|
||||
hdd_ctx->config->enable_dtim_selection_diversity);
|
||||
|
||||
hdd_cfg_print_11k_offload_params(hdd_ctx);
|
||||
}
|
||||
|
@@ -4256,6 +4256,17 @@ int hdd_set_fw_params(struct hdd_adapter *adapter)
|
||||
goto error;
|
||||
}
|
||||
|
||||
|
||||
ret = sme_cli_set_command(
|
||||
adapter->session_id,
|
||||
WMI_PDEV_PARAM_1CH_DTIM_OPTIMIZED_CHAIN_SELECTION,
|
||||
hdd_ctx->config->enable_dtim_selection_diversity,
|
||||
PDEV_CMD);
|
||||
if (ret) {
|
||||
hdd_err("Failed to set DTIM_OPTIMIZED_CHAIN_SELECTION");
|
||||
goto error;
|
||||
}
|
||||
|
||||
if (adapter->device_mode == QDF_STA_MODE) {
|
||||
sme_set_smps_cfg(adapter->session_id,
|
||||
HDD_STA_SMPS_PARAM_UPPER_BRSSI_THRESH,
|
||||
|
Referência em uma nova issue
Block a user