OpenCloudOS-Kernel/drivers/usb/host
Mathias Nyman ea7d0d6942 xhci: Identify USB 3.1 capable hosts by their port protocol capability
Many USB 3.1 capable hosts never updated the Serial Bus Release Number
(SBRN) register to USB 3.1 from USB 3.0

xhci driver identified USB 3.1 capable hosts based on this SBRN register,
which according to specs "contains the release of the Universal Serial
Bus Specification with which this Universal Serial Bus Host Controller
module is compliant." but still in october 2017 gives USB 3.0 as
the only possible option.

Make an additional check for USB 3.1 support and enable it if the xHCI
supported protocol capablity lists USB 3.1 capable ports.

Cc: <stable@vger.kernel.org> # v4.6+
Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-10-17 10:38:12 +02:00
..
whci USB: whci-hcd: constify hc_driver structures 2017-07-30 07:26:52 -07:00
Kconfig usb: host: ohci-omap3: Remove driver in favor of ohci-platform 2017-06-03 18:08:05 +09:00
Makefile usb: host: ohci-omap3: Remove driver in favor of ohci-platform 2017-06-03 18:08:05 +09:00
bcma-hcd.c USB: bcma: drop Northstar PHY 2.0 initialization code 2016-09-27 12:20:17 +02:00
ehci-atmel.c usb: ehci-atmel: use __maybe_unused to hide pm functions 2016-03-03 20:37:41 -08:00
ehci-dbg.c usb: add CONFIG_USB_PCI for system have both PCI HW and non-PCI based USB HW 2017-03-17 13:16:56 +09:00
ehci-exynos.c usb: host: ehci-exynos: Handle return value of clk_prepare_enable 2017-06-13 10:48:24 +02:00
ehci-fsl.c usb: host: make ehci_fsl_overrides const and __initconst 2017-08-31 18:08:46 +02:00
ehci-fsl.h drivers: usb: fsl: Define usb control register mask for w1c bits 2015-07-22 16:44:35 -07:00
ehci-grlib.c
ehci-hcd.c usb: host: Remove remaining pci_pool in comments 2017-03-16 18:03:31 +09:00
ehci-hub.c fsl/usb: Workarourd for USB erratum-A005697 2016-12-05 15:13:58 +01:00
ehci-mem.c usb: ehci: use bus->sysdev for DMA configuration 2017-03-23 08:20:21 +01:00
ehci-msm.c usb: host: ehci-msm: Conditionally call ehci suspend/resume 2016-06-07 22:15:25 -07:00
ehci-mv.c
ehci-mxc.c
ehci-omap.c usb: ehci-omap: fix error return code in ehci_hcd_omap_probe() 2017-08-10 11:36:50 -07:00
ehci-orion.c usb: orion-ehci: Add support for the Armada 3700 2017-03-17 13:32:59 +09:00
ehci-pci.c USB: EHCI: merge all cases that disable the IO watchdog 2016-10-24 14:36:25 +02:00
ehci-platform.c USB: ehci-platform: fix companion-device leak 2017-05-17 11:52:44 +02:00
ehci-pmcmsp.c
ehci-ppc-of.c
ehci-ps3.c
ehci-q.c usb: host: ehci: remove unnecessary max_packet() macro 2016-11-03 10:38:24 +02:00
ehci-sched.c usb: host: remove unnecessary null check 2017-05-17 12:20:53 +02:00
ehci-sh.c
ehci-spear.c usb/host/: const data must use __initconst not __initdata 2016-04-28 12:35:36 -07:00
ehci-st.c usb: host: ehci-st: Inform the reset framework that our reset line may be shared 2016-06-30 07:44:21 +01:00
ehci-sysfs.c usb: host: ehci-sys: delete useless bus_to_hcd conversion 2015-08-18 10:05:23 -07:00
ehci-tegra.c usb: host: ehci-tegra: Avoid getting the same reset twice 2016-06-07 22:15:25 -07:00
ehci-tilegx.c
ehci-timer.c usb: Make use of ktime_* comparison functions 2017-06-03 18:08:04 +09:00
ehci-w90x900.c USB: EHCI: ehci-w90x900: remove unuseful functions 2016-11-29 17:36:43 +01:00
ehci-xilinx-of.c
ehci.h fsl/usb: Workarourd for USB erratum-A005697 2016-12-05 15:13:58 +01:00
fhci-dbg.c
fhci-hcd.c usb: host: fhci-hcd: don't print on ENOMEM 2016-08-30 19:17:37 +02:00
fhci-hub.c QE: Move QE from arch/powerpc to drivers/soc 2015-12-22 17:12:56 -06:00
fhci-mem.c
fhci-q.c
fhci-sched.c USB: FHCI: avoid redundant condition 2016-05-09 13:08:46 +02:00
fhci-tds.c usb: whci: fhci: remove comparison to bool 2015-12-04 08:25:58 -08:00
fhci.h QE: Move QE from arch/powerpc to drivers/soc 2015-12-22 17:12:56 -06:00
fotg210-hcd.c usb: Make use of ktime_* comparison functions 2017-06-03 18:08:04 +09:00
fotg210.h usb/host/fotg210: Fix coding style issues 2015-10-16 23:46:22 -07:00
fsl-mph-dr-of.c usb: Convert to using %pOF instead of full_name 2017-07-22 15:56:53 +02:00
hwa-hc.c usb: hwa-hc: constify usb_device_id 2017-08-10 11:31:26 -07:00
imx21-dbg.c
imx21-hcd.c usb: imx21-hcd: make imx21_hc_driver const 2017-08-31 18:08:46 +02:00
imx21-hcd.h
isp116x-hcd.c isp116x-hcd: constify hc_driver structures 2017-07-30 07:26:52 -07:00
isp116x.h
isp1362-hcd.c isp1362-hcd: constify hc_driver structures 2017-07-30 07:26:51 -07:00
isp1362.h
max3421-hcd.c usb: host: max3421-hcd: constify hc_driver structures 2017-07-30 07:26:51 -07:00
ohci-at91.c usb: ohci-at91: Do not drop unhandled USB suspend control requests 2017-03-09 10:22:08 +01:00
ohci-da8xx.c USB: ohci: da8xx: Resume the entire host controller 2016-11-29 17:31:36 +01:00
ohci-dbg.c
ohci-exynos.c usb: host: ohci-exynos: Decrese node refcount on exynos_ehci_get_phy() error paths 2017-01-10 17:00:42 +01:00
ohci-hcd.c ohci-pci: add qemu quirk 2017-03-23 08:13:21 +01:00
ohci-hub.c ohci-hub: fix typo in dbg_port macro 2017-02-10 12:20:57 +01:00
ohci-mem.c USB: OHCI: use dma_pool_zalloc 2016-11-21 17:33:40 +01:00
ohci-nxp.c USB: OHCI: nxp: fix code warnings 2016-12-08 17:50:09 +01:00
ohci-omap.c mfd: tps65010: Move header file out of I2C realm 2017-08-15 08:27:22 +01:00
ohci-pci.c ohci-pci: add qemu quirk 2017-03-23 08:13:21 +01:00
ohci-platform.c usb: host: ohci-platform: Add support for omap3 and later 2017-06-03 18:08:04 +09:00
ohci-ppc-of.c
ohci-ps3.c
ohci-pxa27x.c usb: host: ohci-pxa27x: Handle return value of clk_prepare_enable 2017-06-29 14:49:06 +02:00
ohci-q.c USB: OHCI: Don't mark EDs as ED_OPER if scheduling fails 2016-06-07 22:15:25 -07:00
ohci-s3c2410.c USB: OHCI: ohci-s3c2410: remove useless functions 2016-12-05 16:32:51 +01:00
ohci-sa1111.c usb: ohci-sa1111: remove mach/hardware.h include 2016-08-30 19:24:59 +02:00
ohci-sm501.c dma-coherent: remove the DMA_MEMORY_MAP and DMA_MEMORY_IO flags 2017-09-01 11:59:17 +02:00
ohci-spear.c usb: host: ohci-spear: Fix module autoload for OF platform driver 2015-10-04 10:51:58 +01:00
ohci-st.c usb: host: ohci-st: Inform the reset framework that our reset line may be shared 2016-06-30 07:44:20 +01:00
ohci-tilegx.c
ohci-tmio.c dma-coherent: remove the DMA_MEMORY_MAP and DMA_MEMORY_IO flags 2017-09-01 11:59:17 +02:00
ohci.h ohci-pci: add qemu quirk 2017-03-23 08:13:21 +01:00
oxu210hp-hcd.c usb: host: Remove remaining pci_pool in comments 2017-03-16 18:03:31 +09:00
oxu210hp.h
pci-quirks.c xhci: Fix sleeping with spin_lock_irq() held in ASmedia 1042A workaround 2017-09-18 17:10:41 +02:00
pci-quirks.h xhci: Reset Renesas uPD72020x USB controller for 32-bit DMA issue 2017-08-02 12:05:07 -05:00
r8a66597-hcd.c usb: r8a66597-hcd: constify hc_driver structures 2017-07-30 07:26:51 -07:00
r8a66597.h
sl811-hcd.c usb: host/sl811-hcd: constify hc_driver structures 2017-07-30 07:26:51 -07:00
sl811.h
sl811_cs.c
ssb-hcd.c
u132-hcd.c usb: host: u132-hcd: constify hc_driver structures 2017-07-30 07:26:52 -07:00
uhci-debug.c new helpers: no_seek_end_llseek{,_size}() 2015-12-23 10:41:31 -05:00
uhci-grlib.c
uhci-hcd.c usb/uhci: Add support for Aspeed BMC SoCs 2017-05-25 14:30:13 +02:00
uhci-hcd.h usb/uhci: Add support for Aspeed BMC SoCs 2017-05-25 14:30:13 +02:00
uhci-hub.c
uhci-pci.c PM / core: Drop run_wake flag from struct dev_pm_info 2017-06-28 01:52:52 +02:00
uhci-platform.c usb/uhci: Add support for Aspeed BMC SoCs 2017-05-25 14:30:13 +02:00
uhci-q.c usb : replace dma_pool_alloc and memset with dma_pool_zalloc 2015-12-01 14:26:33 -08:00
xhci-dbg.c usb: xhci: remove xhci_dbg_ctx() 2017-04-08 12:17:42 +02:00
xhci-ext-caps.h usb: host: xhci: remove unneded semicolon 2017-01-25 10:59:06 +01:00
xhci-hub.c Revert "xhci: Limit USB2 port wake support for AMD Promontory hosts" 2017-09-18 17:10:41 +02:00
xhci-mem.c Merge 4.12-rc6 into usb-next 2017-06-20 10:16:07 +08:00
xhci-mtk-sch.c usb: host: xhci: purge GET_MAX_PACKET() 2016-11-03 10:38:22 +02:00
xhci-mtk.c usb: xhci-mtk: add generic compatible string 2017-08-31 18:08:46 +02:00
xhci-mtk.h usb: xhci-mtk: add reference clock 2017-01-19 10:37:16 +01:00
xhci-mvebu.c usb: host: xhci: plat: change type of mvebu init_quirk() 2016-04-26 16:08:02 -07:00
xhci-mvebu.h usb: host: xhci: plat: change type of mvebu init_quirk() 2016-04-26 16:08:02 -07:00
xhci-pci.c Revert "xhci: Limit USB2 port wake support for AMD Promontory hosts" 2017-09-18 17:10:41 +02:00
xhci-plat.c usb: host: xhci-plat: allow sysdev to inherit from ACPI 2017-09-18 17:10:41 +02:00
xhci-plat.h usb: host: xhci-plat: add resume_quirk() 2017-04-19 19:59:17 +02:00
xhci-rcar.c usb: host: xhci: rcar: Add support for R-Car H3 ES2.0 2017-08-16 15:26:26 -07:00
xhci-rcar.h usb: host: xhci-plat: set resume_quirk() for R-Car controllers 2017-04-19 19:59:17 +02:00
xhci-ring.c xhci: add port status tracing 2017-08-16 15:26:26 -07:00
xhci-tegra.c usb: xhci: remove dummy extra_priv_size for size of xhci_hcd struct 2017-03-09 18:00:39 +01:00
xhci-trace.c
xhci-trace.h xhci: add port status tracing 2017-08-16 15:26:26 -07:00
xhci.c xhci: Identify USB 3.1 capable hosts by their port protocol capability 2017-10-17 10:38:12 +02:00
xhci.h Revert "xhci: Limit USB2 port wake support for AMD Promontory hosts" 2017-09-18 17:10:41 +02:00