OSDN Git Service

cpufreq: imx6q/thermal: imx: register cooling device depending on OF
authorBastian Stender <bst@pengutronix.de>
Fri, 8 Jun 2018 09:06:39 +0000 (11:06 +0200)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Mon, 2 Jul 2018 09:26:36 +0000 (11:26 +0200)
commita1d0015423920672c3f32e69bd9feef2ec629b57
tree59141b92e8d8fcb30c54cadf3617e9574f4b0e62
parent1111b7836c80ec4094318e1dfb3a5abe6df95afb
cpufreq: imx6q/thermal: imx: register cooling device depending on OF

The cooling device should be part of the i.MX cpufreq driver, but it
cannot be removed for the sake of DT stability. So turn the cooling
device registration into a separate function and perform the
registration only if the CPU OF node does not have the #cooling-cells
property.

Use of_cpufreq_power_cooling_register in imx_thermal code to link the
cooling device to the device tree node provided.

This makes it possible to bind the cpufreq cooling device to a custom
thermal zone via a cooling-maps entry like:

cooling-maps {
map0 {
trip = <&board_alert>;
cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
};

Assuming a cpu node exists with label "cpu0" and #cooling-cells
property.

Signed-off-by: Bastian Stender <bst@pengutronix.de>
Reviewed-by: Lucas Stach <l.stach@pengutronix.de>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
drivers/cpufreq/imx6q-cpufreq.c
drivers/thermal/imx_thermal.c