linux_dsm_epyc7002/drivers/usb/host
Mathias Nyman a85c0f8db3 xhci: rework bus_resume and check ports are suspended before resuming them.
bus_resume() tried to resume the same ports the bus_suspend()
suspeded. This caused PLC timeouts in case a suspended device disconnected
and was not in a resumable state at bus_resume().

Add a check to make sure the link state is either U3 or resuming
before actually resuming the link.

At the same time do some other changes such as make sure we remove
wake on connect/disconnect/overcurrent also for the resuming ports,
and avoid extra portsc port register writes.

This improves resume time with 10ms in those PLC timeout cases where
devices disconnect at suspend/resume cycle.

Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-08-16 15:26:26 -07:00
..
whci USB: whci-hcd: constify hc_driver structures 2017-07-30 07:26:52 -07: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: ehci: fsl: use bus->sysdev for DMA configuration 2017-03-23 08:20:21 +01: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: fix error return code in imx21_probe() 2017-08-10 11:36:50 -07: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
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
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 USB: ohci-dbg.c: move assignment out of if () block 2015-05-10 16:01:11 +02:00
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 USB: ohci-omap: defer probe if PHY is missing 2017-01-10 17:00:41 +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
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 USB: OHCI: fix bad #define in ohci-tmio.c 2015-07-22 14:49:42 -07: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 USB fixes for 4.13-rc5 2017-08-13 12:27:42 -07: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_cs.c
sl811-hcd.c usb: host/sl811-hcd: constify hc_driver structures 2017-07-30 07:26:51 -07:00
sl811.h
ssb-hcd.c USB: ssb: use devm_kzalloc 2015-06-08 14:26:22 -07:00
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 usb: generic resume timeout for v4.1 2015-04-10 13:45:27 +02:00
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 xhci: rework bus_resume and check ports are suspended before resuming them. 2017-08-16 15:26:26 -07: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: remove dummy extra_priv_size for size of xhci_hcd struct 2017-03-09 18:00:39 +01: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 xhci: Reset Renesas uPD72020x USB controller for 32-bit DMA issue 2017-08-02 12:05:07 -05:00
xhci-plat.c usb: host: xhci: plat: re-fact xhci_plat_priv for R-Car Gen3 2017-08-16 15:26:26 -07: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: fix memleak in xhci_run() 2017-07-20 14:40:36 +02:00
xhci.h xhci: Add port status decoder for tracing purposes 2017-08-16 15:26:26 -07:00