qcacmn: Set WMI Endpoint as Async

Conditionally set WMI enpoint as
async only for WIN and revert it
for MCL

Change-Id: I8969fffb4ba72909839baea2bdd12723665a8a4f
This commit is contained in:
phadiman
2018-11-13 12:04:07 +05:30
committed by nshrivas
parent 2fa0775090
commit e5a330acf6
3 changed files with 5 additions and 1 deletions

View File

@@ -171,6 +171,7 @@ struct wmi_unified_attach_params {
osdev_t osdev; osdev_t osdev;
enum wmi_target_type target_type; enum wmi_target_type target_type;
bool use_cookie; bool use_cookie;
bool is_async_ep;
struct wmi_rx_ops *rx_ops; struct wmi_rx_ops *rx_ops;
struct wlan_objmgr_psoc *psoc; struct wlan_objmgr_psoc *psoc;
uint16_t max_commands; uint16_t max_commands;

View File

@@ -1939,6 +1939,7 @@ struct wmi_soc {
void *scn_handle; /* handle to device */ void *scn_handle; /* handle to device */
qdf_atomic_t num_pdevs; qdf_atomic_t num_pdevs;
enum wmi_target_type target_type; enum wmi_target_type target_type;
bool is_async_ep;
void *htc_handle; void *htc_handle;
uint32_t event_id[WMI_UNIFIED_MAX_EVENT]; uint32_t event_id[WMI_UNIFIED_MAX_EVENT];
wmi_unified_event_handler event_handler[WMI_UNIFIED_MAX_EVENT]; wmi_unified_event_handler event_handler[WMI_UNIFIED_MAX_EVENT];

View File

@@ -2554,6 +2554,7 @@ void *wmi_unified_attach(void *scn_handle,
} }
wmi_handle->soc = soc; wmi_handle->soc = soc;
wmi_handle->soc->soc_idx = param->soc_id; wmi_handle->soc->soc_idx = param->soc_id;
wmi_handle->soc->is_async_ep = param->is_async_ep;
wmi_handle->event_id = soc->event_id; wmi_handle->event_id = soc->event_id;
wmi_handle->event_handler = soc->event_handler; wmi_handle->event_handler = soc->event_handler;
wmi_handle->ctx = soc->ctx; wmi_handle->ctx = soc->ctx;
@@ -2802,7 +2803,8 @@ static int wmi_connect_pdev_htc_service(struct wmi_soc *soc,
return status; return status;
} }
htc_set_async_ep(soc->htc_handle, response.Endpoint, 1); if (soc->is_async_ep)
htc_set_async_ep(soc->htc_handle, response.Endpoint, true);
soc->wmi_endpoint_id[pdev_idx] = response.Endpoint; soc->wmi_endpoint_id[pdev_idx] = response.Endpoint;
soc->max_msg_len[pdev_idx] = response.MaxMsgLength; soc->max_msg_len[pdev_idx] = response.MaxMsgLength;