ARM: dts: rockchip: add RK3288 Thermal data
authorCaesar Wang <caesar.wang@rock-chips.com>
Mon, 24 Nov 2014 04:59:00 +0000 (12:59 +0800)
committerHeiko Stuebner <heiko@sntech.de>
Mon, 24 Nov 2014 23:30:51 +0000 (00:30 +0100)
This patch changes a dtsi file to contain the thermal data
on RK3288 and later SoCs. This data will
enable a thermal shutdown over 90C.

Signed-off-by: Caesar Wang <caesar.wang@rock-chips.com>
Reviewed-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
arch/arm/boot/dts/rk3288-thermal.dtsi [new file with mode: 0644]

diff --git a/arch/arm/boot/dts/rk3288-thermal.dtsi b/arch/arm/boot/dts/rk3288-thermal.dtsi
new file mode 100644 (file)
index 0000000..2695200
--- /dev/null
@@ -0,0 +1,74 @@
+/*
+ * Device Tree Source for RK3288 SoC thermal
+ *
+ * Copyright (c) 2014, Fuzhou Rockchip Electronics Co., Ltd
+ *
+ * This file is licensed under the terms of the GNU General Public License
+ * version 2.  This program is licensed "as is" without any warranty of any
+ * kind, whether express or implied.
+ */
+
+#include <dt-bindings/thermal/thermal.h>
+
+reserve_thermal: reserve_thermal {
+       polling-delay-passive = <1000>; /* milliseconds */
+       polling-delay = <5000>; /* milliseconds */
+
+       thermal-sensors = <&tsadc 0>;
+};
+
+cpu_thermal: cpu_thermal {
+       polling-delay-passive = <1000>; /* milliseconds */
+       polling-delay = <5000>; /* milliseconds */
+
+       thermal-sensors = <&tsadc 1>;
+
+       trips {
+               cpu_alert0: cpu_alert0 {
+                       temperature = <70000>; /* millicelsius */
+                       hysteresis = <2000>; /* millicelsius */
+                       type = "passive";
+               };
+               cpu_crit: cpu_crit {
+                       temperature = <90000>; /* millicelsius */
+                       hysteresis = <2000>; /* millicelsius */
+                       type = "critical";
+               };
+       };
+
+       cooling-maps {
+               map0 {
+                       trip = <&cpu_alert0>;
+                       cooling-device =
+                               <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
+               };
+       };
+};
+
+gpu_thermal: gpu_thermal {
+       polling-delay-passive = <1000>; /* milliseconds */
+       polling-delay = <5000>; /* milliseconds */
+
+       thermal-sensors = <&tsadc 2>;
+
+       trips {
+               gpu_alert0: gpu_alert0 {
+                       temperature = <70000>; /* millicelsius */
+                       hysteresis = <2000>; /* millicelsius */
+                       type = "passive";
+               };
+               gpu_crit: gpu_crit {
+                       temperature = <90000>; /* millicelsius */
+                       hysteresis = <2000>; /* millicelsius */
+                       type = "critical";
+               };
+       };
+
+       cooling-maps {
+               map0 {
+                       trip = <&gpu_alert0>;
+                       cooling-device =
+                               <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
+               };
+       };
+};