diff options
author | Pratyush Anand <pratyush.anand@st.com> | 2012-06-21 17:44:29 +0530 |
---|---|---|
committer | Felipe Balbi <balbi@ti.com> | 2012-06-22 13:22:46 +0300 |
commit | 58a0f23fddd0a71d8fa22e6ef7627298a8ed29a6 (patch) | |
tree | c034dd259388b1a8d063d6afd79ecbf633f522ab /drivers/usb | |
parent | 45627ac6a4f063d19b0bd9863d20ac1dabda99a7 (diff) |
USB: DWC3: Issue device soft reset before core soft reset
Synopsys specification clearly states under section "Device Power-On or
Soft Reset" that DCTL.CSftRst=1 should be first step. So, just follow
what specification says.
Signed-off-by: Pratyush Anand <pratyush.anand@st.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
Diffstat (limited to 'drivers/usb')
-rw-r--r-- | drivers/usb/dwc3/core.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/usb/dwc3/core.c b/drivers/usb/dwc3/core.c index ac151e9acf20..c34452a7304f 100644 --- a/drivers/usb/dwc3/core.c +++ b/drivers/usb/dwc3/core.c @@ -335,8 +335,6 @@ static int __devinit dwc3_core_init(struct dwc3 *dwc) } dwc->revision = reg; - dwc3_core_soft_reset(dwc); - /* issue device SoftReset too */ timeout = jiffies + msecs_to_jiffies(500); dwc3_writel(dwc->regs, DWC3_DCTL, DWC3_DCTL_CSFTRST); @@ -354,6 +352,8 @@ static int __devinit dwc3_core_init(struct dwc3 *dwc) cpu_relax(); } while (true); + dwc3_core_soft_reset(dwc); + dwc3_cache_hwparams(dwc); reg = dwc3_readl(dwc->regs, DWC3_GCTL); |