From 2a1e72fbbc84789ebda1fa406d5bd9ee920b621b Mon Sep 17 00:00:00 2001 From: Azhar Shaikh Date: Thu, 11 Feb 2016 11:00:58 -0800 Subject: [PATCH] usb: dwc3-msm: Fix restart usb work functionality Commit 18cd808986ba101d ("usb: dwc3-msm: Make power collapse and power-on-reset mandatory") removed the device tree properties for power-collapse due to which the dwc3_restart_usb_work() which was supposed to do a full POR sequence by simulating a cable disconnection-reconnection sequence now only does a dbm reset. Fix this, so that dwc3_restart_usb_work(), does a full POR. CRs-Fixed: 975249 Change-Id: Iaabe9283ec80954a2e504a55f2b4cdf93ca8ae46 Signed-off-by: Azhar Shaikh --- drivers/usb/dwc3/dwc3-msm.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/usb/dwc3/dwc3-msm.c b/drivers/usb/dwc3/dwc3-msm.c index add035269ae7..de6cb6c6df05 100644 --- a/drivers/usb/dwc3/dwc3-msm.c +++ b/drivers/usb/dwc3/dwc3-msm.c @@ -1967,7 +1967,7 @@ static int dwc3_msm_suspend(struct dwc3_msm *mdwc) clk_disable_unprepare(mdwc->xo_clk); /* Perform controller power collapse */ - if (!mdwc->in_host_mode && !mdwc->vbus_active) { + if (!mdwc->in_host_mode && (!mdwc->vbus_active || mdwc->in_restart)) { mdwc->lpm_flags |= MDWC3_POWER_COLLAPSE; dev_dbg(mdwc->dev, "%s: power collapse\n", __func__); dwc3_msm_config_gdsc(mdwc, 0);