xref: /freebsd/sys/contrib/device-tree/src/arm64/freescale/imx8-apalis-ixora-v1.1.dtsi (revision 84943d6f38e936ac3b7a3947ca26eeb27a39f938)
1*fac71e4eSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
2*fac71e4eSEmmanuel Vadot/*
3*fac71e4eSEmmanuel Vadot * Copyright 2022 Toradex
4*fac71e4eSEmmanuel Vadot */
5*fac71e4eSEmmanuel Vadot
6*fac71e4eSEmmanuel Vadot#include <dt-bindings/leds/common.h>
7*fac71e4eSEmmanuel Vadot
8*fac71e4eSEmmanuel Vadot/ {
9*fac71e4eSEmmanuel Vadot	aliases {
10*fac71e4eSEmmanuel Vadot		rtc0 = &rtc_i2c;
11*fac71e4eSEmmanuel Vadot		rtc1 = &rtc;
12*fac71e4eSEmmanuel Vadot	};
13*fac71e4eSEmmanuel Vadot
14*fac71e4eSEmmanuel Vadot	leds {
15*fac71e4eSEmmanuel Vadot		compatible = "gpio-leds";
16*fac71e4eSEmmanuel Vadot		pinctrl-names = "default";
17*fac71e4eSEmmanuel Vadot		pinctrl-0 = <&pinctrl_leds_ixora>;
18*fac71e4eSEmmanuel Vadot
19*fac71e4eSEmmanuel Vadot		/* LED_4_GREEN / MXM3_188 */
20*fac71e4eSEmmanuel Vadot		led-1 {
21*fac71e4eSEmmanuel Vadot			color = <LED_COLOR_ID_GREEN>;
22*fac71e4eSEmmanuel Vadot			default-state = "off";
23*fac71e4eSEmmanuel Vadot			function = LED_FUNCTION_STATUS;
24*fac71e4eSEmmanuel Vadot			gpios = <&lsio_gpio5 27 GPIO_ACTIVE_HIGH>;
25*fac71e4eSEmmanuel Vadot		};
26*fac71e4eSEmmanuel Vadot
27*fac71e4eSEmmanuel Vadot		/* LED_4_RED / MXM3_178 */
28*fac71e4eSEmmanuel Vadot		led-2 {
29*fac71e4eSEmmanuel Vadot			color = <LED_COLOR_ID_RED>;
30*fac71e4eSEmmanuel Vadot			default-state = "off";
31*fac71e4eSEmmanuel Vadot			function = LED_FUNCTION_STATUS;
32*fac71e4eSEmmanuel Vadot			gpios = <&lsio_gpio5 29 GPIO_ACTIVE_HIGH>;
33*fac71e4eSEmmanuel Vadot		};
34*fac71e4eSEmmanuel Vadot
35*fac71e4eSEmmanuel Vadot		/* LED_5_GREEN / MXM3_152 */
36*fac71e4eSEmmanuel Vadot		led-3 {
37*fac71e4eSEmmanuel Vadot			color = <LED_COLOR_ID_GREEN>;
38*fac71e4eSEmmanuel Vadot			default-state = "off";
39*fac71e4eSEmmanuel Vadot			function = LED_FUNCTION_STATUS;
40*fac71e4eSEmmanuel Vadot			gpios = <&lsio_gpio5 20 GPIO_ACTIVE_HIGH>;
41*fac71e4eSEmmanuel Vadot		};
42*fac71e4eSEmmanuel Vadot
43*fac71e4eSEmmanuel Vadot		/* LED_5_RED / MXM3_156 */
44*fac71e4eSEmmanuel Vadot		led-4 {
45*fac71e4eSEmmanuel Vadot			color = <LED_COLOR_ID_RED>;
46*fac71e4eSEmmanuel Vadot			default-state = "off";
47*fac71e4eSEmmanuel Vadot			function = LED_FUNCTION_STATUS;
48*fac71e4eSEmmanuel Vadot			gpios = <&lsio_gpio5 21 GPIO_ACTIVE_HIGH>;
49*fac71e4eSEmmanuel Vadot		};
50*fac71e4eSEmmanuel Vadot	};
51*fac71e4eSEmmanuel Vadot
52*fac71e4eSEmmanuel Vadot	reg_usb_host_vbus: regulator-usb-host-vbus {
53*fac71e4eSEmmanuel Vadot		regulator-name = "VCC_USBH(2|4)";
54*fac71e4eSEmmanuel Vadot	};
55*fac71e4eSEmmanuel Vadot};
56*fac71e4eSEmmanuel Vadot
57*fac71e4eSEmmanuel Vadot&adc0 {
58*fac71e4eSEmmanuel Vadot	status = "okay";
59*fac71e4eSEmmanuel Vadot};
60*fac71e4eSEmmanuel Vadot
61*fac71e4eSEmmanuel Vadot&adc1 {
62*fac71e4eSEmmanuel Vadot	status = "okay";
63*fac71e4eSEmmanuel Vadot};
64*fac71e4eSEmmanuel Vadot
65*fac71e4eSEmmanuel Vadot/* TODO: Audio Mixer */
66*fac71e4eSEmmanuel Vadot
67*fac71e4eSEmmanuel Vadot/* TODO: Asynchronous Sample Rate Converter (ASRC) */
68*fac71e4eSEmmanuel Vadot
69*fac71e4eSEmmanuel Vadot/* TODO: Display Controller */
70*fac71e4eSEmmanuel Vadot
71*fac71e4eSEmmanuel Vadot/* TODO: DPU */
72*fac71e4eSEmmanuel Vadot
73*fac71e4eSEmmanuel Vadot/* Apalis ETH1 */
74*fac71e4eSEmmanuel Vadot&fec1 {
75*fac71e4eSEmmanuel Vadot	status = "okay";
76*fac71e4eSEmmanuel Vadot};
77*fac71e4eSEmmanuel Vadot
78*fac71e4eSEmmanuel Vadot/* Apalis CAN1 */
79*fac71e4eSEmmanuel Vadot&flexcan1 {
80*fac71e4eSEmmanuel Vadot	status = "okay";
81*fac71e4eSEmmanuel Vadot};
82*fac71e4eSEmmanuel Vadot
83*fac71e4eSEmmanuel Vadot/* Apalis CAN2 */
84*fac71e4eSEmmanuel Vadot&flexcan2 {
85*fac71e4eSEmmanuel Vadot	status = "okay";
86*fac71e4eSEmmanuel Vadot};
87*fac71e4eSEmmanuel Vadot
88*fac71e4eSEmmanuel Vadot/* TODO: GPU */
89*fac71e4eSEmmanuel Vadot
90*fac71e4eSEmmanuel Vadot/* Apalis I2C1 */
91*fac71e4eSEmmanuel Vadot&i2c2 {
92*fac71e4eSEmmanuel Vadot	status = "okay";
93*fac71e4eSEmmanuel Vadot
94*fac71e4eSEmmanuel Vadot	/* M41T0M6 real time clock on carrier board */
95*fac71e4eSEmmanuel Vadot	rtc_i2c: rtc@68 {
96*fac71e4eSEmmanuel Vadot		status = "okay";
97*fac71e4eSEmmanuel Vadot	};
98*fac71e4eSEmmanuel Vadot};
99*fac71e4eSEmmanuel Vadot
100*fac71e4eSEmmanuel Vadot/* Apalis I2C3 (CAM) */
101*fac71e4eSEmmanuel Vadot&i2c3 {
102*fac71e4eSEmmanuel Vadot	status = "okay";
103*fac71e4eSEmmanuel Vadot};
104*fac71e4eSEmmanuel Vadot
105*fac71e4eSEmmanuel Vadot&iomuxc {
106*fac71e4eSEmmanuel Vadot	pinctrl-0 = <&pinctrl_cam1_gpios>, <&pinctrl_dap1_gpios>,
107*fac71e4eSEmmanuel Vadot		    <&pinctrl_esai0_gpios>, <&pinctrl_fec2_gpios>,
108*fac71e4eSEmmanuel Vadot		    <&pinctrl_gpio3>, <&pinctrl_gpio4>, <&pinctrl_gpio_usbh_oc_n>,
109*fac71e4eSEmmanuel Vadot		    <&pinctrl_lpuart1ctrl>, <&pinctrl_lvds0_i2c0_gpio>,
110*fac71e4eSEmmanuel Vadot		    <&pinctrl_lvds1_i2c0_gpios>, <&pinctrl_mipi_dsi_0_1_en>,
111*fac71e4eSEmmanuel Vadot		    <&pinctrl_mipi_dsi1_gpios>, <&pinctrl_mlb_gpios>,
112*fac71e4eSEmmanuel Vadot		    <&pinctrl_qspi1a_gpios>, <&pinctrl_sata1_act>,
113*fac71e4eSEmmanuel Vadot		    <&pinctrl_sim0_gpios>, <&pinctrl_uart24_forceoff>,
114*fac71e4eSEmmanuel Vadot		    <&pinctrl_usdhc1_gpios>;
115*fac71e4eSEmmanuel Vadot
116*fac71e4eSEmmanuel Vadot	pinctrl_leds_ixora: ledsixoragrp {
117*fac71e4eSEmmanuel Vadot		fsl,pins = <IMX8QM_USDHC2_DATA1_LSIO_GPIO5_IO27	0x06000061>, /* LED_4_GREEN */
118*fac71e4eSEmmanuel Vadot			   <IMX8QM_USDHC2_DATA3_LSIO_GPIO5_IO29	0x06000061>, /* LED_4_RED */
119*fac71e4eSEmmanuel Vadot			   <IMX8QM_USDHC1_DATA5_LSIO_GPIO5_IO20	0x06000061>, /* LED_5_GREEN */
120*fac71e4eSEmmanuel Vadot			   <IMX8QM_USDHC1_DATA6_LSIO_GPIO5_IO21	0x06000061>; /* LED_5_RED */
121*fac71e4eSEmmanuel Vadot	};
122*fac71e4eSEmmanuel Vadot
123*fac71e4eSEmmanuel Vadot	pinctrl_uart24_forceoff: uart24forceoffgrp {
124*fac71e4eSEmmanuel Vadot		fsl,pins = <IMX8QM_USDHC2_CMD_LSIO_GPIO5_IO25		0x00000021>;
125*fac71e4eSEmmanuel Vadot	};
126*fac71e4eSEmmanuel Vadot};
127*fac71e4eSEmmanuel Vadot
128*fac71e4eSEmmanuel Vadot/* Apalis SPI1 */
129*fac71e4eSEmmanuel Vadot&lpspi0 {
130*fac71e4eSEmmanuel Vadot	status = "okay";
131*fac71e4eSEmmanuel Vadot};
132*fac71e4eSEmmanuel Vadot
133*fac71e4eSEmmanuel Vadot/* Apalis SPI2 */
134*fac71e4eSEmmanuel Vadot&lpspi2 {
135*fac71e4eSEmmanuel Vadot	status = "okay";
136*fac71e4eSEmmanuel Vadot};
137*fac71e4eSEmmanuel Vadot
138*fac71e4eSEmmanuel Vadot/* Apalis UART3 */
139*fac71e4eSEmmanuel Vadot&lpuart0 {
140*fac71e4eSEmmanuel Vadot	status = "okay";
141*fac71e4eSEmmanuel Vadot};
142*fac71e4eSEmmanuel Vadot
143*fac71e4eSEmmanuel Vadot/* Apalis UART1 */
144*fac71e4eSEmmanuel Vadot&lpuart1 {
145*fac71e4eSEmmanuel Vadot	status = "okay";
146*fac71e4eSEmmanuel Vadot};
147*fac71e4eSEmmanuel Vadot
148*fac71e4eSEmmanuel Vadot/* Apalis UART4 */
149*fac71e4eSEmmanuel Vadot&lpuart2 {
150*fac71e4eSEmmanuel Vadot	status = "okay";
151*fac71e4eSEmmanuel Vadot};
152*fac71e4eSEmmanuel Vadot
153*fac71e4eSEmmanuel Vadot/* Apalis UART2 */
154*fac71e4eSEmmanuel Vadot&lpuart3 {
155*fac71e4eSEmmanuel Vadot	status = "okay";
156*fac71e4eSEmmanuel Vadot};
157*fac71e4eSEmmanuel Vadot
158*fac71e4eSEmmanuel Vadot&lsio_gpio5 {
159*fac71e4eSEmmanuel Vadot	gpio-line-names = "gpio5-00", "gpio5-01", "gpio5-02", "gpio5-03",
160*fac71e4eSEmmanuel Vadot			  "gpio5-04", "gpio5-05", "gpio5-06", "gpio5-07",
161*fac71e4eSEmmanuel Vadot			  "gpio5-08", "gpio5-09", "gpio5-10", "gpio5-11",
162*fac71e4eSEmmanuel Vadot			  "gpio5-12", "gpio5-13", "gpio5-14", "gpio5-15",
163*fac71e4eSEmmanuel Vadot			  "gpio5-16", "gpio5-17", "gpio5-18", "gpio5-19",
164*fac71e4eSEmmanuel Vadot			  "LED-5-GREEN", "LED-5-RED", "gpio5-22", "gpio5-23",
165*fac71e4eSEmmanuel Vadot			  "gpio5-24", "UART24-FORCEOFF", "gpio5-26",
166*fac71e4eSEmmanuel Vadot			  "LED-4-GREEN", "gpio5-28", "LED-4-RED", "gpio5-30",
167*fac71e4eSEmmanuel Vadot			  "gpio5-31";
168*fac71e4eSEmmanuel Vadot};
169*fac71e4eSEmmanuel Vadot
170*fac71e4eSEmmanuel Vadot/* Apalis PWM3, MXM3 pin 6 */
171*fac71e4eSEmmanuel Vadot&lsio_pwm0 {
172*fac71e4eSEmmanuel Vadot	status = "okay";
173*fac71e4eSEmmanuel Vadot};
174*fac71e4eSEmmanuel Vadot
175*fac71e4eSEmmanuel Vadot/* Apalis PWM4, MXM3 pin 8 */
176*fac71e4eSEmmanuel Vadot&lsio_pwm1 {
177*fac71e4eSEmmanuel Vadot	status = "okay";
178*fac71e4eSEmmanuel Vadot};
179*fac71e4eSEmmanuel Vadot
180*fac71e4eSEmmanuel Vadot/* Apalis PWM1, MXM3 pin 2 */
181*fac71e4eSEmmanuel Vadot&lsio_pwm2 {
182*fac71e4eSEmmanuel Vadot	status = "okay";
183*fac71e4eSEmmanuel Vadot};
184*fac71e4eSEmmanuel Vadot
185*fac71e4eSEmmanuel Vadot/* Apalis PWM2, MXM3 pin 4 */
186*fac71e4eSEmmanuel Vadot&lsio_pwm3 {
187*fac71e4eSEmmanuel Vadot	status = "okay";
188*fac71e4eSEmmanuel Vadot};
189*fac71e4eSEmmanuel Vadot
190*fac71e4eSEmmanuel Vadot/* TODO: Apalis PCIE1 */
191*fac71e4eSEmmanuel Vadot
192*fac71e4eSEmmanuel Vadot/* TODO: Apalis BKL1_PWM */
193*fac71e4eSEmmanuel Vadot
194*fac71e4eSEmmanuel Vadot/* TODO: Apalis DAP1 */
195*fac71e4eSEmmanuel Vadot
196*fac71e4eSEmmanuel Vadot/* TODO: Apalis Analogue Audio */
197*fac71e4eSEmmanuel Vadot
198*fac71e4eSEmmanuel Vadot/* TODO: Apalis SATA1 */
199*fac71e4eSEmmanuel Vadot
200*fac71e4eSEmmanuel Vadot/* TODO: Apalis SPDIF1 */
201*fac71e4eSEmmanuel Vadot
202*fac71e4eSEmmanuel Vadot/* TODO: Apalis USBH2, Apalis USBH3 and on-module Wi-Fi via on-module HSIC Hub */
203*fac71e4eSEmmanuel Vadot
204*fac71e4eSEmmanuel Vadot/* Apalis USBO1 */
205*fac71e4eSEmmanuel Vadot&usbotg1 {
206*fac71e4eSEmmanuel Vadot	status = "okay";
207*fac71e4eSEmmanuel Vadot};
208*fac71e4eSEmmanuel Vadot
209*fac71e4eSEmmanuel Vadot/* TODO: Apalis USBH4 SuperSpeed */
210*fac71e4eSEmmanuel Vadot
211*fac71e4eSEmmanuel Vadot/* Apalis MMC1 */
212*fac71e4eSEmmanuel Vadot&usdhc2 {
213*fac71e4eSEmmanuel Vadot	pinctrl-0 = <&pinctrl_usdhc2_4bit>, <&pinctrl_mmc1_cd>;
214*fac71e4eSEmmanuel Vadot	pinctrl-1 = <&pinctrl_usdhc2_4bit_100mhz>, <&pinctrl_mmc1_cd>;
215*fac71e4eSEmmanuel Vadot	pinctrl-2 = <&pinctrl_usdhc2_4bit_200mhz>, <&pinctrl_mmc1_cd>;
216*fac71e4eSEmmanuel Vadot	pinctrl-3 = <&pinctrl_usdhc2_4bit_sleep>, <&pinctrl_mmc1_cd_sleep>;
217*fac71e4eSEmmanuel Vadot	bus-width = <4>;
218*fac71e4eSEmmanuel Vadot	status = "okay";
219*fac71e4eSEmmanuel Vadot};
220