All of lore.kernel.org
 help / color / mirror / Atom feed
* [U-Boot] [PATCH 0/6] usb: dwc2: Add support for SPLIT transactions
@ 2016-01-17  3:09 Stefan Brüns
  2016-01-17  3:09 ` [U-Boot] [PATCH 1/6] usb: dwc2: Fix out-of-bounds access, fix chunk size Stefan Brüns
                   ` (7 more replies)
  0 siblings, 8 replies; 13+ messages in thread
From: Stefan Brüns @ 2016-01-17  3:09 UTC (permalink / raw)
  To: u-boot

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

^ permalink raw reply	[flat|nested] 13+ messages in thread
* [U-Boot] [PATCH 0/6] usb: dwc2: add SPLIT transaction support
@ 2015-12-13  4:17 Stefan Brüns
  2015-12-13  4:17 ` [U-Boot] [PATCH 4/6] usb: dwc2: add helper function for setting SPLIT HC registers Stefan Brüns
  0 siblings, 1 reply; 13+ messages in thread
From: Stefan Brüns @ 2015-12-13  4:17 UTC (permalink / raw)
  To: u-boot

First two patches are preparatory work. 3rd and 4th introduce helper
functions. Patch 5 contains the core changes. Patch 6 is cleanup.

The patch has been tested on RPi 1 B with several full speed and low speed
devices. All devices enumerated successfully, with good output from
"usb info". High speed devices, e.g. the SMSC9514 ethernet and mass storage
devices still work.

Neither CONFIG_DM_USB nor LS/FS devices directly connected to the root hub/hc
have been tested, although both should be handled by the patches.

Stefan Br?ns (6):
  usb: dwc2: avoid out of bounds access
  usb: dwc2: Handle NAK during CONTROL DATA and STATUS stage
  usb: dwc2: determine TT hub address and port for split transactions
  usb: dwc2: add helper function for setting SPLIT HC registers
  usb: dwc2: add support for SPLIT transactions
  usb: dwc2: remove no longer used wait_for_chhltd()

 drivers/usb/host/dwc2.c | 240 +++++++++++++++++++++++++++++++++++-------------
 1 file changed, 178 insertions(+), 62 deletions(-)

-- 
2.1.4

^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2016-01-27  4:05 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-01-17  3:09 [U-Boot] [PATCH 0/6] usb: dwc2: Add support for SPLIT transactions Stefan Brüns
2016-01-17  3:09 ` [U-Boot] [PATCH 1/6] usb: dwc2: Fix out-of-bounds access, fix chunk size Stefan Brüns
2016-01-17  3:09 ` [U-Boot] [PATCH 2/6] usb: dwc2: Simplify wait_for_chhltd(), remove ignore_ack Stefan Brüns
2016-01-17  3:09 ` [U-Boot] [PATCH 3/6] usb: dwc2: split transfer core from outer loop Stefan Brüns
2016-01-17  3:09 ` [U-Boot] [PATCH 4/6] usb: dwc2: add helper function for setting SPLIT HC registers Stefan Brüns
2016-01-17  3:09 ` [U-Boot] [PATCH 5/6] usb: dwc2: Implement SPLIT transaction support Stefan Brüns
2016-01-17  3:09 ` [U-Boot] [PATCH 6/6] usb: dwc2: Add SPLIT INTERRUPT " Stefan Brüns
2016-01-18 17:21 ` [U-Boot] [PATCH 0/6] usb: dwc2: Add support for SPLIT transactions Marek Vasut
2016-01-27  3:52 ` Stephen Warren
2016-01-27  4:05   ` Marek Vasut
  -- strict thread matches above, loose matches on Subject: below --
2015-12-13  4:17 [U-Boot] [PATCH 0/6] usb: dwc2: add SPLIT transaction support Stefan Brüns
2015-12-13  4:17 ` [U-Boot] [PATCH 4/6] usb: dwc2: add helper function for setting SPLIT HC registers Stefan Brüns
2015-12-13  4:44   ` Marek Vasut
2015-12-16  3:19   ` Stephen Warren

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.