From: Viresh Kumar Date: Thu, 27 Nov 2014 00:37:50 +0000 (+0530) Subject: cpufreq-dt: pass 'policy->related_cpus' to of_cpufreq_cooling_register() X-Git-Tag: v3.19-rc1~129^2~1^2~6^2~2 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=d3a10c14755a5929eaf43cea760bc307ee7e96bc;p=karo-tx-linux.git cpufreq-dt: pass 'policy->related_cpus' to of_cpufreq_cooling_register() The second parameter of of_cpufreq_cooling_register() should be the CPUs to which the frequency constraint will apply. As the cpufreq-dt driver now supports platforms with multiple 'struct cpufreq_policy' instances (i.e. > 1 clock domains for CPUs), passing 'cpu_present_mask' isn't correct anymore. As every policy will have a set of CPUs and that may not be equal to 'cpu_present_mask' always. So, pass only mask of CPUs which are controlled by current policy. Signed-off-by: Viresh Kumar Reviewed-by: Eduardo Valentin Tested-by: Eduardo Valentin Signed-off-by: Rafael J. Wysocki --- diff --git a/drivers/cpufreq/cpufreq-dt.c b/drivers/cpufreq/cpufreq-dt.c index 8cba13df5f28..7374fc4b6bb3 100644 --- a/drivers/cpufreq/cpufreq-dt.c +++ b/drivers/cpufreq/cpufreq-dt.c @@ -274,7 +274,7 @@ static int cpufreq_init(struct cpufreq_policy *policy) * thermal DT code takes care of matching them. */ if (of_find_property(np, "#cooling-cells", NULL)) { - cdev = of_cpufreq_cooling_register(np, cpu_present_mask); + cdev = of_cpufreq_cooling_register(np, policy->related_cpus); if (IS_ERR(cdev)) dev_err(cpu_dev, "running cpufreq without cooling device: %ld\n",