Pārlūkot izejas kodu

cpufreq-dt: Supply power coefficient when registering cooling devices

Support registering cooling devices with dynamic power coefficient
where provided by the device tree. This allows OF registered cooling
devices driver to be used with the power_allocator thermal governor.

Signed-off-by: Punit Agrawal <punit.agrawal@arm.com>
Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
Reviewed-by: Javi Merino <javi.merino@arm.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Punit Agrawal 10 gadi atpakaļ
vecāks
revīzija
f8fa8ae06b
1 mainītis faili ar 7 papildinājumiem un 2 dzēšanām
  1. 7 2
      drivers/cpufreq/cpufreq-dt.c

+ 7 - 2
drivers/cpufreq/cpufreq-dt.c

@@ -407,8 +407,13 @@ static void cpufreq_ready(struct cpufreq_policy *policy)
 	 * thermal DT code takes care of matching them.
 	 * thermal DT code takes care of matching them.
 	 */
 	 */
 	if (of_find_property(np, "#cooling-cells", NULL)) {
 	if (of_find_property(np, "#cooling-cells", NULL)) {
-		priv->cdev = of_cpufreq_cooling_register(np,
-							 policy->related_cpus);
+		u32 power_coefficient = 0;
+
+		of_property_read_u32(np, "dynamic-power-coefficient",
+				     &power_coefficient);
+
+		priv->cdev = of_cpufreq_power_cooling_register(np,
+				policy->related_cpus, power_coefficient, NULL);
 		if (IS_ERR(priv->cdev)) {
 		if (IS_ERR(priv->cdev)) {
 			dev_err(priv->cpu_dev,
 			dev_err(priv->cpu_dev,
 				"running cpufreq without cooling device: %ld\n",
 				"running cpufreq without cooling device: %ld\n",