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

Commit 5e5680ee authored by Vijayavardhan Vennapusa's avatar Vijayavardhan Vennapusa Committed by Mayank Rana
Browse files

USB: dwc3-msm: clear in_restart flag always in restart work



Currenlty driver is clearing mdwc->inrestart flag only if vbus_active
is high only after making sure USB entered low power mode. There is a
chance cable is disconnected during execution of restart work and endup
not clearing mdwc->in_restart flag if disconnect happens. Hence fix this
by clearing mdwc->in_restart flag always irrespective of vbus_active set
or cleared.

Change-Id: I15fa1893c798946c7514bf8cb23773b5784e671e
Signed-off-by: default avatarVijayavardhan Vennapusa <vvreddy@codeaurora.org>
parent d55fe957
Loading
Loading
Loading
Loading
+2 −3
Original line number Diff line number Diff line
@@ -1454,11 +1454,10 @@ static void dwc3_restart_usb_work(struct work_struct *w)
		pm_runtime_suspend(mdwc->dev);
	}

	/* Force reconnect only if cable is still connected */
	if (mdwc->vbus_active) {
	mdwc->in_restart = false;
	/* Force reconnect only if cable is still connected */
	if (mdwc->vbus_active)
		dwc3_resume_work(&mdwc->resume_work);
	}

	dwc->err_evt_seen = false;
	flush_delayed_work(&mdwc->sm_work);