diff options
author | Vincent Palatin <vpalatin@chromium.org> | 2012-01-05 19:25:50 +0000 |
---|---|---|
committer | Stefan Reinauer <reinauer@chromium.org> | 2012-01-05 14:59:38 -0800 |
commit | c9e4b38ad28e10703a9d16aacca51aa650fdb98b (patch) | |
tree | 56d9c428b66f755f0e5c7bbb08bcf1ff26a5c68b /include | |
parent | 6717d693ac735c1274f7969a6946c481d16fc3b3 (diff) |
usb: increase timeout on the control endpoint
Some USB keys are very slow at answering the initial GET_DESCRIPTOR or
SET_ADDRESS request.
I have encountered a couple of USB keys which take respectively 140ms
and 230ms to send back their data packet on such a request, and thus
fail with the current code.
According to the USB2.0 standard 9.2.6.4, the device should answer the
standard device requests (e.g. GET_DESCRIPTOR or SET_ADDRESS) in less
than 500ms, so let's increase the control endpoint timeout to that
value.
Signed-off-by: Vincent Palatin <vpalatin@chromium.org>
BUG=chrome-os-partner:7344 chrome-os-partner:7345
TEST=boot a recovery image from the 2 previously non working keys.
(Lexar JUMPDRIVE TwistTurn LJDTT32GASBNA and USB M316 Aquarium Tutle)
Change-Id: I00ffb11810ac538bae4622ecba7edd2388d592b2
Reviewed-on: https://gerrit.chromium.org/gerrit/13716
Reviewed-by: Stefan Reinauer <reinauer@chromium.org>
Tested-by: Vincent Palatin <vpalatin@chromium.org>
Commit-Ready: Vincent Palatin <vpalatin@chromium.org>
Diffstat (limited to 'include')
-rw-r--r-- | include/usb.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/include/usb.h b/include/usb.h index 6fd14fcf0ec..61247171570 100644 --- a/include/usb.h +++ b/include/usb.h @@ -46,7 +46,7 @@ * This is the timeout to allow for submitting an urb in ms. We allow more * time for a BULK device to react - some are slow. */ -#define USB_TIMEOUT_MS(pipe) (usb_pipebulk(pipe) ? 5000 : 100) +#define USB_TIMEOUT_MS(pipe) (usb_pipebulk(pipe) ? 5000 : 500) /* device request (setup) */ struct devrequest { |