diff --git a/wmi_unified_api.h b/wmi_unified_api.h index 76b1941c92..a9bea8c19b 100644 --- a/wmi_unified_api.h +++ b/wmi_unified_api.h @@ -1101,9 +1101,7 @@ QDF_STATUS wmi_unified_set_psmode_cmd_send(void *wmi_hdl, struct set_ps_mode_params *param); QDF_STATUS wmi_unified_init_cmd_send(void *wmi_hdl, - target_resource_config *res_cfg, - uint8_t num_mem_chunks, - struct wmi_host_mem_chunk *mem_chunk); + struct wmi_init_cmd_param *param); bool wmi_service_enabled(void *wmi_hdl, uint32_t service_id); diff --git a/wmi_unified_param.h b/wmi_unified_param.h index 8a6f1ca509..f6f578fb36 100644 --- a/wmi_unified_param.h +++ b/wmi_unified_param.h @@ -7090,6 +7090,7 @@ struct wmi_host_ppe_threshold { * to be communicated separately. * @WMI_HOST_HW_MODE_DBS_SBS: 3 PHYs, with 2 on the same band doing SBS * as in WMI_HW_MODE_SBS, and 3rd on the other band + * @WMI_HOST_HW_MODE_MAX: Max hw_mode_id. Used to indicate invalid mode. */ enum wmi_host_hw_mode_config_type { WMI_HOST_HW_MODE_SINGLE = 0, @@ -7097,6 +7098,7 @@ enum wmi_host_hw_mode_config_type { WMI_HOST_HW_MODE_SBS_PASSIVE = 2, WMI_HOST_HW_MODE_SBS = 3, WMI_HOST_HW_MODE_DBS_SBS = 4, + WMI_HOST_HW_MODE_MAX, }; /** @@ -7393,4 +7395,35 @@ struct wmi_host_proxy_ast_reserve_param { uint32_t pdev_id; uint32_t result; }; + +/** + * struct wmi_host_pdev_band_to_mac - freq range for mac + * @pdev_id: PDEV ID to identifiy mac + * @start_freq: start frequency value + * @end_freq: end frequency value + */ +struct wmi_host_pdev_band_to_mac { + uint32_t pdev_id; + uint32_t start_freq; + uint32_t end_freq; +}; +#define WMI_HOST_MAX_PDEV 3 + +/** + * struct wmi_init_cmd_param - INIT command params + * @target_resource_config: pointer to resource config + * @num_mem_chunks: number of memory chunks + * @struct wmi_host_mem_chunk: pointer to memory chunks + * @hw_mode_index: HW mode index chosen + * @num_band_to_mac: Number of band to mac setting + * @struct wmi_host_pdev_band_to_mac: band to mac setting + */ +struct wmi_init_cmd_param { + target_resource_config *res_cfg; + uint8_t num_mem_chunks; + struct wmi_host_mem_chunk *mem_chunks; + uint32_t hw_mode_id; + uint32_t num_band_to_mac; + struct wmi_host_pdev_band_to_mac band_to_mac[WMI_HOST_MAX_PDEV]; +}; #endif /* _WMI_UNIFIED_PARAM_H_ */ diff --git a/wmi_unified_priv.h b/wmi_unified_priv.h index 43b26ec5ea..8c88003610 100644 --- a/wmi_unified_priv.h +++ b/wmi_unified_priv.h @@ -923,9 +923,7 @@ host_mem_req * (*extract_host_mem_req)(wmi_unified_t wmi_handle, void *evt_buf, uint8_t *num_entries); QDF_STATUS (*init_cmd_send)(wmi_unified_t wmi_handle, - target_resource_config *res_cfg, - uint8_t num_mem_chunks, - struct wmi_host_mem_chunk *mem_chunk); + struct wmi_init_cmd_param *param); QDF_STATUS (*save_fw_version)(wmi_unified_t wmi_handle, void *evt_buf); uint32_t (*ready_extract_init_status)(wmi_unified_t wmi_hdl, void *ev);