diff options
author | Remy Bohmer <linux@bohmer.net> | 2008-09-16 14:55:44 +0200 |
---|---|---|
committer | Markus Klotzbuecher <mk@denx.de> | 2008-09-17 15:41:21 +0200 |
commit | c9e8436b10cca53fca4904ecbadcd6231ad72c38 (patch) | |
tree | 82c0b1610d3cd0057c65ac3a2a0bdbfa7b0a5cfa /include/e500.h | |
parent | 6f5794a6f78b313231256958fd73673c6aacc116 (diff) | |
download | u-boot-imx-c9e8436b10cca53fca4904ecbadcd6231ad72c38.zip u-boot-imx-c9e8436b10cca53fca4904ecbadcd6231ad72c38.tar.gz u-boot-imx-c9e8436b10cca53fca4904ecbadcd6231ad72c38.tar.bz2 |
USB layer of U-Boot causes USB protocol errors while using USB memory sticks
There are several differences between Linux, Windows and U-boot for initialising the
USB devices. While analysing the behaviour of U-boot it turned out that U-boot does
things really different, and some are wrong (compared to the USB standard).
This patch fixes some errors:
* The NEW_init procedure that was already in the code is good, while the old procedure
is wrong. See code comments for more info.
* On a Control request the data returned by the device can be more than 8 bytes, while
the host limits it to 8 bytes. This caused the host to generate a DataOverrun error.
This results in a lot of USB sticks not being recognised, and the transmission ended
frequently with a CTL:TIMEOUT Error.
* Added a flag CONFIG_LEGACY_USB_INIT_SEQ to allow users to use the old init procedure.
Signed-off-by: Remy Bohmer <linux@bohmer.net>
Signed-off-by: Markus Klotzbuecher <mk@denx.de>
Diffstat (limited to 'include/e500.h')
0 files changed, 0 insertions, 0 deletions