All of lore.kernel.org
 help / color / mirror / Atom feed
* [U-Boot] [PATCH 00/16] usb: hub: Support USB 3.0 hubs
@ 2017-06-23  9:54 Bin Meng
  2017-06-23  9:54 ` [U-Boot] [PATCH 01/16] usb: xhci-pci: Drop non-DM version of xhci-pci driver Bin Meng
                   ` (15 more replies)
  0 siblings, 16 replies; 66+ messages in thread
From: Bin Meng @ 2017-06-23  9:54 UTC (permalink / raw)
  To: u-boot

This series is a follow-up series to previous series [1] that adds
support for USB 3.0 hubs.

USB 3.0 hubs have slightly different hub descriptor format, as well
as different port status bit positions. These needs to be properly
handled by U-Boot USB core stack codes. xHCI driver has also been
updated to correctly set up context structures that are required
for devices behind a 3.0 hub to work.

Besides USB 3.0 hubs support, this series also adds support for low
speed/full speed devices connected behind a high speed hub with the
xHC controller. It turns out the 'Transaction Translator' part in
the xHC data structure is missing.

Note there is one error during testing USB keyboard when
CONFIG_USB_KEYBOARD is on.

  "Failed to get keyboard state from device 413c:2105"

The enumeration process did pass and the error was thrown in the
USB keyboard driver. This was due to the interrupt transfer is
still not supported by xHCI driver, as of today.

This series is available at u-boot-x86/xhci-working2 for testing.

[1] https://lists.denx.de/pipermail/u-boot/2017-June/296166.html


Bin Meng (16):
  usb: xhci-pci: Drop non-DM version of xhci-pci driver
  usb: xhci-pci: Clean up the driver a little bit
  usb: Remove unnecessary work in usb_setup_descriptor()
  usb: hub: Use 'struct usb_hub_device' as hub device's uclass_priv
  usb: hub: Add a new API to test if a hub device is root hub
  usb: xhci: Change to use usb_hub_is_root_hub() API
  usb: hub: Translate USB 3.0 hub port status into old version
  usb: hub: Support 'set hub depth' request for USB 3.0 hubs
  usb: xhci: Change xhci_setup_addressable_virt_dev() signature
  usb: xhci: Program 'route string' in the input slot context
  usb: hub: Parse and save TT details from device descriptor
  dm: usb: Add a new USB controller operation 'update_hub_device'
  usb: hub: Call usb_update_hub_device() after hub descriptor is fetched
  usb: xhci: Implement update_hub_device() operation
  usb: xhci: Correct TT_SLOT and TT_PORT macros
  usb: xhci: Enable TT to support LS/FS devices behind a HS hub

 common/usb.c                  |  40 +++++-----
 common/usb_hub.c              | 166 +++++++++++++++++++++++++++++++++++++++++-
 drivers/usb/host/usb-uclass.c |  13 +++-
 drivers/usb/host/xhci-mem.c   |  40 +++++++++-
 drivers/usb/host/xhci-pci.c   |  68 +----------------
 drivers/usb/host/xhci.c       |  85 +++++++++++++++------
 drivers/usb/host/xhci.h       |   8 +-
 include/usb.h                 |  46 +++++++++++-
 include/usb_defs.h            |  15 ++++
 9 files changed, 357 insertions(+), 124 deletions(-)

-- 
2.9.2

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

end of thread, other threads:[~2017-07-07  3:57 UTC | newest]

Thread overview: 66+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-06-23  9:54 [U-Boot] [PATCH 00/16] usb: hub: Support USB 3.0 hubs Bin Meng
2017-06-23  9:54 ` [U-Boot] [PATCH 01/16] usb: xhci-pci: Drop non-DM version of xhci-pci driver Bin Meng
2017-06-23 17:51   ` Marek Vasut
2017-07-06  4:49   ` Simon Glass
2017-06-23  9:54 ` [U-Boot] [PATCH 02/16] usb: xhci-pci: Clean up the driver a little bit Bin Meng
2017-06-23 17:52   ` Marek Vasut
2017-07-06  4:49     ` Simon Glass
2017-06-23  9:54 ` [U-Boot] [PATCH 03/16] usb: Remove unnecessary work in usb_setup_descriptor() Bin Meng
2017-06-30  3:49   ` Bin Meng
2017-06-30  6:15     ` Lothar Waßmann
2017-06-30  6:19       ` Bin Meng
2017-07-01 17:29     ` stefan.bruens at rwth-aachen.de
2017-07-03  1:20       ` Bin Meng
2017-06-23  9:54 ` [U-Boot] [PATCH 04/16] usb: hub: Use 'struct usb_hub_device' as hub device's uclass_priv Bin Meng
2017-06-23 17:54   ` Marek Vasut
2017-07-06  4:49   ` Simon Glass
2017-06-23  9:54 ` [U-Boot] [PATCH 05/16] usb: hub: Add a new API to test if a hub device is root hub Bin Meng
2017-06-23 17:55   ` Marek Vasut
2017-06-28  8:27     ` Bin Meng
2017-06-23 17:57   ` Marek Vasut
2017-06-24  1:41     ` Bin Meng
2017-06-26 18:05       ` Marek Vasut
2017-06-23  9:54 ` [U-Boot] [PATCH 06/16] usb: xhci: Change to use usb_hub_is_root_hub() API Bin Meng
2017-07-06  4:49   ` Simon Glass
2017-06-23  9:54 ` [U-Boot] [PATCH 07/16] usb: hub: Translate USB 3.0 hub port status into old version Bin Meng
2017-06-23 17:59   ` Marek Vasut
2017-06-24  1:53     ` Bin Meng
2017-06-26 18:06       ` Marek Vasut
2017-06-26 23:57         ` Bin Meng
2017-06-28  8:28           ` Bin Meng
2017-06-28 17:25             ` Marek Vasut
2017-07-06  5:56               ` Bin Meng
2017-07-07  3:57                 ` Simon Glass
2017-06-23  9:54 ` [U-Boot] [PATCH 08/16] usb: hub: Support 'set hub depth' request for USB 3.0 hubs Bin Meng
2017-07-06  4:49   ` Simon Glass
2017-06-23  9:54 ` [U-Boot] [PATCH 09/16] usb: xhci: Change xhci_setup_addressable_virt_dev() signature Bin Meng
2017-07-06  4:49   ` Simon Glass
2017-06-23  9:54 ` [U-Boot] [PATCH 10/16] usb: xhci: Program 'route string' in the input slot context Bin Meng
2017-06-23 18:02   ` Marek Vasut
2017-06-24  1:57     ` Bin Meng
2017-06-26 18:07       ` Marek Vasut
2017-06-27  0:01         ` Bin Meng
2017-06-27  5:23           ` Stefan Roese
2017-06-27  8:27             ` Bin Meng
2017-06-27  8:39               ` Marek Vasut
2017-06-28 11:28               ` Stefan Roese
2017-06-28 12:27                 ` Bin Meng
2017-06-28 23:00                   ` Bin Meng
2017-06-29  5:29                     ` Stefan Roese
2017-06-29  5:42                       ` Bin Meng
2017-06-29  5:46                         ` Stefan Roese
2017-06-27  9:31             ` Marek Vasut
2017-06-27 23:22               ` Bin Meng
2017-07-07  3:57               ` Simon Glass
2017-06-23  9:54 ` [U-Boot] [PATCH 11/16] usb: hub: Parse and save TT details from device descriptor Bin Meng
2017-07-06  4:49   ` Simon Glass
2017-06-23  9:54 ` [U-Boot] [PATCH 12/16] dm: usb: Add a new USB controller operation 'update_hub_device' Bin Meng
2017-07-06  4:49   ` Simon Glass
2017-06-23  9:54 ` [U-Boot] [PATCH 13/16] usb: hub: Call usb_update_hub_device() after hub descriptor is fetched Bin Meng
2017-07-06  4:49   ` Simon Glass
2017-06-23  9:54 ` [U-Boot] [PATCH 14/16] usb: xhci: Implement update_hub_device() operation Bin Meng
2017-07-06  4:50   ` Simon Glass
2017-06-23  9:54 ` [U-Boot] [PATCH 15/16] usb: xhci: Correct TT_SLOT and TT_PORT macros Bin Meng
2017-07-06  4:50   ` Simon Glass
2017-06-23  9:54 ` [U-Boot] [PATCH 16/16] usb: xhci: Enable TT to support LS/FS devices behind a HS hub Bin Meng
2017-07-06  4:50   ` Simon Glass

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.