Re: [PATCH v4 2/4] OPP: change parameter to device pointer in dev_pm_opp_of_register_em()

From: Lukasz Luba
Date: Fri Mar 13 2020 - 13:12:00 EST




On 3/13/20 10:15 AM, Quentin Perret wrote:
On Monday 09 Mar 2020 at 13:41:15 (+0000), Lukasz Luba wrote:
diff --git a/drivers/cpufreq/cpufreq-dt.c b/drivers/cpufreq/cpufreq-dt.c
index d2b5f062a07b..676b56424886 100644
--- a/drivers/cpufreq/cpufreq-dt.c
+++ b/drivers/cpufreq/cpufreq-dt.c
@@ -275,7 +275,9 @@ static int cpufreq_init(struct cpufreq_policy *policy)
policy->cpuinfo.transition_latency = transition_latency;
policy->dvfs_possible_from_any_cpu = true;
- dev_pm_opp_of_register_em(policy->cpus);
+ ret = dev_pm_opp_of_register_em(cpu_dev, policy->cpus);
+ if (ret)
+ dev_dbg(cpu_dev, "Couldn't register Energy Model %d\n", ret);
return 0;

Ah, that answers my comment on patch 01. You're adding the error
messages here.

Isn't this more boilerplate for the drivers ? All they do is print the
same debug message. Maybe just move it inside dev_pm_opp_of_register_em
directly ?


Agree. I could add a 'fail' label in dev_pm_opp_of_register_em
something like:

--------------------------------->8----------------
dev_pm_opp_of_register_em
...
nr_opp = dev_pm_opp_get_opp_count(dev);
if (nr_opp <= 0) {
ret = -EINVAL;
goto fail;
}

...
ret = em_register_perf_domain()
if (ret)
goto fail;

return 0;

fail:
dev_dbg(cpu_dev, "Couldn't register Energy Model %d\n", ret);
return ret
------------------------8<-----------------

Makes more sense, agree, thank you for your suggestion.

I will remove this
if (ret)
dev_dbg(cpu_dev, "Couldn't register Energy Model %d\n", ret);
from the cpufreq drivers.


Regards,
Lukasz