summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAjay Agarwal <ajaya@codeaurora.org>2018-03-19 18:38:05 +0530
committerAjay Agarwal <ajaya@codeaurora.org>2018-03-27 16:17:33 +0530
commitf57dd975b02b7cd8844b9a6fc240e181ea5994cb (patch)
tree18d9367341272770537576245e76ae2f888b6b5e
parenta56e768ca3bf5a8484dc28d173984f3960307bdf (diff)
xhci: plat: Avoid xhci_resume if skip_resume flag is set
The flag skip_resume is set when DWC3 is already runtime suspended and prepare it for PM suspend. But if PM suspend of DWC is not called because of some reason, then directly the PM resume of xhci-plat is called which invokes xhci_resume when DWC is in Low Power Mode. This leads to watchdog timeout. Fix this issue by not calling xhci_resume if skip_resume is set. Change-Id: I47c946c4491015edcf00602d5a525bf35e7c67ed Signed-off-by: Ajay Agarwal <ajaya@codeaurora.org>
-rw-r--r--drivers/usb/host/xhci-plat.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/usb/host/xhci-plat.c b/drivers/usb/host/xhci-plat.c
index c9596f1a7d26..408c8eca2bbe 100644
--- a/drivers/usb/host/xhci-plat.c
+++ b/drivers/usb/host/xhci-plat.c
@@ -353,7 +353,7 @@ static int xhci_plat_resume(struct device *dev)
dev_dbg(dev, "xhci-plat PM resume\n");
- return xhci_resume(xhci, false);
+ return (!hcd_to_bus(hcd)->skip_resume) ? xhci_resume(xhci, false) : 0;
}
#endif