coreboot/payloads/libpayload/drivers/usb
Patrick Georgi 10bbfda839 libpayload/usb: wait a millisecond to work around device bugs
Some USB sticks seem to send a NAK at a place where they mustn't
by spec, leading to a controller side error condition.

To avoid it, wait a millisecond which is enough to get past the
NAK condition. That delay only happens on device discovery so it
won't affect boot time by more than 1ms per device.

BUG=chromium:414959
BRANCH=none
TEST=depthcharge recognizes a Lexar 16GB USB stick after applying
this change.

Change-Id: I6dd5ca34e9f3767003ccb0ca9daaf16116f4a2df
Signed-off-by: Patrick Georgi <pgeorgi@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/228791
Reviewed-by: Julius Werner <jwerner@chromium.org>
Reviewed-by: Sheng-liang Song <ssl@chromium.org>
2014-11-13 03:14:41 +00:00
..
dwc2.c libpayload:support dwc2 usb driver 2014-09-04 15:47:17 +00:00
dwc2.h libpayload:support dwc2 usb driver 2014-09-04 15:47:17 +00:00
dwc2_private.h libpayload:support dwc2 usb driver 2014-09-04 15:47:17 +00:00
dwc2_rh.c libpayload:support dwc2 usb driver 2014-09-04 15:47:17 +00:00
ehci.c libpayload: EHCI: Support root-hub TT feature 2014-10-02 18:24:26 +00:00
ehci.h libpayload: Add USB support for non-PCI controllers 2013-05-20 17:01:26 -07:00
ehci_private.h libpayload: EHCI: Support root-hub TT feature 2014-10-02 18:24:26 +00:00
ehci_rh.c libpayload: EHCI: Support root-hub TT feature 2014-10-02 18:24:26 +00:00
generic_hub.c libpayload: usb: Remove generic roothub reset port function 2014-03-11 05:53:56 +00:00
generic_hub.h libpayload: usb: Remove generic roothub reset port function 2014-03-11 05:53:56 +00:00
ohci.c libpayload: usb: Remove automatic clear_stall() calls from transfers 2014-04-10 01:10:25 +00:00
ohci.h libpayload: Add USB support for non-PCI controllers 2013-05-20 17:01:26 -07:00
ohci_private.h libpayload: usb: Make OHCI work with ARM systems 2014-04-10 01:07:20 +00:00
ohci_rh.c libpayload: usb: Fix up usb_shutdown() code paths 2014-04-10 01:07:24 +00:00
quirks.c libpayload: usb: Refactor USB enumeration to fix SuperSpeed devices 2013-10-10 00:32:40 +00:00
TODO Since some people disapprove of white space cleanups mixed in regular commits 2010-04-27 06:56:47 +00:00
uhci.c libpayload: usb: Remove automatic clear_stall() calls from transfers 2014-04-10 01:10:25 +00:00
uhci.h libpayload: Add USB support for non-PCI controllers 2013-05-20 17:01:26 -07:00
uhci_private.h libpayload: Remove bitfield use from UHCI data structures 2012-01-10 00:02:54 +01:00
uhci_rh.c libpayload: usb: Fix up usb_shutdown() code paths 2014-04-10 01:07:24 +00:00
usb.c libpayload/usb: wait a millisecond to work around device bugs 2014-11-13 03:14:41 +00:00
usb_dev.c Fix the USB code to find the headers after they were moved. 2008-09-11 17:29:00 +00:00
usbhid.c libpayload: find source of input characters 2014-01-19 04:15:03 +00:00
usbhub.c libpayload: usb: Refactor USB enumeration to fix SuperSpeed devices 2013-10-10 00:32:40 +00:00
usbinit.c libpayload:support dwc2 usb driver 2014-09-04 15:47:17 +00:00
usbmsc.c libpayload: usbmsc: Implement limited LUN support 2014-05-06 00:08:25 +00:00
xhci.c libpayload: usb: xhci: set ENT flag in last Normal TRB 2014-10-09 16:42:18 +00:00
xhci.h libpayload: Add USB support for non-PCI controllers 2013-05-20 17:01:26 -07:00
xhci_commands.c libpayload: xhci: Make XHCI stack usable on ARM 2013-09-17 03:21:57 +00:00
xhci_debug.c libpayload: xhci: Make XHCI stack usable on ARM 2013-09-17 03:21:57 +00:00
xhci_devconf.c libpayload: usb: Refactor USB enumeration to fix SuperSpeed devices 2013-10-10 00:32:40 +00:00
xhci_events.c libpayload: xhci: Use Event Data TRBs for transfer event generation 2013-10-10 00:32:36 +00:00
xhci_private.h libpayload: usb: xhci: set ENT flag in last Normal TRB 2014-10-09 16:42:18 +00:00
xhci_rh.c libpayload: usb: xhci: Treat port reset as a port status change 2014-03-11 05:54:00 +00:00