coreboot/payloads/libpayload/drivers/usb
Tomasz Michalec 829b8be432 libpayload: Add bulk with timeout callback to USB
Add bulk_timeout() callback to USB controllers that allows to issue bulk
transaction with configurable timeout. This allows to peek if there is
any incoming data from USB device without needing to wait 5 seconds if
there is no data.

'finalize' argument is omitted in bulk_timeout(), because any recent
controller doesn't use it in bulk() method anyway. For OHCI and UHCI,
which are only controllers using 'finalize', issuing bulk_timeout() with
USB_MAX_PROCESSING_TIME_US timeout is the same as issuing bulk() with
'finalize' set to zero.

Change-Id: I82dbe307b566e4fc6cca314924168f7ad677efe7
Signed-off-by: Tomasz Michalec <tmichalec@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/90043
Reviewed-by: Julius Werner <jwerner@chromium.org>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Paul Menzel <paulepanter@mailbox.org>
2026-01-09 15:02:44 +00:00
..
dwc2.c libpayload: Add bulk with timeout callback to USB 2026-01-09 15:02:44 +00:00
dwc2.h libpayload: usb: Fix spacing issues 2022-08-12 17:17:53 +00:00
dwc2_private.h libpayload: Add bulk with timeout callback to USB 2026-01-09 15:02:44 +00:00
dwc2_rh.c payloads: Drop unneeded empty lines 2020-09-21 16:20:57 +00:00
ehci.c libpayload: Add bulk with timeout callback to USB 2026-01-09 15:02:44 +00:00
ehci.h libpayload: usb: Fix spacing issues 2022-08-12 17:17:53 +00:00
ehci_private.h treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
ehci_rh.c libpayload: usb: Fix spacing issues 2022-08-12 17:17:53 +00:00
generic_hub.c treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
generic_hub.h libpayload: usb: Fix spacing issues 2022-08-12 17:17:53 +00:00
Kconfig treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
ohci.c libpayload: Add bulk with timeout callback to USB 2026-01-09 15:02:44 +00:00
ohci.h libpayload: usb: Fix spacing issues 2022-08-12 17:17:53 +00:00
ohci_private.h libpayload: usb: Fix spacing issues 2022-08-12 17:17:53 +00:00
ohci_rh.c libpayload: usb: Fix spacing issues 2022-08-12 17:17:53 +00:00
quirks.c treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
TODO
uhci.c libpayload: Add bulk with timeout callback to USB 2026-01-09 15:02:44 +00:00
uhci.h libpayload: usb: Fix spacing issues 2022-08-12 17:17:53 +00:00
uhci_private.h libpayload: usb: Fix spacing issues 2022-08-12 17:17:53 +00:00
uhci_rh.c libpayload/uhci: Re-write UHCI RH driver w/ generic_hub API 2023-06-12 17:00:28 +00:00
usb.c libpayload: usb: Fix spacing issues 2022-08-12 17:17:53 +00:00
usb_dev.c libpayload: usb: Fix spacing issues 2022-08-12 17:17:53 +00:00
usbhid.c libpayload: Add after an if conditional on the next line 2023-09-07 13:33:39 +00:00
usbhub.c libpayload: usb: Fix spacing issues 2022-08-12 17:17:53 +00:00
usbinit.c libpayload: usb: Fix spacing issues 2022-08-12 17:17:53 +00:00
usbmsc.c libpayload: usbmsc: Correctly deal with disks larger than 2TB 2025-05-02 23:24:25 +00:00
xhci.c libpayload: Add bulk with timeout callback to USB 2026-01-09 15:02:44 +00:00
xhci.h libpayload: usb: Fix spacing issues 2022-08-12 17:17:53 +00:00
xhci_commands.c libpayload: Add bulk with timeout callback to USB 2026-01-09 15:02:44 +00:00
xhci_debug.c treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
xhci_devconf.c libpayload: usb: Fix spacing issues 2022-08-12 17:17:53 +00:00
xhci_events.c libpayload: Add bulk with timeout callback to USB 2026-01-09 15:02:44 +00:00
xhci_private.h libpayload: Add bulk with timeout callback to USB 2026-01-09 15:02:44 +00:00
xhci_rh.c libpayload: usb: Fix spacing issues 2022-08-12 17:17:53 +00:00