mirror-linux/drivers/usb/host
Mathias Nyman 2bbd38fcd2 xhci: dbc: enable back DbC in resume if it was enabled before suspend
DbC is currently only enabled back if it's in configured state during
suspend.

If system is suspended after DbC is enabled, but before the device is
properly enumerated by the host, then DbC would not be enabled back in
resume.

Always enable DbC back in resume if it's suspended in enabled,
connected, or configured state

Cc: stable <stable@kernel.org>
Fixes: dfba2174dc ("usb: xhci: Add DbC support in xHCI driver")
Tested-by: Łukasz Bartosik <ukaszb@chromium.org>
Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2025-10-14 09:59:06 +02:00
..
Kconfig usb: host: xhci-rcar: Add Renesas RZ/G3E USB3 Host driver support 2025-09-17 12:43:18 +02:00
Makefile xhci: sideband: add initial api to register a secondary interrupter entity 2025-04-11 13:02:29 +02:00
bcma-hcd.c USB: bcma: Remove unused of_gpio.h 2024-11-04 01:27:52 +01:00
ehci-atmel.c usb: Switch back to struct platform_driver::remove() 2024-10-04 15:13:03 +02:00
ehci-brcm.c usb: Switch back to struct platform_driver::remove() 2024-10-04 15:13:03 +02:00
ehci-dbg.c USB: Use EHCI control transfer pid macros instead of constant values. 2024-03-26 10:43:35 +01:00
ehci-exynos.c usb: Switch back to struct platform_driver::remove() 2024-10-04 15:13:03 +02:00
ehci-fsl.c usb: ehci-fsl: Fix use of private data to avoid -Wflex-array-member-not-at-end warning 2025-04-11 16:08:33 +02:00
ehci-fsl.h
ehci-grlib.c usb: Switch back to struct platform_driver::remove() 2024-10-04 15:13:03 +02:00
ehci-hcd.c usb: ehci: Switch to use hrtimer_setup() 2025-02-18 11:19:02 +01:00
ehci-hub.c
ehci-mem.c
ehci-mv.c usb: Switch back to struct platform_driver::remove() 2024-10-04 15:13:03 +02:00
ehci-npcm7xx.c usb: Switch back to struct platform_driver::remove() 2024-10-04 15:13:03 +02:00
ehci-omap.c usb: Switch back to struct platform_driver::remove() 2024-10-04 15:13:03 +02:00
ehci-orion.c usb: Switch back to struct platform_driver::remove() 2024-10-04 15:13:03 +02:00
ehci-pci.c
ehci-platform.c treewide, timers: Rename from_timer() to timer_container_of() 2025-06-08 09:07:37 +02:00
ehci-ppc-of.c usb: Switch back to struct platform_driver::remove() 2024-10-04 15:13:03 +02:00
ehci-ps3.c
ehci-q.c USB: Use EHCI control transfer pid macros instead of constant values. 2024-03-26 10:43:35 +01:00
ehci-sched.c
ehci-sh.c usb: ehci-hcd: fix call balance of clocks handling routines 2024-12-04 16:25:13 +01:00
ehci-spear.c usb: ehci-spear: fix call balance of sehci clk handling routines 2024-11-16 09:04:06 +01:00
ehci-st.c usb: Switch back to struct platform_driver::remove() 2024-10-04 15:13:03 +02:00
ehci-sysfs.c usb: ehci: replace scnprintf() with sysfs_emit() 2025-06-24 15:40:19 +01:00
ehci-timer.c
ehci-xilinx-of.c usb: Switch back to struct platform_driver::remove() 2024-10-04 15:13:03 +02:00
ehci.h USB: Use EHCI control transfer pid macros instead of constant values. 2024-03-26 10:43:35 +01:00
fhci-dbg.c
fhci-hcd.c usb: Switch back to struct platform_driver::remove() 2024-10-04 15:13:03 +02:00
fhci-hub.c
fhci-mem.c
fhci-q.c
fhci-sched.c usb: host: fix typo in the comment 2024-10-04 15:08:37 +02:00
fhci-tds.c
fhci.h
fsl-mph-dr-of.c usb: fsl-mph-dr-of: Remove unnecessary NULL check before clk_disable_unprepare() 2025-06-19 12:27:29 +02:00
isp116x-hcd.c usb: Switch back to struct platform_driver::remove() 2024-10-04 15:13:03 +02:00
isp116x.h
isp1362-hcd.c treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
isp1362.h
max3421-hcd.c usb: host: max3421-hcd: Fix error pointer dereference in probe cleanup 2025-08-13 16:55:48 +02:00
octeon-hcd.c usb: Switch back to struct platform_driver::remove() 2024-10-04 15:13:03 +02:00
octeon-hcd.h
ohci-at91.c usb: ohci-at91: Use dynamic device name for OHCI HCD creation 2025-06-19 12:27:33 +02:00
ohci-da8xx.c Merge 6.12-rc3 into usb-next 2024-10-14 08:03:44 +02:00
ohci-dbg.c
ohci-exynos.c usb: Switch back to struct platform_driver::remove() 2024-10-04 15:13:03 +02:00
ohci-hcd.c treewide, timers: Rename from_timer() to timer_container_of() 2025-06-08 09:07:37 +02:00
ohci-hub.c treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
ohci-mem.c
ohci-nxp.c usb: Switch back to struct platform_driver::remove() 2024-10-04 15:13:03 +02:00
ohci-omap.c usb: Switch back to struct platform_driver::remove() 2024-10-04 15:13:03 +02:00
ohci-pci.c USB: OHCI: Add quirk for LS7A OHCI controller (rev 0x02) 2025-04-11 16:21:20 +02:00
ohci-platform.c usb: Switch back to struct platform_driver::remove() 2024-10-04 15:13:03 +02:00
ohci-ppc-of.c usb: Switch back to struct platform_driver::remove() 2024-10-04 15:13:03 +02:00
ohci-ps3.c
ohci-pxa27x.c usb: Switch back to struct platform_driver::remove() 2024-10-04 15:13:03 +02:00
ohci-q.c
ohci-s3c2410.c usb: ohci: s3c2410: Drop support for S3C2410 systems 2025-09-06 15:22:51 +02:00
ohci-sa1111.c
ohci-sm501.c usb: Switch back to struct platform_driver::remove() 2024-10-04 15:13:03 +02:00
ohci-spear.c usb: ohci-spear: Remove unnecessary NULL check before clk_disable_unprepare() 2025-06-19 12:27:26 +02:00
ohci-st.c usb: Switch back to struct platform_driver::remove() 2024-10-04 15:13:03 +02:00
ohci.h
oxu210hp-hcd.c treewide, timers: Rename from_timer() to timer_container_of() 2025-06-08 09:07:37 +02:00
pci-quirks.c USB: pci-quirks: Fix HCCPARAMS register error for LS7A EHCI 2025-02-14 09:18:14 +01:00
pci-quirks.h
r8a66597-hcd.c treewide, timers: Rename from_timer() to timer_container_of() 2025-06-08 09:07:37 +02:00
r8a66597.h
sl811-hcd.c treewide, timers: Rename from_timer() to timer_container_of() 2025-06-08 09:07:37 +02:00
sl811.h
sl811_cs.c
ssb-hcd.c
uhci-debug.c
uhci-grlib.c usb: Switch back to struct platform_driver::remove() 2024-10-04 15:13:03 +02:00
uhci-hcd.c treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
uhci-hcd.h
uhci-hub.c
uhci-pci.c
uhci-platform.c usb: uhci-platform: Make the clock really optional 2025-05-01 17:39:16 +02:00
uhci-q.c treewide, timers: Rename from_timer() to timer_container_of() 2025-06-08 09:07:37 +02:00
xen-hcd.c treewide, timers: Rename from_timer() to timer_container_of() 2025-06-08 09:07:37 +02:00
xhci-caps.h usb: xhci: Add host support for eUSB2 double isochronous bandwidth devices 2025-09-06 15:25:05 +02:00
xhci-dbg.c
xhci-dbgcap.c xhci: dbc: enable back DbC in resume if it was enabled before suspend 2025-10-14 09:59:06 +02:00
xhci-dbgcap.h xhci: dbc: Avoid event polling busyloop if pending rx transfers are inactive. 2025-05-05 16:30:45 +02:00
xhci-dbgtty.c xhci: dbctty: disable ECHO flag by default 2025-06-28 17:20:22 +02:00
xhci-debugfs.c usb: xhci: Add debugfs support for xHCI port bandwidth 2025-05-21 12:35:31 +02:00
xhci-debugfs.h
xhci-ext-caps.c
xhci-ext-caps.h xhci: Add USB4 tunnel detection for USB3 devices on Intel hosts 2024-09-03 09:54:39 +02:00
xhci-histb.c usb: xhci: change xhci_resume() parameters to explicit the desired info 2025-03-14 09:18:02 +01:00
xhci-hub.c usb: xhci: Fix slot_id resource race conflict 2025-08-19 16:12:13 +02:00
xhci-mem.c Merge 6.17-rc6 into usb-next 2025-09-15 08:18:40 +02:00
xhci-mtk-sch.c xhci: replace real & fake port with pointer to root hub port 2024-03-02 20:25:27 +01:00
xhci-mtk.c treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
xhci-mtk.h
xhci-mvebu.c usb: host: xhci-plat: mvebu: use ->quirks instead of ->init_quirk() func 2025-03-14 09:18:02 +01:00
xhci-mvebu.h usb: host: xhci-plat: mvebu: use ->quirks instead of ->init_quirk() func 2025-03-14 09:18:02 +01:00
xhci-pci-renesas.c usb: renesas-xhci: Fix External ROM access timeouts 2025-08-13 17:15:59 +02:00
xhci-pci.c usb: xhci-pci: Fix USB2-only root hub registration 2025-10-14 09:58:51 +02:00
xhci-pci.h xhci-pci: Make xhci-pci-renesas a proper modular driver 2024-08-07 12:51:38 +02:00
xhci-plat.c usb: host: xhci-plat: Add .post_resume_quirk for struct xhci_plat_priv 2025-09-17 12:43:17 +02:00
xhci-plat.h usb: host: xhci-plat: Add .post_resume_quirk for struct xhci_plat_priv 2025-09-17 12:43:17 +02:00
xhci-port.h XHCI: Separate PORT and CAPs macros into dedicated file 2024-01-27 17:39:09 -08:00
xhci-rcar-regs.h usb: host: xhci-rcar: Move R-Car reg definitions 2025-09-17 12:43:16 +02:00
xhci-rcar.c usb: host: xhci-rcar: Add Renesas RZ/G3E USB3 Host driver support 2025-09-17 12:43:18 +02:00
xhci-ring.c usb: xhci: improve TR Dequeue Pointer mask 2025-09-18 09:53:11 +02:00
xhci-rzg3e-regs.h usb: host: xhci-rcar: Add Renesas RZ/G3E USB3 Host driver support 2025-09-17 12:43:18 +02:00
xhci-rzv2m.c usb: xhci-plat: Don't include xhci.h 2024-04-23 16:25:29 -07:00
xhci-rzv2m.h
xhci-sideband.c xhci: sideband: add api to trace sideband usage 2025-09-12 14:08:02 +02:00
xhci-tegra.c usb: xhci: tegra: Support USB wakeup function for Tegra234 2025-09-12 14:03:38 +02:00
xhci-trace.c
xhci-trace.h usb: xhci: align PORTSC trace with one-based port numbering 2025-09-18 09:53:11 +02:00
xhci.c Merge patch series "eUSB2 Double Isochronous IN Bandwidth support" 2025-09-06 15:25:08 +02:00
xhci.h usb: xhci: improve TR Dequeue Pointer mask 2025-09-18 09:53:11 +02:00