xref: /linux/scripts/dtc/include-prefixes/arm64/freescale/imx95-verdin-mallow.dtsi (revision 0fc8f6200d2313278fbf4539bbab74677c685531)
1// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
2/*
3 * Copyright (c) Toradex
4 *
5 * Common dtsi for Verdin iMX95 SoM on Mallow carrier board
6 *
7 * https://www.toradex.com/computer-on-modules/verdin-arm-family/nxp-imx95
8 * https://www.toradex.com/products/carrier-board/mallow-carrier-board
9 */
10
11#include <dt-bindings/leds/common.h>
12
13/ {
14	aliases {
15		eeprom1 = &carrier_eeprom;
16	};
17
18	leds {
19		compatible = "gpio-leds";
20		pinctrl-names = "default";
21		pinctrl-0 = <&pinctrl_qspi1_clk_gpio>,
22			    <&pinctrl_qspi1_cs_gpio>,
23			    <&pinctrl_qspi1_io0_gpio>,
24			    <&pinctrl_qspi1_io1_gpio>;
25
26		/* SODIMM 52 - USER_LED_1_RED */
27		led-0 {
28			color = <LED_COLOR_ID_RED>;
29			function = LED_FUNCTION_DEBUG;
30			function-enumerator = <1>;
31			gpios = <&gpio5 9 GPIO_ACTIVE_HIGH>;
32		};
33
34		/* SODIMM 54 - USER_LED_1_GREEN */
35		led-1 {
36			color = <LED_COLOR_ID_GREEN>;
37			function = LED_FUNCTION_DEBUG;
38			function-enumerator = <1>;
39			gpios = <&gpio5 10 GPIO_ACTIVE_HIGH>;
40		};
41
42		/* SODIMM 56 - USER_LED_2_RED */
43		led-2 {
44			color = <LED_COLOR_ID_RED>;
45			function = LED_FUNCTION_DEBUG;
46			function-enumerator = <2>;
47			gpios = <&gpio5 0 GPIO_ACTIVE_HIGH>;
48		};
49
50		/* SODIMM 58 - USER_LED_2_GREEN */
51		led-3 {
52			color = <LED_COLOR_ID_GREEN>;
53			function = LED_FUNCTION_DEBUG;
54			function-enumerator = <2>;
55			gpios = <&gpio5 1 GPIO_ACTIVE_HIGH>;
56		};
57	};
58};
59
60/* Verdin ADC_1, ADC_2, ADC_3 and ADC_4 */
61&adc1 {
62	status = "okay";
63};
64
65/* Verdin ETH_1 (On-module PHY) */
66&enetc_port0 {
67	status = "okay";
68};
69
70/* Verdin CAN_1 */
71&flexcan1 {
72	status = "okay";
73};
74
75/* Verdin CAN_2 */
76&flexcan2 {
77	status = "okay";
78};
79
80&gpio1 {
81	pinctrl-names = "default";
82	pinctrl-0 = <&pinctrl_ctrl_sleep_moci>;
83};
84
85&gpio2 {
86	pinctrl-names = "default";
87	pinctrl-0 = <&pinctrl_gpio1>,
88		    <&pinctrl_gpio2>,
89		    <&pinctrl_gpio3>;
90};
91
92&gpio3 {
93	pinctrl-names = "default";
94	pinctrl-0 = <&pinctrl_gpio6>;
95};
96
97&gpio4 {
98	pinctrl-names = "default";
99	pinctrl-0 = <&pinctrl_gpio5>;
100};
101
102&gpio5 {
103	pinctrl-names = "default";
104	pinctrl-0 = <&pinctrl_gpio4>;
105};
106
107/* Verdin I2C_3_HDMI */
108&i3c2 {
109	status = "okay";
110};
111
112/* Verdin I2C_2_DSI */
113&lpi2c3 {
114	status = "okay";
115};
116
117/* Verdin I2C_1 */
118&lpi2c4 {
119	status = "okay";
120
121	temperature-sensor@4f {
122		compatible = "ti,tmp1075";
123		reg = <0x4f>;
124	};
125
126	carrier_eeprom: eeprom@57 {
127		compatible = "st,24c02", "atmel,24c02";
128		reg = <0x57>;
129		pagesize = <16>;
130	};
131};
132
133/* Verdin I2C_4_CSI */
134&lpi2c5 {
135	status = "okay";
136};
137
138/* Verdin SPI_1 */
139&lpspi6 {
140	pinctrl-names = "default";
141	pinctrl-0 = <&pinctrl_lpspi6>,
142		    <&pinctrl_spi1_cs>,
143		    <&pinctrl_qspi1_cs2_gpio>;
144	cs-gpios = <&gpio4 29 GPIO_ACTIVE_LOW>,
145		   <&som_gpio_expander 13 GPIO_ACTIVE_LOW>,
146		   <&gpio5 11 GPIO_ACTIVE_LOW>;
147
148	tpm@2 {
149		compatible = "infineon,slb9670", "tcg,tpm_tis-spi";
150		reg = <2>;
151		pinctrl-names = "default";
152		pinctrl-0 = <&pinctrl_qspi1_dqs_gpio>;
153		interrupt-parent = <&gpio5>;
154		interrupts = <8 IRQ_TYPE_EDGE_FALLING>;
155		spi-max-frequency = <18500000>;
156	};
157};
158
159/* Verdin UART_3, used as the Linux console */
160&lpuart1 {
161	status = "okay";
162};
163
164/* Verdin UART_4 */
165&lpuart2 {
166	status = "okay";
167};
168
169/* Verdin UART_1 */
170&lpuart7 {
171	status = "okay";
172};
173
174/* Verdin UART_2 */
175&lpuart8 {
176	status = "okay";
177};
178
179/* Verdin PCIE_1 */
180&pcie0 {
181	status = "okay";
182};
183
184/* Verdin PWM_1 */
185&tpm4 {
186	status = "okay";
187};
188
189/* Verdin PWM_2 */
190&tpm5 {
191	status = "okay";
192};
193
194/* Verdin PWM_3_DSI */
195&tpm6 {
196	status = "okay";
197};
198
199/* Verdin USB_1 */
200&usb2 {
201	status = "okay";
202};
203
204/* Verdin USB_2 */
205&usb3 {
206	fsl,permanently-attached;
207
208	status = "okay";
209};
210
211&usb3_phy {
212	status = "okay";
213};
214
215/* Verdin SD_1 */
216&usdhc2 {
217	status = "okay";
218};
219
220/* Verdin CTRL_WAKE1_MICO# */
221&verdin_gpio_keys {
222	status = "okay";
223};
224