Hi Wei-Ning, On Fri, May 15, 2015 at 01:33:02PM +0800, Wei-Ning Huang wrote: > Hi Sascha, > I tried these patches but I didn't see any entries under > '/sys/class/thermal', am I missing something? > Wei-Ning
Please write a mail to me rather than to Paul if you want me to react. You'll need a dts snippet that registers a thermal zone. Try the attached patch. I haven't posted it because it only contains my testing code which registers a fake gpio controlled fan. Sascha -----------------------------8<----------------------------- >From 2ea6d94fe430c317064d06b46a8d0d2036ca4236 Mon Sep 17 00:00:00 2001 From: Sascha Hauer <s.ha...@pengutronix.de> Date: Tue, 12 May 2015 09:24:25 +0200 Subject: [PATCH] ARM64: dts: mt8173-evb: debugging: Add fake thermal zone This adds a thermal zone for the CPU which is controlled by a fan. No fan exists on this board and the temperatures are bogus. This is only for debugging purposes until the cpufreq driver is available. Signed-off-by: Sascha Hauer <s.ha...@pengutronix.de> --- arch/arm64/boot/dts/mediatek/mt8173-evb.dts | 39 +++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/arch/arm64/boot/dts/mediatek/mt8173-evb.dts b/arch/arm64/boot/dts/mediatek/mt8173-evb.dts index 43d5401..0a1f905 100644 --- a/arch/arm64/boot/dts/mediatek/mt8173-evb.dts +++ b/arch/arm64/boot/dts/mediatek/mt8173-evb.dts @@ -14,6 +14,7 @@ /dts-v1/; #include "mt8173.dtsi" +#include <dt-bindings/thermal/thermal.h> / { model = "mediatek,mt8173-evb"; @@ -31,6 +32,44 @@ }; chosen { }; + + fan: gpio_fan { + compatible = "gpio-fan"; + gpios = <&pio 24 0>; + gpio-fan,speed-map = <0 0 + 4500 1>; + #cooling-cells = <2>; + }; + + thermal-zones { + cpu_thermal: cpu_thermal { + polling-delay-passive = <1000>; /* milliseconds */ + polling-delay = <0>; /* milliseconds */ + + thermal-sensors = <&thermal 0>; + + trips { + cpu_passive: cpu_passive { + temperature = <47000>; /* millicelsius */ + hysteresis = <2000>; /* millicelsius */ + type = "passive"; + }; + + cpu_crit { + temperature = <90000>; /* millicelsius */ + hysteresis = <2000>; /* millicelsius */ + type = "critical"; + }; + }; + + cooling-maps { + map0 { + trip = <&cpu_passive>; + cooling-device = <&fan THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; + }; + }; + }; + }; }; &uart0 { -- 2.1.4 -- Pengutronix e.K. | | Industrial Linux Solutions | http://www.pengutronix.de/ | Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 | -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/