On Thu, Jul 25, 2013 at 06:20:34PM -0300, Fabio Estevam wrote: > Currently hw_phymode_configure() is located inside hw_device_reset(), which is > only called by chipidea udc driver. > > When operating in host mode, we also need to call hw_phymode_configure() in > order to properly configure the PHY mode, so move this function into probe. > > After this change, USB Host1 port on mx53qsb board is functional. > > Signed-off-by: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx> Also fixes my i.MX53 USB host mode problems. Acked-by: Sascha Hauer <s.hauer@xxxxxxxxxxxxxx> Sascha > --- > drivers/usb/chipidea/core.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/usb/chipidea/core.c b/drivers/usb/chipidea/core.c > index a5df24c..a5b3774 100644 > --- a/drivers/usb/chipidea/core.c > +++ b/drivers/usb/chipidea/core.c > @@ -264,8 +264,6 @@ int hw_device_reset(struct ci_hdrc *ci, u32 mode) > while (hw_read(ci, OP_USBCMD, USBCMD_RST)) > udelay(10); /* not RTOS friendly */ > > - hw_phymode_configure(ci); > - > if (ci->platdata->notify_event) > ci->platdata->notify_event(ci, > CI_HDRC_CONTROLLER_RESET_EVENT); > @@ -457,6 +455,8 @@ static int ci_hdrc_probe(struct platform_device *pdev) > if (!ci->platdata->phy_mode) > ci->platdata->phy_mode = of_usb_get_phy_mode(dev->of_node); > > + hw_phymode_configure(ci); > + > if (!ci->platdata->dr_mode) > ci->platdata->dr_mode = of_usb_get_dr_mode(dev->of_node); > > -- > 1.8.1.2 > > > -- Pengutronix e.K. | | Industrial Linux Solutions | http://www.pengutronix.de/ | Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 | -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html