Message ID | 20171113090038.13608-1-ran.wang_1@nxp.com |
---|---|
State | Rejected |
Delegated to: | York Sun |
Headers | show |
Series | [U-Boot] usb: Add delay to fix USB 2.0 stick enumeration failure on LS208xA | expand |
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 ? What is the real problem here ? > Signed-off-by: Ran Wang <ran.wang_1@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; >
Hi Marek, > -----Original Message----- > From: Marek Vasut [mailto:marex@denx.de] > Sent: Monday, November 13, 2017 5:34 PM > To: Ran Wang <ran.wang_1@nxp.com>; Bin Meng <bmeng.cn@gmail.com>; > Heiko Schocher <hs@denx.de> > Cc: u-boot@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@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
On 11/13/2017 10:43 AM, Ran Wang wrote: > Hi Marek, > >> -----Original Message----- >> From: Marek Vasut [mailto:marex@denx.de] >> Sent: Monday, November 13, 2017 5:34 PM >> To: Ran Wang <ran.wang_1@nxp.com>; Bin Meng <bmeng.cn@gmail.com>; >> Heiko Schocher <hs@denx.de> >> Cc: u-boot@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. I think you should first figure out what the problem is. > > Best Regards > Ran >>> Signed-off-by: Ran Wang <ran.wang_1@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
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;
Force delay 10ms between each control messages to fix Transcend and Kingston DT 101 G2 USB2.0 stick fail to be enumerated by LS208xA. Signed-off-by: Ran Wang <ran.wang_1@nxp.com> --- common/usb.c | 3 +++ 1 file changed, 3 insertions(+)