Message ID | 20230825112633.236607-12-ulf.hansson@linaro.org (mailing list archive) |
---|---|
State | New, archived |
Delegated to: | viresh kumar |
Headers | show |
Series | arm_scmi/cpufreq: Add generic performance scaling support | expand |
Hi Viresh, On Fri, Aug 25, 2023 at 01:26:31PM +0200, Ulf Hansson wrote: > The performance domain-id can be described in DT using the power-domains > property or the clock property. The latter is already supported, so let's > add support for the power-domains too. > > Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> > --- > > Changes in v3: > - Move to get the power-domain index from power-domain-names. > Can you please provide you ack for all the scmi-cpufreq related changes in this series to take it via arm-soc tree ? -- Regards, Sudeep
On Fri, 25 Aug 2023 at 13:27, Ulf Hansson <ulf.hansson@linaro.org> wrote: > > The performance domain-id can be described in DT using the power-domains > property or the clock property. The latter is already supported, so let's > add support for the power-domains too. > > Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> > --- > > Changes in v3: > - Move to get the power-domain index from power-domain-names. > > --- > drivers/cpufreq/scmi-cpufreq.c | 25 +++++++++++++++++++------ > 1 file changed, 19 insertions(+), 6 deletions(-) Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
diff --git a/drivers/cpufreq/scmi-cpufreq.c b/drivers/cpufreq/scmi-cpufreq.c index 48bd393a1506..08497b84efe1 100644 --- a/drivers/cpufreq/scmi-cpufreq.c +++ b/drivers/cpufreq/scmi-cpufreq.c @@ -72,13 +72,26 @@ static unsigned int scmi_cpufreq_fast_switch(struct cpufreq_policy *policy, static int scmi_cpu_domain_id(struct device *cpu_dev) { - struct of_phandle_args clkspec; - - if (of_parse_phandle_with_args(cpu_dev->of_node, "clocks", - "#clock-cells", 0, &clkspec)) - return -EINVAL; + struct device_node *np = cpu_dev->of_node; + struct of_phandle_args domain_id; + int index; + + if (of_parse_phandle_with_args(np, "clocks", "#clock-cells", 0, + &domain_id)) { + + /* Find the corresponding index for power-domain "perf". */ + index = of_property_match_string(np, "power-domain-names", + "perf"); + if (index < 0) + return -EINVAL; + + if (of_parse_phandle_with_args(np, "power-domains", + "#power-domain-cells", index, + &domain_id)) + return -EINVAL; + } - return clkspec.args[0]; + return domain_id.args[0]; } static int
The performance domain-id can be described in DT using the power-domains property or the clock property. The latter is already supported, so let's add support for the power-domains too. Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> --- Changes in v3: - Move to get the power-domain index from power-domain-names. --- drivers/cpufreq/scmi-cpufreq.c | 25 +++++++++++++++++++------ 1 file changed, 19 insertions(+), 6 deletions(-)