Dear Marek, Andrew, On Friday, August 23, 2013 5:23:14 AM, Marek Vasut wrote: > Dear Andrew Murray, > > > Hello, > > > > I'm unable to use some mass storage devices with the current git version > > (6612ab33956ae09c5ba2fde9c1540b519625ba37) of UBoot on a TI Davinci custom > > board. I have 7 pen drives, and 2 of them fail. > > > > I-O DATA USB Flash Disk (0x04bb/0x0c43) > > > > ... > > 2 USB Device(s) found > > scan end > > scanning usb for storage devices... i=0 > > i=1 > > > > > > USB Mass Storage device detected > > Transport: Bulk/Bulk/Bulk > > Endpoints In 1 Out 2 Int 0 > > usb_control_msg: request: 0xFE, requesttype: 0xA1, value 0x0 index 0x0 > > length 0x1 > > Get Max LUN -> len = 1, result = 0 > > address 2 > > COMMAND phase > > DATA phase > > STATUS phase > > !CSWSIGNATURE > > BBB_reset > > usb_control_msg: request: 0xFF, requesttype: 0x21, value 0x0 index 0x0 > > length 0x0 > > RESET:stall > > inquiry returns -1 > > COMMAND phase > > DATA phase > > STATUS phase > > !CSWSIGNATURE > > BBB_reset > > usb_control_msg: request: 0xFF, requesttype: 0x21, value 0x0 index 0x0 > > length 0x0 > > RESET:stall > > inquiry returns -1 > > COMMAND phase > > DATA phase > > STATUS phase > > !CSWSIGNATURE > > BBB_reset > > usb_control_msg: request: 0xFF, requesttype: 0x21, value 0x0 index 0x0 > > length 0x0 > > RESET:stall > > inquiry returns -1 > > COMMAND phase > > DATA phase > > STATUS phase > > !CSWSIGNATURE > > BBB_reset > > usb_control_msg: request: 0xFF, requesttype: 0x21, value 0x0 index 0x0 > > length 0x0 > > RESET:stall > > inquiry returns -1 > > COMMAND phase > > DATA phase > > STATUS phase > > !CSWSIGNATURE > > BBB_reset > > usb_control_msg: request: 0xFF, requesttype: 0x21, value 0x0 index 0x0 > > length 0x0 > > RESET:stall > > inquiry returns -1 > > error in inquiry > > i=2 > > 0 Storage Device(s) found > > > > In this case putting a delay of 1000ms in usb_stor_BBB_transport between > > the COMMAND and DATA phase, (in place of the conditional 5ms USB_READY > > delay), overcomes this issue. It seems this 1000ms delay is only required > > for the first COMMAND, subsequent COMMAND phases seem happy with the 5ms > > delay. > > > > Lexar JumpDrive 32GB (0x0424/0x2507): > > > > So the device takes too long to init itself after powering up the port. It > would > be nice if you could check the spec and see if there is a way to query the > device for ready condition. Although I remember we already do that.
This is the kind of issue that made me create this (discarded) patch at some point: http://patchwork.ozlabs.org/patch/176527/ Can you try it? I'm not sure that it will be helpful for your specific case. I also have this issue with some devices and mainline U-Boot. I can confirm that this is a device initialization delay issue because subsequent USB commands on the device succeed (only the single automatic U-Boot USB command that I use at boot time fails). Best regards, Benoît _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot