Changed stream wait timeout counter to be 16-bit, so that very long timeout periods can be set for correct communications with badly designed hosts or devices which greatly exceed the USB specification limits.

Mass Storage Host demo now uses a USB_STREAM_TIMEOUT_MS of two seconds to maintain compatibility with poorly designed devices.
This commit is contained in:
Dean Camera 2009-03-03 08:19:06 +00:00
parent 99145a8d7c
commit ea7039a0cc
2 changed files with 4 additions and 2 deletions

View File

@ -41,8 +41,9 @@
* may be neccesary to retry the functions in the module several times
* after they have returned and error to successfully send the command
* to the device. Some devices may also need to have the stream function
* timeout period extended beyond 100ms by defining USB_STREAM_TIMEOUT_MS
* to a larger value in the project makefile and passing it to the compiler
* timeout period extended beyond 100ms (some badly designed devices exceeding
* 1.5 seconds occasionally) by defining USB_STREAM_TIMEOUT_MS to a
* larger value in the project makefile and passing it to the compiler
* via the -D switch.
*/

View File

@ -180,6 +180,7 @@ CSTANDARD = -std=gnu99
CDEFS = -DF_CPU=$(F_CPU)UL -DF_CLOCK=$(F_CLOCK)UL -DBOARD=BOARD_$(BOARD)
CDEFS += -DUSE_NONSTANDARD_DESCRIPTOR_NAMES -DNO_STREAM_CALLBACKS -DUSB_HOST_ONLY
CDEFS += -DUSE_STATIC_OPTIONS="(USB_OPT_REG_ENABLED | USB_OPT_AUTO_PLL)"
CDEFS += -DUSB_STREAM_TIMEOUT_MS=2000
# Place -D or -U options here for ASM sources