From 48d273cbf02fe89878216e001d855b09a32d91cf Mon Sep 17 00:00:00 2001 From: Pragaspathi Thilagaraj Date: Fri, 31 Aug 2018 00:53:02 +0530 Subject: [PATCH] qcacld-3.0: Remove legacy INI items of QOS aggregation configs Remove the legacy INI code from hdd_cfg. Replace the existing access from hdd_config with new mlme api. Change-Id: Iddde15330c1ad39a59bd9a3c7ea86af971df61b5 CRs-Fixed: 2313296 --- .../mlme/dispatcher/inc/wlan_mlme_api.h | 14 + .../dispatcher/inc/wlan_mlme_public_struct.h | 1 - .../mlme/dispatcher/inc/wlan_mlme_ucfg_api.h | 19 ++ .../mlme/dispatcher/src/wlan_mlme_api.c | 13 + core/hdd/inc/wlan_hdd_cfg.h | 280 +----------------- core/hdd/src/wlan_hdd_cfg.c | 96 ------ core/hdd/src/wlan_hdd_hostapd.c | 6 +- .../src/pe/lim/lim_process_mlm_req_messages.c | 18 +- core/sme/inc/csr_api.h | 10 - core/sme/inc/csr_internal.h | 10 - core/sme/src/csr/csr_api_roam.c | 80 ++--- 11 files changed, 96 insertions(+), 451 deletions(-) diff --git a/components/mlme/dispatcher/inc/wlan_mlme_api.h b/components/mlme/dispatcher/inc/wlan_mlme_api.h index 54af017660..85f531fd15 100644 --- a/components/mlme/dispatcher/inc/wlan_mlme_api.h +++ b/components/mlme/dispatcher/inc/wlan_mlme_api.h @@ -26,6 +26,8 @@ #include #include +#include "sme_api.h" + /** * wlan_mlme_get_ht_cap_info() - Get the HT cap info config * @psoc: pointer to psoc object @@ -48,6 +50,18 @@ QDF_STATUS wlan_mlme_set_ht_cap_info(struct wlan_objmgr_psoc *psoc, struct mlme_ht_capabilities_info ht_cap_info); +/** + * + * wlan_mlme_get_sap_inactivity_override() - Check if sap max inactivity + * override flag is set. + * @psoc: pointer to psoc object + * @sme_config - Sme config struct + * + * Return: QDF Status + */ +void wlan_mlme_get_sap_inactivity_override(struct wlan_objmgr_psoc *psoc, + bool *value); + /** * wlan_mlme_get_ignore_peer_ht_mode() - Get the ignore peer ht opmode flag * @psoc: pointer to psoc object diff --git a/components/mlme/dispatcher/inc/wlan_mlme_public_struct.h b/components/mlme/dispatcher/inc/wlan_mlme_public_struct.h index e84a78c8eb..535f67a4e1 100644 --- a/components/mlme/dispatcher/inc/wlan_mlme_public_struct.h +++ b/components/mlme/dispatcher/inc/wlan_mlme_public_struct.h @@ -171,7 +171,6 @@ struct wlan_mlme_rates { * struct wlan_mlme_sap_protection_cfg - SAP erp protection config items * * @protection_enabled - Force enable protection. static via cfg - * @protection_always_11g - Force protection enable for 11g. Static via cfg * @protection_force_policy - Protection force policy. Static via cfg * @ignore_peer_ht_mode - ignore the ht opmode of the peer. Dynamic via INI. * diff --git a/components/mlme/dispatcher/inc/wlan_mlme_ucfg_api.h b/components/mlme/dispatcher/inc/wlan_mlme_ucfg_api.h index 18c8b770bc..0e3e7a857a 100644 --- a/components/mlme/dispatcher/inc/wlan_mlme_ucfg_api.h +++ b/components/mlme/dispatcher/inc/wlan_mlme_ucfg_api.h @@ -149,6 +149,25 @@ QDF_STATUS ucfg_mlme_set_ht_cap_info(struct wlan_objmgr_psoc *psoc, return wlan_mlme_set_ht_cap_info(psoc, ht_cap_info); } +/** + * + * ucfg_mlme_get_sap_inactivity_override() - Check if sap max inactivity + * override flag is set. + * @psoc: pointer to psoc object + * @sme_config - Sme config struct + * + * Inline UCFG API to be used by HDD/OSIF callers to call + * the mlme function wlan_mlme_get_sap_inactivity_override + * + * Return: QDF Status + */ +static inline +void ucfg_mlme_get_sap_inactivity_override(struct wlan_objmgr_psoc *psoc, + bool *value) +{ + wlan_mlme_get_sap_inactivity_override(psoc, value); +} + /** * ucfg_mlme_get_ignore_peer_ht_mode() - Get the ignore peer ht mode flag * diff --git a/components/mlme/dispatcher/src/wlan_mlme_api.c b/components/mlme/dispatcher/src/wlan_mlme_api.c index 71adf76b4d..27d5798f67 100644 --- a/components/mlme/dispatcher/src/wlan_mlme_api.c +++ b/components/mlme/dispatcher/src/wlan_mlme_api.c @@ -59,6 +59,19 @@ QDF_STATUS wlan_mlme_set_ht_cap_info(struct wlan_objmgr_psoc *psoc, return QDF_STATUS_SUCCESS; } +void wlan_mlme_get_sap_inactivity_override(struct wlan_objmgr_psoc *psoc, + bool *val) +{ + struct wlan_mlme_psoc_obj *mlme_obj; + + mlme_obj = mlme_get_psoc_obj(psoc); + if (!mlme_obj) { + mlme_err("Failed to get MLME Obj"); + return; + } + *val = mlme_obj->cfg.qos_mlme_params.sap_max_inactivity_override; +} + QDF_STATUS wlan_mlme_get_ignore_peer_ht_mode(struct wlan_objmgr_psoc *psoc, bool *value) { diff --git a/core/hdd/inc/wlan_hdd_cfg.h b/core/hdd/inc/wlan_hdd_cfg.h index 45810af76b..45d3df1138 100644 --- a/core/hdd/inc/wlan_hdd_cfg.h +++ b/core/hdd/inc/wlan_hdd_cfg.h @@ -66,6 +66,11 @@ struct hdd_context; #define CFG_CONCURRENT_IFACE_MAX_LEN 16 +#define CFG_TX_AGGREGATION_SIZE_MIN 0 +#define CFG_TX_AGGREGATION_SIZE_MAX 64 +#define CFG_RX_AGGREGATION_SIZE_MIN 1 +#define CFG_RX_AGGREGATION_SIZE_MAX 64 + /* Defines for all of the things we read from the configuration (registry). */ /* * @@ -7665,256 +7670,6 @@ enum hdd_link_speed_rpt_type { #define CFG_SELF_GEN_FRM_PWR_MAX (0xffff) #define CFG_SELF_GEN_FRM_PWR_DEFAULT (0) -/* - * - * gTxAggregationSize - Gives an option to configure Tx aggregation size - * in no of MPDUs - * @Min: 0 - * @Max: 64 - * @Default: 64 - * - * gTxAggregationSize gives an option to configure Tx aggregation size - * in no of MPDUs.This can be useful in debugging throughput issues - * - * Related: None - * - * Supported Feature: STA - * - * Usage: Internal/External - * - * - */ - -#define CFG_TX_AGGREGATION_SIZE "gTxAggregationSize" -#define CFG_TX_AGGREGATION_SIZE_MIN (0) -#define CFG_TX_AGGREGATION_SIZE_MAX (64) -#define CFG_TX_AGGREGATION_SIZE_DEFAULT (64) - -/* - * - * 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 - * - * - */ - -#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) - -/* - * - * 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 - * - * - */ - -#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) - -/* - * - * 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 - * - * - */ - -#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) - -/* - * - * 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 - * - * - */ - -#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) - -/* - * - * gRxAggregationSize - Gives an option to configure Rx aggregation size - * in no of MPDUs - * @Min: 1 - * @Max: 64 - * @Default: 64 - * - * gRxAggregationSize gives an option to configure Rx aggregation size - * in no of MPDUs. This can be useful in debugging throughput issues - * - * Related: None - * - * Supported Feature: STA - * - * Usage: Internal/External - * - * - */ - -#define CFG_RX_AGGREGATION_SIZE "gRxAggregationSize" -#define CFG_RX_AGGREGATION_SIZE_MIN (1) -#define CFG_RX_AGGREGATION_SIZE_MAX (64) -#define CFG_RX_AGGREGATION_SIZE_DEFAULT (64) - -/* - * - * 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: Internal - * - * - */ - -#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) - -/* - * - * 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: Internal - * - * - */ - -#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) - -/* - * - * 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: Internal - * - * - */ - -#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) - -/* - * - * 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: Internal - * - * - */ - -#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 * @@ -8817,20 +8572,6 @@ enum dot11p_mode { #define CFG_RESTART_BEACONING_ON_CH_AVOID_MIN (CH_AVOID_RULE_DO_NOT_RESTART) #define CFG_RESTART_BEACONING_ON_CH_AVOID_MAX (CH_AVOID_RULE_RESTART_24G_ONLY) #define CFG_RESTART_BEACONING_ON_CH_AVOID_DEFAULT (CH_AVOID_RULE_RESTART) -/* - * This parameter will avoid updating ap_sta_inactivity from hostapd.conf - * file. If a station does not send anything in ap_max_inactivity seconds, an - * empty data frame is sent to it in order to verify whether it is - * still in range. If this frame is not ACKed, the station will be - * disassociated and then deauthenticated. This feature is used to - * clear station table of old entries when the STAs move out of the - * range. - * Default : Disable - */ -#define CFG_SAP_MAX_INACTIVITY_OVERRIDE_NAME "gSapMaxInactivityOverride" -#define CFG_SAP_MAX_INACTIVITY_OVERRIDE_MIN (0) -#define CFG_SAP_MAX_INACTIVITY_OVERRIDE_MAX (1) -#define CFG_SAP_MAX_INACTIVITY_OVERRIDE_DEFAULT (0) /* * @@ -14133,18 +13874,7 @@ struct hdd_config { bool multicast_replay_filter; 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; - 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; /* beacon count before channel switch */ uint8_t sap_chanswitch_beacon_cnt; diff --git a/core/hdd/src/wlan_hdd_cfg.c b/core/hdd/src/wlan_hdd_cfg.c index 7ac6c9e279..d31bdeb846 100644 --- a/core/hdd/src/wlan_hdd_cfg.c +++ b/core/hdd/src/wlan_hdd_cfg.c @@ -3905,82 +3905,6 @@ struct reg_table_entry g_registry_table[] = { CFG_OPTIMIZE_CA_EVENT_DISABLE, 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), - - 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, - VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT, - 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, - CFG_SAP_MAX_INACTIVITY_OVERRIDE_DEFAULT, - CFG_SAP_MAX_INACTIVITY_OVERRIDE_MIN, - CFG_SAP_MAX_INACTIVITY_OVERRIDE_MAX), REG_VARIABLE(CFG_CRASH_FW_TIMEOUT_NAME, WLAN_PARAM_Integer, struct hdd_config, fw_timeout_crash, VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT, @@ -7420,26 +7344,6 @@ QDF_STATUS hdd_set_sme_config(struct hdd_context *hdd_ctx) smeConfig->snr_monitor_enabled = hdd_ctx->config->fEnableSNRMonitoring; - 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.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 = diff --git a/core/hdd/src/wlan_hdd_hostapd.c b/core/hdd/src/wlan_hdd_hostapd.c index aced75b4ea..40918e5268 100644 --- a/core/hdd/src/wlan_hdd_hostapd.c +++ b/core/hdd/src/wlan_hdd_hostapd.c @@ -81,6 +81,7 @@ #include "wlan_hdd_regulatory.h" #include #include +#include "wlan_mlme_ucfg_api.h" #define ACS_SCAN_EXPIRY_TIMEOUT_S 4 @@ -5529,6 +5530,7 @@ static int __wlan_hdd_cfg80211_start_ap(struct wiphy *wiphy, uint8_t channel; bool sta_sap_scc_on_dfs_chan; uint16_t sta_cnt; + bool val; hdd_enter(); @@ -5789,7 +5791,9 @@ static int __wlan_hdd_cfg80211_start_ap(struct wiphy *wiphy, wlan_hdd_send_avoid_freq_for_dnbs(hdd_ctx, sap_config->channel); } - if (hdd_ctx->config->sap_max_inactivity_override) { + + ucfg_mlme_get_sap_inactivity_override(hdd_ctx->hdd_psoc, &val); + if (val) { sta_inactivity_timer = qdf_mem_malloc( sizeof(*sta_inactivity_timer)); if (!sta_inactivity_timer) { diff --git a/core/mac/src/pe/lim/lim_process_mlm_req_messages.c b/core/mac/src/pe/lim/lim_process_mlm_req_messages.c index 24cf1c5e5f..e90e9c6ea0 100644 --- a/core/mac/src/pe/lim/lim_process_mlm_req_messages.c +++ b/core/mac/src/pe/lim/lim_process_mlm_req_messages.c @@ -39,6 +39,7 @@ #include "wma_if.h" #include "wlan_reg_services_api.h" #include "lim_process_fils.h" +#include "wlan_mlme_public_struct.h" static void lim_process_mlm_join_req(tpAniSirGlobal, uint32_t *); static void lim_process_mlm_auth_req(tpAniSirGlobal, uint32_t *); @@ -463,6 +464,7 @@ lim_mlm_add_bss(tpAniSirGlobal mac_ctx, { struct scheduler_msg msg_buf = {0}; tpAddBssParams addbss_param = NULL; + struct wlan_mlme_qos *qos_aggr = &mac_ctx->mlme_cfg->qos_mlme_params; uint32_t retcode; bool is_ch_dfs = false; @@ -600,20 +602,24 @@ lim_mlm_add_bss(tpAniSirGlobal mac_ctx, addbss_param->dfs_regdomain = mlm_start_req->dfs_regdomain; addbss_param->beacon_tx_rate = session->beacon_tx_rate; if (QDF_IBSS_MODE == addbss_param->halPersona) { + if (!(mac_ctx->mlme_cfg)) { + pe_err("Mlme cfg NULL"); + return eSIR_SME_INVALID_PARAMETERS; + } addbss_param->nss_2g = mac_ctx->vdev_type_nss_2g.ibss; addbss_param->nss_5g = mac_ctx->vdev_type_nss_5g.ibss; addbss_param->tx_aggregation_size = - mac_ctx->roam.configParam.tx_aggregation_size; + qos_aggr->tx_aggregation_size; addbss_param->tx_aggregation_size_be = - mac_ctx->roam.configParam.tx_aggregation_size_be; + qos_aggr->tx_aggregation_size_be; addbss_param->tx_aggregation_size_bk = - mac_ctx->roam.configParam.tx_aggregation_size_bk; + qos_aggr->tx_aggregation_size_bk; addbss_param->tx_aggregation_size_vi = - mac_ctx->roam.configParam.tx_aggregation_size_vi; + qos_aggr->tx_aggregation_size_vi; addbss_param->tx_aggregation_size_vo = - mac_ctx->roam.configParam.tx_aggregation_size_vo; + qos_aggr->tx_aggregation_size_vo; addbss_param->rx_aggregation_size = - mac_ctx->roam.configParam.rx_aggregation_size; + qos_aggr->rx_aggregation_size; } pe_debug("dot11_mode:%d nss value:%d", addbss_param->dot11_mode, addbss_param->nss); diff --git a/core/sme/inc/csr_api.h b/core/sme/inc/csr_api.h index 40580a07da..059cfef00b 100644 --- a/core/sme/inc/csr_api.h +++ b/core/sme/inc/csr_api.h @@ -1251,16 +1251,6 @@ typedef struct tagCsrConfigParam { enum scan_dwelltime_adaptive_mode scan_adaptive_dwell_mode_nc; enum scan_dwelltime_adaptive_mode roamscan_adaptive_dwell_mode; struct csr_sta_roam_policy_params sta_roam_policy_params; - 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; - 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; struct wmi_per_roam_config per_roam_config; bool enable_bcast_probe_rsp; bool is_fils_enabled; diff --git a/core/sme/inc/csr_internal.h b/core/sme/inc/csr_internal.h index 1dddd98a4a..8ab0e307ea 100644 --- a/core/sme/inc/csr_internal.h +++ b/core/sme/inc/csr_internal.h @@ -559,16 +559,6 @@ struct csr_config { enum scan_dwelltime_adaptive_mode scan_adaptive_dwell_mode_nc; enum scan_dwelltime_adaptive_mode roamscan_adaptive_dwell_mode; struct csr_sta_roam_policy_params sta_roam_policy; - 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; - 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; struct wmi_per_roam_config per_roam_config; bool enable_bcast_probe_rsp; bool is_fils_enabled; diff --git a/core/sme/src/csr/csr_api_roam.c b/core/sme/src/csr/csr_api_roam.c index 1056e1ad0e..bda6d95a3b 100644 --- a/core/sme/src/csr/csr_api_roam.c +++ b/core/sme/src/csr/csr_api_roam.c @@ -3204,26 +3204,6 @@ QDF_STATUS csr_change_default_config_param(tpAniSirGlobal pMac, pMac->roam.configParam.sta_roam_policy.sap_operating_band = pParam->sta_roam_policy_params.sap_operating_band; - pMac->roam.configParam.tx_aggregation_size = - pParam->tx_aggregation_size; - pMac->roam.configParam.tx_aggregation_size_be = - pParam->tx_aggregation_size_be; - pMac->roam.configParam.tx_aggregation_size_bk = - pParam->tx_aggregation_size_bk; - pMac->roam.configParam.tx_aggregation_size_vi = - pParam->tx_aggregation_size_vi; - pMac->roam.configParam.tx_aggregation_size_vo = - pParam->tx_aggregation_size_vo; - pMac->roam.configParam.rx_aggregation_size = - pParam->rx_aggregation_size; - pMac->roam.configParam.tx_aggr_sw_retry_threshold_be = - pParam->tx_aggr_sw_retry_threshold_be; - pMac->roam.configParam.tx_aggr_sw_retry_threshold_bk = - pParam->tx_aggr_sw_retry_threshold_bk; - pMac->roam.configParam.tx_aggr_sw_retry_threshold_vi = - pParam->tx_aggr_sw_retry_threshold_vi; - pMac->roam.configParam.tx_aggr_sw_retry_threshold_vo = - pParam->tx_aggr_sw_retry_threshold_vo; pMac->roam.configParam.enable_bcast_probe_rsp = pParam->enable_bcast_probe_rsp; pMac->roam.configParam.is_fils_enabled = @@ -3543,18 +3523,6 @@ QDF_STATUS csr_get_config_param(tpAniSirGlobal pMac, tCsrConfigParam *pParam) pMac->roam.configParam.sta_roam_policy.dfs_mode; pParam->sta_roam_policy_params.skip_unsafe_channels = pMac->roam.configParam.sta_roam_policy.skip_unsafe_channels; - pParam->tx_aggregation_size = - pMac->roam.configParam.tx_aggregation_size; - pParam->tx_aggregation_size_be = - pMac->roam.configParam.tx_aggregation_size_be; - pParam->tx_aggregation_size_bk = - pMac->roam.configParam.tx_aggregation_size_bk; - pParam->tx_aggregation_size_vi = - pMac->roam.configParam.tx_aggregation_size_vi; - pParam->tx_aggregation_size_vo = - pMac->roam.configParam.tx_aggregation_size_vo; - pParam->rx_aggregation_size = - pMac->roam.configParam.rx_aggregation_size; pParam->enable_bcast_probe_rsp = pMac->roam.configParam.enable_bcast_probe_rsp; pParam->is_fils_enabled = @@ -17298,6 +17266,7 @@ QDF_STATUS csr_issue_add_sta_for_session_req(tpAniSirGlobal pMac, { QDF_STATUS status = QDF_STATUS_SUCCESS; struct add_sta_self_params *add_sta_self_req; + struct wlan_mlme_qos *qos_aggr = &pMac->mlme_cfg->qos_mlme_params; uint8_t nss_2g; uint8_t nss_5g; struct scheduler_msg msg = {0}; @@ -17308,6 +17277,11 @@ QDF_STATUS csr_issue_add_sta_for_session_req(tpAniSirGlobal pMac, return QDF_STATUS_E_NOMEM; } + if (!(pMac->mlme_cfg)) { + pe_err("Mlme cfg NULL"); + return QDF_STATUS_E_FAILURE; + } + csr_get_vdev_type_nss(pMac, pMac->sme.currDeviceMode, &nss_2g, &nss_5g); qdf_mem_copy(add_sta_self_req->self_mac_addr, sessionMacAddr, @@ -17318,34 +17292,36 @@ QDF_STATUS csr_issue_add_sta_for_session_req(tpAniSirGlobal pMac, add_sta_self_req->sub_type = subType; add_sta_self_req->nss_2g = nss_2g; add_sta_self_req->nss_5g = nss_5g; - add_sta_self_req->tx_aggregation_size = - pMac->roam.configParam.tx_aggregation_size; + + add_sta_self_req->tx_aggregation_size = qos_aggr->tx_aggregation_size; add_sta_self_req->tx_aggregation_size_be = - pMac->roam.configParam.tx_aggregation_size_be; + qos_aggr->tx_aggregation_size_be; add_sta_self_req->tx_aggregation_size_bk = - pMac->roam.configParam.tx_aggregation_size_bk; + qos_aggr->tx_aggregation_size_bk; add_sta_self_req->tx_aggregation_size_vi = - pMac->roam.configParam.tx_aggregation_size_vi; + qos_aggr->tx_aggregation_size_vi; add_sta_self_req->tx_aggregation_size_vo = - pMac->roam.configParam.tx_aggregation_size_vo; - add_sta_self_req->rx_aggregation_size = - pMac->roam.configParam.rx_aggregation_size; - add_sta_self_req->enable_bcast_probe_rsp = - pMac->roam.configParam.enable_bcast_probe_rsp; - add_sta_self_req->fils_max_chan_guard_time = - pMac->roam.configParam.fils_max_chan_guard_time; - add_sta_self_req->pkt_err_disconn_th = - pMac->roam.configParam.pkt_err_disconn_th; - add_sta_self_req->oce_feature_bitmap = - pMac->roam.configParam.oce_feature_bitmap; + qos_aggr->tx_aggregation_size_vo; + + add_sta_self_req->rx_aggregation_size = qos_aggr->rx_aggregation_size; add_sta_self_req->tx_aggr_sw_retry_threshold_be = - pMac->roam.configParam.tx_aggr_sw_retry_threshold_be; + qos_aggr->tx_aggr_sw_retry_threshold_be; add_sta_self_req->tx_aggr_sw_retry_threshold_bk = - pMac->roam.configParam.tx_aggr_sw_retry_threshold_bk; + qos_aggr->tx_aggr_sw_retry_threshold_bk; add_sta_self_req->tx_aggr_sw_retry_threshold_vi = - pMac->roam.configParam.tx_aggr_sw_retry_threshold_vi; + qos_aggr->tx_aggr_sw_retry_threshold_vi; add_sta_self_req->tx_aggr_sw_retry_threshold_vo = - pMac->roam.configParam.tx_aggr_sw_retry_threshold_vo; + qos_aggr->tx_aggr_sw_retry_threshold_vo; + + add_sta_self_req->enable_bcast_probe_rsp = + pMac->roam.configParam.enable_bcast_probe_rsp; + add_sta_self_req->fils_max_chan_guard_time = + pMac->roam.configParam.fils_max_chan_guard_time; + add_sta_self_req->pkt_err_disconn_th = + pMac->roam.configParam.pkt_err_disconn_th; + add_sta_self_req->oce_feature_bitmap = + pMac->roam.configParam.oce_feature_bitmap; + msg.type = WMA_ADD_STA_SELF_REQ; msg.reserved = 0; msg.bodyptr = add_sta_self_req;