[PATCH v2 0/7] pmdomain/cpuidle-psci: Support s2idle/s2ram on PREEMPT_RT
Ulf Hansson
ulf.hansson at linaro.org
Mon Aug 5 04:35:06 PDT 2024
+ Raghavendra Kakarla, Sebastian Andrzej Siewior
On Mon, 27 May 2024 at 16:26, Ulf Hansson <ulf.hansson at linaro.org> wrote:
>
> Updates in v2:
> - Rebased and fixed a small issue in genpd, see patch3.
> - Re-tested on v6.9-rt5 (PREEMPT_RT enabled)
> - Re-tested on v6.10-rc1 (for regressions, PREEMPT_RT disabled)
>
> The hierarchical PM domain topology and the corresponding domain-idle-states
> are currently disabled on a PREEMPT_RT based configuration. The main reason is
> because spinlocks are turned into sleepable locks on PREEMPT_RT, which means
> genpd and runtime PM can't be use in the atomic idle-path when
> selecting/entering an idle-state.
>
> For s2idle/s2ram this is an unnecessary limitation that this series intends to
> address. Note that, the support for cpuhotplug is left to future improvements.
> More information about this are available in the commit messages.
>
> I have tested this on a Dragonboard 410c.
>
> Kind regards
> Ulf Hansson
>
>
> Ulf Hansson (7):
> pmdomain: core: Enable s2idle for CPU PM domains on PREEMPT_RT
> pmdomain: core: Don't hold the genpd-lock when calling
> dev_pm_domain_set()
> pmdomain: core: Use dev_name() instead of kobject_get_path() in
> debugfs
> cpuidle: psci-domain: Enable system-wide suspend on PREEMPT_RT
> cpuidle: psci: Drop redundant assignment of CPUIDLE_FLAG_RCU_IDLE
> cpuidle: psci: Enable the hierarchical topology for s2ram on
> PREEMPT_RT
> cpuidle: psci: Enable the hierarchical topology for s2idle on
> PREEMPT_RT
>
> drivers/cpuidle/cpuidle-psci-domain.c | 10 ++--
> drivers/cpuidle/cpuidle-psci.c | 26 ++++++----
> drivers/pmdomain/core.c | 75 +++++++++++++++++++--------
> include/linux/pm_domain.h | 5 +-
> 4 files changed, 80 insertions(+), 36 deletions(-)
>
Just wanted to let you all know that I have queued up this series via
my pmdomain tree. Please let me know if you have any further
comments/suggestions.
Kind regards
Uffe
More information about the linux-arm-kernel
mailing list