qcacmn: populate num_max_active_vdev in WMI init

Set num_max_active_vdevs to WMI init command and
extract it from WMI ready event.

Change-Id: I6d6377c03214fcab74c675839f136301ebf27834
CRs-Fixed: 3183010
This commit is contained in:
Liangwei Dong
2022-04-26 16:28:17 +08:00
committed by Madan Koyyalamudi
parent e8e9381db1
commit 28ceb47c1d
3 changed files with 19 additions and 0 deletions

View File

@@ -762,6 +762,17 @@ static int init_deinit_ready_event_handler(ol_scn_t scn_handle,
else
info->wlan_res_cfg.agile_capability = ready_ev.agile_capability;
if (ready_ev.num_max_active_vdevs) {
if (ready_ev.num_max_active_vdevs <
info->wlan_res_cfg.num_max_active_vdevs) {
target_if_err("unexpected num_max_active_vdevs fw %d host %d",
ready_ev.num_max_active_vdevs,
info->wlan_res_cfg.num_max_active_vdevs);
info->wlan_res_cfg.num_max_active_vdevs =
ready_ev.num_max_active_vdevs;
}
}
/* Indicate to the waiting thread that the ready
* event was received
*/

View File

@@ -5840,6 +5840,8 @@ struct wmi_host_fw_abi_ver {
* @afc_outdoor_support: AFC support outdoor deployment
* @carrier_profile_config: Configuration for per-carrier profile
* @reo_qdesc_shared_addr_table_enabled: Reo shared qref enhancement enabled
* @num_max_active_vdevs: number of max active virtual devices (VAPs) to
* support
*/
typedef struct {
uint32_t num_vdevs;
@@ -5964,6 +5966,7 @@ typedef struct {
uint32_t carrier_profile_config;
bool sawf;
bool reo_qdesc_shared_addr_table_enabled;
uint32_t num_max_active_vdevs;
} target_resource_config;
/**
@@ -7680,6 +7683,8 @@ struct coex_config_params {
* and structs used within pktlog traces. This is sent
* from the FW as part of FW ready event and needs
* to be embedded in the pktlog buffer header as version.
* @num_max_active_vdevs: number of max active virtual devices (VAPs) to
* support
*/
struct wmi_host_ready_ev_param {
uint32_t status;
@@ -7690,6 +7695,7 @@ struct wmi_host_ready_ev_param {
bool agile_capability;
uint32_t max_ast_index;
uint32_t pktlog_defs_checksum;
uint32_t num_max_active_vdevs;
};
enum bcn_offload_control_param {

View File

@@ -8060,6 +8060,7 @@ void wmi_copy_resource_config(wmi_resource_config *resource_cfg,
resource_cfg->max_ndp_sessions =
tgt_res_cfg->max_ndp_sessions;
resource_cfg->max_ndi_interfaces = tgt_res_cfg->max_ndi;
resource_cfg->num_max_active_vdevs = tgt_res_cfg->num_max_active_vdevs;
if (tgt_res_cfg->atf_config)
WMI_RSRC_CFG_FLAG_ATF_CONFIG_ENABLE_SET(resource_cfg->flag1, 1);
@@ -11482,6 +11483,7 @@ static QDF_STATUS extract_ready_event_params_tlv(wmi_unified_t wmi_handle,
ev_param->max_ast_index = ev->max_ast_index;
ev_param->pktlog_defs_checksum = ev->pktlog_defs_checksum;
ev_param->agile_capability = 1;
ev_param->num_max_active_vdevs = ev->num_max_active_vdevs;
return QDF_STATUS_SUCCESS;
}