summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRajesh Bhagat <rajesh.bhagat@freescale.com>2015-12-02 06:14:27 (GMT)
committerMarek Vasut <marex@denx.de>2015-12-06 23:15:00 (GMT)
commit5955bb9345f692d4e9d0bbab5e97c3dd7bf58bc4 (patch)
tree496a43dc295a5d003da98a5bb479ee493ca2355a
parent90fbb2823ac6c2deeab6123aa8f8f32408779e64 (diff)
downloadu-boot-5955bb9345f692d4e9d0bbab5e97c3dd7bf58bc4.tar.xz
usb: xhci: dwc3: Adding reset delay requirement as per dwc3 databook
As per dwc3 databook, delay is required before taking the core out of reset. This delay is required so that the PHY are stable, and then we can take core out of reset. Reference is taken from linux dwc3 code, file: drivers/usb/dwc3/core.c. Signed-off-by: Sriram Dash <sriram.dash@freescale.com> Signed-off-by: Rajesh Bhagat <rajesh.bhagat@freescale.com>
-rw-r--r--drivers/usb/host/xhci-dwc3.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/usb/host/xhci-dwc3.c b/drivers/usb/host/xhci-dwc3.c
index c722c50..33961cd 100644
--- a/drivers/usb/host/xhci-dwc3.c
+++ b/drivers/usb/host/xhci-dwc3.c
@@ -44,6 +44,8 @@ void dwc3_core_soft_reset(struct dwc3 *dwc3_reg)
/* reset USB3 phy - if required */
dwc3_phy_reset(dwc3_reg);
+ mdelay(100);
+
/* After PHYs are stable we can take Core out of reset state */
clrbits_le32(&dwc3_reg->g_ctl, DWC3_GCTL_CORESOFTRESET);
}