xref: /linux/arch/arm64/boot/dts/freescale/imx8mp-verdin-mallow.dtsi (revision e7d759f31ca295d589f7420719c311870bb3166f)
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 PCIE_1 */
116&pcie {
117	status = "okay";
118};
119
120&pcie_phy {
121	status = "okay";
122};
123
124/* Verdin PWM_1 */
125&pwm1 {
126	status = "okay";
127};
128
129/* Verdin PWM_2 */
130&pwm2 {
131	status = "okay";
132};
133
134/* Verdin PWM_3_DSI */
135&pwm3 {
136	status = "okay";
137};
138
139&reg_usdhc2_vmmc {
140	vin-supply = <&reg_3p3v>;
141};
142
143/* Verdin UART_1 */
144&uart1 {
145	status = "okay";
146};
147
148/* Verdin UART_2 */
149&uart2 {
150	status = "okay";
151};
152
153/* Verdin UART_3 */
154&uart3 {
155	status = "okay";
156};
157
158/* Verdin USB_1 */
159&usb3_0 {
160	status = "okay";
161};
162
163&usb3_phy0 {
164	status = "okay";
165};
166
167/* Verdin USB_2 */
168&usb3_1 {
169	status = "okay";
170};
171
172&usb3_phy1 {
173	status = "okay";
174};
175
176/* Verdin SD_1 */
177&usdhc2 {
178	status = "okay";
179};
180
181&iomuxc {
182	pinctrl_leds: ledsgrp {
183		fsl,pins =
184			<MX8MP_IOMUXC_NAND_ALE__GPIO3_IO00	0x106>, /* SODIMM 52 */
185			<MX8MP_IOMUXC_NAND_CE0_B__GPIO3_IO01	0x106>, /* SODIMM 54 */
186			<MX8MP_IOMUXC_NAND_DATA00__GPIO3_IO06	0x106>, /* SODIMM 56 */
187			<MX8MP_IOMUXC_NAND_DATA01__GPIO3_IO07	0x106>; /* SODIMM 58 */
188	};
189
190	pinctrl_tpm_cs: tpmcsgrp {
191		fsl,pins =
192			<MX8MP_IOMUXC_NAND_READY_B__GPIO3_IO16	0x82>; /* SODIMM 64 */
193	};
194
195	pinctrl_tpm_irq: tpmirqgrp {
196		fsl,pins =
197			<MX8MP_IOMUXC_NAND_DQS__GPIO3_IO14	0x16>; /* SODIMM 66 */
198	};
199};
200