xref: /linux/scripts/dtc/include-prefixes/arm64/freescale/imx8mn-vhip4-evalboard-v1.dts (revision 6589b3d76db2d6adbf8f2084c303fb24252a0dc6)
1*5eb7405dSFedor Ross// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2*5eb7405dSFedor Ross/*
3*5eb7405dSFedor Ross * Copyright 2020-2024 Fedor Ross <fedor.ross@ifm.com>
4*5eb7405dSFedor Ross */
5*5eb7405dSFedor Ross
6*5eb7405dSFedor Ross/dts-v1/;
7*5eb7405dSFedor Ross
8*5eb7405dSFedor Ross#include "imx8mn-vhip4-evalboard-common.dtsi"
9*5eb7405dSFedor Ross
10*5eb7405dSFedor Ross/ {
11*5eb7405dSFedor Ross	model = "ifm i.MX8MNano VHIP4 Evaluation Board v1";
12*5eb7405dSFedor Ross	compatible = "ifm,imx8mn-vhip4-evalboard-v1", "ifm,imx8mn-vhip4-evalboard",
13*5eb7405dSFedor Ross		     "ifm,imx8mn-vhip4", "fsl,imx8mn";
14*5eb7405dSFedor Ross};
15*5eb7405dSFedor Ross
16*5eb7405dSFedor Ross&ifm_led {
17*5eb7405dSFedor Ross	pinctrl-1 = <&pinctrl_gpio_led_v1>;
18*5eb7405dSFedor Ross
19*5eb7405dSFedor Ross	led-2 {
20*5eb7405dSFedor Ross		function = LED_FUNCTION_STATUS;
21*5eb7405dSFedor Ross		function-enumerator = <3>;
22*5eb7405dSFedor Ross		color = <LED_COLOR_ID_YELLOW>;
23*5eb7405dSFedor Ross		gpios = <&gpio2 17 GPIO_ACTIVE_HIGH>;
24*5eb7405dSFedor Ross		default-state = "keep";
25*5eb7405dSFedor Ross	};
26*5eb7405dSFedor Ross
27*5eb7405dSFedor Ross	led-3 {
28*5eb7405dSFedor Ross		function = LED_FUNCTION_STATUS;
29*5eb7405dSFedor Ross		function-enumerator = <4>;
30*5eb7405dSFedor Ross		color = <LED_COLOR_ID_GREEN>;
31*5eb7405dSFedor Ross		gpios = <&gpio2 19 GPIO_ACTIVE_HIGH>;
32*5eb7405dSFedor Ross		default-state = "keep";
33*5eb7405dSFedor Ross	};
34*5eb7405dSFedor Ross};
35*5eb7405dSFedor Ross
36*5eb7405dSFedor Ross&ecspi1 {
37*5eb7405dSFedor Ross	cs-gpios = <&gpio5 9 GPIO_ACTIVE_LOW>, <&gpio5 21 GPIO_ACTIVE_LOW>;
38*5eb7405dSFedor Ross	status = "okay";
39*5eb7405dSFedor Ross
40*5eb7405dSFedor Ross	eeprom@0 {
41*5eb7405dSFedor Ross		compatible = "anvo,anv32c81w", "atmel,at25";
42*5eb7405dSFedor Ross		reg = <0>;
43*5eb7405dSFedor Ross		spi-max-frequency = <20000000>;
44*5eb7405dSFedor Ross		spi-cpha;
45*5eb7405dSFedor Ross		spi-cpol;
46*5eb7405dSFedor Ross		pagesize = <1>;
47*5eb7405dSFedor Ross		size = <32768>;
48*5eb7405dSFedor Ross		address-width = <16>;
49*5eb7405dSFedor Ross	};
50*5eb7405dSFedor Ross};
51*5eb7405dSFedor Ross
52*5eb7405dSFedor Ross&ecspi3 {
53*5eb7405dSFedor Ross	cs-gpios = <&gpio5 25 GPIO_ACTIVE_LOW>, <&gpio5 4 GPIO_ACTIVE_LOW>;
54*5eb7405dSFedor Ross	status = "okay";
55*5eb7405dSFedor Ross
56*5eb7405dSFedor Ross	can0: can@0 {
57*5eb7405dSFedor Ross		compatible = "microchip,mcp25625";
58*5eb7405dSFedor Ross		pinctrl-names = "default";
59*5eb7405dSFedor Ross		pinctrl-0 = <&pinctrl_mcp25625>;
60*5eb7405dSFedor Ross		reg = <0>;
61*5eb7405dSFedor Ross		clocks = <&can_clk20m>;
62*5eb7405dSFedor Ross		interrupt-parent = <&gpio4>;
63*5eb7405dSFedor Ross		interrupts = <21 IRQ_TYPE_LEVEL_LOW>;
64*5eb7405dSFedor Ross		gpio-controller;
65*5eb7405dSFedor Ross		#gpio-cells = <2>;
66*5eb7405dSFedor Ross	};
67*5eb7405dSFedor Ross
68*5eb7405dSFedor Ross	can1: can@1 {
69*5eb7405dSFedor Ross		compatible = "microchip,mcp2518fd";
70*5eb7405dSFedor Ross		pinctrl-names = "default";
71*5eb7405dSFedor Ross		pinctrl-0 = <&pinctrl_mcp2518>;
72*5eb7405dSFedor Ross		reg = <1>;
73*5eb7405dSFedor Ross		clocks = <&can_clk40m>;
74*5eb7405dSFedor Ross		interrupt-parent = <&gpio5>;
75*5eb7405dSFedor Ross		interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
76*5eb7405dSFedor Ross		microchip,rx-int-gpios = <&gpio5 1 GPIO_ACTIVE_LOW>;
77*5eb7405dSFedor Ross		spi-max-frequency = <20000000>;
78*5eb7405dSFedor Ross	};
79*5eb7405dSFedor Ross};
80*5eb7405dSFedor Ross
81*5eb7405dSFedor Ross&i2c1 {
82*5eb7405dSFedor Ross	scl-gpios = <&gpio5 14 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
83*5eb7405dSFedor Ross	sda-gpios = <&gpio5 15 GPIO_ACTIVE_HIGH>;
84*5eb7405dSFedor Ross	status = "okay";
85*5eb7405dSFedor Ross
86*5eb7405dSFedor Ross	temperature-sensor@48 {
87*5eb7405dSFedor Ross		compatible = "national,lm75";
88*5eb7405dSFedor Ross		reg = <0x48>;
89*5eb7405dSFedor Ross	};
90*5eb7405dSFedor Ross
91*5eb7405dSFedor Ross	eeprom@50 {
92*5eb7405dSFedor Ross		compatible = "atmel,24c128";
93*5eb7405dSFedor Ross		reg = <0x50>;
94*5eb7405dSFedor Ross	};
95*5eb7405dSFedor Ross};
96*5eb7405dSFedor Ross
97*5eb7405dSFedor Ross&i2c2 {
98*5eb7405dSFedor Ross	clock-frequency = <100000>;
99*5eb7405dSFedor Ross	pinctrl-names = "default", "gpio";
100*5eb7405dSFedor Ross	pinctrl-0 = <&pinctrl_i2c2>;
101*5eb7405dSFedor Ross	pinctrl-1 = <&pinctrl_i2c2_gpio>;
102*5eb7405dSFedor Ross	scl-gpios = <&gpio5 16 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
103*5eb7405dSFedor Ross	sda-gpios = <&gpio5 17 GPIO_ACTIVE_HIGH>;
104*5eb7405dSFedor Ross	status = "okay";
105*5eb7405dSFedor Ross};
106*5eb7405dSFedor Ross
107*5eb7405dSFedor Ross&i2c3 {
108*5eb7405dSFedor Ross	scl-gpios = <&gpio2 10 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
109*5eb7405dSFedor Ross	sda-gpios = <&gpio2 11 GPIO_ACTIVE_HIGH>;
110*5eb7405dSFedor Ross	status = "okay";
111*5eb7405dSFedor Ross};
112*5eb7405dSFedor Ross
113*5eb7405dSFedor Ross&ifm_pmic {
114*5eb7405dSFedor Ross	interrupt-parent = <&gpio2>;
115*5eb7405dSFedor Ross	interrupts = <0 GPIO_ACTIVE_LOW>;
116*5eb7405dSFedor Ross};
117*5eb7405dSFedor Ross
118*5eb7405dSFedor Ross&iomuxc {
119*5eb7405dSFedor Ross	pinctrl_ecspi1_cs: ecspi1-cs-grp {
120*5eb7405dSFedor Ross		fsl,pins = <
121*5eb7405dSFedor Ross			/* KS8794 nCS */
122*5eb7405dSFedor Ross			MX8MN_IOMUXC_I2C4_SDA_GPIO5_IO21		0x150
123*5eb7405dSFedor Ross			/* ANV32C81 nCS */
124*5eb7405dSFedor Ross			MX8MN_IOMUXC_ECSPI1_SS0_GPIO5_IO9		0x150
125*5eb7405dSFedor Ross		>;
126*5eb7405dSFedor Ross	};
127*5eb7405dSFedor Ross
128*5eb7405dSFedor Ross	pinctrl_ecspi3_cs: ecspi3-cs-grp {
129*5eb7405dSFedor Ross		fsl,pins = <
130*5eb7405dSFedor Ross			/* MCP25625 nCS */
131*5eb7405dSFedor Ross			MX8MN_IOMUXC_UART2_TXD_GPIO5_IO25		0x150
132*5eb7405dSFedor Ross			/* MCP2518FD nCS */
133*5eb7405dSFedor Ross			MX8MN_IOMUXC_SPDIF_RX_GPIO5_IO4			0x150
134*5eb7405dSFedor Ross		>;
135*5eb7405dSFedor Ross	};
136*5eb7405dSFedor Ross
137*5eb7405dSFedor Ross	pinctrl_gpio_5: gpio5-grp {
138*5eb7405dSFedor Ross		fsl,pins = <
139*5eb7405dSFedor Ross			/* CFG_EEPROM_WP */
140*5eb7405dSFedor Ross			MX8MN_IOMUXC_I2C4_SCL_GPIO5_IO20		0x140
141*5eb7405dSFedor Ross		>;
142*5eb7405dSFedor Ross	};
143*5eb7405dSFedor Ross
144*5eb7405dSFedor Ross	pinctrl_gpio_led_v1: gpioled-v1-grp {
145*5eb7405dSFedor Ross		fsl,pins = <
146*5eb7405dSFedor Ross			MX8MN_IOMUXC_SD2_DATA2_GPIO2_IO17		0x116
147*5eb7405dSFedor Ross			MX8MN_IOMUXC_SD2_RESET_B_GPIO2_IO19		0x116
148*5eb7405dSFedor Ross		>;
149*5eb7405dSFedor Ross	};
150*5eb7405dSFedor Ross
151*5eb7405dSFedor Ross	pinctrl_i2c1: i2c1-grp {
152*5eb7405dSFedor Ross		fsl,pins = <
153*5eb7405dSFedor Ross			MX8MN_IOMUXC_I2C1_SCL_I2C1_SCL			0x40000056
154*5eb7405dSFedor Ross			MX8MN_IOMUXC_I2C1_SDA_I2C1_SDA			0x400000d6
155*5eb7405dSFedor Ross		>;
156*5eb7405dSFedor Ross	};
157*5eb7405dSFedor Ross
158*5eb7405dSFedor Ross	pinctrl_i2c1_gpio: i2c1-gpio-grp {
159*5eb7405dSFedor Ross		fsl,pins = <
160*5eb7405dSFedor Ross			MX8MN_IOMUXC_I2C1_SCL_GPIO5_IO14		0x56
161*5eb7405dSFedor Ross			MX8MN_IOMUXC_I2C1_SDA_GPIO5_IO15		0xd6
162*5eb7405dSFedor Ross		>;
163*5eb7405dSFedor Ross	};
164*5eb7405dSFedor Ross
165*5eb7405dSFedor Ross	pinctrl_i2c2: i2c2-grp {
166*5eb7405dSFedor Ross		fsl,pins = <
167*5eb7405dSFedor Ross			MX8MN_IOMUXC_I2C2_SCL_I2C2_SCL			0x40000056
168*5eb7405dSFedor Ross			MX8MN_IOMUXC_I2C2_SDA_I2C2_SDA			0x400000d6
169*5eb7405dSFedor Ross		>;
170*5eb7405dSFedor Ross	};
171*5eb7405dSFedor Ross
172*5eb7405dSFedor Ross	pinctrl_i2c2_gpio: i2c2-gpio-grp {
173*5eb7405dSFedor Ross		fsl,pins = <
174*5eb7405dSFedor Ross			MX8MN_IOMUXC_I2C2_SCL_GPIO5_IO16		0x56
175*5eb7405dSFedor Ross			MX8MN_IOMUXC_I2C2_SDA_GPIO5_IO17		0xd6
176*5eb7405dSFedor Ross		>;
177*5eb7405dSFedor Ross	};
178*5eb7405dSFedor Ross
179*5eb7405dSFedor Ross	pinctrl_i2c3: i2c3-grp {
180*5eb7405dSFedor Ross		fsl,pins = <
181*5eb7405dSFedor Ross			MX8MN_IOMUXC_SD1_RESET_B_I2C3_SCL		0x40000056
182*5eb7405dSFedor Ross			MX8MN_IOMUXC_SD1_STROBE_I2C3_SDA		0x400000d6
183*5eb7405dSFedor Ross		>;
184*5eb7405dSFedor Ross	};
185*5eb7405dSFedor Ross
186*5eb7405dSFedor Ross	pinctrl_i2c3_gpio: i2c3-gpio-grp {
187*5eb7405dSFedor Ross		fsl,pins = <
188*5eb7405dSFedor Ross			MX8MN_IOMUXC_SD1_RESET_B_GPIO2_IO10		0x56
189*5eb7405dSFedor Ross			MX8MN_IOMUXC_SD1_STROBE_GPIO2_IO11		0xd6
190*5eb7405dSFedor Ross		>;
191*5eb7405dSFedor Ross	};
192*5eb7405dSFedor Ross
193*5eb7405dSFedor Ross	pinctrl_mcp2518: mcp2518-grp {
194*5eb7405dSFedor Ross		fsl,pins = <
195*5eb7405dSFedor Ross			/* MCP2518 nINT line */
196*5eb7405dSFedor Ross			MX8MN_IOMUXC_SAI3_MCLK_GPIO5_IO2		0x116
197*5eb7405dSFedor Ross			/* MCP2518 nINT1/GPIO1 line */
198*5eb7405dSFedor Ross			MX8MN_IOMUXC_SAI3_TXD_GPIO5_IO1			0x116
199*5eb7405dSFedor Ross		>;
200*5eb7405dSFedor Ross	};
201*5eb7405dSFedor Ross
202*5eb7405dSFedor Ross	pinctrl_mcp25625: mcp25625-grp {
203*5eb7405dSFedor Ross		fsl,pins = <
204*5eb7405dSFedor Ross			/* MCP25625 nINT line */
205*5eb7405dSFedor Ross			MX8MN_IOMUXC_SAI2_RXFS_GPIO4_IO21		0x156
206*5eb7405dSFedor Ross		>;
207*5eb7405dSFedor Ross	};
208*5eb7405dSFedor Ross
209*5eb7405dSFedor Ross	pinctrl_pmic: pmic-irq-grp {
210*5eb7405dSFedor Ross		fsl,pins = <
211*5eb7405dSFedor Ross			MX8MN_IOMUXC_SD1_CLK_GPIO2_IO0			0x16
212*5eb7405dSFedor Ross		>;
213*5eb7405dSFedor Ross	};
214*5eb7405dSFedor Ross
215*5eb7405dSFedor Ross	pinctrl_uart3: uart3-grp {
216*5eb7405dSFedor Ross		fsl,pins = <
217*5eb7405dSFedor Ross			MX8MN_IOMUXC_UART3_RXD_UART3_DCE_RX		0x142
218*5eb7405dSFedor Ross			MX8MN_IOMUXC_UART3_TXD_UART3_DCE_TX		0x142
219*5eb7405dSFedor Ross		>;
220*5eb7405dSFedor Ross	};
221*5eb7405dSFedor Ross
222*5eb7405dSFedor Ross	pinctrl_usb_nreset: usbnreset-grp {
223*5eb7405dSFedor Ross		fsl,pins = <
224*5eb7405dSFedor Ross			MX8MN_IOMUXC_SAI3_RXC_GPIO4_IO29                0x14a
225*5eb7405dSFedor Ross		>;
226*5eb7405dSFedor Ross	};
227*5eb7405dSFedor Ross
228*5eb7405dSFedor Ross	pinctrl_wdog: wdog-grp {
229*5eb7405dSFedor Ross		fsl,pins = <
230*5eb7405dSFedor Ross			MX8MN_IOMUXC_GPIO1_IO02_WDOG1_WDOG_B		0x64
231*5eb7405dSFedor Ross		>;
232*5eb7405dSFedor Ross	};
233*5eb7405dSFedor Ross};
234*5eb7405dSFedor Ross
235*5eb7405dSFedor Ross&gpio5 {
236*5eb7405dSFedor Ross	pinctrl-names = "default";
237*5eb7405dSFedor Ross	pinctrl-0 = <&pinctrl_gpio_5>;
238*5eb7405dSFedor Ross	gpio-line-names =
239*5eb7405dSFedor Ross		"", "", "", "", "", "", "", "",
240*5eb7405dSFedor Ross		"", "", "", "", "", "", "", "",
241*5eb7405dSFedor Ross		"", "", "", "",
242*5eb7405dSFedor Ross		"ifm_device_info_eeprom_wp",
243*5eb7405dSFedor Ross		"", "", "",
244*5eb7405dSFedor Ross		"", "", "", "", "", "", "", "";
245*5eb7405dSFedor Ross};
246*5eb7405dSFedor Ross
247*5eb7405dSFedor Ross&usbotg1 {
248*5eb7405dSFedor Ross	pinctrl-names = "default";
249*5eb7405dSFedor Ross	pinctrl-0 = <&pinctrl_usb_nreset>;
250*5eb7405dSFedor Ross	#address-cells = <1>;
251*5eb7405dSFedor Ross	#size-cells = <0>;
252*5eb7405dSFedor Ross
253*5eb7405dSFedor Ross	usb-hub@1 {
254*5eb7405dSFedor Ross		compatible = "usb424,2512", "usb424,2514";
255*5eb7405dSFedor Ross		reg = <1>;
256*5eb7405dSFedor Ross		reset-gpios = <&gpio4 29 GPIO_ACTIVE_LOW>;
257*5eb7405dSFedor Ross	};
258*5eb7405dSFedor Ross};
259