On Fri, Aug 29, 2008 at 11:21:16PM +0300, Felipe Balbi wrote: > diff --git a/drivers/usb/musb/musb_core.c b/drivers/usb/musb/musb_core.c > index b398776..bcd0832 100644 > --- a/drivers/usb/musb/musb_core.c > +++ b/drivers/usb/musb/musb_core.c > @@ -534,15 +534,15 @@ static irqreturn_t musb_stage0_irq(struct musb *musb, u8 int_usb, > */ > case OTG_STATE_A_WAIT_BCON: > case OTG_STATE_A_WAIT_VRISE: > - if (musb->vbuserr_retry) { > - musb->vbuserr_retry--; > + while(--vbuserr_retry) { > ignore = 1; > devctl |= MUSB_DEVCTL_SESSION; > musb_writeb(mbase, MUSB_DEVCTL, devctl); > - } else { > - musb->port1_status |= > - (1 << USB_PORT_FEAT_OVER_CURRENT) > - | (1 << USB_PORT_FEAT_C_OVER_CURRENT); > + > + if (vbuserr_retry == 0) for both I meant musb->vbuserr_retry, sorry. > + musb->port1_status |= > + (1 << USB_PORT_FEAT_OVER_CURRENT) > + | (1 << USB_PORT_FEAT_C_OVER_CURRENT); > } > break; > default: > > Didn't test though. If it works nicely, the same logic will have to go > to tusb6010.c > > -- > balbi -- balbi -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html