[PATCH 1/3] usb: ehci-platform: Disable controller wakeup on removal

From: Myeonghun Pak

Date: Sun Sep 13 2026 - 18:38:38 EST


On wakeup-capable ACPI controllers, a successful probe-time wakeup enable
leaves a source attached after driver unbind: usb_remove_hcd() does not
disable controller wakeup.

Disable it after usb_remove_hcd() to balance the enable.

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

Fixes: 776c15d0ad0c ("USB: ehci-platform: Add ACPI bindings for the EHCI platform driver.")
Assisted-by: OpenAI:GPT-5.6
Co-developed-by: Ijae Kim <ae878000@xxxxxxxxx>
Signed-off-by: Ijae Kim <ae878000@xxxxxxxxx>
Signed-off-by: Myeonghun Pak <mhun512@xxxxxxxxx>
---
drivers/usb/host/ehci-platform.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/drivers/usb/host/ehci-platform.c b/drivers/usb/host/ehci-platform.c
index f61f095..b749de0 100644
--- a/drivers/usb/host/ehci-platform.c
+++ b/drivers/usb/host/ehci-platform.c
@@ -420,6 +420,7 @@ static void ehci_platform_remove(struct platform_device *dev)
quirk_poll_end(priv);

usb_remove_hcd(hcd);
+ device_wakeup_disable(hcd->self.controller);

if (pdata->power_off)
pdata->power_off(dev);