From 5955bb9345f692d4e9d0bbab5e97c3dd7bf58bc4 Mon Sep 17 00:00:00 2001 From: Rajesh Bhagat Date: Wed, 2 Dec 2015 11:44:27 +0530 Subject: [PATCH] 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 Signed-off-by: Rajesh Bhagat --- drivers/usb/host/xhci-dwc3.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/usb/host/xhci-dwc3.c b/drivers/usb/host/xhci-dwc3.c index c722c504ad..33961cd634 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); } -- 2.39.5