Re: [PATCH 0/5] pmdomain: Restore behaviour for disabling unused PM domains
From: Diederik de Haas <hidden>
Date: 2025-09-10 19:33:21
Also in:
linux-pm, linux-rockchip, lkml
Hi, On Tue Sep 9, 2025 at 1:11 PM CEST, Ulf Hansson wrote:
Recent changes to genpd prevents those PM domains being powered-on during initialization from being powered-off during the boot sequence. Based upon whether CONFIG_PM_CONFIG_PM_GENERIC_DOMAINS_OF is set of not, genpd relies on the sync_state mechanism or the genpd_power_off_unused() (which is a late_initcall_sync), to understand when it's okay to allow these PM domains to be powered-off. This new behaviour in genpd has lead to problems on different platforms [1]. In this series, I am therefore suggesting to restore the behavior of genpd_power_off_unused() along with introducing a new genpd config flag, GENPD_FLAG_NO_STAY_ON, to allow genpd OF providers to opt-out from the new behaviour.
Is it expected that I'm still seeing this on a Rock64 (rk3328), just like before [1]? [ 17.124202] rockchip-pm-domain ff100000.syscon:power-controller: sync_state() pending due to ff300000.gpu [ 17.129799] rockchip-pm-domain ff100000.syscon:power-controller: sync_state() pending due to ff350000.video-codec [ 17.140003] rockchip-pm-domain ff100000.syscon:power-controller: sync_state() pending due to ff360000.video-codec This is with a 6.17-rc5 kernel with this patch set applied. And it also has this patch from Christian Hewitt added, now in v3: https://lore.kernel.org/linux-rockchip/20250906120810.1833016-1-christianshewitt@gmail.com/ (local) When I boot into a 6.17-rc5 kernel without any patches applied, I do get the 2 for ff350000.video-codec and ff360000.video-codec, but not the ff300000.gpu one. Interestingly: ff300000.gpu -> power-domains = <&power RK3328_PD_GPU>; ff350000.video-codec -> power-domains = <&power RK3328_PD_VPU>; ff360000.video-codec -> power-domains = <&power RK3328_PD_VIDEO>; I would be surprised if that was a coincidence. Cheers, Diederik [1] https://lore.kernel.org/all/DCK0O99SYSCF.BMBAEUV24C1G@cknow.org/ (local)
Kind regards Ulf Hansson [1] https://lore.kernel.org/all/20250701114733.636510-1-ulf.hansson@linaro.org/ (local) https://lore.kernel.org/all/20250902-rk3576-lockup-regression-v1-1-c4a0c9daeb00@collabora.com/ (local) Ulf Hansson (5): pmdomain: core: Restore behaviour for disabling unused PM domains pmdomain: rockchip: Fix regulator dependency with GENPD_FLAG_NO_STAY_ON pmdomain: renesas: rcar-sysc: Don't keep unused PM domains powered-on pmdomain: renesas: rcar-gen4-sysc: Don't keep unused PM domains powered-on pmdomain: renesas: rmobile-sysc: Don't keep unused PM domains powered-on drivers/pmdomain/core.c | 20 ++++++++++++++------ drivers/pmdomain/renesas/rcar-gen4-sysc.c | 1 + drivers/pmdomain/renesas/rcar-sysc.c | 1 + drivers/pmdomain/renesas/rmobile-sysc.c | 3 ++- drivers/pmdomain/rockchip/pm-domains.c | 2 +- include/linux/pm_domain.h | 7 +++++++ 6 files changed, 26 insertions(+), 8 deletions(-)
Attachments
- signature.asc [application/pgp-signature] 228 bytes