ARM: dts: r8a7793: enable to use thermal-zone
authorKuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Thu, 28 Jan 2016 02:46:22 +0000 (02:46 +0000)
committerSimon Horman <horms+renesas@verge.net.au>
Fri, 19 Feb 2016 05:52:18 +0000 (14:52 +0900)
This patch enables to use thermal-zone on r8a7793.
This thermal sensor can measure temperature from -40000 to 125000,
but over 117000 can be critical on this chip.
Thus, default critical temperature is now set as 115000 (this driver
is using 5000 steps) (Current critical temperature is using it as
90000, but there is no big reason about it)

And it doesn't check thermal zone periodically (same as current
behavior). You can exchange it by modifying polling-delay[-passive]
property.

You can set trip temp if your kernel has CONFIG_THERMAL_WRITABLE_TRIPS,
but you need to take care to use it, since it will call
orderly_poweroff() it it reaches to the value.
echo $temp > /sys/class/thermal/thermal_zone0/trip_point_0_temp

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
arch/arm/boot/dts/r8a7793.dtsi

index 45dba1c79a43c28782726685874811b8f7a90650..9837f90f17182390046b75d6b3732c5bd665711c 100644 (file)
                };
        };
 
+       thermal-zones {
+               cpu_thermal: cpu-thermal {
+                       polling-delay-passive   = <0>;
+                       polling-delay           = <0>;
+
+                       thermal-sensors = <&thermal>;
+
+                       trips {
+                               cpu-crit {
+                                       temperature     = <115000>;
+                                       hysteresis      = <0>;
+                                       type            = "critical";
+                               };
+                       };
+                       cooling-maps {
+                       };
+               };
+       };
+
        gic: interrupt-controller@f1001000 {
                compatible = "arm,gic-400";
                #interrupt-cells = <3>;
                power-domains = <&cpg_clocks>;
        };
 
-       thermal@e61f0000 {
-               compatible = "renesas,thermal-r8a7793", "renesas,rcar-thermal";
+       thermal: thermal@e61f0000 {
+               compatible =    "renesas,thermal-r8a7793",
+                               "renesas,rcar-gen2-thermal",
+                               "renesas,rcar-thermal";
                reg = <0 0xe61f0000 0 0x14>, <0 0xe61f0100 0 0x38>;
                interrupts = <GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>;
                clocks = <&mstp5_clks R8A7793_CLK_THERMAL>;
                power-domains = <&cpg_clocks>;
+               #thermal-sensor-cells = <0>;
        };
 
        timer {