Re: [PATCH] arm64: dts: ti: am62-phyboard-lyra: Add overlay to enable a GPIO fan

From: Wadim Egorov
Date: Thu Feb 08 2024 - 00:58:49 EST


Hi Andrew,

Am 07.02.24 um 23:20 schrieb Andrew Davis:
On 2/7/24 11:28 AM, Nathan Morrisson wrote:
The phyBOARD-Lyra has a GPIO fan header. This overlay enables the fan
header and sets the fan to turn on at 65C.

Signed-off-by: Nathan Morrisson <nmorrisson@xxxxxxxxxx>
---
  arch/arm64/boot/dts/ti/Makefile               |  1 +
  .../ti/k3-am62-phyboard-lyra-gpio-fan.dtso    | 51 +++++++++++++++++++
  2 files changed, 52 insertions(+)
  create mode 100644 arch/arm64/boot/dts/ti/k3-am62-phyboard-lyra-gpio-fan.dtso

diff --git a/arch/arm64/boot/dts/ti/Makefile b/arch/arm64/boot/dts/ti/Makefile
index 52c1dc910308..379fb4f31a1f 100644
--- a/arch/arm64/boot/dts/ti/Makefile
+++ b/arch/arm64/boot/dts/ti/Makefile
@@ -23,6 +23,7 @@ dtb-$(CONFIG_ARCH_K3) += k3-am625-verdin-wifi-dev.dtb
  dtb-$(CONFIG_ARCH_K3) += k3-am625-verdin-wifi-mallow.dtb
  dtb-$(CONFIG_ARCH_K3) += k3-am625-verdin-wifi-yavia.dtb
  dtb-$(CONFIG_ARCH_K3) += k3-am62-lp-sk.dtb
+dtb-$(CONFIG_ARCH_K3) += k3-am62-phyboard-lyra-gpio-fan.dtbo

Why not call this k3-am625-phyboard-lyra-gpio-fan.dtbo to match the
name of the base board it applies to better?

We are able to reuse this overlay for different SoMs (am625 and am62a) that are using the same carrier board (lyra).

Regards,
Wadim



Andrew

    # Boards with AM62Ax SoC
  dtb-$(CONFIG_ARCH_K3) += k3-am62a7-sk.dtb
diff --git a/arch/arm64/boot/dts/ti/k3-am62-phyboard-lyra-gpio-fan.dtso b/arch/arm64/boot/dts/ti/k3-am62-phyboard-lyra-gpio-fan.dtso
new file mode 100644
index 000000000000..9c05748bdd9d
--- /dev/null
+++ b/arch/arm64/boot/dts/ti/k3-am62-phyboard-lyra-gpio-fan.dtso
@@ -0,0 +1,51 @@
+// SPDX-License-Identifier: GPL-2.0-only OR MIT
+/*
+ * Copyright (C) 2024 PHYTEC America LLC
+ * Author: Garrett Giordano <ggiordano@xxxxxxxxxx>
+ */
+
+/dts-v1/;
+/plugin/;
+
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/thermal/thermal.h>
+#include "k3-pinctrl.h"
+
+&{/} {
+    fan: gpio-fan {
+        compatible = "gpio-fan";
+        gpio-fan,speed-map = <0 0 8600 1>;
+        gpios = <&main_gpio0 40 GPIO_ACTIVE_LOW>;
+        #cooling-cells = <2>;
+        pinctrl-names = "default";
+        pinctrl-0 = <&gpio_fan_pins_default>;
+        status = "okay";
+    };
+};
+
+&main_pmx0 {
+    gpio_fan_pins_default: gpio-fan-default-pins {
+        pinctrl-single,pins = <
+            AM62X_IOPAD(0x0a4, PIN_OUTPUT, 7) /* (M22) GPMC0_DIR.GPIO0_40 */
+        >;
+    };
+};
+
+&thermal_zones {
+    main0_thermal: main0-thermal {
+        trips {
+            main0_thermal_trip0: main0-thermal-trip {
+                temperature = <65000>;  /* millicelsius */
+                hysteresis = <2000>;    /* millicelsius */
+                type = "active";
+            };
+        };
+
+        cooling-maps {
+            map0 {
+                trip = <&main0_thermal_trip0>;
+                cooling-device = <&fan THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
+            };
+        };
+    };
+};

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@xxxxxxxxxxxxxxxxxxx
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel