Thread (8 messages) 8 messages, 3 authors, 2025-06-10

Re: [RFC PATCH] pmdomain: arm: scmi_pm_domain: Do lazy init as part of probe

From: Sudeep Holla <hidden>
Date: 2025-05-30 16:37:25
Also in: arm-scmi, linux-pm, lkml

On Fri, May 30, 2025 at 05:31:08PM +0100, Sudeep Holla wrote:
On Fri, May 30, 2025 at 04:05:27PM +0530, Dhruva Gole wrote:
quoted
Optimize the SCMI power domain driver to only initialize domains that are
actually referenced in the device tree. Previously, the driver would
initialize all possible domains up to the maximum ID, which could lead to
unnecessary firmware calls and longer probe times.

Key changes:
- Scan device tree to identify which power domains are actually referenced
How do this work with runtime DT overlays ?
quoted
- Use bitmap to track needed domains instead of initializing all
- Only perform state queries and initialization for referenced domains
- Maintain proper array sizing for power domain framework compatibility
- Keep full provider structure to support late binding

This optimization reduces probe time and unnecessary firmware interactions
by only initializing power domains that are actually used in the system.
Why is this very specific to power domains only ? This must apply for other
domains like perf or clock or reset ?
quoted
For example, in a system with 100 possible domains but only 3 referenced
in the device tree, we now only initialize those 3 domains instead of
all 100.
Well, how much of these PD will get used in the final products ? I can
understand the need to use just 3 in devel platforms. Just trying to see
how realistic is the scenario ? Is there any other optimisation possible
from the firmware ? Does getting the state of a PD takes so much time
on the platform in question ?
And I missed another point. Someone will soon complain Linux no longer
turns off unused power domains. So I am inclined against this optimisation.
We need to consider all the above point before .

-- 
Regards,
Sudeep
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help