Merge "msm: ipa: enable holb on cons resource fail"
This commit is contained in:
commit
c842f20d67
|
@ -2924,12 +2924,27 @@ void ipa_suspend_handler(enum ipa_irq_type interrupt,
|
|||
((struct ipa_tx_suspend_irq_data *)interrupt_data)->endpoints;
|
||||
u32 bmsk = 1;
|
||||
u32 i = 0;
|
||||
int res;
|
||||
struct ipa_ep_cfg_holb holb_cfg;
|
||||
|
||||
IPADBG("interrupt=%d, interrupt_data=%u\n", interrupt, suspend_data);
|
||||
memset(&holb_cfg, 0, sizeof(holb_cfg));
|
||||
holb_cfg.tmr_val = 0;
|
||||
|
||||
for (i = 0; i < ipa_ctx->ipa_num_pipes; i++) {
|
||||
if ((suspend_data & bmsk) && (ipa_ctx->ep[i].valid)) {
|
||||
resource = ipa_get_rm_resource_from_ep(i);
|
||||
ipa_rm_request_resource_with_timer(resource);
|
||||
res = ipa_rm_request_resource_with_timer(resource);
|
||||
if (res == EPERM &&
|
||||
IPA_CLIENT_IS_CONS(ipa_ctx->ep[i].client)) {
|
||||
holb_cfg.en = 1;
|
||||
res = ipa_cfg_ep_holb_by_client(
|
||||
ipa_ctx->ep[i].client, &holb_cfg);
|
||||
if (res) {
|
||||
IPAERR("holb en fail,IPAHW stall\n");
|
||||
BUG();
|
||||
}
|
||||
}
|
||||
}
|
||||
bmsk = bmsk << 1;
|
||||
}
|
||||
|
|
|
@ -1237,11 +1237,13 @@ int ipa_teardown_sys_pipe(u32 clnt_hdl)
|
|||
if (IPA_CLIENT_IS_CONS(ep->client))
|
||||
ipa_cleanup_rx(ep->sys);
|
||||
|
||||
if (ipa_ctx->modem_cfg_emb_pipe_flt &&
|
||||
ep->client == IPA_CLIENT_APPS_LAN_WAN_PROD)
|
||||
IPADBG("modem cfg emb pipe flt\n");
|
||||
else
|
||||
ipa_delete_dflt_flt_rules(clnt_hdl);
|
||||
if (!ep->skip_ep_cfg && IPA_CLIENT_IS_PROD(ep->client)) {
|
||||
if (ipa_ctx->modem_cfg_emb_pipe_flt &&
|
||||
ep->client == IPA_CLIENT_APPS_LAN_WAN_PROD)
|
||||
IPADBG("modem cfg emb pipe flt\n");
|
||||
else
|
||||
ipa_delete_dflt_flt_rules(clnt_hdl);
|
||||
}
|
||||
|
||||
if (IPA_CLIENT_IS_WLAN_CONS(ep->client))
|
||||
atomic_dec(&ipa_ctx->wc_memb.active_clnt_cnt);
|
||||
|
|
Loading…
Reference in New Issue