arm64: dts: meson: add gpio-fan control to GS-King-X
authorFurkan Kardame <f.kardame@manjaro.org>
Sat, 11 Jun 2022 17:08:52 +0000 (20:08 +0300)
committerNeil Armstrong <narmstrong@baylibre.com>
Mon, 13 Jun 2022 08:18:53 +0000 (10:18 +0200)
GS-King-X has a single speed GPIO fan which is always-on by default.
If we add controls for the fan and a trip point,
the fan stays off most of the time, reducing background
noise from the unit.

Signed-off-by: Furkan Kardame <f.kardame@manjaro.org>
Reviewed-by: Neil Armstrong <narmstrong@baylibre.com>
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
Link: https://lore.kernel.org/r/20220611170852.19487-1-f.kardame@manjaro.org
arch/arm64/boot/dts/amlogic/meson-g12b-gsking-x.dts

index 1540ce47bc6ecf0aa2dbe3c810616d02635af9c2..1fa6e75abd21e7488e7ea7fb895b1395d8a1c0cf 100644 (file)
                rtc1 = &vrtc;
        };
 
+       gpio_fan: gpio-fan {
+               compatible = "gpio-fan";
+               gpios = <&gpio GPIOH_5 GPIO_ACTIVE_HIGH>;
+               /* Using Dummy Speed */
+               gpio-fan,speed-map = <0 0>, <1 1>;
+               #cooling-cells = <2>;
+       };
+
        gpio-keys-polled {
                compatible = "gpio-keys-polled";
                poll-interval = <100>;
        status = "okay";
 };
 
+&cpu_thermal {
+       trips {
+               cpu_active: cpu-active {
+                       temperature = <70000>; /* millicelsius */
+                       hysteresis = <2000>; /* millicelsius */
+                       type = "active";
+               };
+       };
+
+       cooling-maps {
+               map {
+                       trip = <&cpu_active>;
+                       cooling-device = <&gpio_fan THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
+               };
+       };
+};
+
 &frddr_a {
        status = "okay";
 };