usb:ci_udc: Introduce init_after_reset phy function

MSM variant of Chipidea must reinitalize the phy
after controller reset.
Introduce ci_init_after_reset() weak function that
can be used to achieve the above init.

Signed-off-by: Ramon Fried <ramon.fried@gmail.com>
This commit is contained in:
Ramon Fried 2018-09-21 13:35:52 +03:00 committed by Tom Rini
parent 0683b27ae3
commit 816495299d

View file

@ -104,6 +104,10 @@ static struct usb_ep_ops ci_ep_ops = {
.free_request = ci_ep_free_request,
};
__weak void ci_init_after_reset(struct ehci_ctrl *ctrl)
{
}
/* Init values for USB endpoints. */
static const struct usb_ep ci_ep_init[5] = {
[0] = { /* EP 0 */
@ -887,6 +891,8 @@ static int ci_pullup(struct usb_gadget *gadget, int is_on)
writel(USBCMD_ITC(MICRO_8FRAME) | USBCMD_RST, &udc->usbcmd);
udelay(200);
ci_init_after_reset(controller.ctrl);
writel((unsigned long)controller.epts, &udc->epinitaddr);
/* select DEVICE mode */