On Wed, Apr 05, 2017 at 08:29:55AM -0700, Tony Lindgren wrote: > * Tony Lindgren <tony@xxxxxxxxxxx> [170405 06:53]: > > * Peter Ujfalusi <peter.ujfalusi@xxxxxx> [170405 00:15]: > > > To be precise this is what I have tried: > > > - boot w/o cable connected > > > - boot w/ board connected to PC (device mode) > > > - boot w/ OTG-A cable with USB keyboard > > > - boot w/ OTG-A cable connected to powered USB hub and the same keyboard > > > > > > w/ and w/o this patch I have the same flood of prints in all cases. > > > > OK interesting that it also happens with nothing connected. > > > > > Fwiw I have checked where the is_active is set - which causes the prints: > > > musb_core.c:musb_start() > > > > > > if (musb->port_mode != MUSB_PORT_MODE_HOST && > > > musb->xceiv->otg->state != OTG_STATE_A_WAIT_BCON && > > > (devctl & MUSB_DEVCTL_VBUS) == MUSB_DEVCTL_VBUS) { > > > musb->is_active = 1; > > > } else { > > > devctl |= MUSB_DEVCTL_SESSION; > > > } > > > > > > this was the only place where the is_active was set to 1. > > > > That seems normal in musb_start(). Will try with your .config > > here. > > If the the port is configured as OTG, we should not need to > try to force any states during init. The change below will stop True, but the code has been there for a very long time, any idea what causes the regression? Regards, -Bin. > the warnings with your .config, needs to be tested more though > to make sure things still work in all cases. > > Regards, > > Tony > > 8< -------------------------- > diff --git a/drivers/usb/musb/musb_host.c b/drivers/usb/musb/musb_host.c > --- a/drivers/usb/musb/musb_host.c > +++ b/drivers/usb/musb/musb_host.c > @@ -2780,10 +2780,11 @@ int musb_host_setup(struct musb *musb, int power_budget) > int ret; > struct usb_hcd *hcd = musb->hcd; > > - MUSB_HST_MODE(musb); > - musb->xceiv->otg->default_a = 1; > - musb->xceiv->otg->state = OTG_STATE_A_IDLE; > - > + if (musb->port_mode == MUSB_PORT_MODE_HOST) { > + MUSB_HST_MODE(musb); > + musb->xceiv->otg->default_a = 1; > + musb->xceiv->otg->state = OTG_STATE_A_IDLE; > + } > otg_set_host(musb->xceiv->otg, &hcd->self); > hcd->self.otg_port = 1; > musb->xceiv->otg->host = &hcd->self; > -- > 2.12.2 -- 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