linux/drivers/usb/host
Myeonghun Pak 08b2ccd7eb usb: ohci-st: disable controller wakeup on removal
Probe enables controller wakeup after the OHCI core marks controllers with
RemoteWakeupConnected as wakeup-capable. Removal does not undo this, so the
wakeup source can remain attached after driver unbind.

Disable controller wakeup after removing the HCD.

This issue was identified during our ongoing static-analysis research
while reviewing kernel code.

Fixes: d115837259 ("usb: host: ohci-st: Add OHCI driver support for ST STB devices")
Cc: stable <stable@kernel.org>
Assisted-by: LLM
Co-developed-by: Ijae Kim <ae878000@gmail.com>
Signed-off-by: Ijae Kim <ae878000@gmail.com>
Signed-off-by: Myeonghun Pak <mhun512@gmail.com>
Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
Acked-by: Alan Stern <stern@rowland.harvard.edu>
Link: https://patch.msgid.link/20260915012011.61874-5-mhun512@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2026-09-16 19:19:17 +01:00
..
bcma-hcd.c
ehci-atmel.c
ehci-brcm.c usb: ehci-brcm: fix sleep during atomic 2026-03-30 17:04:13 +02:00
ehci-dbg.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
ehci-exynos.c
ehci-fsl.c
ehci-fsl.h
ehci-grlib.c
ehci-hcd.c USB: HCD: remove logic about which hcd is loaded 2026-01-14 15:59:00 +01:00
ehci-hub.c
ehci-mem.c treewide: Replace kmalloc with kmalloc_obj for non-scalar types 2026-02-21 01:02:28 -08:00
ehci-mv.c
ehci-npcm7xx.c
ehci-omap.c
ehci-orion.c usb: ehci-orion: remove optional PHY handling code remnants 2026-03-11 14:59:42 +01:00
ehci-pci.c PCI: Add ASPEED vendor ID to pci_ids.h 2026-01-09 14:21:16 -06:00
ehci-platform.c usb: host: ehci-platform: Call reset assert/deassert on suspend/resume 2025-11-21 15:11:22 +01:00
ehci-ppc-of.c
ehci-ps3.c
ehci-q.c
ehci-sched.c usb: free iso schedules on failed submit 2026-07-08 13:30:38 +02:00
ehci-sh.c
ehci-spear.c
ehci-st.c
ehci-sysfs.c
ehci-timer.c
ehci-xilinx-of.c
ehci.h
fhci-dbg.c
fhci-hcd.c usb: fhci: use kzalloc_flex for priv struct 2026-03-18 16:00:34 +01:00
fhci-hub.c
fhci-mem.c treewide: Replace kmalloc with kmalloc_obj for non-scalar types 2026-02-21 01:02:28 -08:00
fhci-q.c
fhci-sched.c
fhci-tds.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
fhci.h usb: fhci: use kzalloc_flex for priv struct 2026-03-18 16:00:34 +01:00
fsl-mph-dr-of.c usb: fsl-mph-dr-of: add regulator support 2026-07-10 15:15:28 +02:00
isp116x-hcd.c treewide: Replace kmalloc with kmalloc_obj for non-scalar types 2026-02-21 01:02:28 -08:00
isp116x.h
Kconfig powerpc: Move CONFIG_QE_GPIO to SoC 2026-07-29 16:05:34 +02:00
Makefile usb: xhci-pci: add AMD Promontory 21 PCI glue 2026-05-21 16:48:40 +02:00
max3421-hcd.c usb: host: max3421: Reject hub port requests for non-existent ports 2026-05-22 11:35:18 +02:00
octeon-hcd.c usb: octeon-hcd: sleep on an hrtimer for far-off periodic transfers 2026-09-10 17:07:55 +02:00
octeon-hcd.h
ohci-at91.c
ohci-da8xx.c usb: ohci-da8xx: disable controller wakeup on cleanup 2026-09-16 19:19:08 +01:00
ohci-dbg.c usb: host: ohci-dbg: use kmalloc() for print buffer 2026-07-08 14:10:53 +02:00
ohci-exynos.c
ohci-hcd.c treewide: Replace kmalloc with kmalloc_obj for non-scalar types 2026-02-21 01:02:28 -08:00
ohci-hub.c
ohci-mem.c
ohci-nxp.c usb: ohci-nxp: clean up probe error labels 2025-12-23 15:48:46 +01:00
ohci-omap.c
ohci-pci.c
ohci-platform.c USB: OHCI/UHCI: Add soft dependencies on ehci_platform 2026-01-14 16:02:14 +01:00
ohci-ppc-of.c
ohci-ps3.c
ohci-pxa27x.c
ohci-q.c
ohci-s3c2410.c usb: ohci-s3c2410: disable controller wakeup on removal 2026-09-16 19:19:11 +01:00
ohci-sa1111.c
ohci-sm501.c
ohci-spear.c usb: ohci-spear: disable controller wakeup on removal 2026-09-16 19:19:14 +01:00
ohci-st.c usb: ohci-st: disable controller wakeup on removal 2026-09-16 19:19:17 +01:00
ohci.h
oxu210hp-hcd.c treewide: Replace kmalloc with kmalloc_obj for non-scalar types 2026-02-21 01:02:28 -08:00
pci-quirks.c
pci-quirks.h
r8a66597-hcd.c treewide: Replace kmalloc with kmalloc_obj for non-scalar types 2026-02-21 01:02:28 -08:00
r8a66597.h
sl811_cs.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
sl811-hcd.c usb: sl811-hcd: disable controller wakeup on remove 2026-07-08 13:34:51 +02:00
sl811.h
ssb-hcd.c
uhci-debug.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
uhci-grlib.c
uhci-hcd.c Convert more 'alloc_obj' cases to default GFP_KERNEL arguments 2026-02-21 20:03:00 -08:00
uhci-hcd.h usb: uhci: Add reset control support 2025-10-13 09:11:49 +02:00
uhci-hub.c
uhci-pci.c
uhci-platform.c USB: OHCI/UHCI: Add soft dependencies on ehci_platform 2026-01-14 16:02:14 +01:00
uhci-q.c
xen-hcd.c xen/usb: Constify struct hc_driver 2025-10-28 15:35:15 +01:00
xhci-caps.h usb: xhci: standardize multi bit-field macros 2026-08-14 10:26:41 +09:00
xhci-dbg.c
xhci-dbgcap.c xhci: dbc: support runtime suspend while DbC is in enabled state 2026-06-25 15:10:08 +01:00
xhci-dbgcap.h xhci: dbc: support runtime suspend while DbC is in enabled state 2026-06-25 15:10:08 +01:00
xhci-dbgtty.c xhci: dbgtty: Drop extra call to idr_destroy() 2026-08-14 10:26:41 +09:00
xhci-debugfs.c usb: xhci: standardize multi bit-field macros 2026-08-14 10:26:41 +09:00
xhci-debugfs.h
xhci-ext-caps.c
xhci-ext-caps.h
xhci-histb.c usb: xhci: standardize multi bit-field macros 2026-08-14 10:26:41 +09:00
xhci-hub.c usb: xhci: replace Unicode quotes with ASCII apostrophes 2026-08-14 10:26:41 +09:00
xhci-mem.c usb: xhci: Fix HCS_ERST_MAX conversion 2026-08-31 11:43:00 +02:00
xhci-mtk-sch.c Convert more 'alloc_obj' cases to default GFP_KERNEL arguments 2026-02-21 20:03:00 -08:00
xhci-mtk.c usb: xhci: standardize multi bit-field macros 2026-08-14 10:26:41 +09:00
xhci-mtk.h usb: xhci-mtk: correct most kernel-doc problems in xhci-mtk.h 2025-11-21 14:52:37 +01:00
xhci-mvebu.c drivers/usb/host: Fix spelling error 'seperate' -> 'separate' 2026-04-11 12:02:11 +02:00
xhci-mvebu.h
xhci-pci-prom21.c usb: xhci-pci: add AMD Promontory 21 PCI glue 2026-05-21 16:48:40 +02:00
xhci-pci-renesas.c
xhci-pci.c usb: xhci: standardize multi bit-field macros 2026-08-14 10:26:41 +09:00
xhci-pci.h usb: xhci-pci: add AMD Promontory 21 PCI glue 2026-05-21 16:48:40 +02:00
xhci-plat.c usb: xhci: standardize multi bit-field macros 2026-08-14 10:26:41 +09: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 usb: xhci: Add debugfs support for xHCI Port Link Info (PORTLI) register. 2025-11-21 14:53:01 +01: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: Split R-Car Gen2 and Gen3 .plat_start() handling 2026-06-03 19:23:37 +02:00
xhci-ring.c xhci: fix lost bounce buffers on TDs spanning several ring segments 2026-08-31 11:43:00 +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
xhci-rzv2m.h
xhci-sideband.c xhci: sideband: fix ring sg table pages leak 2026-07-08 13:38:24 +02:00
xhci-tegra.c usb: xhci: standardize multi bit-field macros 2026-08-14 10:26:41 +09:00
xhci-trace.c
xhci-trace.h usb: xhci: standardize single bit-field macros 2025-11-21 14:53:01 +01:00
xhci.c usb: xhci: remove redundant 'xhci' pointer from endpoint struct 2026-08-14 10:26:41 +09:00
xhci.h usb: xhci: remove redundant 'xhci' pointer from endpoint struct 2026-08-14 10:26:41 +09:00