]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
arm64: dts: rockchip: Enable automatic fan control on Radxa Rock 5C
authorAlexey Charkov <alchark@gmail.com>
Mon, 20 Jan 2025 19:22:47 +0000 (23:22 +0400)
committerHeiko Stuebner <heiko@sntech.de>
Mon, 3 Feb 2025 08:14:12 +0000 (09:14 +0100)
Add the necessary cooling map to enable the kernel's thermal subsystem
to manage the fan speed automatically depending on the overall SoC
package temperature on Radxa Rock 5C

Signed-off-by: Alexey Charkov <alchark@gmail.com>
Reviewed-by: Dragan Simic <dsimic@manjaro.org>
Link: https://lore.kernel.org/r/20250120-rock-5c-fan-v1-2-5fb8446c981b@gmail.com
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
arch/arm64/boot/dts/rockchip/rk3588s-rock-5c.dts

index 1b66a69cf0f8795d7305852fa7fef3d0672ada7f..6e56d7704cbe0dc06242cb39df56b2fc9d6bc774 100644 (file)
@@ -68,7 +68,7 @@
                };
        };
 
-       fan {
+       fan: fan {
                compatible = "pwm-fan";
                #cooling-cells = <2>;
                cooling-levels = <0 24 44 64 128 192 255>;
        };
 };
 
+&package_thermal {
+       polling-delay = <1000>;
+
+       trips {
+               package_fan0: package-fan0 {
+                       temperature = <55000>;
+                       hysteresis = <2000>;
+                       type = "active";
+               };
+
+               package_fan1: package-fan1 {
+                       temperature = <65000>;
+                       hysteresis = <2000>;
+                       type = "active";
+               };
+       };
+
+       cooling-maps {
+               map0 {
+                       trip = <&package_fan0>;
+                       cooling-device = <&fan THERMAL_NO_LIMIT 1>;
+               };
+
+               map1 {
+                       trip = <&package_fan1>;
+                       cooling-device = <&fan 2 THERMAL_NO_LIMIT>;
+               };
+       };
+};
+
 &pcie2x1l2 {
        pinctrl-names = "default";
        pinctrl-0 = <&pcie20x1_2_perstn_m0>;