Pull request: xHCI patches for 2.6.39

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Greg,

Here are some xHCI patches that I hope can be included in 2.6.39.  They
include some cleanups in the xHCI driver and USB core, the isochronous
bug fixes you said were too late to make it into 2.6.38, and (finally!)
USB 3.0 hub support.

The hub support patches rework the xHCI driver to register two roothubs:
a USB 2.0 roothub and a USB 3.0 roothub.  This reflects the behavior of
external USB 3.0 hubs, because they actually show up as two USB devices.
There was a fair bit of USB core work that needed to go in to support
registering two roothubs for one PCI device.  Fortunately, those patches
have gone through four different revisions, and I've addressed the last
of Alan Stern's comments (including the issue with an extern inline
function).

The patches have passed my stress tests, and have passed Paul
Zimmerman's testing with Synopsis USB devices.  The full patches will be
sent to the linux-usb mailing list.

Sarah Sharp


The following changes since commit fbf9865c6d96f4a131092d2018056e86113e5cea:
  Robert Morell (1):
        USB: ehci: tegra: Align DMA transfers to 32 bytes

are available in the git repository at:

  git+ssh://master.kernel.org/pub/scm/linux/kernel/git/sarah/xhci.git for-usb-next

Andiry Xu (2):
      xHCI: Remove redundant variable in xhci_resume()
      xHCI: prolong host controller halt time limit

John Youn (1):
      USB 3.0 Hub Changes

Paul Zimmerman (1):
      USB: Add support for SuperSpeed isoc endpoints

Sarah Sharp (35):
      usb: Always return 0 or -EBUSY to the runtime PM core.
      xhci: Remove old no-op test.
      USB: Remove bitmap #define from hcd.h
      USB: Fix usb_add_hcd() checkpatch errors.
      xhci: Rework port suspend structures for limited ports.
      xhci: Rename variables and reduce register reads.
      xhci: Remove references to HC_STATE_HALT.
      usb: Initialize hcd->state roothubs.
      xhci: Remove references to HC_STATE_RUNNING.
      USB: Clear "warm" port reset change.
      usb: Make USB 3.0 roothub have a SS EP comp descriptor.
      xhci: Modify check for TT info.
      xhci: Always use usb_hcd in URB instead of converting xhci_hcd.
      xhci: Change hcd_priv into a pointer.
      usb: Make usb_hcd_pci_probe labels more descriptive.
      usb: Refactor irq enabling out of usb_add_hcd()
      usb: Change usb_hcd->bandwidth_mutex to a pointer.
      usb: Store bus type in usb_hcd, not in driver flags.
      usb: Make core allocate resources per PCI-device.
      USB: Set usb_hcd->state and flags for shared roothubs.
      xhci: Index with a port array instead of PORTSC addresses.
      xhci: Refactor bus suspend state into a struct.
      xhci: Change xhci_find_slot_id_by_port() API.
      xhci: Register second xHCI roothub.
      xhci: Return a USB 3.0 hub descriptor for USB3 roothub.
      xhci: Limit roothub ports to 15 USB3 & 31 USB2 ports.
      xhci: Make roothub functions deal with device removal.
      xhci: Fix re-init on power loss after resume.
      xhci: Fixes for suspend/resume of shared HCDs.
      xhci: Return canceled URBs immediately when host is halted.
      USB: Remove bogus USB_PORT_STAT_SUPER_SPEED symbol.
      USB: Disable auto-suspend for USB 3.0 hubs.
      xhci: Update internal dequeue pointers after stalls.
      xhci: Fix cycle bit calculation during stall handling.
      xhci: Clean up cycle bit math used during stalls.

 drivers/staging/usbip/vhci_hcd.c |    4 +-
 drivers/usb/core/driver.c        |    5 +
 drivers/usb/core/hcd-pci.c       |   47 ++++--
 drivers/usb/core/hcd.c           |  196 +++++++++++++++-----
 drivers/usb/core/hub.c           |  125 +++++++++----
 drivers/usb/core/message.c       |   22 +-
 drivers/usb/core/urb.c           |   11 +-
 drivers/usb/gadget/dummy_hcd.c   |    4 +-
 drivers/usb/host/ehci-hub.c      |    4 +-
 drivers/usb/host/imx21-hcd.c     |    4 +-
 drivers/usb/host/isp116x-hcd.c   |    6 +-
 drivers/usb/host/isp1362-hcd.c   |    6 +-
 drivers/usb/host/isp1760-hcd.c   |    6 +-
 drivers/usb/host/ohci-hub.c      |   13 +-
 drivers/usb/host/oxu210hp-hcd.c  |    6 +-
 drivers/usb/host/r8a66597-hcd.c  |    5 +-
 drivers/usb/host/sl811-hcd.c     |    6 +-
 drivers/usb/host/u132-hcd.c      |   11 +-
 drivers/usb/host/xhci-ext-caps.h |    4 +-
 drivers/usb/host/xhci-hub.c      |  392 ++++++++++++++++++++++++++------------
 drivers/usb/host/xhci-mem.c      |   93 ++++++++-
 drivers/usb/host/xhci-pci.c      |  124 +++++++++++-
 drivers/usb/host/xhci-ring.c     |  195 ++++++++++++++-----
 drivers/usb/host/xhci.c          |  129 +++++++++----
 drivers/usb/host/xhci.h          |   53 ++++--
 drivers/usb/musb/musb_virthub.c  |    4 +-
 drivers/usb/wusbcore/rh.c        |    4 +-
 include/linux/usb/ch11.h         |   42 ++++-
 include/linux/usb/ch9.h          |    2 +
 include/linux/usb/hcd.h          |   20 ++-
 30 files changed, 1134 insertions(+), 409 deletions(-)
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux