[U-Boot] [PATCH 0/6] usb: dwc2: Add support for SPLIT transactions
Stefan Brüns
stefan.bruens at rwth-aachen.de
Sun Jan 17 04:09:50 CET 2016
The first patch fixes an out-of-bounds access, and makes the calculation of
maximum transfer size more straightforward. It also makes overriding the
maximum transfer size easier for split transactions
2nd and 3rd patch cleanup and restructure the current code in preparation
for the split support.
Patch 4 and 5 add the actual support for CONTROL and BULK transactions.
Patch 6 adds support for INTERUPT splits.
The patch series uses the same logic as the earlier patch series, but is
otherwise a rewrite.
With the patch series, all my LS/FS devices enumerate behind the RPi 1
onboard hub and an external hub.
Interrupt transfers have been tested with a Logitech K400 and a noname wired
keyboard. Both work if "stdin" includes usbkbd prior to usb start, and u-boot
has been configured with CONFIG_USB_KEYBOARD=y and CONFIG_SYS_USB_EVENT_POLL=y
(but only one at a time).
Stefan Brüns (6):
usb: dwc2: Fix out-of-bounds access, fix chunk size
usb: dwc2: Simplify wait_for_chhltd(), remove ignore_ack
usb: dwc2: split transfer core from outer loop
usb: dwc2: add helper function for setting SPLIT HC registers
usb: dwc2: Implement SPLIT transaction support
usb: dwc2: Add SPLIT INTERRUPT transaction support
drivers/usb/host/dwc2.c | 280 ++++++++++++++++++++++++++++++++----------------
drivers/usb/host/dwc2.h | 1 +
2 files changed, 187 insertions(+), 94 deletions(-)
--
2.1.4
More information about the U-Boot
mailing list