Thread (4 messages) 4 messages, 2 authors, 2014-11-28

[PATCH 1/1] thermal: cpu_cooling: check for the readiness of cpufreq layer

From: edubezval@gmail.com (Eduardo Valentin)
Date: 2014-11-27 14:08:22
Also in: linux-devicetree, linux-pm, linux-samsung-soc, lkml

Hello Viresh,

On Thu, Nov 27, 2014 at 09:38:39AM +0530, Viresh Kumar wrote:
Few nits..

On 26 November 2014 at 23:20, Eduardo Valentin [off-list ref] wrote:
quoted
Signed-off-by: Eduardo Valentin <edubezval@gmail.com>
---
The normal practice is to write the non-commitable part here ...
err... normal practice by whom? hehe...

My "normal" practice is to allow people to read the diff stat before my
extra comments :-)
quoted
 drivers/thermal/cpu_cooling.c                      | 5 +++++
 drivers/thermal/db8500_cpufreq_cooling.c           | 5 -----
 drivers/thermal/imx_thermal.c                      | 5 -----
 drivers/thermal/samsung/exynos_thermal_common.c    | 2 +-
 drivers/thermal/ti-soc-thermal/ti-thermal-common.c | 6 ------
 5 files changed, 6 insertions(+), 17 deletions(-)
---
But this works as well :)
hehe ok.
quoted
This is attempt to organize the cpu cooling vs. cpufreq boot sequencing.
The main change in this patch, as in the commit log, is to have the check
for the cpufreq layer in the cpu cooling device registration, instead of
in thermal drivers. This way, drivers don't need to bother about it, they
just need to propagate the error value.

This change was tested on top of:
(0) - Viresh's change in cpufreq layer and cpufreq-dt (up to patch 4):
https://patchwork.kernel.org/patch/5384141/
https://patchwork.kernel.org/patch/5384151/
https://patchwork.kernel.org/patch/5384161/
https://patchwork.kernel.org/patch/5384171/
(1) - fix of thermal core:
https://patchwork.kernel.org/patch/5326991/

After Viresh's changes, cpufreq-dt is properly sequenced with cpu cooling
registration. Non-of based drivers also should take advantage if these
changes, as now they do not need to check for cpufreq layer. The check is
where it belongs, in cpu cooling device registration.

BR, Eduardo Valentin

diff --git a/drivers/thermal/cpu_cooling.c b/drivers/thermal/cpu_cooling.c
index 1ab0018..9e6945b 100644
--- a/drivers/thermal/cpu_cooling.c
+++ b/drivers/thermal/cpu_cooling.c
@@ -440,6 +440,11 @@ __cpufreq_cooling_register(struct device_node *np,
        int ret = 0, i;
        struct cpufreq_policy policy;

+       if (!cpufreq_get_current_driver() || !cpufreq_frequency_get_table(0)) {
Only !cpufreq_frequency_get_table(0) is enough here.
Yeah, I thought of it too. Just combined what people had in their
drivers here. But I agree that latter is enough.
For rest:

Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
Ok.

though.. "normal practice" says  ack's are oftern used by the maintainer
of the affected code (quoting Documentation/SubmittingPatches) :-)
BR, Eduardo Valenti
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 473 bytes
Desc: Digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20141127/8e88e19b/attachment.sig>
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help