usb: dwc2: gadget: Replace dwc2_hsotg_corereset()
The dwc2_core_reset() function exists in the core so use that one instead. Signed-off-by: John Youn <johnyoun@synopsys.com> Signed-off-by: Felipe Balbi <balbi@ti.com>
This commit is contained in:
parent
43e9034904
commit
241729baa9
@ -2243,54 +2243,6 @@ static void dwc2_hsotg_irq_fifoempty(struct dwc2_hsotg *hsotg, bool periodic)
|
|||||||
GINTSTS_PTXFEMP | \
|
GINTSTS_PTXFEMP | \
|
||||||
GINTSTS_RXFLVL)
|
GINTSTS_RXFLVL)
|
||||||
|
|
||||||
/**
|
|
||||||
* dwc2_hsotg_corereset - issue softreset to the core
|
|
||||||
* @hsotg: The device state
|
|
||||||
*
|
|
||||||
* Issue a soft reset to the core, and await the core finishing it.
|
|
||||||
*/
|
|
||||||
static int dwc2_hsotg_corereset(struct dwc2_hsotg *hsotg)
|
|
||||||
{
|
|
||||||
int timeout;
|
|
||||||
u32 grstctl;
|
|
||||||
|
|
||||||
dev_dbg(hsotg->dev, "resetting core\n");
|
|
||||||
|
|
||||||
/* issue soft reset */
|
|
||||||
dwc2_writel(GRSTCTL_CSFTRST, hsotg->regs + GRSTCTL);
|
|
||||||
|
|
||||||
timeout = 10000;
|
|
||||||
do {
|
|
||||||
grstctl = dwc2_readl(hsotg->regs + GRSTCTL);
|
|
||||||
} while ((grstctl & GRSTCTL_CSFTRST) && timeout-- > 0);
|
|
||||||
|
|
||||||
if (grstctl & GRSTCTL_CSFTRST) {
|
|
||||||
dev_err(hsotg->dev, "Failed to get CSftRst asserted\n");
|
|
||||||
return -EINVAL;
|
|
||||||
}
|
|
||||||
|
|
||||||
timeout = 10000;
|
|
||||||
|
|
||||||
while (1) {
|
|
||||||
u32 grstctl = dwc2_readl(hsotg->regs + GRSTCTL);
|
|
||||||
|
|
||||||
if (timeout-- < 0) {
|
|
||||||
dev_info(hsotg->dev,
|
|
||||||
"%s: reset failed, GRSTCTL=%08x\n",
|
|
||||||
__func__, grstctl);
|
|
||||||
return -ETIMEDOUT;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!(grstctl & GRSTCTL_AHBIDLE))
|
|
||||||
continue;
|
|
||||||
|
|
||||||
break; /* reset done */
|
|
||||||
}
|
|
||||||
|
|
||||||
dev_dbg(hsotg->dev, "reset successful\n");
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* dwc2_hsotg_core_init - issue softreset to the core
|
* dwc2_hsotg_core_init - issue softreset to the core
|
||||||
* @hsotg: The device state
|
* @hsotg: The device state
|
||||||
@ -2307,7 +2259,7 @@ void dwc2_hsotg_core_init_disconnected(struct dwc2_hsotg *hsotg,
|
|||||||
kill_all_requests(hsotg, hsotg->eps_out[0], -ECONNRESET);
|
kill_all_requests(hsotg, hsotg->eps_out[0], -ECONNRESET);
|
||||||
|
|
||||||
if (!is_usb_reset)
|
if (!is_usb_reset)
|
||||||
if (dwc2_hsotg_corereset(hsotg))
|
if (dwc2_core_reset(hsotg))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
Loading…
Reference in New Issue
Block a user