[SRU] [Bionic] [OEM-B] [PATCH 00/16] Fix "xHCI host controller not responding, assume dead"

Kai-Heng Feng kai.heng.feng at canonical.com
Tue Jul 3 07:20:13 UTC 2018


BugLink: https://bugs.launchpad.net/bugs/1763594

[Impact]
xHC stops to work after some time. This happens when the xHC gets
runtime resumed/suspended constantly.

[Test]
User reports this backport fixes the issue.

[Fix]
In addition to check EINT, also check ports' status.

[Regression Potential]
Low. It fixes a known bug and it's in -stable.

Mathias Nyman (16):
  xhci: Create new structures to store xhci port information
  xhci: set hcd pointers for xhci usb2 and usb3 roothub structures
  xhci: Add helper to get xhci roothub from hcd
  xhci: xhci-hub: use new port structures to get port address instead of
    port array
  xhci: xhci-hub: use new port structures for cas and wake mask
    functions.
  xhci: xhci-ring: use port structures for port event handler
  xhci: rename faked_port_index to hcd_portnum
  xhci: change xhci_set_link_state() to work with port structures
  xhci: change xhci_test_and_clear_bit() to use new port structure
  xhci: use port structures instead of port arrays in xhci.c functions
  xhci: xhci-hub: use port structure members instead of xhci_get_ports()
  xhci-mtk: use xhci hub structures to get number of ports in roothubs
  xhci: xhci-mem: remove port_arrays and the code initializing them
  xhci: debugfs: add usb ports to xhci debugfs
  xhci: debugfs: add debugfs interface to enable compliance mode for a
    port
  xhci: Fix perceived dead host due to runtime suspend race with event
    handler

 drivers/usb/host/xhci-debugfs.c |  85 +++++++++++
 drivers/usb/host/xhci-hub.c     | 244 ++++++++++++++++----------------
 drivers/usb/host/xhci-mem.c     | 140 ++++++++----------
 drivers/usb/host/xhci-mtk-sch.c |   4 +-
 drivers/usb/host/xhci-ring.c    | 126 ++++-------------
 drivers/usb/host/xhci.c         |  93 ++++++++----
 drivers/usb/host/xhci.h         |  43 +++---
 7 files changed, 381 insertions(+), 354 deletions(-)

-- 
2.17.1





More information about the kernel-team mailing list