1// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
2/*
3 * Copyright 2023 Toradex
4 *
5 * Common dtsi for Verdin AM62 SoM on Mallow carrier board
6 *
7 * https://www.toradex.com/computer-on-modules/verdin-arm-family/ti-am62
8 * https://www.toradex.com/products/carrier-board/mallow-carrier-board
9 */
10
11#include <dt-bindings/leds/common.h>
12
13/ {
14	leds {
15		compatible = "gpio-leds";
16		pinctrl-names = "default";
17		pinctrl-0 = <&pinctrl_qspi1_clk_gpio>,
18			    <&pinctrl_qspi1_cs_gpio>,
19			    <&pinctrl_qspi1_io0_gpio>,
20			    <&pinctrl_qspi1_io1_gpio>;
21
22		/* SODIMM 52 - USER_LED_1_RED */
23		led-0 {
24			color = <LED_COLOR_ID_RED>;
25			function = LED_FUNCTION_DEBUG;
26			function-enumerator = <1>;
27			gpios = <&main_gpio0 0 GPIO_ACTIVE_HIGH>;
28		};
29
30		/* SODIMM 54 - USER_LED_1_GREEN */
31		led-1 {
32			color = <LED_COLOR_ID_GREEN>;
33			function = LED_FUNCTION_DEBUG;
34			function-enumerator = <1>;
35			gpios = <&main_gpio0 11 GPIO_ACTIVE_HIGH>;
36		};
37
38		/* SODIMM 56 - USER_LED_2_RED */
39		led-2 {
40			color = <LED_COLOR_ID_RED>;
41			function = LED_FUNCTION_DEBUG;
42			function-enumerator = <2>;
43			gpios = <&main_gpio0 3 GPIO_ACTIVE_HIGH>;
44		};
45
46		/* SODIMM 58 - USER_LED_2_GREEN */
47		led-3 {
48			color = <LED_COLOR_ID_GREEN>;
49			function = LED_FUNCTION_DEBUG;
50			function-enumerator = <2>;
51			gpios = <&main_gpio0 4 GPIO_ACTIVE_HIGH>;
52		};
53	};
54};
55
56/* Verdin ETH */
57&cpsw3g {
58	status = "okay";
59};
60
61/* Verdin MDIO */
62&cpsw3g_mdio {
63	status = "okay";
64};
65
66/* Verdin ETH_1*/
67&cpsw_port1 {
68	status = "okay";
69};
70
71/* Verdin PWM_1 and PWM_2*/
72&epwm0 {
73	status = "okay";
74};
75
76/* Verdin PWM_3 DSI */
77&epwm1 {
78	status = "okay";
79};
80
81&main_gpio0 {
82	pinctrl-names = "default";
83	pinctrl-0 = <&pinctrl_ctrl_sleep_moci>,
84		    <&pinctrl_gpio_1>,
85		    <&pinctrl_gpio_2>,
86		    <&pinctrl_gpio_3>,
87		    <&pinctrl_gpio_4>;
88};
89
90/* Verdin I2C_1 */
91&main_i2c1 {
92	status = "okay";
93
94	/* Temperature sensor */
95	sensor@4f {
96		compatible = "ti,tmp1075";
97		reg = <0x4f>;
98	};
99
100	/* EEPROM */
101	eeprom@57 {
102		compatible = "st,24c02", "atmel,24c02";
103		reg = <0x57>;
104		pagesize = <16>;
105	};
106};
107
108/* Verdin I2C_2 DSI */
109&main_i2c2 {
110	status = "okay";
111};
112
113/* Verdin I2C_4 CSI */
114&main_i2c3 {
115	status = "okay";
116};
117
118/* Verdin CAN_1 */
119&main_mcan0 {
120	status = "okay";
121};
122
123/* Verdin SPI_1 */
124&main_spi1 {
125	pinctrl-0 = <&pinctrl_spi1>,
126		    <&pinctrl_spi1_cs0>,
127		    <&pinctrl_qspi1_cs2_gpio>;
128	cs-gpios = <0>, <&main_gpio0 12 GPIO_ACTIVE_LOW>;
129	status = "okay";
130
131	tpm@1 {
132		compatible = "infineon,slb9670", "tcg,tpm_tis-spi";
133		reg = <1>;
134		pinctrl-names = "default";
135		pinctrl-0 = <&pinctrl_qspi1_dqs_gpio>;
136		interrupt-parent = <&main_gpio1>;
137		interrupts = <18 IRQ_TYPE_EDGE_FALLING>;
138		spi-max-frequency = <18500000>;
139	};
140};
141
142/* Verdin UART_3 */
143&main_uart0 {
144	status = "okay";
145};
146
147/* Verdin UART_1 */
148&main_uart1 {
149	status = "okay";
150};
151
152/* Verdin I2C_3_HDMI */
153&mcu_i2c0 {
154	status = "okay";
155};
156
157/* Verdin CAN_2 */
158&mcu_mcan0 {
159	status = "okay";
160};
161
162/* Verdin UART_4 */
163&mcu_uart0 {
164	status = "okay";
165};
166
167/* Verdin SD_1 */
168&sdhci1 {
169	status = "okay";
170};
171
172/* Verdin USB_1 */
173&usbss0 {
174	status = "okay";
175};
176
177&usb0 {
178	status = "okay";
179};
180
181/* Verdin USB_2 */
182&usbss1 {
183	status = "okay";
184};
185
186&usb1 {
187	status = "okay";
188};
189
190/* Verdin CTRL_WAKE1_MICO# */
191&verdin_gpio_keys {
192	status = "okay";
193};
194
195/* Verdin UART_2 */
196&wkup_uart0 {
197	status = "okay";
198};
199