[U-Boot] "usb reset" issue with some pen drives which work well in Linux/Windows
Debashish Rath
Debashish.Rath at tridentmicro.com
Wed Nov 24 13:57:05 CET 2010
Hello,
I was trying to add usb support to u-boot for my Arm cortex-A9 processor based board. I am using "U-Boot 2009.08".
I have tested the usb support (reset, fatls, fatload to boot linux etc) with the following devices and its working fine.
1. Western Digital "My Book" - Self powered USB HD
2. Western Digital "My Passport" - Bus powered USB HD
3. Transcend 4GB Pen drive - 2 makes
However one issue still remains. It is not working with some usb pen drives (which works with Linux and windows). I have done the testing on
1. Dane-Elec 2 GB Pen drive
2. nxp 256 MB pen drive
It seems these are some non-standard usb devices. With these devices uboot-usb is able to detect it, however during the mass storage scan, reset is getting failed (getting stall) and the following message we are getting:
"scanning bus for storage devices... 0 Storage Device(s) found"
Check the file - common/usb_storage.c. Function- usb_stor_BBB_reset : USB_STOR_PRINTF("RESET:stall\n");
I googled it however have not come across any fix so far.
Then I took the latest u-boot i.e. u-boot-2010.09 and back ported the usb stack. With that the "usb reset" is a success and it is able to detect it as a mass storage device. Commands like "usb storage", "usb tree" etc showing proper information about the pen driver. However File System commands like "fatls" is not working.
For USB support I have added the folling config stuffs to my file in include/configs
#define CONFIG_CMD_USB
#define CONFIG_USB_STORAGE
#define CONFIG_USB_EHCI
#define CONFIG_USB_EHCI_PNX84XX --> My usb config
#define CONFIG_EHCI_HCD_INIT_AFTER_RESET
#define CONFIG_SUPPORT_VFAT
Is this a know issue or I am doing something wrong. Please help me in resolving this issue.
Regards
Debashish Rath
Trident Microsystems
More information about the U-Boot
mailing list