xref: /linux/arch/arm64/boot/dts/freescale/imx8mp-verdin-mallow.dtsi (revision c5288cda69ee2d8607f5026bd599a5cebf0ee783)
1// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
2/*
3 * Copyright 2023 Toradex
4 *
5 * Common dtsi for Verdin IMX8MP SoM on Mallow carrier board
6 *
7 * https://www.toradex.com/computer-on-modules/verdin-arm-family/nxp-imx-8m-plus
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_leds>;
18
19		/* SODIMM 52 - USER_LED_1_RED */
20		led-0 {
21			color = <LED_COLOR_ID_RED>;
22			function = LED_FUNCTION_DEBUG;
23			function-enumerator = <1>;
24			gpios = <&gpio3 0 GPIO_ACTIVE_HIGH>;
25		};
26
27		/* SODIMM 54 - USER_LED_1_GREEN */
28		led-1 {
29			color = <LED_COLOR_ID_GREEN>;
30			function = LED_FUNCTION_DEBUG;
31			function-enumerator = <1>;
32			gpios = <&gpio3 1 GPIO_ACTIVE_HIGH>;
33		};
34
35		/* SODIMM 56 - USER_LED_2_RED */
36		led-2 {
37			color = <LED_COLOR_ID_RED>;
38			function = LED_FUNCTION_DEBUG;
39			function-enumerator = <2>;
40			gpios = <&gpio3 6 GPIO_ACTIVE_HIGH>;
41		};
42
43		/* SODIMM 58 - USER_LED_2_GREEN */
44		led-3 {
45			color = <LED_COLOR_ID_GREEN>;
46			function = LED_FUNCTION_DEBUG;
47			function-enumerator = <2>;
48			gpios = <&gpio3 7 GPIO_ACTIVE_HIGH>;
49		};
50	};
51};
52
53&backlight {
54	power-supply = <&reg_3p3v>;
55};
56
57/* Verdin SPI_1 */
58&ecspi1 {
59	pinctrl-0 = <&pinctrl_ecspi1>, <&pinctrl_tpm_cs>;
60	cs-gpios = <&gpio5 9 GPIO_ACTIVE_LOW>, <&gpio3 16 GPIO_ACTIVE_LOW>;
61	status = "okay";
62
63	tpm@1 {
64		compatible = "infineon,slb9670", "tcg,tpm_tis-spi";
65		reg = <1>;
66		pinctrl-names = "default";
67		pinctrl-0 = <&pinctrl_tpm_irq>;
68		interrupt-parent = <&gpio3>;
69		interrupts = <14 IRQ_TYPE_LEVEL_LOW>;
70		spi-max-frequency = <18500000>;
71	};
72};
73
74/* EEPROM on Mallow */
75&eeprom_carrier_board {
76	status = "okay";
77};
78
79/* Verdin ETH_1 */
80&eqos {
81	status = "okay";
82};
83
84/* Verdin CAN_1 */
85&flexcan1 {
86	status = "okay";
87};
88
89/* Verdin CAN_2 */
90&flexcan2 {
91	status = "okay";
92};
93
94/* Temperature sensor on Mallow */
95&hwmon_temp {
96	compatible = "ti,tmp1075";
97	status = "okay";
98};
99
100/* Verdin I2C_2_DSI */
101&i2c2 {
102	status = "okay";
103};
104
105/* Verdin I2C_4_CSI */
106&i2c3 {
107	status = "okay";
108};
109
110/* Verdin I2C_1 */
111&i2c4 {
112	status = "okay";
113};
114
115/* Verdin I2C_3_HDMI */
116&i2c5 {
117	status = "okay";
118};
119
120/* Verdin PCIE_1 */
121&pcie {
122	status = "okay";
123};
124
125&pcie_phy {
126	status = "okay";
127};
128
129/* Verdin PWM_1 */
130&pwm1 {
131	status = "okay";
132};
133
134/* Verdin PWM_2 */
135&pwm2 {
136	status = "okay";
137};
138
139/* Verdin PWM_3_DSI */
140&pwm3 {
141	status = "okay";
142};
143
144&reg_usdhc2_vmmc {
145	vin-supply = <&reg_3p3v>;
146};
147
148/* Verdin UART_1 */
149&uart1 {
150	status = "okay";
151};
152
153/* Verdin UART_2 */
154&uart2 {
155	status = "okay";
156};
157
158/* Verdin UART_3 */
159&uart3 {
160	status = "okay";
161};
162
163/* Verdin USB_1 */
164&usb3_0 {
165	status = "okay";
166};
167
168&usb3_phy0 {
169	status = "okay";
170};
171
172/* Verdin USB_2 */
173&usb3_1 {
174	status = "okay";
175};
176
177&usb3_phy1 {
178	status = "okay";
179};
180
181/* Verdin SD_1 */
182&usdhc2 {
183	status = "okay";
184};
185
186&iomuxc {
187	pinctrl_leds: ledsgrp {
188		fsl,pins =
189			<MX8MP_IOMUXC_NAND_ALE__GPIO3_IO00	0x106>, /* SODIMM 52 */
190			<MX8MP_IOMUXC_NAND_CE0_B__GPIO3_IO01	0x106>, /* SODIMM 54 */
191			<MX8MP_IOMUXC_NAND_DATA00__GPIO3_IO06	0x106>, /* SODIMM 56 */
192			<MX8MP_IOMUXC_NAND_DATA01__GPIO3_IO07	0x106>; /* SODIMM 58 */
193	};
194
195	pinctrl_tpm_cs: tpmcsgrp {
196		fsl,pins =
197			<MX8MP_IOMUXC_NAND_READY_B__GPIO3_IO16	0x82>; /* SODIMM 64 */
198	};
199
200	pinctrl_tpm_irq: tpmirqgrp {
201		fsl,pins =
202			<MX8MP_IOMUXC_NAND_DQS__GPIO3_IO14	0x16>; /* SODIMM 66 */
203	};
204};
205