From: Daniel Golle Date: Sun, 17 Mar 2024 15:55:09 +0000 (+0000) Subject: mvebu: enable thermal zone polling for IEI Puzzle devices X-Git-Url: http://git.openwrt.org/?p=openwrt%2Fopenwrt.git;a=commitdiff_plain;h=fc177695e00e80afd30d20d29f6e915edc9e9eb9 mvebu: enable thermal zone polling for IEI Puzzle devices Marvell's thermal sensors do not support interrupts, so we need to poll them. Reading temperature every second should be enough to control the fan. While at it, also make sure fan speed is reduced again if temperature goes down. Signed-off-by: Daniel Golle --- diff --git a/target/linux/mvebu/files/arch/arm64/boot/dts/marvell/puzzle-thermal.dtsi b/target/linux/mvebu/files/arch/arm64/boot/dts/marvell/puzzle-thermal.dtsi index 94677532f2..a8ce8fd102 100644 --- a/target/linux/mvebu/files/arch/arm64/boot/dts/marvell/puzzle-thermal.dtsi +++ b/target/linux/mvebu/files/arch/arm64/boot/dts/marvell/puzzle-thermal.dtsi @@ -1,4 +1,7 @@ #define PUZZLE_FAN_THERMAL(_cname, _fan) \ + polling-delay-passive = <500>; \ + polling-delay = <1000>; \ + \ trips { \ _cname##_active_high: cpu-active-high { \ temperature = <80000>; \ @@ -28,14 +31,14 @@ }; \ cpu-active-med { \ trip = <&_cname##_active_med>; \ - cooling-device = <_fan 2 THERMAL_NO_LIMIT>; \ + cooling-device = <_fan 2 3>; \ }; \ cpu-active-low { \ trip = <&_cname##_active_low>; \ - cooling-device = <_fan 1 THERMAL_NO_LIMIT>; \ + cooling-device = <_fan 1 2>; \ }; \ cpu-active-idle { \ trip = <&_cname##_active_idle>; \ - cooling-device = <_fan 0 THERMAL_NO_LIMIT>; \ + cooling-device = <_fan 0 0>; \ }; \ }