xref: /freebsd/sys/contrib/device-tree/src/arm/st/stm32mp157c-lxa-tac-gen2.dts (revision a90b9d0159070121c221b966469c3e36d912bf82)
1// SPDX-License-Identifier: (GPL-2.0-or-later OR BSD-3-Clause)
2/*
3 * Copyright (C) 2020 STMicroelectronics - All Rights Reserved
4 * Copyright (C) 2021 Rouven Czerwinski, Pengutronix
5 * Copyright (C) 2023 Leonard Göhrs, Pengutronix
6 */
7
8/dts-v1/;
9
10#include "stm32mp157.dtsi"
11#include "stm32mp15xc-lxa-tac.dtsi"
12
13/ {
14	model = "Linux Automation Test Automation Controller (TAC) Gen 2";
15	compatible = "lxa,stm32mp157c-tac-gen2", "oct,stm32mp15xx-osd32", "st,stm32mp157";
16
17	backlight: backlight {
18		compatible = "pwm-backlight";
19		power-supply = <&v3v3>;
20
21		brightness-levels = <0 31 63 95 127 159 191 223 255>;
22		default-brightness-level = <7>;
23		pwms = <&led_pwm 3 1000000 0>;
24	};
25
26	reg_iobus_12v: regulator-iobus-12v {
27		compatible = "regulator-fixed";
28		vin-supply = <&reg_12v>;
29		gpio = <&gpioh 13 GPIO_ACTIVE_LOW>;
30		regulator-max-microvolt = <12000000>;
31		regulator-min-microvolt = <12000000>;
32		regulator-name = "12V_IOBUS";
33	};
34
35	led-controller-1 {
36		compatible = "pwm-leds-multicolor";
37
38		multi-led {
39			color = <LED_COLOR_ID_RGB>;
40			function = LED_FUNCTION_STATUS;
41			max-brightness = <65535>;
42
43			led-red {
44				active-low;
45				color = <LED_COLOR_ID_RED>;
46				pwms = <&led_pwm 0 1000000 0>;
47			};
48
49			led-green {
50				active-low;
51				color = <LED_COLOR_ID_GREEN>;
52				pwms = <&led_pwm 2 1000000 0>;
53			};
54
55			led-blue {
56				active-low;
57				color = <LED_COLOR_ID_BLUE>;
58				pwms = <&led_pwm 1 1000000 0>;
59			};
60		};
61	};
62
63	led-controller-2 {
64		compatible = "gpio-leds";
65
66		led-5 {
67			label = "tac:green:iobus";
68			gpios = <&gpiog 1 GPIO_ACTIVE_HIGH>;
69		};
70
71		led-6 {
72			label = "tac:green:can";
73			gpios = <&gpiof 3 GPIO_ACTIVE_HIGH>;
74		};
75
76		led-7 {
77			label = "tac:green:out0";
78			gpios = <&gpiob 8 GPIO_ACTIVE_HIGH>;
79		};
80
81		led-8 {
82			label = "tac:green:out1";
83			gpios = <&gpiog 3 GPIO_ACTIVE_HIGH>;
84		};
85
86		led-9 {
87			label = "tac:green:uarttx";
88			gpios = <&gpiod 3 GPIO_ACTIVE_HIGH>;
89		};
90
91		led-10 {
92			label = "tac:green:uartrx";
93			gpios = <&gpiof 6 GPIO_ACTIVE_HIGH>;
94		};
95
96		led-11 {
97			label = "tac:green:usbh1";
98			gpios = <&gpioc 8 GPIO_ACTIVE_HIGH>;
99		};
100
101		led-12 {
102			label = "tac:green:usbh2";
103			gpios = <&gpiod 6 GPIO_ACTIVE_HIGH>;
104		};
105
106		led-13 {
107			label = "tac:green:usbh3";
108			gpios = <&gpiob 9 GPIO_ACTIVE_HIGH>;
109		};
110
111		led-14 {
112			label = "tac:green:usbg";
113			gpios = <&gpiod 14 GPIO_ACTIVE_HIGH>;
114			linux,default-trigger = "usb-gadget";
115		};
116
117		led-15 {
118			label = "tac:green:dutpwr";
119			gpios = <&gpioa 15 GPIO_ACTIVE_HIGH>;
120		};
121	};
122};
123
124&gpioa {
125	gpio-line-names = "", "", "DUT_PWR_EN", "", "STACK_CS3", /*  0 */
126	"ETH_GPIO1", "ETH_INT", "", "", "",                      /*  5 */
127	"", "", "", "BOOTROM_LED", "ETH_LAB_LEDRP",              /* 10 */
128	"";                                                      /* 15 */
129};
130
131&gpioc {
132	gpio-line-names = "", "DUT_PWR_DISCH", "", "", "", /*  0 */
133	"", "", "", "", "",                                /*  5 */
134	"", "";                                            /* 10 */
135};
136
137&gpu {
138	status = "disabled";
139};
140
141&m_can2 {
142	termination-gpios = <&gpioe 4 GPIO_ACTIVE_HIGH>;
143	termination-ohms = <120>;
144};
145
146&spi2 {
147	adc@0 {
148		compatible = "ti,lmp92064";
149		reg = <0>;
150
151		reset-gpios = <&gpioa 4 GPIO_ACTIVE_HIGH>;
152		shunt-resistor-micro-ohms = <15000>;
153		spi-max-frequency = <5000000>;
154		vdd-supply = <&reg_pb_3v3>;
155		vdig-supply = <&reg_pb_3v3>;
156	};
157};
158
159&timers8 {
160	/* spare dmas for other usage */
161	/delete-property/dmas;
162	/delete-property/dma-names;
163
164	status = "okay";
165
166	led_pwm: pwm {
167		pinctrl-names = "default", "sleep";
168		pinctrl-0 = <&pwm8_pins_b>;
169		pinctrl-1 = <&pwm8_sleep_pins_b>;
170		status = "okay";
171	};
172};
173