xref: /freebsd/sys/contrib/device-tree/src/arm64/ti/k3-am62x-phyboard-lyra-gpio-fan.dtso (revision 01950c46b8155250f64374fb72fc11faa44bf099)
1*01950c46SEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0-only OR MIT
2*01950c46SEmmanuel Vadot/*
3*01950c46SEmmanuel Vadot * Copyright (C) 2024 PHYTEC America LLC
4*01950c46SEmmanuel Vadot * Author: Garrett Giordano <ggiordano@phytec.com>
5*01950c46SEmmanuel Vadot */
6*01950c46SEmmanuel Vadot
7*01950c46SEmmanuel Vadot/dts-v1/;
8*01950c46SEmmanuel Vadot/plugin/;
9*01950c46SEmmanuel Vadot
10*01950c46SEmmanuel Vadot#include <dt-bindings/gpio/gpio.h>
11*01950c46SEmmanuel Vadot#include <dt-bindings/thermal/thermal.h>
12*01950c46SEmmanuel Vadot#include "k3-pinctrl.h"
13*01950c46SEmmanuel Vadot
14*01950c46SEmmanuel Vadot&{/} {
15*01950c46SEmmanuel Vadot	fan: gpio-fan {
16*01950c46SEmmanuel Vadot		compatible = "gpio-fan";
17*01950c46SEmmanuel Vadot		gpio-fan,speed-map = <0 0 8600 1>;
18*01950c46SEmmanuel Vadot		gpios = <&main_gpio0 40 GPIO_ACTIVE_LOW>;
19*01950c46SEmmanuel Vadot		#cooling-cells = <2>;
20*01950c46SEmmanuel Vadot		pinctrl-names = "default";
21*01950c46SEmmanuel Vadot		pinctrl-0 = <&gpio_fan_pins_default>;
22*01950c46SEmmanuel Vadot	};
23*01950c46SEmmanuel Vadot};
24*01950c46SEmmanuel Vadot
25*01950c46SEmmanuel Vadot&main_pmx0 {
26*01950c46SEmmanuel Vadot	gpio_fan_pins_default: gpio-fan-default-pins {
27*01950c46SEmmanuel Vadot		pinctrl-single,pins = <
28*01950c46SEmmanuel Vadot			AM62X_IOPAD(0x0a4, PIN_OUTPUT, 7) /* (M22) GPMC0_DIR.GPIO0_40 */
29*01950c46SEmmanuel Vadot		>;
30*01950c46SEmmanuel Vadot	};
31*01950c46SEmmanuel Vadot};
32*01950c46SEmmanuel Vadot
33*01950c46SEmmanuel Vadot&thermal_zones {
34*01950c46SEmmanuel Vadot	main0_thermal: main0-thermal {
35*01950c46SEmmanuel Vadot		trips {
36*01950c46SEmmanuel Vadot			main0_thermal_trip0: main0-thermal-trip {
37*01950c46SEmmanuel Vadot				temperature = <65000>;  /* millicelsius */
38*01950c46SEmmanuel Vadot				hysteresis = <2000>;    /* millicelsius */
39*01950c46SEmmanuel Vadot				type = "active";
40*01950c46SEmmanuel Vadot			};
41*01950c46SEmmanuel Vadot		};
42*01950c46SEmmanuel Vadot
43*01950c46SEmmanuel Vadot		cooling-maps {
44*01950c46SEmmanuel Vadot			map0 {
45*01950c46SEmmanuel Vadot				trip = <&main0_thermal_trip0>;
46*01950c46SEmmanuel Vadot				cooling-device = <&fan THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
47*01950c46SEmmanuel Vadot			};
48*01950c46SEmmanuel Vadot		};
49*01950c46SEmmanuel Vadot	};
50*01950c46SEmmanuel Vadot};
51