Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7a555c30 authored by Praveen Kurapati's avatar Praveen Kurapati
Browse files

msm: ipa3: Fix to client init completion



Durign client activation observing deadlock scenario
when client completion. So, completing client init at
the time of client registration.

Change-Id: I5a56e9827317acc9db9a22a705ff9c9c7ce9463d
Signed-off-by: default avatarPraveen Kurapati <pkurapat@codeaurora.org>
parent 6e9f8d30
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -751,6 +751,8 @@ int ipa_pm_register(struct ipa_pm_register_params *params, u32 *hdl)
	wlock = &client->wlock;
	wakeup_source_init(wlock, client->name);

	init_completion(&client->complete);

	/* add client to exception list */
	if (add_client_to_exception_list(*hdl)) {
		ipa_pm_deregister(*hdl);
@@ -945,7 +947,7 @@ static int ipa_pm_activate_helper(struct ipa_pm_client *client, bool sync)
	}

	client->state = IPA_PM_ACTIVATE_IN_PROGRESS;
	init_completion(&client->complete);
	reinit_completion(&client->complete);
	queue_work(ipa_pm_ctx->wq, &client->activate_work);
	spin_unlock_irqrestore(&client->state_lock, flags);
	IPA_PM_DBG_STATE(client->hdl, client->name, client->state);