Message ID | 20201120101252.1113298-1-sudeep.holla@arm.com |
---|---|
State | Accepted |
Commit | f943849f720689214abb3930623c31ff91990be9 |
Headers | show |
Series | cpufreq: scmi: Fix build for !CONFIG_COMMON_CLK | expand |
On 20-11-20, 10:12, Sudeep Holla wrote: > Commit 8410e7f3b31e ("cpufreq: scmi: Fix OPP addition failure with a > dummy clock provider") registers a dummy clock provider using > devm_of_clk_add_hw_provider. These *_hw_provider functions are defined > only when CONFIG_COMMON_CLK=y. One possible fix is to add the Kconfig > dependency, but since we plan to move away from the clock dependency > for scmi cpufreq, it is preferrable to avoid that. > > Let us just conditionally compile out the offending call to > devm_of_clk_add_hw_provider. It also uses the variable 'dev' outside > of the #ifdef block to avoid build warning. > > Fixes: 8410e7f3b31e ("cpufreq: scmi: Fix OPP addition failure with a dummy clock provider") > Cc: Rafael J. Wysocki <rjw@rjwysocki.net> > Cc: Viresh Kumar <viresh.kumar@linaro.org> > Signed-off-by: Sudeep Holla <sudeep.holla@arm.com> > --- > drivers/cpufreq/scmi-cpufreq.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > Hi Viresh, > > Addtional change to replace &sdev->dev with dev is to avoid build warning: > > drivers/cpufreq/scmi-cpufreq.c: In function ‘scmi_cpufreq_probe’: > drivers/cpufreq/scmi-cpufreq.c:232:17: warning: unused variable ‘dev’ [-Wunused-variable] > > Alternatively I can create a block and pull the variable in, but it looked > odd given there is possible user outside the ifdef block which I clearly > missed in the original patch. > > Regards, > Sudeep > > diff --git a/drivers/cpufreq/scmi-cpufreq.c b/drivers/cpufreq/scmi-cpufreq.c > index 78318508a6d6..8286205c7165 100644 > --- a/drivers/cpufreq/scmi-cpufreq.c > +++ b/drivers/cpufreq/scmi-cpufreq.c > @@ -236,13 +236,15 @@ static int scmi_cpufreq_probe(struct scmi_device *sdev) > if (!handle || !handle->perf_ops) > return -ENODEV; > > +#ifdef CONFIG_COMMON_CLK > /* dummy clock provider as needed by OPP if clocks property is used */ > if (of_find_property(dev->of_node, "#clock-cells", NULL)) > devm_of_clk_add_hw_provider(dev, of_clk_hw_simple_get, NULL); > +#endif > > ret = cpufreq_register_driver(&scmi_cpufreq_driver); > if (ret) { > - dev_err(&sdev->dev, "%s: registering cpufreq failed, err: %d\n", > + dev_err(dev, "%s: registering cpufreq failed, err: %d\n", > __func__, ret); > } > Applied. Thanks. -- viresh
diff --git a/drivers/cpufreq/scmi-cpufreq.c b/drivers/cpufreq/scmi-cpufreq.c index 78318508a6d6..8286205c7165 100644 --- a/drivers/cpufreq/scmi-cpufreq.c +++ b/drivers/cpufreq/scmi-cpufreq.c @@ -236,13 +236,15 @@ static int scmi_cpufreq_probe(struct scmi_device *sdev) if (!handle || !handle->perf_ops) return -ENODEV; +#ifdef CONFIG_COMMON_CLK /* dummy clock provider as needed by OPP if clocks property is used */ if (of_find_property(dev->of_node, "#clock-cells", NULL)) devm_of_clk_add_hw_provider(dev, of_clk_hw_simple_get, NULL); +#endif ret = cpufreq_register_driver(&scmi_cpufreq_driver); if (ret) { - dev_err(&sdev->dev, "%s: registering cpufreq failed, err: %d\n", + dev_err(dev, "%s: registering cpufreq failed, err: %d\n", __func__, ret); }
Commit 8410e7f3b31e ("cpufreq: scmi: Fix OPP addition failure with a dummy clock provider") registers a dummy clock provider using devm_of_clk_add_hw_provider. These *_hw_provider functions are defined only when CONFIG_COMMON_CLK=y. One possible fix is to add the Kconfig dependency, but since we plan to move away from the clock dependency for scmi cpufreq, it is preferrable to avoid that. Let us just conditionally compile out the offending call to devm_of_clk_add_hw_provider. It also uses the variable 'dev' outside of the #ifdef block to avoid build warning. Fixes: 8410e7f3b31e ("cpufreq: scmi: Fix OPP addition failure with a dummy clock provider") Cc: Rafael J. Wysocki <rjw@rjwysocki.net> Cc: Viresh Kumar <viresh.kumar@linaro.org> Signed-off-by: Sudeep Holla <sudeep.holla@arm.com> --- drivers/cpufreq/scmi-cpufreq.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) Hi Viresh, Addtional change to replace &sdev->dev with dev is to avoid build warning: drivers/cpufreq/scmi-cpufreq.c: In function ‘scmi_cpufreq_probe’: drivers/cpufreq/scmi-cpufreq.c:232:17: warning: unused variable ‘dev’ [-Wunused-variable] Alternatively I can create a block and pull the variable in, but it looked odd given there is possible user outside the ifdef block which I clearly missed in the original patch. Regards, Sudeep -- 2.25.1