[U-Boot] [PATCH] usb: Add delay to fix USB 2.0 stick enumeration failure on LS208xA

Ran Wang ran.wang_1 at nxp.com
Mon Nov 13 09:43:59 UTC 2017


Hi Marek,

> -----Original Message-----
> From: Marek Vasut [mailto:marex at denx.de]
> Sent: Monday, November 13, 2017 5:34 PM
> To: Ran Wang <ran.wang_1 at nxp.com>; Bin Meng <bmeng.cn at gmail.com>;
> Heiko Schocher <hs at denx.de>
> Cc: u-boot at lists.denx.de
> Subject: Re: [PATCH] usb: Add delay to fix USB 2.0 stick enumeration failure
> on LS208xA
> 
> On 11/13/2017 10:00 AM, Ran Wang wrote:
> > Force delay 10ms between each control messages to fix Transcend and
> > Kingston DT 101 G2 USB2.0 stick fail to be enumerated by LS208xA.
> 
> That means everyone else also suffers this burden, even though it's a
> problem specific to LS208x ? 

Actually I want to add a macro/flag to restrict the scope of effect but don't know how. 
Could you give me some example to let it take effect on specific boards?

>What is the real problem here ?
>

So far the root cause is not clear yet due to lack of debugging method. Suspect
there are some (HW) compatibility issue here.
 
Best Regards
Ran
> > Signed-off-by: Ran Wang <ran.wang_1 at nxp.com>
> > ---
> >  common/usb.c | 3 +++
> >  1 file changed, 3 insertions(+)
> >
> > diff --git a/common/usb.c b/common/usb.c index 0904259757..eeacc80b9e
> > 100644
> > --- a/common/usb.c
> > +++ b/common/usb.c
> > @@ -223,6 +223,9 @@ int usb_control_msg(struct usb_device *dev,
> unsigned int pipe,
> >  		return -EINVAL;
> >  	}
> >
> > +	/* Add delay to support more devices' enumeration */
> > +	mdelay(10);
> > +
> >  	/* set setup command */
> >  	setup_packet->requesttype = requesttype;
> >  	setup_packet->request = request;
> >
> 
> 
> --
> Best regards,
> Marek Vasut


More information about the U-Boot mailing list