diff mbox

[U-Boot] usb: increase usb delay

Message ID 20170624230932.3607-1-robdclark@gmail.com
State Deferred
Delegated to: Marek Vasut
Headers show

Commit Message

Rob Clark June 24, 2017, 11:09 p.m. UTC
This makes booting off the USB disks I have go from 50% reliable to 100%
reliable.  I'm no USB expert so maybe there is a better way.  But one
way or another we aren't waiting long enough after power-on for the
usb device to be ready.

Signed-off-by: Rob Clark <robdclark@gmail.com>
---
 common/usb_storage.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Tom Rini June 26, 2017, 2:22 p.m. UTC | #1
On Sat, Jun 24, 2017 at 07:09:32PM -0400, Rob Clark wrote:

> This makes booting off the USB disks I have go from 50% reliable to 100%
> reliable.  I'm no USB expert so maybe there is a better way.  But one
> way or another we aren't waiting long enough after power-on for the
> usb device to be ready.
> 
> Signed-off-by: Rob Clark <robdclark@gmail.com>
> ---
>  common/usb_storage.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/common/usb_storage.c b/common/usb_storage.c
> index 03171f7..0e3de90 100644
> --- a/common/usb_storage.c
> +++ b/common/usb_storage.c
> @@ -1019,7 +1019,7 @@ static int usb_test_unit_ready(ccb *srb, struct us_data *ss)
>  		if ((srb->sense_buf[2] == 0x02) &&
>  		    (srb->sense_buf[12] == 0x3a))
>  			return -1;
> -		mdelay(100);
> +		mdelay(250);
>  	} while (retries--);
>  
>  	return -1;

This made me think of 1c3e62d690a3 which was the result of other USB
delay decreasing changes.  Perhaps there's some issues on the host
controller code used on dragonboard?  Thanks!
diff mbox

Patch

diff --git a/common/usb_storage.c b/common/usb_storage.c
index 03171f7..0e3de90 100644
--- a/common/usb_storage.c
+++ b/common/usb_storage.c
@@ -1019,7 +1019,7 @@  static int usb_test_unit_ready(ccb *srb, struct us_data *ss)
 		if ((srb->sense_buf[2] == 0x02) &&
 		    (srb->sense_buf[12] == 0x3a))
 			return -1;
-		mdelay(100);
+		mdelay(250);
 	} while (retries--);
 
 	return -1;