Message ID | 20180921103555.16240-11-ramon.fried@gmail.com |
---|---|
State | Accepted |
Delegated to: | Tom Rini |
Headers | show |
Series | Introduce fastboot support for dragonboard410c | expand |
On Fri, Sep 21, 2018 at 01:35:52PM +0300, Ramon Fried wrote: > 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> Applied to u-boot/master, thanks!
Hi Ramon, > 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> > --- > > Changes in v2: None > > drivers/usb/gadget/ci_udc.c | 6 ++++++ > 1 file changed, 6 insertions(+) > > diff --git a/drivers/usb/gadget/ci_udc.c b/drivers/usb/gadget/ci_udc.c > index 2b9dbf06b9..8d23fab3b7 100644 > --- a/drivers/usb/gadget/ci_udc.c > +++ b/drivers/usb/gadget/ci_udc.c > @@ -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 */ Reviewed-by: Lukasz Majewski <lukma@denx.de> Best regards, Lukasz Majewski -- DENX Software Engineering GmbH, Managing Director: Wolfgang Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd@denx.de
diff --git a/drivers/usb/gadget/ci_udc.c b/drivers/usb/gadget/ci_udc.c index 2b9dbf06b9..8d23fab3b7 100644 --- a/drivers/usb/gadget/ci_udc.c +++ b/drivers/usb/gadget/ci_udc.c @@ -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 */
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> --- Changes in v2: None drivers/usb/gadget/ci_udc.c | 6 ++++++ 1 file changed, 6 insertions(+)