]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
usb: dwc2: also exit clock_gating when stopping udc while suspended
authorMichael Grzeschik <m.grzeschik@pengutronix.de>
Thu, 17 Apr 2025 17:40:17 +0000 (19:40 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 6 Jul 2025 09:00:07 +0000 (11:00 +0200)
commit41732f9febdccb4f9b87c13cb915d717d68ccafd
tree9a46ba654c2096a10fbdfea598495bc99d9a9a79
parent8217fa7d92f0bdcfc61c20ba9fa2b6ae50970110
usb: dwc2: also exit clock_gating when stopping udc while suspended

[ Upstream commit af076a41f8a28faf9ceb9dd2d88aef2c202ef39a ]

It is possible that the gadget will be disabled, while the udc is
suspended. When enabling the udc in that case, the clock gating
will not be enabled again. Leaving the phy unclocked. Even when the
udc is not enabled, connecting this powered but not clocked phy leads
to enumeration errors on the host side.

To ensure that the clock gating will be in an valid state, we ensure
that the clock gating will be enabled before stopping the udc.

Signed-off-by: Michael Grzeschik <m.grzeschik@pengutronix.de>
Acked-by: Minas Harutyunyan <hminas@synopsys.com>
Link: https://lore.kernel.org/r/20250417-dwc2_clock_gating-v1-1-8ea7c4d53d73@pengutronix.de
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/usb/dwc2/gadget.c