]> www.infradead.org Git - users/jedix/linux-maple.git/commit
pmdomain: core: Leave powered-on genpds on until late_initcall_sync
authorUlf Hansson <ulf.hansson@linaro.org>
Tue, 1 Jul 2025 11:47:23 +0000 (13:47 +0200)
committerUlf Hansson <ulf.hansson@linaro.org>
Wed, 9 Jul 2025 11:29:53 +0000 (13:29 +0200)
commit13a4b7fb62600e1c0738fdb0b7176555ff05aadf
tree45acd16c63322c7c8e25bc9e6374014fe0031e79
parentf66c65686abdf317f6ea1ebd3a76a2cdb2020d06
pmdomain: core: Leave powered-on genpds on until late_initcall_sync

Powering-off a genpd that was on during boot, before all of its consumer
devices have been probed, is certainly prone to problems.

As a step to improve this situation, let's prevent these genpds from being
powered-off until genpd_power_off_unused() gets called, which is a
late_initcall_sync().

Note that, this still doesn't guarantee that all the consumer devices has
been probed before we allow to power-off the genpds. Yet, this should be a
step in the right direction.

Suggested-by: Saravana Kannan <saravanak@google.com>
Tested-by: Hiago De Franco <hiago.franco@toradex.com> # Colibri iMX8X
Tested-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com> # TI AM62A,Xilinx ZynqMP ZCU106
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Link: https://lore.kernel.org/r/20250701114733.636510-22-ulf.hansson@linaro.org
drivers/pmdomain/core.c
include/linux/pm_domain.h