xref: /freebsd/sys/contrib/device-tree/src/arm/nxp/imx/imx6ull-engicam-microgea-gtw.dts (revision 833e5d42ab135b0238e61c5b3c19b8619677cbfa)
1*833e5d42SEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0
2*833e5d42SEmmanuel Vadot/*
3*833e5d42SEmmanuel Vadot * Copyright (C) 2025 Amarula Solutions, Dario Binacchi <dario.binacchi@amarulasolutions.com>
4*833e5d42SEmmanuel Vadot * Copyright (C) 2025 Engicam srl
5*833e5d42SEmmanuel Vadot */
6*833e5d42SEmmanuel Vadot
7*833e5d42SEmmanuel Vadot/dts-v1/;
8*833e5d42SEmmanuel Vadot
9*833e5d42SEmmanuel Vadot#include "imx6ull-engicam-microgea.dtsi"
10*833e5d42SEmmanuel Vadot
11*833e5d42SEmmanuel Vadot/ {
12*833e5d42SEmmanuel Vadot	compatible = "engicam,microgea-imx6ull-gtw",
13*833e5d42SEmmanuel Vadot		     "engicam,microgea-imx6ull", "fsl,imx6ull";
14*833e5d42SEmmanuel Vadot	model = "Engicam MicroGEA i.MX6ULL GTW Board";
15*833e5d42SEmmanuel Vadot
16*833e5d42SEmmanuel Vadot	reg_1v8: regulator-1v8 {
17*833e5d42SEmmanuel Vadot		compatible = "regulator-fixed";
18*833e5d42SEmmanuel Vadot		regulator-name = "1v8";
19*833e5d42SEmmanuel Vadot		regulator-min-microvolt = <1800000>;
20*833e5d42SEmmanuel Vadot		regulator-max-microvolt = <1800000>;
21*833e5d42SEmmanuel Vadot	};
22*833e5d42SEmmanuel Vadot
23*833e5d42SEmmanuel Vadot	reg_3v3: regulator-3v3 {
24*833e5d42SEmmanuel Vadot		compatible = "regulator-fixed";
25*833e5d42SEmmanuel Vadot		regulator-name = "3v3";
26*833e5d42SEmmanuel Vadot		regulator-min-microvolt = <3300000>;
27*833e5d42SEmmanuel Vadot		regulator-max-microvolt = <3300000>;
28*833e5d42SEmmanuel Vadot	};
29*833e5d42SEmmanuel Vadot
30*833e5d42SEmmanuel Vadot	gpio-keys {
31*833e5d42SEmmanuel Vadot		compatible = "gpio-keys";
32*833e5d42SEmmanuel Vadot		pinctrl-names = "default";
33*833e5d42SEmmanuel Vadot		pinctrl-0 = <&pinctrl_gpio_keys>;
34*833e5d42SEmmanuel Vadot
35*833e5d42SEmmanuel Vadot		user-button {
36*833e5d42SEmmanuel Vadot			label = "User button";
37*833e5d42SEmmanuel Vadot			gpios = <&gpio1 13 GPIO_ACTIVE_LOW>;
38*833e5d42SEmmanuel Vadot			linux,code = <BTN_MISC>;
39*833e5d42SEmmanuel Vadot			wakeup-source;
40*833e5d42SEmmanuel Vadot		};
41*833e5d42SEmmanuel Vadot	};
42*833e5d42SEmmanuel Vadot
43*833e5d42SEmmanuel Vadot	leds {
44*833e5d42SEmmanuel Vadot		compatible = "gpio-leds";
45*833e5d42SEmmanuel Vadot		pinctrl-names = "default";
46*833e5d42SEmmanuel Vadot		pinctrl-0 = <&pinctrl_leds>, <&pinctrl_pwrled>;
47*833e5d42SEmmanuel Vadot
48*833e5d42SEmmanuel Vadot		led-0 {
49*833e5d42SEmmanuel Vadot			gpios = <&gpio5 7 GPIO_ACTIVE_HIGH>;
50*833e5d42SEmmanuel Vadot			default-state = "on";
51*833e5d42SEmmanuel Vadot		};
52*833e5d42SEmmanuel Vadot
53*833e5d42SEmmanuel Vadot		led-1 {
54*833e5d42SEmmanuel Vadot			gpios = <&gpio1 14 GPIO_ACTIVE_HIGH>;
55*833e5d42SEmmanuel Vadot		};
56*833e5d42SEmmanuel Vadot
57*833e5d42SEmmanuel Vadot		led-2 {
58*833e5d42SEmmanuel Vadot			gpios = <&gpio1 15 GPIO_ACTIVE_HIGH>;
59*833e5d42SEmmanuel Vadot		};
60*833e5d42SEmmanuel Vadot
61*833e5d42SEmmanuel Vadot		led-3 {
62*833e5d42SEmmanuel Vadot			gpios = <&gpio1 12 GPIO_ACTIVE_HIGH>;
63*833e5d42SEmmanuel Vadot		};
64*833e5d42SEmmanuel Vadot	};
65*833e5d42SEmmanuel Vadot
66*833e5d42SEmmanuel Vadot	usb_hub: usb-hub {
67*833e5d42SEmmanuel Vadot		compatible = "smsc,usb3503a";
68*833e5d42SEmmanuel Vadot		pinctrl-names = "default";
69*833e5d42SEmmanuel Vadot		pinctrl-0 = <&pinctrl_usb_hub>;
70*833e5d42SEmmanuel Vadot		reset-gpios = <&gpio5 6 GPIO_ACTIVE_LOW>;
71*833e5d42SEmmanuel Vadot	};
72*833e5d42SEmmanuel Vadot};
73*833e5d42SEmmanuel Vadot
74*833e5d42SEmmanuel Vadot&uart1 {
75*833e5d42SEmmanuel Vadot	pinctrl-names = "default";
76*833e5d42SEmmanuel Vadot	pinctrl-0 = <&pinctrl_uart1>;
77*833e5d42SEmmanuel Vadot	status = "okay";
78*833e5d42SEmmanuel Vadot};
79*833e5d42SEmmanuel Vadot
80*833e5d42SEmmanuel Vadot&uart2 {
81*833e5d42SEmmanuel Vadot	pinctrl-names = "default";
82*833e5d42SEmmanuel Vadot	pinctrl-0 = <&pinctrl_uart2>;
83*833e5d42SEmmanuel Vadot	status = "okay";
84*833e5d42SEmmanuel Vadot};
85*833e5d42SEmmanuel Vadot
86*833e5d42SEmmanuel Vadot&usbotg1 {
87*833e5d42SEmmanuel Vadot	dr_mode = "otg";
88*833e5d42SEmmanuel Vadot	status = "okay";
89*833e5d42SEmmanuel Vadot};
90*833e5d42SEmmanuel Vadot
91*833e5d42SEmmanuel Vadot&usbotg2 {
92*833e5d42SEmmanuel Vadot	dr_mode = "host";
93*833e5d42SEmmanuel Vadot	disable-over-current;
94*833e5d42SEmmanuel Vadot	status = "okay";
95*833e5d42SEmmanuel Vadot};
96*833e5d42SEmmanuel Vadot
97*833e5d42SEmmanuel Vadot/* MicroSD */
98*833e5d42SEmmanuel Vadot&usdhc1 {
99*833e5d42SEmmanuel Vadot	pinctrl-names = "default";
100*833e5d42SEmmanuel Vadot	pinctrl-0 = <&pinctrl_usdhc1>;
101*833e5d42SEmmanuel Vadot	vmmc-supply = <&reg_3v3>;
102*833e5d42SEmmanuel Vadot	bus-width = <4>;
103*833e5d42SEmmanuel Vadot	non-removable;
104*833e5d42SEmmanuel Vadot	status = "okay";
105*833e5d42SEmmanuel Vadot};
106*833e5d42SEmmanuel Vadot
107*833e5d42SEmmanuel Vadot&iomuxc {
108*833e5d42SEmmanuel Vadot	pinctrl_gpio_keys: gpio_keysgrp {
109*833e5d42SEmmanuel Vadot		fsl,pins = <
110*833e5d42SEmmanuel Vadot			MX6UL_PAD_JTAG_TDI__GPIO1_IO13		0x0b0b0
111*833e5d42SEmmanuel Vadot		>;
112*833e5d42SEmmanuel Vadot	};
113*833e5d42SEmmanuel Vadot
114*833e5d42SEmmanuel Vadot	pinctrl_leds: ledsgrp {
115*833e5d42SEmmanuel Vadot		fsl,pins = <
116*833e5d42SEmmanuel Vadot			MX6UL_PAD_JTAG_TCK__GPIO1_IO14		0x130b0
117*833e5d42SEmmanuel Vadot			MX6UL_PAD_JTAG_TRST_B__GPIO1_IO15	0x130b0
118*833e5d42SEmmanuel Vadot			MX6UL_PAD_JTAG_TDO__GPIO1_IO12		0x130b0
119*833e5d42SEmmanuel Vadot		>;
120*833e5d42SEmmanuel Vadot	};
121*833e5d42SEmmanuel Vadot
122*833e5d42SEmmanuel Vadot	pinctrl_uart1: uart1grp {
123*833e5d42SEmmanuel Vadot		fsl,pins = <
124*833e5d42SEmmanuel Vadot			MX6UL_PAD_UART1_TX_DATA__UART1_DCE_TX	0x1b0b1
125*833e5d42SEmmanuel Vadot			MX6UL_PAD_UART1_RX_DATA__UART1_DCE_RX	0x1b0b1
126*833e5d42SEmmanuel Vadot		>;
127*833e5d42SEmmanuel Vadot	};
128*833e5d42SEmmanuel Vadot
129*833e5d42SEmmanuel Vadot	pinctrl_uart2: uart2grp {
130*833e5d42SEmmanuel Vadot		fsl,pins = <
131*833e5d42SEmmanuel Vadot			MX6UL_PAD_UART2_TX_DATA__UART2_DCE_TX	0x1b0b1
132*833e5d42SEmmanuel Vadot			MX6UL_PAD_UART2_RX_DATA__UART2_DCE_RX	0x1b0b1
133*833e5d42SEmmanuel Vadot			MX6UL_PAD_UART2_RTS_B__UART2_DCE_RTS	0x1b0b1
134*833e5d42SEmmanuel Vadot			MX6UL_PAD_UART2_CTS_B__UART2_DCE_CTS	0x1b0b1
135*833e5d42SEmmanuel Vadot		>;
136*833e5d42SEmmanuel Vadot	};
137*833e5d42SEmmanuel Vadot
138*833e5d42SEmmanuel Vadot	pinctrl_usdhc1: usdhc1grp {
139*833e5d42SEmmanuel Vadot		fsl,pins = <
140*833e5d42SEmmanuel Vadot			MX6UL_PAD_SD1_CMD__USDHC1_CMD		0x17059
141*833e5d42SEmmanuel Vadot			MX6UL_PAD_SD1_CLK__USDHC1_CLK		0x10059
142*833e5d42SEmmanuel Vadot			MX6UL_PAD_SD1_DATA0__USDHC1_DATA0	0x17059
143*833e5d42SEmmanuel Vadot			MX6UL_PAD_SD1_DATA1__USDHC1_DATA1	0x17059
144*833e5d42SEmmanuel Vadot			MX6UL_PAD_SD1_DATA2__USDHC1_DATA2	0x17059
145*833e5d42SEmmanuel Vadot			MX6UL_PAD_SD1_DATA3__USDHC1_DATA3	0x17059
146*833e5d42SEmmanuel Vadot		>;
147*833e5d42SEmmanuel Vadot	};
148*833e5d42SEmmanuel Vadot};
149*833e5d42SEmmanuel Vadot
150*833e5d42SEmmanuel Vadot&iomuxc_snvs {
151*833e5d42SEmmanuel Vadot	pinctrl_pwrled: ledsgrp {
152*833e5d42SEmmanuel Vadot		fsl,pins = <
153*833e5d42SEmmanuel Vadot			MX6ULL_PAD_SNVS_TAMPER7__GPIO5_IO07	0x130b0
154*833e5d42SEmmanuel Vadot		>;
155*833e5d42SEmmanuel Vadot	};
156*833e5d42SEmmanuel Vadot
157*833e5d42SEmmanuel Vadot	pinctrl_usb_hub: usb_hubgrp {
158*833e5d42SEmmanuel Vadot		fsl,pins = <
159*833e5d42SEmmanuel Vadot			MX6ULL_PAD_SNVS_TAMPER6__GPIO5_IO06	0x17059
160*833e5d42SEmmanuel Vadot		>;
161*833e5d42SEmmanuel Vadot	};
162*833e5d42SEmmanuel Vadot};
163