diff mbox series

[04/11] pmdomain: raspberrypi-power: Avoid powering down USB

Message ID 20240630153652.318882-5-wahrenst@gmx.net (mailing list archive)
State Handled Elsewhere, archived
Headers show
Series ARM: bcm2835: Implement initial S2Idle for Raspberry Pi | expand

Commit Message

Stefan Wahren June 30, 2024, 3:36 p.m. UTC
During supend to idle any request to power off the USB domain
leads to a timeout. As a temporary workaround don't register
the relevant power off handler.

Link: https://github.com/raspberrypi/firmware/issues/1894
Signed-off-by: Stefan Wahren <wahrenst@gmx.net>
---
 drivers/pmdomain/bcm/raspberrypi-power.c | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

--
2.34.1
diff mbox series

Patch

diff --git a/drivers/pmdomain/bcm/raspberrypi-power.c b/drivers/pmdomain/bcm/raspberrypi-power.c
index 39d9a52200c3..3e7b84006acc 100644
--- a/drivers/pmdomain/bcm/raspberrypi-power.c
+++ b/drivers/pmdomain/bcm/raspberrypi-power.c
@@ -86,7 +86,14 @@  static void rpi_common_init_power_domain(struct rpi_power_domains *rpi_domains,

 	dom->base.name = name;
 	dom->base.power_on = rpi_domain_on;
-	dom->base.power_off = rpi_domain_off;
+
+	/*
+	 * During supend to idle any request to power off the USB domain
+	 * leads to a timeout. As a temporary workaround don't register
+	 * the relevant power off handler.
+	 */
+	if (strcmp("USB", name))
+		dom->base.power_off = rpi_domain_off;

 	/*
 	 * Treat all power domains as off at boot.