* [PATCH 1/4] usb: ohci-da8xx: disable controller wakeup on cleanup
2026-09-15 1:20 [PATCH 0/4] usb: ohci: Balance controller wakeup on cleanup Myeonghun Pak
@ 2026-09-15 1:20 ` Myeonghun Pak
2026-09-15 1:20 ` [PATCH 2/4] usb: ohci-s3c2410: disable controller wakeup on removal Myeonghun Pak
` (3 subsequent siblings)
4 siblings, 0 replies; 8+ messages in thread
From: Myeonghun Pak @ 2026-09-15 1:20 UTC (permalink / raw)
To: Alan Stern, Greg Kroah-Hartman
Cc: Krzysztof Kozlowski, Peter Griffin, Alim Akhtar, Patrice Chotard,
linux-usb, linux-kernel, linux-arm-kernel, linux-samsung-soc,
stable
The OHCI core marks controllers with RemoteWakeupConnected as
wakeup-capable. Probe enables wakeup, but neither removal nor a later
notifier registration failure disables it, leaving the wakeup source
attached.
Disable controller wakeup after removing the HCD on both paths.
This issue was identified during our ongoing static-analysis research
while reviewing kernel code.
Fixes: a6eeeb9f45b5 ("USB: Update USB default wakeup settings")
Cc: stable@vger.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>
---
drivers/usb/host/ohci-da8xx.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/usb/host/ohci-da8xx.c b/drivers/usb/host/ohci-da8xx.c
--- a/drivers/usb/host/ohci-da8xx.c
+++ b/drivers/usb/host/ohci-da8xx.c
@@ -447,6 +447,7 @@
err_remove_hcd:
usb_remove_hcd(hcd);
+ device_wakeup_disable(hcd->self.controller);
err:
usb_put_hcd(hcd);
return error;
@@ -457,5 +458,6 @@
struct usb_hcd *hcd = platform_get_drvdata(pdev);
usb_remove_hcd(hcd);
+ device_wakeup_disable(hcd->self.controller);
usb_put_hcd(hcd);
}
^ permalink raw reply [flat|nested] 8+ messages in thread* [PATCH 2/4] usb: ohci-s3c2410: disable controller wakeup on removal
2026-09-15 1:20 [PATCH 0/4] usb: ohci: Balance controller wakeup on cleanup Myeonghun Pak
2026-09-15 1:20 ` [PATCH 1/4] usb: ohci-da8xx: disable " Myeonghun Pak
@ 2026-09-15 1:20 ` Myeonghun Pak
2026-09-15 1:20 ` [PATCH 3/4] usb: ohci-spear: " Myeonghun Pak
` (2 subsequent siblings)
4 siblings, 0 replies; 8+ messages in thread
From: Myeonghun Pak @ 2026-09-15 1:20 UTC (permalink / raw)
To: Alan Stern, Greg Kroah-Hartman
Cc: Krzysztof Kozlowski, Peter Griffin, Alim Akhtar, Patrice Chotard,
linux-usb, linux-kernel, linux-arm-kernel, linux-samsung-soc,
stable
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: a6eeeb9f45b5 ("USB: Update USB default wakeup settings")
Cc: stable@vger.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>
---
drivers/usb/host/ohci-s3c2410.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/usb/host/ohci-s3c2410.c b/drivers/usb/host/ohci-s3c2410.c
--- a/drivers/usb/host/ohci-s3c2410.c
+++ b/drivers/usb/host/ohci-s3c2410.c
@@ -335,6 +335,7 @@
struct usb_hcd *hcd = platform_get_drvdata(dev);
usb_remove_hcd(hcd);
+ device_wakeup_disable(hcd->self.controller);
s3c2410_stop_hc(dev);
usb_put_hcd(hcd);
}
^ permalink raw reply [flat|nested] 8+ messages in thread* [PATCH 3/4] usb: ohci-spear: disable controller wakeup on removal
2026-09-15 1:20 [PATCH 0/4] usb: ohci: Balance controller wakeup on cleanup Myeonghun Pak
2026-09-15 1:20 ` [PATCH 1/4] usb: ohci-da8xx: disable " Myeonghun Pak
2026-09-15 1:20 ` [PATCH 2/4] usb: ohci-s3c2410: disable controller wakeup on removal Myeonghun Pak
@ 2026-09-15 1:20 ` Myeonghun Pak
2026-09-15 1:20 ` [PATCH 4/4] usb: ohci-st: " Myeonghun Pak
2026-09-15 15:01 ` [PATCH 0/4] usb: ohci: Balance controller wakeup on cleanup Alan Stern
4 siblings, 0 replies; 8+ messages in thread
From: Myeonghun Pak @ 2026-09-15 1:20 UTC (permalink / raw)
To: Alan Stern, Greg Kroah-Hartman
Cc: Krzysztof Kozlowski, Peter Griffin, Alim Akhtar, Patrice Chotard,
linux-usb, linux-kernel, linux-arm-kernel, linux-samsung-soc,
stable
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: a6eeeb9f45b5 ("USB: Update USB default wakeup settings")
Cc: stable@vger.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>
---
drivers/usb/host/ohci-spear.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/usb/host/ohci-spear.c b/drivers/usb/host/ohci-spear.c
--- a/drivers/usb/host/ohci-spear.c
+++ b/drivers/usb/host/ohci-spear.c
@@ -103,6 +103,7 @@
struct spear_ohci *sohci_p = to_spear_ohci(hcd);
usb_remove_hcd(hcd);
+ device_wakeup_disable(hcd->self.controller);
clk_disable_unprepare(sohci_p->clk);
usb_put_hcd(hcd);
^ permalink raw reply [flat|nested] 8+ messages in thread* [PATCH 4/4] usb: ohci-st: disable controller wakeup on removal
2026-09-15 1:20 [PATCH 0/4] usb: ohci: Balance controller wakeup on cleanup Myeonghun Pak
` (2 preceding siblings ...)
2026-09-15 1:20 ` [PATCH 3/4] usb: ohci-spear: " Myeonghun Pak
@ 2026-09-15 1:20 ` Myeonghun Pak
2026-09-15 9:34 ` Patrice CHOTARD
2026-09-15 9:34 ` Patrice CHOTARD
2026-09-15 15:01 ` [PATCH 0/4] usb: ohci: Balance controller wakeup on cleanup Alan Stern
4 siblings, 2 replies; 8+ messages in thread
From: Myeonghun Pak @ 2026-09-15 1:20 UTC (permalink / raw)
To: Alan Stern, Greg Kroah-Hartman
Cc: Krzysztof Kozlowski, Peter Griffin, Alim Akhtar, Patrice Chotard,
linux-usb, linux-kernel, linux-arm-kernel, linux-samsung-soc,
stable
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: d115837259ad ("usb: host: ohci-st: Add OHCI driver support for ST STB devices")
Cc: stable@vger.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>
---
drivers/usb/host/ohci-st.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/usb/host/ohci-st.c b/drivers/usb/host/ohci-st.c
--- a/drivers/usb/host/ohci-st.c
+++ b/drivers/usb/host/ohci-st.c
@@ -235,6 +235,7 @@
int clk;
usb_remove_hcd(hcd);
+ device_wakeup_disable(hcd->self.controller);
if (pdata->power_off)
pdata->power_off(dev);
^ permalink raw reply [flat|nested] 8+ messages in thread* Re: [PATCH 4/4] usb: ohci-st: disable controller wakeup on removal
2026-09-15 1:20 ` [PATCH 4/4] usb: ohci-st: " Myeonghun Pak
@ 2026-09-15 9:34 ` Patrice CHOTARD
2026-09-15 9:34 ` Patrice CHOTARD
1 sibling, 0 replies; 8+ messages in thread
From: Patrice CHOTARD @ 2026-09-15 9:34 UTC (permalink / raw)
To: Myeonghun Pak, Alan Stern, Greg Kroah-Hartman
Cc: Krzysztof Kozlowski, Peter Griffin, Alim Akhtar, linux-usb,
linux-kernel, linux-arm-kernel, linux-samsung-soc, stable
On 9/15/26 03:20, Myeonghun Pak wrote:
> 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: d115837259ad ("usb: host: ohci-st: Add OHCI driver support for ST STB devices")
> Cc: stable@vger.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>
> ---
> drivers/usb/host/ohci-st.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/usb/host/ohci-st.c b/drivers/usb/host/ohci-st.c
> --- a/drivers/usb/host/ohci-st.c
> +++ b/drivers/usb/host/ohci-st.c
> @@ -235,6 +235,7 @@
> int clk;
>
> usb_remove_hcd(hcd);
> + device_wakeup_disable(hcd->self.controller);
>
> if (pdata->power_off)
> pdata->power_off(dev);
^ permalink raw reply [flat|nested] 8+ messages in thread* Re: [PATCH 4/4] usb: ohci-st: disable controller wakeup on removal
2026-09-15 1:20 ` [PATCH 4/4] usb: ohci-st: " Myeonghun Pak
2026-09-15 9:34 ` Patrice CHOTARD
@ 2026-09-15 9:34 ` Patrice CHOTARD
1 sibling, 0 replies; 8+ messages in thread
From: Patrice CHOTARD @ 2026-09-15 9:34 UTC (permalink / raw)
To: Myeonghun Pak, Alan Stern, Greg Kroah-Hartman
Cc: Krzysztof Kozlowski, Peter Griffin, Alim Akhtar, linux-usb,
linux-kernel, linux-arm-kernel, linux-samsung-soc, stable
On 9/15/26 03:20, Myeonghun Pak wrote:
> 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: d115837259ad ("usb: host: ohci-st: Add OHCI driver support for ST STB devices")
> Cc: stable@vger.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>
> ---
> drivers/usb/host/ohci-st.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/usb/host/ohci-st.c b/drivers/usb/host/ohci-st.c
> --- a/drivers/usb/host/ohci-st.c
> +++ b/drivers/usb/host/ohci-st.c
> @@ -235,6 +235,7 @@
> int clk;
>
> usb_remove_hcd(hcd);
> + device_wakeup_disable(hcd->self.controller);
>
> if (pdata->power_off)
> pdata->power_off(dev);
Hi Myeonghun
Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
Thanks
Patrice
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH 0/4] usb: ohci: Balance controller wakeup on cleanup
2026-09-15 1:20 [PATCH 0/4] usb: ohci: Balance controller wakeup on cleanup Myeonghun Pak
` (3 preceding siblings ...)
2026-09-15 1:20 ` [PATCH 4/4] usb: ohci-st: " Myeonghun Pak
@ 2026-09-15 15:01 ` Alan Stern
4 siblings, 0 replies; 8+ messages in thread
From: Alan Stern @ 2026-09-15 15:01 UTC (permalink / raw)
To: Myeonghun Pak
Cc: Greg Kroah-Hartman, Krzysztof Kozlowski, Peter Griffin,
Alim Akhtar, Patrice Chotard, linux-usb, linux-kernel,
linux-arm-kernel, linux-samsung-soc, stable
On Mon, Sep 14, 2026 at 09:20:07PM -0400, Myeonghun Pak wrote:
> These four independent fixes disable controller wakeup after HCD removal
> in the DA8xx, S3C2410, SPEAr and ST drivers. DA8xx also needs the same
> cleanup when notifier registration fails after the HCD is added.
>
> This issue was identified during our ongoing static-analysis research
> while reviewing kernel code.
>
> Assisted-by: LLM
>
> Myeonghun Pak (4):
> usb: ohci-da8xx: disable controller wakeup on cleanup
> usb: ohci-s3c2410: disable controller wakeup on removal
> usb: ohci-spear: disable controller wakeup on removal
> usb: ohci-st: disable controller wakeup on removal
For all four patches:
Acked-by: Alan Stern <stern@rowland.harvard.edu>
^ permalink raw reply [flat|nested] 8+ messages in thread