xref: /freebsd/sys/contrib/device-tree/src/arm64/freescale/imx8mp-toradex-smarc.dtsi (revision 833e5d42ab135b0238e61c5b3c19b8619677cbfa)
1ae5de77eSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
2ae5de77eSEmmanuel Vadot/* Copyright (C) 2025 Toradex */
3ae5de77eSEmmanuel Vadot
4ae5de77eSEmmanuel Vadot#include <dt-bindings/phy/phy-imx8-pcie.h>
5ae5de77eSEmmanuel Vadot#include <dt-bindings/net/ti-dp83867.h>
6ae5de77eSEmmanuel Vadot#include "imx8mp.dtsi"
7ae5de77eSEmmanuel Vadot
8ae5de77eSEmmanuel Vadot/ {
9ae5de77eSEmmanuel Vadot	aliases {
10ae5de77eSEmmanuel Vadot		can0 = &flexcan2;
11ae5de77eSEmmanuel Vadot		can1 = &flexcan1;
12ae5de77eSEmmanuel Vadot		ethernet0 = &eqos;
13ae5de77eSEmmanuel Vadot		ethernet1 = &fec;
14ae5de77eSEmmanuel Vadot		mmc0 = &usdhc3;
15ae5de77eSEmmanuel Vadot		mmc1 = &usdhc2;
16ae5de77eSEmmanuel Vadot		mmc2 = &usdhc1;
17ae5de77eSEmmanuel Vadot		rtc0 = &rtc_i2c;
18ae5de77eSEmmanuel Vadot		rtc1 = &snvs_rtc;
19ae5de77eSEmmanuel Vadot		serial0 = &uart1;
20ae5de77eSEmmanuel Vadot		serial1 = &uart4;
21ae5de77eSEmmanuel Vadot		serial2 = &uart2;
22ae5de77eSEmmanuel Vadot		serial3 = &uart3;
23ae5de77eSEmmanuel Vadot	};
24ae5de77eSEmmanuel Vadot
25ae5de77eSEmmanuel Vadot	chosen {
26ae5de77eSEmmanuel Vadot		stdout-path = &uart4;
27ae5de77eSEmmanuel Vadot	};
28ae5de77eSEmmanuel Vadot
29ae5de77eSEmmanuel Vadot	connector {
30ae5de77eSEmmanuel Vadot		compatible = "gpio-usb-b-connector", "usb-b-connector";
31ae5de77eSEmmanuel Vadot		pinctrl-names = "default";
32ae5de77eSEmmanuel Vadot		pinctrl-0 = <&pinctrl_usb0_id>;
33ae5de77eSEmmanuel Vadot		id-gpios = <&gpio5 2 GPIO_ACTIVE_HIGH>;
34ae5de77eSEmmanuel Vadot		label = "USB0";
35ae5de77eSEmmanuel Vadot		self-powered;
36ae5de77eSEmmanuel Vadot		type = "micro";
37ae5de77eSEmmanuel Vadot		vbus-supply = <&reg_usb0_vbus>;
38ae5de77eSEmmanuel Vadot
39ae5de77eSEmmanuel Vadot		port {
40ae5de77eSEmmanuel Vadot			usb_dr_connector: endpoint {
41ae5de77eSEmmanuel Vadot				remote-endpoint = <&usb3_0_dwc>;
42ae5de77eSEmmanuel Vadot			};
43ae5de77eSEmmanuel Vadot		};
44ae5de77eSEmmanuel Vadot	};
45ae5de77eSEmmanuel Vadot
46ae5de77eSEmmanuel Vadot	gpio-keys {
47ae5de77eSEmmanuel Vadot		compatible = "gpio-keys";
48ae5de77eSEmmanuel Vadot		pinctrl-names = "default";
49ae5de77eSEmmanuel Vadot		pinctrl-0 = <&pinctrl_sleep>;
50ae5de77eSEmmanuel Vadot
51ae5de77eSEmmanuel Vadot		smarc_key_sleep: key-sleep {
52ae5de77eSEmmanuel Vadot			gpios = <&gpio3 1 GPIO_ACTIVE_LOW>;
53ae5de77eSEmmanuel Vadot			label = "SMARC_SLEEP#";
54ae5de77eSEmmanuel Vadot			wakeup-source;
55ae5de77eSEmmanuel Vadot			linux,code = <KEY_SLEEP>;
56ae5de77eSEmmanuel Vadot		};
57ae5de77eSEmmanuel Vadot
58ae5de77eSEmmanuel Vadot		smarc_switch_lid: switch-lid {
59ae5de77eSEmmanuel Vadot			gpios = <&som_ec_gpio_expander 2 GPIO_ACTIVE_LOW>;
60ae5de77eSEmmanuel Vadot			label = "SMARC_LID#";
61ae5de77eSEmmanuel Vadot			linux,code = <SW_LID>;
62ae5de77eSEmmanuel Vadot			linux,input-type = <EV_SW>;
63ae5de77eSEmmanuel Vadot		};
64ae5de77eSEmmanuel Vadot	};
65ae5de77eSEmmanuel Vadot
66ae5de77eSEmmanuel Vadot	reg_usb0_vbus: regulator-usb0-vbus {
67ae5de77eSEmmanuel Vadot		compatible = "regulator-fixed";
68ae5de77eSEmmanuel Vadot		pinctrl-names = "default";
69ae5de77eSEmmanuel Vadot		pinctrl-0 = <&pinctrl_usb0_en_oc>;
70ae5de77eSEmmanuel Vadot		gpios = <&gpio1 12 GPIO_ACTIVE_HIGH>;
71ae5de77eSEmmanuel Vadot		enable-active-high;
72ae5de77eSEmmanuel Vadot		regulator-name = "USB0_EN_OC#";
73ae5de77eSEmmanuel Vadot	};
74ae5de77eSEmmanuel Vadot
75ae5de77eSEmmanuel Vadot	reg_usb1_vbus: regulator-usb1-vbus {
76ae5de77eSEmmanuel Vadot		compatible = "regulator-fixed";
77ae5de77eSEmmanuel Vadot		pinctrl-names = "default";
78ae5de77eSEmmanuel Vadot		pinctrl-0 = <&pinctrl_usb1_en_oc>;
79ae5de77eSEmmanuel Vadot		gpios = <&gpio1 14 GPIO_ACTIVE_HIGH>;
80ae5de77eSEmmanuel Vadot		enable-active-high;
81ae5de77eSEmmanuel Vadot		regulator-name = "USB2_EN_OC#";
82ae5de77eSEmmanuel Vadot	};
83ae5de77eSEmmanuel Vadot
84ae5de77eSEmmanuel Vadot	reg_usdhc2_vmmc: regulator-usdhc2-vmmc {
85ae5de77eSEmmanuel Vadot		compatible = "regulator-fixed";
86ae5de77eSEmmanuel Vadot		pinctrl-names = "default";
87ae5de77eSEmmanuel Vadot		pinctrl-0 = <&pinctrl_usdhc2_pwr_en>;
88ae5de77eSEmmanuel Vadot		gpios = <&gpio2 19 GPIO_ACTIVE_HIGH>;
89ae5de77eSEmmanuel Vadot		enable-active-high;
90ae5de77eSEmmanuel Vadot		off-on-delay-us = <100000>;
91ae5de77eSEmmanuel Vadot		regulator-max-microvolt = <3300000>;
92ae5de77eSEmmanuel Vadot		regulator-min-microvolt = <3300000>;
93ae5de77eSEmmanuel Vadot		regulator-name = "3V3_SD";
94ae5de77eSEmmanuel Vadot		startup-delay-us = <20000>;
95ae5de77eSEmmanuel Vadot	};
96ae5de77eSEmmanuel Vadot
97ae5de77eSEmmanuel Vadot	reg_usdhc2_vqmmc: regulator-usdhc2-vqmmc {
98ae5de77eSEmmanuel Vadot		compatible = "regulator-gpio";
99ae5de77eSEmmanuel Vadot		pinctrl-names = "default";
100ae5de77eSEmmanuel Vadot		pinctrl-0 = <&pinctrl_usdhc2_vsel>;
101ae5de77eSEmmanuel Vadot		gpios = <&gpio1 4 GPIO_ACTIVE_HIGH>;
102ae5de77eSEmmanuel Vadot		regulator-max-microvolt = <3300000>;
103ae5de77eSEmmanuel Vadot		regulator-min-microvolt = <1800000>;
104ae5de77eSEmmanuel Vadot		states = <1800000 0x1>,
105ae5de77eSEmmanuel Vadot			 <3300000 0x0>;
106ae5de77eSEmmanuel Vadot		regulator-name = "PMIC_USDHC_VSELECT";
107ae5de77eSEmmanuel Vadot		vin-supply = <&reg_sd_3v3_1v8>;
108ae5de77eSEmmanuel Vadot	};
109ae5de77eSEmmanuel Vadot
110ae5de77eSEmmanuel Vadot	reg_wifi_en: regulator-wifi-en {
111ae5de77eSEmmanuel Vadot		compatible = "regulator-fixed";
112ae5de77eSEmmanuel Vadot		pinctrl-names = "default";
113ae5de77eSEmmanuel Vadot		pinctrl-0 = <&pinctrl_wifi_pwr_en>;
114ae5de77eSEmmanuel Vadot		gpios = <&gpio3 14 GPIO_ACTIVE_HIGH>;
115ae5de77eSEmmanuel Vadot		enable-active-high;
116ae5de77eSEmmanuel Vadot		regulator-max-microvolt = <3300000>;
117ae5de77eSEmmanuel Vadot		regulator-min-microvolt = <3300000>;
118ae5de77eSEmmanuel Vadot		regulator-name = "CTRL_EN_WIFI";
119ae5de77eSEmmanuel Vadot		startup-delay-us = <2000>;
120ae5de77eSEmmanuel Vadot	};
121ae5de77eSEmmanuel Vadot
122ae5de77eSEmmanuel Vadot	reserved-memory {
123ae5de77eSEmmanuel Vadot		linux,cma {
124ae5de77eSEmmanuel Vadot			size = <0 0x20000000>;
125ae5de77eSEmmanuel Vadot			alloc-ranges = <0 0x40000000 0 0x80000000>;
126ae5de77eSEmmanuel Vadot		};
127ae5de77eSEmmanuel Vadot	};
128ae5de77eSEmmanuel Vadot
129ae5de77eSEmmanuel Vadot	sound_hdmi: sound-hdmi {
130ae5de77eSEmmanuel Vadot		compatible = "fsl,imx-audio-hdmi";
131ae5de77eSEmmanuel Vadot		model = "audio-hdmi";
132ae5de77eSEmmanuel Vadot		audio-cpu = <&aud2htx>;
133ae5de77eSEmmanuel Vadot		hdmi-out;
134ae5de77eSEmmanuel Vadot		status = "disabled";
135ae5de77eSEmmanuel Vadot	};
136ae5de77eSEmmanuel Vadot};
137ae5de77eSEmmanuel Vadot
138ae5de77eSEmmanuel Vadot&A53_0 {
139ae5de77eSEmmanuel Vadot	cpu-supply = <&reg_vdd_arm>;
140ae5de77eSEmmanuel Vadot};
141ae5de77eSEmmanuel Vadot
142ae5de77eSEmmanuel Vadot&A53_1 {
143ae5de77eSEmmanuel Vadot	cpu-supply = <&reg_vdd_arm>;
144ae5de77eSEmmanuel Vadot};
145ae5de77eSEmmanuel Vadot
146ae5de77eSEmmanuel Vadot&A53_2 {
147ae5de77eSEmmanuel Vadot	cpu-supply = <&reg_vdd_arm>;
148ae5de77eSEmmanuel Vadot};
149ae5de77eSEmmanuel Vadot
150ae5de77eSEmmanuel Vadot&A53_3 {
151ae5de77eSEmmanuel Vadot	cpu-supply = <&reg_vdd_arm>;
152ae5de77eSEmmanuel Vadot};
153ae5de77eSEmmanuel Vadot
154ae5de77eSEmmanuel Vadot/* SMARC SPI0 */
155ae5de77eSEmmanuel Vadot&ecspi1 {
156ae5de77eSEmmanuel Vadot	pinctrl-names = "default";
157ae5de77eSEmmanuel Vadot	pinctrl-0 = <&pinctrl_ecspi1>;
158ae5de77eSEmmanuel Vadot	cs-gpios = <&gpio5 9 GPIO_ACTIVE_LOW>, <&gpio4 28 GPIO_ACTIVE_LOW>;
159ae5de77eSEmmanuel Vadot};
160ae5de77eSEmmanuel Vadot
161ae5de77eSEmmanuel Vadot/* SMARC SPI1 */
162ae5de77eSEmmanuel Vadot&ecspi2 {
163ae5de77eSEmmanuel Vadot	pinctrl-names = "default";
164ae5de77eSEmmanuel Vadot	pinctrl-0 = <&pinctrl_ecspi2>, <&pinctrl_tpm_cs>;
165ae5de77eSEmmanuel Vadot	cs-gpios = <&gpio5 13 GPIO_ACTIVE_LOW>,
166ae5de77eSEmmanuel Vadot		   <&gpio4 3 GPIO_ACTIVE_LOW>,
167ae5de77eSEmmanuel Vadot		   <&gpio3 6 GPIO_ACTIVE_LOW>;
168ae5de77eSEmmanuel Vadot	status = "okay";
169ae5de77eSEmmanuel Vadot
170ae5de77eSEmmanuel Vadot	tpm@2 {
171ae5de77eSEmmanuel Vadot		compatible = "infineon,slb9670", "tcg,tpm_tis-spi";
172ae5de77eSEmmanuel Vadot		reg = <2>;
173ae5de77eSEmmanuel Vadot		spi-max-frequency = <18500000>;
174ae5de77eSEmmanuel Vadot	};
175ae5de77eSEmmanuel Vadot};
176ae5de77eSEmmanuel Vadot
177ae5de77eSEmmanuel Vadot/* SMARC GBE0 */
178ae5de77eSEmmanuel Vadot&eqos {
179ae5de77eSEmmanuel Vadot	pinctrl-names = "default";
180ae5de77eSEmmanuel Vadot	pinctrl-0 = <&pinctrl_eqos>,
181ae5de77eSEmmanuel Vadot		    <&pinctrl_eth_mdio>,
182ae5de77eSEmmanuel Vadot		    <&pinctrl_eqos_1588_event>;
183ae5de77eSEmmanuel Vadot	phy-handle = <&eqos_phy>;
184ae5de77eSEmmanuel Vadot	phy-mode = "rgmii-id";
185ae5de77eSEmmanuel Vadot	snps,force_thresh_dma_mode;
186ae5de77eSEmmanuel Vadot	snps,mtl-rx-config = <&mtl_rx_setup>;
187ae5de77eSEmmanuel Vadot	snps,mtl-tx-config = <&mtl_tx_setup>;
188ae5de77eSEmmanuel Vadot
189ae5de77eSEmmanuel Vadot	mdio: mdio {
190ae5de77eSEmmanuel Vadot		compatible = "snps,dwmac-mdio";
191ae5de77eSEmmanuel Vadot		#address-cells = <1>;
192ae5de77eSEmmanuel Vadot		#size-cells = <0>;
193ae5de77eSEmmanuel Vadot	};
194ae5de77eSEmmanuel Vadot
195ae5de77eSEmmanuel Vadot	mtl_rx_setup: rx-queues-config {
196ae5de77eSEmmanuel Vadot		snps,rx-queues-to-use = <5>;
197ae5de77eSEmmanuel Vadot
198ae5de77eSEmmanuel Vadot		queue0 {
199ae5de77eSEmmanuel Vadot			snps,dcb-algorithm;
200ae5de77eSEmmanuel Vadot			snps,priority = <0x1>;
201ae5de77eSEmmanuel Vadot			snps,map-to-dma-channel = <0>;
202ae5de77eSEmmanuel Vadot		};
203ae5de77eSEmmanuel Vadot
204ae5de77eSEmmanuel Vadot		queue1 {
205ae5de77eSEmmanuel Vadot			snps,dcb-algorithm;
206ae5de77eSEmmanuel Vadot			snps,priority = <0x2>;
207ae5de77eSEmmanuel Vadot			snps,map-to-dma-channel = <1>;
208ae5de77eSEmmanuel Vadot		};
209ae5de77eSEmmanuel Vadot
210ae5de77eSEmmanuel Vadot		queue2 {
211ae5de77eSEmmanuel Vadot			snps,dcb-algorithm;
212ae5de77eSEmmanuel Vadot			snps,priority = <0x4>;
213ae5de77eSEmmanuel Vadot			snps,map-to-dma-channel = <2>;
214ae5de77eSEmmanuel Vadot		};
215ae5de77eSEmmanuel Vadot
216ae5de77eSEmmanuel Vadot		queue3 {
217ae5de77eSEmmanuel Vadot			snps,dcb-algorithm;
218ae5de77eSEmmanuel Vadot			snps,priority = <0x8>;
219ae5de77eSEmmanuel Vadot			snps,map-to-dma-channel = <3>;
220ae5de77eSEmmanuel Vadot		};
221ae5de77eSEmmanuel Vadot
222ae5de77eSEmmanuel Vadot		queue4 {
223ae5de77eSEmmanuel Vadot			snps,dcb-algorithm;
224ae5de77eSEmmanuel Vadot			snps,priority = <0xf0>;
225ae5de77eSEmmanuel Vadot			snps,map-to-dma-channel = <4>;
226ae5de77eSEmmanuel Vadot		};
227ae5de77eSEmmanuel Vadot	};
228ae5de77eSEmmanuel Vadot
229ae5de77eSEmmanuel Vadot	mtl_tx_setup: tx-queues-config {
230ae5de77eSEmmanuel Vadot		snps,tx-queues-to-use = <5>;
231ae5de77eSEmmanuel Vadot
232ae5de77eSEmmanuel Vadot		queue0 {
233ae5de77eSEmmanuel Vadot			snps,dcb-algorithm;
234ae5de77eSEmmanuel Vadot			snps,priority = <0x1>;
235ae5de77eSEmmanuel Vadot		};
236ae5de77eSEmmanuel Vadot
237ae5de77eSEmmanuel Vadot		queue1 {
238ae5de77eSEmmanuel Vadot			snps,dcb-algorithm;
239ae5de77eSEmmanuel Vadot			snps,priority = <0x2>;
240ae5de77eSEmmanuel Vadot		};
241ae5de77eSEmmanuel Vadot
242ae5de77eSEmmanuel Vadot		queue2 {
243ae5de77eSEmmanuel Vadot			snps,dcb-algorithm;
244ae5de77eSEmmanuel Vadot			snps,priority = <0x4>;
245ae5de77eSEmmanuel Vadot		};
246ae5de77eSEmmanuel Vadot
247ae5de77eSEmmanuel Vadot		queue3 {
248ae5de77eSEmmanuel Vadot			snps,dcb-algorithm;
249ae5de77eSEmmanuel Vadot			snps,priority = <0x8>;
250ae5de77eSEmmanuel Vadot		};
251ae5de77eSEmmanuel Vadot
252ae5de77eSEmmanuel Vadot		queue4 {
253ae5de77eSEmmanuel Vadot			snps,dcb-algorithm;
254ae5de77eSEmmanuel Vadot			snps,priority = <0xf0>;
255ae5de77eSEmmanuel Vadot		};
256ae5de77eSEmmanuel Vadot	};
257ae5de77eSEmmanuel Vadot};
258ae5de77eSEmmanuel Vadot
259ae5de77eSEmmanuel Vadot/* SMARC GBE1 */
260ae5de77eSEmmanuel Vadot&fec {
261ae5de77eSEmmanuel Vadot	pinctrl-names = "default";
262ae5de77eSEmmanuel Vadot	pinctrl-0 = <&pinctrl_fec>, <&pinctrl_fec_1588_event>;
263ae5de77eSEmmanuel Vadot	phy-handle = <&fec_phy>;
264ae5de77eSEmmanuel Vadot	phy-mode = "rgmii-id";
265ae5de77eSEmmanuel Vadot	fsl,magic-packet;
266ae5de77eSEmmanuel Vadot};
267ae5de77eSEmmanuel Vadot
268ae5de77eSEmmanuel Vadot/* SMARC CAN1 */
269ae5de77eSEmmanuel Vadot&flexcan1 {
270ae5de77eSEmmanuel Vadot	pinctrl-names = "default";
271ae5de77eSEmmanuel Vadot	pinctrl-0 = <&pinctrl_flexcan1>;
272ae5de77eSEmmanuel Vadot};
273ae5de77eSEmmanuel Vadot
274ae5de77eSEmmanuel Vadot/* SMARC CAN0 */
275ae5de77eSEmmanuel Vadot&flexcan2 {
276ae5de77eSEmmanuel Vadot	pinctrl-names = "default";
277ae5de77eSEmmanuel Vadot	pinctrl-0 = <&pinctrl_flexcan2>;
278ae5de77eSEmmanuel Vadot};
279ae5de77eSEmmanuel Vadot
280ae5de77eSEmmanuel Vadot&gpio1 {
281ae5de77eSEmmanuel Vadot	gpio-line-names = "SMARC_GPIO7", /* 0 */
282ae5de77eSEmmanuel Vadot			  "SMARC_GPIO8",
283ae5de77eSEmmanuel Vadot			  "",
284ae5de77eSEmmanuel Vadot			  "PMIC_INT#",
285ae5de77eSEmmanuel Vadot			  "PMIC_USDHC_VSELECT",
286ae5de77eSEmmanuel Vadot			  "SMARC_GPIO9",
287ae5de77eSEmmanuel Vadot			  "SMARC_GPIO10",
288ae5de77eSEmmanuel Vadot			  "SMARC_GPIO11",
289ae5de77eSEmmanuel Vadot			  "SMARC_GPIO12",
290ae5de77eSEmmanuel Vadot			  "",
291ae5de77eSEmmanuel Vadot			  "SMARC_GPIO5", /* 10 */
292ae5de77eSEmmanuel Vadot			  "",
293ae5de77eSEmmanuel Vadot			  "SMARC_USB0_EN_OC#",
294ae5de77eSEmmanuel Vadot			  "SMARC_GPIO13",
295ae5de77eSEmmanuel Vadot			  "SMARC_USB2_EN_OC#";
296ae5de77eSEmmanuel Vadot};
297ae5de77eSEmmanuel Vadot
298ae5de77eSEmmanuel Vadot&gpio2 {
299ae5de77eSEmmanuel Vadot	gpio-line-names = "", /* 0 */
300ae5de77eSEmmanuel Vadot			  "",
301ae5de77eSEmmanuel Vadot			  "",
302ae5de77eSEmmanuel Vadot			  "",
303ae5de77eSEmmanuel Vadot			  "",
304ae5de77eSEmmanuel Vadot			  "",
305ae5de77eSEmmanuel Vadot			  "",
306ae5de77eSEmmanuel Vadot			  "",
307ae5de77eSEmmanuel Vadot			  "",
308ae5de77eSEmmanuel Vadot			  "",
309ae5de77eSEmmanuel Vadot			  "", /* 10 */
310ae5de77eSEmmanuel Vadot			  "",
311ae5de77eSEmmanuel Vadot			  "SMARC_SDIO_CD#",
312ae5de77eSEmmanuel Vadot			  "",
313ae5de77eSEmmanuel Vadot			  "",
314ae5de77eSEmmanuel Vadot			  "",
315ae5de77eSEmmanuel Vadot			  "",
316ae5de77eSEmmanuel Vadot			  "",
317ae5de77eSEmmanuel Vadot			  "",
318ae5de77eSEmmanuel Vadot			  "SMARC_SDIO_PWR_EN",
319ae5de77eSEmmanuel Vadot			  "SMARC_SDIO_WP"; /* 20 */
320ae5de77eSEmmanuel Vadot};
321ae5de77eSEmmanuel Vadot
322ae5de77eSEmmanuel Vadot&gpio3 {
323*833e5d42SEmmanuel Vadot	pinctrl-names = "default";
324*833e5d42SEmmanuel Vadot	pinctrl-0 = <&pinctrl_lvds_dsi_sel>;
325ae5de77eSEmmanuel Vadot	gpio-line-names = "ETH_0_INT#", /* 0 */
326ae5de77eSEmmanuel Vadot			  "SLEEP#",
327ae5de77eSEmmanuel Vadot			  "",
328ae5de77eSEmmanuel Vadot			  "",
329ae5de77eSEmmanuel Vadot			  "",
330ae5de77eSEmmanuel Vadot			  "",
331ae5de77eSEmmanuel Vadot			  "TPM_CS#",
332ae5de77eSEmmanuel Vadot			  "LVDS_DSI_SEL",
333ae5de77eSEmmanuel Vadot			  "MCU_INT#",
334ae5de77eSEmmanuel Vadot			  "GPIO_EX_INT#",
335ae5de77eSEmmanuel Vadot			  "", /* 10 */
336ae5de77eSEmmanuel Vadot			  "",
337ae5de77eSEmmanuel Vadot			  "",
338ae5de77eSEmmanuel Vadot			  "",
339ae5de77eSEmmanuel Vadot			  "",
340ae5de77eSEmmanuel Vadot			  "",
341ae5de77eSEmmanuel Vadot			  "SMARC_SMB_ALERT#",
342ae5de77eSEmmanuel Vadot			  "",
343ae5de77eSEmmanuel Vadot			  "",
344ae5de77eSEmmanuel Vadot			  "",
345ae5de77eSEmmanuel Vadot			  "SMARC_I2C_PM_DAT", /* 20 */
346ae5de77eSEmmanuel Vadot			  "",
347ae5de77eSEmmanuel Vadot			  "",
348ae5de77eSEmmanuel Vadot			  "",
349ae5de77eSEmmanuel Vadot			  "",
350ae5de77eSEmmanuel Vadot			  "",
351ae5de77eSEmmanuel Vadot			  "",
352ae5de77eSEmmanuel Vadot			  "",
353ae5de77eSEmmanuel Vadot			  "SMARC_I2C_PM_CK";
354ae5de77eSEmmanuel Vadot};
355ae5de77eSEmmanuel Vadot
356ae5de77eSEmmanuel Vadot&gpio4 {
357ae5de77eSEmmanuel Vadot	gpio-line-names = "SMARC_PCIE_WAKE#", /* 0 */
358ae5de77eSEmmanuel Vadot			  "",
359ae5de77eSEmmanuel Vadot			  "",
360ae5de77eSEmmanuel Vadot			  "SMARC_SPI1_CS1#",
361ae5de77eSEmmanuel Vadot			  "",
362ae5de77eSEmmanuel Vadot			  "",
363ae5de77eSEmmanuel Vadot			  "",
364ae5de77eSEmmanuel Vadot			  "",
365ae5de77eSEmmanuel Vadot			  "",
366ae5de77eSEmmanuel Vadot			  "",
367ae5de77eSEmmanuel Vadot			  "", /* 10 */
368ae5de77eSEmmanuel Vadot			  "",
369ae5de77eSEmmanuel Vadot			  "",
370ae5de77eSEmmanuel Vadot			  "",
371ae5de77eSEmmanuel Vadot			  "",
372ae5de77eSEmmanuel Vadot			  "",
373ae5de77eSEmmanuel Vadot			  "",
374ae5de77eSEmmanuel Vadot			  "",
375ae5de77eSEmmanuel Vadot			  "SMARC_GPIO4",
376ae5de77eSEmmanuel Vadot			  "SMARC_PCIE_A_RST#",
377ae5de77eSEmmanuel Vadot			  "", /* 20 */
378ae5de77eSEmmanuel Vadot			  "",
379ae5de77eSEmmanuel Vadot			  "",
380ae5de77eSEmmanuel Vadot			  "",
381ae5de77eSEmmanuel Vadot			  "",
382ae5de77eSEmmanuel Vadot			  "",
383ae5de77eSEmmanuel Vadot			  "",
384ae5de77eSEmmanuel Vadot			  "",
385ae5de77eSEmmanuel Vadot			  "SMARC_SPI0_CS1#",
386ae5de77eSEmmanuel Vadot			  "SMARC_GPIO6";
387ae5de77eSEmmanuel Vadot};
388ae5de77eSEmmanuel Vadot
389ae5de77eSEmmanuel Vadot&gpio5 {
390ae5de77eSEmmanuel Vadot	gpio-line-names = "", /* 0 */
391ae5de77eSEmmanuel Vadot			  "",
392ae5de77eSEmmanuel Vadot			  "SMARC_USB0_OTG_ID",
393ae5de77eSEmmanuel Vadot			  "SMARC_I2C_CAM1_CK",
394ae5de77eSEmmanuel Vadot			  "SMARC_I2C_CAM1_DAT",
395ae5de77eSEmmanuel Vadot			  "",
396ae5de77eSEmmanuel Vadot			  "",
397ae5de77eSEmmanuel Vadot			  "",
398ae5de77eSEmmanuel Vadot			  "",
399ae5de77eSEmmanuel Vadot			  "SMARC_SPI0_CS0#",
400ae5de77eSEmmanuel Vadot			  "", /* 10 */
401ae5de77eSEmmanuel Vadot			  "",
402ae5de77eSEmmanuel Vadot			  "",
403ae5de77eSEmmanuel Vadot			  "SMARC_SPI1_CS0#",
404ae5de77eSEmmanuel Vadot			  "CTRL_I2C_SCL",
405ae5de77eSEmmanuel Vadot			  "CTRL_I2C_SDA",
406ae5de77eSEmmanuel Vadot			  "SMARC_I2C_LCD_CK",
407ae5de77eSEmmanuel Vadot			  "SMARC_I2C_LCD_DAT",
408ae5de77eSEmmanuel Vadot			  "SMARC_I2C_CAM0_CK",
409ae5de77eSEmmanuel Vadot			  "SMARC_I2C_CAM0_DAT",
410ae5de77eSEmmanuel Vadot			  "SMARC_I2C_GP_CK", /* 20 */
411ae5de77eSEmmanuel Vadot			  "SMARC_I2C_GP_DAT";
412ae5de77eSEmmanuel Vadot};
413ae5de77eSEmmanuel Vadot
414ae5de77eSEmmanuel Vadot/* SMARC HDMI */
415ae5de77eSEmmanuel Vadot&hdmi_tx {
416ae5de77eSEmmanuel Vadot	pinctrl-names = "default";
417ae5de77eSEmmanuel Vadot	pinctrl-0 = <&pinctrl_hdmi>;
418ae5de77eSEmmanuel Vadot};
419ae5de77eSEmmanuel Vadot
420ae5de77eSEmmanuel Vadot/* On-module I2C */
421ae5de77eSEmmanuel Vadot&i2c1 {
422ae5de77eSEmmanuel Vadot	pinctrl-names = "default", "gpio";
423ae5de77eSEmmanuel Vadot	pinctrl-0 = <&pinctrl_i2c1>;
424ae5de77eSEmmanuel Vadot	pinctrl-1 = <&pinctrl_i2c1_gpio>;
425ae5de77eSEmmanuel Vadot	clock-frequency = <400000>;
426ae5de77eSEmmanuel Vadot	scl-gpios = <&gpio5 14 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
427ae5de77eSEmmanuel Vadot	sda-gpios = <&gpio5 15 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
428ae5de77eSEmmanuel Vadot	single-master;
429ae5de77eSEmmanuel Vadot	status = "okay";
430ae5de77eSEmmanuel Vadot
431ae5de77eSEmmanuel Vadot	som_gpio_expander: gpio@21 {
432ae5de77eSEmmanuel Vadot		compatible = "nxp,pcal6408";
433ae5de77eSEmmanuel Vadot		reg = <0x21>;
434ae5de77eSEmmanuel Vadot		pinctrl-names = "default";
435ae5de77eSEmmanuel Vadot		pinctrl-0 = <&pinctrl_pcal6408>;
436ae5de77eSEmmanuel Vadot		#interrupt-cells = <2>;
437ae5de77eSEmmanuel Vadot		interrupt-controller;
438ae5de77eSEmmanuel Vadot		interrupt-parent = <&gpio3>;
439ae5de77eSEmmanuel Vadot		interrupts = <9 IRQ_TYPE_LEVEL_LOW>;
440ae5de77eSEmmanuel Vadot		#gpio-cells = <2>;
441ae5de77eSEmmanuel Vadot		gpio-controller;
442ae5de77eSEmmanuel Vadot		gpio-line-names =
443ae5de77eSEmmanuel Vadot			"SMARC_GPIO0",
444ae5de77eSEmmanuel Vadot			"SMARC_GPIO1",
445ae5de77eSEmmanuel Vadot			"SMARC_GPIO2",
446ae5de77eSEmmanuel Vadot			"SMARC_GPIO3",
447ae5de77eSEmmanuel Vadot			"SMARC_LCD0_VDD_EN",
448ae5de77eSEmmanuel Vadot			"SMARC_LCD0_BKLT_EN",
449ae5de77eSEmmanuel Vadot			"SMARC_LCD1_VDD_EN",
450ae5de77eSEmmanuel Vadot			"SMARC_LCD1_BKLT_EN";
451ae5de77eSEmmanuel Vadot	};
452ae5de77eSEmmanuel Vadot
453ae5de77eSEmmanuel Vadot	pca9450: pmic@25 {
454ae5de77eSEmmanuel Vadot		compatible = "nxp,pca9450c";
455ae5de77eSEmmanuel Vadot		reg = <0x25>;
456ae5de77eSEmmanuel Vadot		pinctrl-names = "default";
457ae5de77eSEmmanuel Vadot		pinctrl-0 = <&pinctrl_pmic>;
458ae5de77eSEmmanuel Vadot		interrupt-parent = <&gpio1>;
459ae5de77eSEmmanuel Vadot		interrupts = <3 IRQ_TYPE_LEVEL_LOW>;
460ae5de77eSEmmanuel Vadot
461ae5de77eSEmmanuel Vadot		regulators {
462ae5de77eSEmmanuel Vadot			BUCK1 {
463ae5de77eSEmmanuel Vadot				regulator-always-on;
464ae5de77eSEmmanuel Vadot				regulator-boot-on;
465ae5de77eSEmmanuel Vadot				regulator-max-microvolt = <1000000>;
466ae5de77eSEmmanuel Vadot				regulator-min-microvolt = <805000>;
467ae5de77eSEmmanuel Vadot				regulator-name = "+VDD_SOC (PMIC BUCK1)";
468ae5de77eSEmmanuel Vadot				regulator-ramp-delay = <3125>;
469ae5de77eSEmmanuel Vadot			};
470ae5de77eSEmmanuel Vadot
471ae5de77eSEmmanuel Vadot			reg_vdd_arm: BUCK2 {
472ae5de77eSEmmanuel Vadot				regulator-always-on;
473ae5de77eSEmmanuel Vadot				regulator-boot-on;
474ae5de77eSEmmanuel Vadot				regulator-max-microvolt = <1000000>;
475ae5de77eSEmmanuel Vadot				regulator-min-microvolt = <805000>;
476ae5de77eSEmmanuel Vadot				regulator-name = "+VDD_ARM (PMIC BUCK2)";
477ae5de77eSEmmanuel Vadot				regulator-ramp-delay = <3125>;
478ae5de77eSEmmanuel Vadot				nxp,dvs-run-voltage = <950000>;
479ae5de77eSEmmanuel Vadot				nxp,dvs-standby-voltage = <850000>;
480ae5de77eSEmmanuel Vadot			};
481ae5de77eSEmmanuel Vadot
482ae5de77eSEmmanuel Vadot			reg_3v3: BUCK4 {
483ae5de77eSEmmanuel Vadot				regulator-always-on;
484ae5de77eSEmmanuel Vadot				regulator-boot-on;
485ae5de77eSEmmanuel Vadot				regulator-max-microvolt = <3300000>;
486ae5de77eSEmmanuel Vadot				regulator-min-microvolt = <3300000>;
487ae5de77eSEmmanuel Vadot				regulator-name = "+V3.3 (PMIC BUCK4)";
488ae5de77eSEmmanuel Vadot			};
489ae5de77eSEmmanuel Vadot
490ae5de77eSEmmanuel Vadot			reg_1v8: BUCK5 {
491ae5de77eSEmmanuel Vadot				regulator-always-on;
492ae5de77eSEmmanuel Vadot				regulator-boot-on;
493ae5de77eSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
494ae5de77eSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
495ae5de77eSEmmanuel Vadot				regulator-name = "+V1.8 (PMIC BUCK5)";
496ae5de77eSEmmanuel Vadot			};
497ae5de77eSEmmanuel Vadot
498ae5de77eSEmmanuel Vadot			BUCK6 {
499ae5de77eSEmmanuel Vadot				regulator-always-on;
500ae5de77eSEmmanuel Vadot				regulator-boot-on;
501ae5de77eSEmmanuel Vadot				regulator-max-microvolt = <1155000>;
502ae5de77eSEmmanuel Vadot				regulator-min-microvolt = <1045000>;
503ae5de77eSEmmanuel Vadot				regulator-name = "+VDD_DDR (PMIC BUCK6)";
504ae5de77eSEmmanuel Vadot			};
505ae5de77eSEmmanuel Vadot
506ae5de77eSEmmanuel Vadot			LDO1 {
507ae5de77eSEmmanuel Vadot				regulator-always-on;
508ae5de77eSEmmanuel Vadot				regulator-boot-on;
509ae5de77eSEmmanuel Vadot				regulator-max-microvolt = <1950000>;
510ae5de77eSEmmanuel Vadot				regulator-min-microvolt = <1710000>;
511ae5de77eSEmmanuel Vadot				regulator-name = "+V1.8_SNVS (PMIC LDO1)";
512ae5de77eSEmmanuel Vadot			};
513ae5de77eSEmmanuel Vadot
514ae5de77eSEmmanuel Vadot			LDO3 {
515ae5de77eSEmmanuel Vadot				regulator-always-on;
516ae5de77eSEmmanuel Vadot				regulator-boot-on;
517ae5de77eSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
518ae5de77eSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
519ae5de77eSEmmanuel Vadot				regulator-name = "+V1.8A (PMIC LDO3)";
520ae5de77eSEmmanuel Vadot			};
521ae5de77eSEmmanuel Vadot
522ae5de77eSEmmanuel Vadot			LDO4 {
523ae5de77eSEmmanuel Vadot				regulator-always-on;
524ae5de77eSEmmanuel Vadot				regulator-boot-on;
525ae5de77eSEmmanuel Vadot				regulator-max-microvolt = <3300000>;
526ae5de77eSEmmanuel Vadot				regulator-min-microvolt = <3300000>;
527ae5de77eSEmmanuel Vadot				regulator-name = "+V3.3_ADC (PMIC LDO4)";
528ae5de77eSEmmanuel Vadot			};
529ae5de77eSEmmanuel Vadot
530ae5de77eSEmmanuel Vadot			reg_sd_3v3_1v8: LDO5 {
531ae5de77eSEmmanuel Vadot				regulator-max-microvolt = <3300000>;
532ae5de77eSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
533ae5de77eSEmmanuel Vadot				regulator-name = "+V3.3_1.8_SD (PMIC LDO5)";
534ae5de77eSEmmanuel Vadot			};
535ae5de77eSEmmanuel Vadot		};
536ae5de77eSEmmanuel Vadot	};
537ae5de77eSEmmanuel Vadot
538ae5de77eSEmmanuel Vadot	embedded-controller@28 {
539ae5de77eSEmmanuel Vadot		compatible = "toradex,smarc-imx8mp-ec", "toradex,smarc-ec";
540ae5de77eSEmmanuel Vadot		reg = <0x28>;
541ae5de77eSEmmanuel Vadot	};
542ae5de77eSEmmanuel Vadot
543ae5de77eSEmmanuel Vadot	som_ec_gpio_expander: gpio@29 {
544ae5de77eSEmmanuel Vadot		compatible = "toradex,ecgpiol16", "nxp,pcal6416";
545ae5de77eSEmmanuel Vadot		reg = <0x29>;
546ae5de77eSEmmanuel Vadot		pinctrl-names = "default";
547ae5de77eSEmmanuel Vadot		pinctrl-0 = <&pinctrl_mcu_int>;
548ae5de77eSEmmanuel Vadot		#interrupt-cells = <2>;
549ae5de77eSEmmanuel Vadot		interrupt-controller;
550ae5de77eSEmmanuel Vadot		interrupt-parent = <&gpio3>;
551ae5de77eSEmmanuel Vadot		interrupts = <8 IRQ_TYPE_LEVEL_LOW>;
552ae5de77eSEmmanuel Vadot		#gpio-cells = <2>;
553ae5de77eSEmmanuel Vadot		gpio-controller;
554ae5de77eSEmmanuel Vadot		gpio-line-names =
555ae5de77eSEmmanuel Vadot			"SMARC_CHARGER_PRSNT#",
556ae5de77eSEmmanuel Vadot			"SMARC_CHARGING#",
557ae5de77eSEmmanuel Vadot			"SMARC_LID#",
558ae5de77eSEmmanuel Vadot			"SMARC_BATLOW#";
559ae5de77eSEmmanuel Vadot	};
560ae5de77eSEmmanuel Vadot
561ae5de77eSEmmanuel Vadot	rtc_i2c: rtc@32 {
562ae5de77eSEmmanuel Vadot		compatible = "epson,rx8130";
563ae5de77eSEmmanuel Vadot		reg = <0x32>;
564ae5de77eSEmmanuel Vadot	};
565ae5de77eSEmmanuel Vadot
566ae5de77eSEmmanuel Vadot	temperature-sensor@48 {
567ae5de77eSEmmanuel Vadot		compatible = "ti,tmp1075";
568ae5de77eSEmmanuel Vadot		reg = <0x48>;
569ae5de77eSEmmanuel Vadot	};
570ae5de77eSEmmanuel Vadot
571ae5de77eSEmmanuel Vadot	eeprom@50 {
572ae5de77eSEmmanuel Vadot		compatible = "st,24c02", "atmel,24c02";
573ae5de77eSEmmanuel Vadot		reg = <0x50>;
574ae5de77eSEmmanuel Vadot		pagesize = <16>;
575ae5de77eSEmmanuel Vadot	};
576ae5de77eSEmmanuel Vadot};
577ae5de77eSEmmanuel Vadot
578ae5de77eSEmmanuel Vadot/* SMARC I2C_LCD */
579ae5de77eSEmmanuel Vadot&i2c2 {
580ae5de77eSEmmanuel Vadot	pinctrl-names = "default", "gpio";
581ae5de77eSEmmanuel Vadot	pinctrl-0 = <&pinctrl_i2c2>;
582ae5de77eSEmmanuel Vadot	pinctrl-1 = <&pinctrl_i2c2_gpio>;
583ae5de77eSEmmanuel Vadot	clock-frequency = <100000>;
584ae5de77eSEmmanuel Vadot	scl-gpios = <&gpio5 16 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
585ae5de77eSEmmanuel Vadot	sda-gpios = <&gpio5 17 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
586ae5de77eSEmmanuel Vadot	single-master;
587ae5de77eSEmmanuel Vadot};
588ae5de77eSEmmanuel Vadot
589ae5de77eSEmmanuel Vadot/* SMARC I2C_CAM0 */
590ae5de77eSEmmanuel Vadot&i2c3 {
591ae5de77eSEmmanuel Vadot	pinctrl-names = "default", "gpio";
592ae5de77eSEmmanuel Vadot	pinctrl-0 = <&pinctrl_i2c3>;
593ae5de77eSEmmanuel Vadot	pinctrl-1 = <&pinctrl_i2c3_gpio>;
594ae5de77eSEmmanuel Vadot	clock-frequency = <400000>;
595ae5de77eSEmmanuel Vadot	scl-gpios = <&gpio5 18 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
596ae5de77eSEmmanuel Vadot	sda-gpios = <&gpio5 19 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
597ae5de77eSEmmanuel Vadot	single-master;
598ae5de77eSEmmanuel Vadot};
599ae5de77eSEmmanuel Vadot
600ae5de77eSEmmanuel Vadot/* SMARC I2C_GP */
601ae5de77eSEmmanuel Vadot&i2c4 {
602ae5de77eSEmmanuel Vadot	pinctrl-names = "default", "gpio";
603ae5de77eSEmmanuel Vadot	pinctrl-0 = <&pinctrl_i2c4>;
604ae5de77eSEmmanuel Vadot	pinctrl-1 = <&pinctrl_i2c4_gpio>;
605ae5de77eSEmmanuel Vadot	clock-frequency = <400000>;
606ae5de77eSEmmanuel Vadot	scl-gpios = <&gpio5 20 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
607ae5de77eSEmmanuel Vadot	sda-gpios = <&gpio5 21 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
608ae5de77eSEmmanuel Vadot	single-master;
609ae5de77eSEmmanuel Vadot	status = "okay";
610ae5de77eSEmmanuel Vadot
611ae5de77eSEmmanuel Vadot	eeprom@50 {
612ae5de77eSEmmanuel Vadot		compatible = "st,24c32", "atmel,24c32";
613ae5de77eSEmmanuel Vadot		reg = <0x50>;
614ae5de77eSEmmanuel Vadot		pagesize = <32>;
615ae5de77eSEmmanuel Vadot	};
616ae5de77eSEmmanuel Vadot};
617ae5de77eSEmmanuel Vadot
618ae5de77eSEmmanuel Vadot/* SMARC I2C_CAM1 */
619ae5de77eSEmmanuel Vadot&i2c5 {
620ae5de77eSEmmanuel Vadot	pinctrl-names = "default", "gpio";
621ae5de77eSEmmanuel Vadot	pinctrl-0 = <&pinctrl_i2c5>;
622ae5de77eSEmmanuel Vadot	pinctrl-1 = <&pinctrl_i2c5_gpio>;
623ae5de77eSEmmanuel Vadot	clock-frequency = <400000>;
624ae5de77eSEmmanuel Vadot	scl-gpios = <&gpio5 3 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
625ae5de77eSEmmanuel Vadot	sda-gpios = <&gpio5 4 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
626ae5de77eSEmmanuel Vadot	single-master;
627ae5de77eSEmmanuel Vadot};
628ae5de77eSEmmanuel Vadot
629ae5de77eSEmmanuel Vadot/* SMARC I2C_PM */
630ae5de77eSEmmanuel Vadot&i2c6 {
631ae5de77eSEmmanuel Vadot	pinctrl-names = "default", "gpio";
632ae5de77eSEmmanuel Vadot	pinctrl-0 = <&pinctrl_i2c6>;
633ae5de77eSEmmanuel Vadot	pinctrl-1 = <&pinctrl_i2c6_gpio>;
634ae5de77eSEmmanuel Vadot	clock-frequency = <400000>;
635ae5de77eSEmmanuel Vadot	scl-gpios = <&gpio3 28 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
636ae5de77eSEmmanuel Vadot	sda-gpios = <&gpio3 20 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
637ae5de77eSEmmanuel Vadot	single-master;
638ae5de77eSEmmanuel Vadot};
639ae5de77eSEmmanuel Vadot
640ae5de77eSEmmanuel Vadot&mdio {
641ae5de77eSEmmanuel Vadot	eqos_phy: ethernet-phy@1 {
642ae5de77eSEmmanuel Vadot		reg = <1>;
643ae5de77eSEmmanuel Vadot		interrupt-parent = <&gpio3>;
644ae5de77eSEmmanuel Vadot		interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
645ae5de77eSEmmanuel Vadot		ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_00_NS>;
646ae5de77eSEmmanuel Vadot		ti,tx-internal-delay = <DP83867_RGMIIDCTL_2_00_NS>;
647ae5de77eSEmmanuel Vadot	};
648ae5de77eSEmmanuel Vadot
649ae5de77eSEmmanuel Vadot	fec_phy: ethernet-phy@2 {
650ae5de77eSEmmanuel Vadot		reg = <2>;
651ae5de77eSEmmanuel Vadot		interrupt-parent = <&gpio3>;
652ae5de77eSEmmanuel Vadot		interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
653ae5de77eSEmmanuel Vadot		ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_00_NS>;
654ae5de77eSEmmanuel Vadot		ti,tx-internal-delay = <DP83867_RGMIIDCTL_2_00_NS>;
655ae5de77eSEmmanuel Vadot	};
656ae5de77eSEmmanuel Vadot};
657ae5de77eSEmmanuel Vadot
658ae5de77eSEmmanuel Vadot/* SMARC PCIE_A */
659ae5de77eSEmmanuel Vadot&pcie {
660ae5de77eSEmmanuel Vadot	pinctrl-names = "default";
661ae5de77eSEmmanuel Vadot	pinctrl-0 = <&pinctrl_pcie>;
662ae5de77eSEmmanuel Vadot	reset-gpios = <&gpio4 19 GPIO_ACTIVE_LOW>;
663ae5de77eSEmmanuel Vadot};
664ae5de77eSEmmanuel Vadot
665ae5de77eSEmmanuel Vadot&pcie_phy {
666ae5de77eSEmmanuel Vadot	clocks = <&hsio_blk_ctrl>;
667ae5de77eSEmmanuel Vadot	clock-names = "ref";
668ae5de77eSEmmanuel Vadot	fsl,clkreq-unsupported;
669ae5de77eSEmmanuel Vadot	fsl,refclk-pad-mode = <IMX8_PCIE_REFCLK_PAD_OUTPUT>;
670ae5de77eSEmmanuel Vadot};
671ae5de77eSEmmanuel Vadot
672ae5de77eSEmmanuel Vadot/* SMARC LCD1_BKLT_PWM */
673ae5de77eSEmmanuel Vadot&pwm1 {
674ae5de77eSEmmanuel Vadot	pinctrl-names = "default";
675ae5de77eSEmmanuel Vadot	pinctrl-0 = <&pinctrl_lcd1_bklt_pwm1>;
676ae5de77eSEmmanuel Vadot};
677ae5de77eSEmmanuel Vadot
678ae5de77eSEmmanuel Vadot/* SMARC LCD0_BKLT_PWM */
679ae5de77eSEmmanuel Vadot&pwm2 {
680ae5de77eSEmmanuel Vadot	pinctrl-names = "default";
681ae5de77eSEmmanuel Vadot	pinctrl-0 = <&pinctrl_lcd0_bklt_pwm2>;
682ae5de77eSEmmanuel Vadot};
683ae5de77eSEmmanuel Vadot
684ae5de77eSEmmanuel Vadot/* SMARC GPIO5 as PWM */
685ae5de77eSEmmanuel Vadot&pwm3 {
686ae5de77eSEmmanuel Vadot	pinctrl-names = "default";
687ae5de77eSEmmanuel Vadot	pinctrl-0 = <&pinctrl_gpio5_pwm>;
688ae5de77eSEmmanuel Vadot};
689ae5de77eSEmmanuel Vadot
690ae5de77eSEmmanuel Vadot&snvs_pwrkey {
691ae5de77eSEmmanuel Vadot	status = "okay";
692ae5de77eSEmmanuel Vadot};
693ae5de77eSEmmanuel Vadot
694ae5de77eSEmmanuel Vadot/* SMARC SER0 */
695ae5de77eSEmmanuel Vadot&uart1 {
696ae5de77eSEmmanuel Vadot	pinctrl-names = "default";
697ae5de77eSEmmanuel Vadot	pinctrl-0 = <&pinctrl_uart1>;
698ae5de77eSEmmanuel Vadot	uart-has-rtscts;
699ae5de77eSEmmanuel Vadot};
700ae5de77eSEmmanuel Vadot
701ae5de77eSEmmanuel Vadot/* SMARC SER2 */
702ae5de77eSEmmanuel Vadot&uart2 {
703ae5de77eSEmmanuel Vadot	pinctrl-names = "default";
704ae5de77eSEmmanuel Vadot	pinctrl-0 = <&pinctrl_uart2>;
705ae5de77eSEmmanuel Vadot	uart-has-rtscts;
706ae5de77eSEmmanuel Vadot};
707ae5de77eSEmmanuel Vadot
708ae5de77eSEmmanuel Vadot/* On-module Bluetooth, optional SMARC SER3 */
709ae5de77eSEmmanuel Vadot&uart3 {
710ae5de77eSEmmanuel Vadot	pinctrl-names = "default";
711ae5de77eSEmmanuel Vadot	pinctrl-0 = <&pinctrl_bt_uart>;
712ae5de77eSEmmanuel Vadot	uart-has-rtscts;
713ae5de77eSEmmanuel Vadot	status = "okay";
714ae5de77eSEmmanuel Vadot
715ae5de77eSEmmanuel Vadot	som_bt: bluetooth {
716ae5de77eSEmmanuel Vadot		compatible = "mrvl,88w8997";
717ae5de77eSEmmanuel Vadot		max-speed = <921600>;
718ae5de77eSEmmanuel Vadot	};
719ae5de77eSEmmanuel Vadot};
720ae5de77eSEmmanuel Vadot
721ae5de77eSEmmanuel Vadot/* SMARC SER1, used as the Linux Console */
722ae5de77eSEmmanuel Vadot&uart4 {
723ae5de77eSEmmanuel Vadot	pinctrl-names = "default";
724ae5de77eSEmmanuel Vadot	pinctrl-0 = <&pinctrl_uart4>;
725ae5de77eSEmmanuel Vadot};
726ae5de77eSEmmanuel Vadot
727ae5de77eSEmmanuel Vadot/* SMARC USB0 */
728ae5de77eSEmmanuel Vadot&usb3_0 {
729ae5de77eSEmmanuel Vadot	fsl,disable-port-power-control;
730ae5de77eSEmmanuel Vadot};
731ae5de77eSEmmanuel Vadot
732ae5de77eSEmmanuel Vadot/* SMARC USB1..4 */
733ae5de77eSEmmanuel Vadot&usb3_1 {
734ae5de77eSEmmanuel Vadot	fsl,disable-port-power-control;
735ae5de77eSEmmanuel Vadot};
736ae5de77eSEmmanuel Vadot
737ae5de77eSEmmanuel Vadot&usb3_phy1 {
738ae5de77eSEmmanuel Vadot	vbus-supply = <&reg_usb1_vbus>;
739ae5de77eSEmmanuel Vadot};
740ae5de77eSEmmanuel Vadot
741ae5de77eSEmmanuel Vadot&usb_dwc3_0 {
742ae5de77eSEmmanuel Vadot	adp-disable;
743ae5de77eSEmmanuel Vadot	dr_mode = "otg";
744ae5de77eSEmmanuel Vadot	hnp-disable;
745ae5de77eSEmmanuel Vadot	maximum-speed = "high-speed";
746ae5de77eSEmmanuel Vadot	srp-disable;
747ae5de77eSEmmanuel Vadot	usb-role-switch;
748ae5de77eSEmmanuel Vadot
749ae5de77eSEmmanuel Vadot	port {
750ae5de77eSEmmanuel Vadot		usb3_0_dwc: endpoint {
751ae5de77eSEmmanuel Vadot			remote-endpoint = <&usb_dr_connector>;
752ae5de77eSEmmanuel Vadot		};
753ae5de77eSEmmanuel Vadot	};
754ae5de77eSEmmanuel Vadot};
755ae5de77eSEmmanuel Vadot
756ae5de77eSEmmanuel Vadot&usb_dwc3_1 {
757ae5de77eSEmmanuel Vadot	dr_mode = "host";
758ae5de77eSEmmanuel Vadot};
759ae5de77eSEmmanuel Vadot
760ae5de77eSEmmanuel Vadot/* On-module Wi-Fi */
761ae5de77eSEmmanuel Vadot&usdhc1 {
762ae5de77eSEmmanuel Vadot	pinctrl-names = "default", "state_100mhz", "state_200mhz";
763ae5de77eSEmmanuel Vadot	pinctrl-0 = <&pinctrl_usdhc1>;
764ae5de77eSEmmanuel Vadot	pinctrl-1 = <&pinctrl_usdhc1_100mhz>;
765ae5de77eSEmmanuel Vadot	pinctrl-2 = <&pinctrl_usdhc1_200mhz>;
766ae5de77eSEmmanuel Vadot	keep-power-in-suspend;
767ae5de77eSEmmanuel Vadot	non-removable;
768ae5de77eSEmmanuel Vadot	vmmc-supply = <&reg_wifi_en>;
769ae5de77eSEmmanuel Vadot	status = "okay";
770ae5de77eSEmmanuel Vadot};
771ae5de77eSEmmanuel Vadot
772ae5de77eSEmmanuel Vadot/* SMARC SDIO */
773ae5de77eSEmmanuel Vadot&usdhc2 {
774ae5de77eSEmmanuel Vadot	pinctrl-names = "default", "state_100mhz", "state_200mhz", "sleep";
775ae5de77eSEmmanuel Vadot	pinctrl-0 = <&pinctrl_usdhc2>,
776ae5de77eSEmmanuel Vadot		    <&pinctrl_usdhc2_cd>,
777ae5de77eSEmmanuel Vadot		    <&pinctrl_usdhc2_wp>;
778ae5de77eSEmmanuel Vadot	pinctrl-1 = <&pinctrl_usdhc2_100mhz>,
779ae5de77eSEmmanuel Vadot		    <&pinctrl_usdhc2_cd>,
780ae5de77eSEmmanuel Vadot		    <&pinctrl_usdhc2_wp>;
781ae5de77eSEmmanuel Vadot	pinctrl-2 = <&pinctrl_usdhc2_200mhz>,
782ae5de77eSEmmanuel Vadot		    <&pinctrl_usdhc2_cd>,
783ae5de77eSEmmanuel Vadot		    <&pinctrl_usdhc2_wp>;
784ae5de77eSEmmanuel Vadot	pinctrl-3 = <&pinctrl_usdhc2_sleep>,
785ae5de77eSEmmanuel Vadot		    <&pinctrl_usdhc2_cd_sleep>,
786ae5de77eSEmmanuel Vadot		    <&pinctrl_usdhc2_wp>;
787ae5de77eSEmmanuel Vadot	assigned-clocks = <&clk IMX8MP_CLK_USDHC2>;
788ae5de77eSEmmanuel Vadot	assigned-clock-rates = <400000000>;
789ae5de77eSEmmanuel Vadot	cd-gpios = <&gpio2 12 GPIO_ACTIVE_LOW>;
790ae5de77eSEmmanuel Vadot	vmmc-supply = <&reg_usdhc2_vmmc>;
791ae5de77eSEmmanuel Vadot	vqmmc-supply = <&reg_usdhc2_vqmmc>;
792ae5de77eSEmmanuel Vadot	wp-gpios = <&gpio2 20 GPIO_ACTIVE_HIGH>;
793ae5de77eSEmmanuel Vadot};
794ae5de77eSEmmanuel Vadot
795ae5de77eSEmmanuel Vadot/* On-module eMMC */
796ae5de77eSEmmanuel Vadot&usdhc3 {
797ae5de77eSEmmanuel Vadot	pinctrl-names = "default", "state_100mhz", "state_200mhz";
798ae5de77eSEmmanuel Vadot	pinctrl-0 = <&pinctrl_usdhc3>;
799ae5de77eSEmmanuel Vadot	pinctrl-1 = <&pinctrl_usdhc3_100mhz>;
800ae5de77eSEmmanuel Vadot	pinctrl-2 = <&pinctrl_usdhc3_200mhz>;
801ae5de77eSEmmanuel Vadot	assigned-clocks = <&clk IMX8MP_CLK_USDHC3_ROOT>;
802ae5de77eSEmmanuel Vadot	assigned-clock-rates = <400000000>;
803ae5de77eSEmmanuel Vadot	bus-width = <8>;
804ae5de77eSEmmanuel Vadot	non-removable;
805ae5de77eSEmmanuel Vadot	status = "okay";
806ae5de77eSEmmanuel Vadot};
807ae5de77eSEmmanuel Vadot
808ae5de77eSEmmanuel Vadot&wdog1 {
809ae5de77eSEmmanuel Vadot	pinctrl-names = "default";
810ae5de77eSEmmanuel Vadot	pinctrl-0 = <&pinctrl_wdog>;
811ae5de77eSEmmanuel Vadot	fsl,ext-reset-output;
812ae5de77eSEmmanuel Vadot	status = "okay";
813ae5de77eSEmmanuel Vadot};
814ae5de77eSEmmanuel Vadot
815ae5de77eSEmmanuel Vadot&iomuxc {
816ae5de77eSEmmanuel Vadot	/* On-module Bluetooth */
817ae5de77eSEmmanuel Vadot	pinctrl_bt_uart: btuartgrp {
818ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_SD1_DATA6__UART3_DCE_TX	0x1c4>, /* WiFi_UART_TXD */
819ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SD1_DATA7__UART3_DCE_RX	0x1c4>, /* WiFi_UART_RXD */
820ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SD1_STROBE__UART3_DCE_CTS	0x1c4>, /* WiFi_UART_RTS */
821ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SD1_RESET_B__UART3_DCE_RTS	0x1c4>; /* WiFi_UART_CTS */
822ae5de77eSEmmanuel Vadot	};
823ae5de77eSEmmanuel Vadot
824ae5de77eSEmmanuel Vadot	/* SMARC CAM_MCK */
825ae5de77eSEmmanuel Vadot	pinctrl_csi_mclk: csimclkgrp {
826ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_GPIO1_IO15__CCM_CLKO2	0x16>; /* SMARC S6 - CAM_MCK  */
827ae5de77eSEmmanuel Vadot	};
828ae5de77eSEmmanuel Vadot
829ae5de77eSEmmanuel Vadot	/* SMARC SPI0 */
830ae5de77eSEmmanuel Vadot	pinctrl_ecspi1: ecspi1grp {
831ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_ECSPI1_MISO__ECSPI1_MISO	0x1c4>, /* SMARC P45 - SPI0_DIN */
832ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_ECSPI1_MOSI__ECSPI1_MOSI	0x4>,   /* SMARC P46 - SPI0_DO */
833ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_ECSPI1_SCLK__ECSPI1_SCLK	0x4>,   /* SMARC P44 - SPI0_CK */
834ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_ECSPI1_SS0__GPIO5_IO09		0x1c4>, /* SMARC P43 - SPI0_CS0# */
835ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SAI3_RXFS__GPIO4_IO28		0x1c4>; /* SMARC P31 - SPI0_CS1# */
836ae5de77eSEmmanuel Vadot	};
837ae5de77eSEmmanuel Vadot
838ae5de77eSEmmanuel Vadot	/* SMARC SPI1 */
839ae5de77eSEmmanuel Vadot	pinctrl_ecspi2: ecspi2grp {
840ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_ECSPI2_MISO__ECSPI2_MISO	0x1c4>, /* SMARC P56 - SPI1_DIN */
841ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_ECSPI2_MOSI__ECSPI2_MOSI	0x4>,   /* SMARC P57 - SPI1_DO */
842ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_ECSPI2_SCLK__ECSPI2_SCLK	0x4>,   /* SMARC P58 - SPI1_CK */
843ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_ECSPI2_SS0__GPIO5_IO13		0x1c4>, /* SMARC P54 - SPI1_CS0# */
844ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SAI1_RXD1__GPIO4_IO03		0x1c4>; /* SMARC P55 - SPI1_CS1# */
845ae5de77eSEmmanuel Vadot	};
846ae5de77eSEmmanuel Vadot
847ae5de77eSEmmanuel Vadot	/* ETH_0 RGMII (On-module PHY) */
848ae5de77eSEmmanuel Vadot	pinctrl_eqos: eqosgrp {
849ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_ENET_RD0__ENET_QOS_RGMII_RD0			0x90>, /* ETH0_RGMII_RXD0 */
850ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_ENET_RD1__ENET_QOS_RGMII_RD1			0x90>, /* ETH0_RGMII_RXD1 */
851ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_ENET_RD2__ENET_QOS_RGMII_RD2			0x90>, /* ETH0_RGMII_RXD2 */
852ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_ENET_RD3__ENET_QOS_RGMII_RD3			0x90>, /* ETH0_RGMII_RXD3 */
853ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_ENET_RXC__CCM_ENET_QOS_CLOCK_GENERATE_RX_CLK	0x90>, /* ETH0_RGMII_RXC */
854ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_ENET_RX_CTL__ENET_QOS_RGMII_RX_CTL		0x90>, /* ETH0_RGMII_RX_CTL */
855ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_ENET_TD0__ENET_QOS_RGMII_TD0			0x16>, /* ETH0_RGMII_TXD0 */
856ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_ENET_TD1__ENET_QOS_RGMII_TD1			0x16>, /* ETH0_RGMII_TXD1 */
857ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_ENET_TD2__ENET_QOS_RGMII_TD2			0x16>, /* ETH0_RGMII_TXD2 */
858ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_ENET_TD3__ENET_QOS_RGMII_TD3			0x16>, /* ETH0_RGMII_TXD3 */
859ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_ENET_TX_CTL__ENET_QOS_RGMII_TX_CTL		0x16>, /* ETH0_RGMII_TX_CTL */
860ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_ENET_TXC__CCM_ENET_QOS_CLOCK_GENERATE_TX_CLK	0x16>; /* ETH0_RGMII_TXC */
861ae5de77eSEmmanuel Vadot	};
862ae5de77eSEmmanuel Vadot
863ae5de77eSEmmanuel Vadot	/* SMARC GBE0_SDP */
864ae5de77eSEmmanuel Vadot	pinctrl_eqos_1588_event: eqos1588eventgrp {
865ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_GPIO1_IO09__ENET_QOS_1588_EVENT0_OUT	0x4>; /* SMARC P6 - GBE0_SDP */
866ae5de77eSEmmanuel Vadot	};
867ae5de77eSEmmanuel Vadot
868ae5de77eSEmmanuel Vadot	/* ETH_0_MDIO and ETH_0_INT# shared between ETH_PHY0 and ETH_PHY1 */
869ae5de77eSEmmanuel Vadot	pinctrl_eth_mdio: ethmdiogrp {
870ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_ENET_MDC__ENET_QOS_MDC		0x2>,  /* ETH_0_MDC */
871ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_ENET_MDIO__ENET_QOS_MDIO	0x2>,  /* ETH_0_MDIO */
872ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_NAND_ALE__GPIO3_IO00		0x80>; /* ETH_0_INT# */
873ae5de77eSEmmanuel Vadot	};
874ae5de77eSEmmanuel Vadot
875ae5de77eSEmmanuel Vadot	/* ETH_1 RGMII (On-module PHY) */
876ae5de77eSEmmanuel Vadot	pinctrl_fec: fecgrp {
877ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_SAI1_RXD4__ENET1_RGMII_RD0	0x90>, /* ETH1_RGMII_RXD0 */
878ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SAI1_RXD5__ENET1_RGMII_RD1	0x90>, /* ETH1_RGMII_RXD1 */
879ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SAI1_RXD6__ENET1_RGMII_RD2	0x90>, /* ETH1_RGMII_RXD2 */
880ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SAI1_RXD7__ENET1_RGMII_RD3	0x90>, /* ETH1_RGMII_RXD3 */
881ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SAI1_TXC__ENET1_RGMII_RXC	0x90>, /* ETH1_RGMII_RXC */
882ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SAI1_TXFS__ENET1_RGMII_RX_CTL	0x90>, /* ETH1_RGMII_RX_CTL */
883ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SAI1_TXD0__ENET1_RGMII_TD0	0x16>, /* ETH1_RGMII_TXD0 */
884ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SAI1_TXD1__ENET1_RGMII_TD1	0x16>, /* ETH1_RGMII_TXD1 */
885ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SAI1_TXD2__ENET1_RGMII_TD2	0x16>, /* ETH1_RGMII_TXD2 */
886ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SAI1_TXD3__ENET1_RGMII_TD3	0x16>, /* ETH1_RGMII_TXD3 */
887ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SAI1_TXD4__ENET1_RGMII_TX_CTL	0x16>, /* ETH1_RGMII_TX_CTL */
888ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SAI1_TXD5__ENET1_RGMII_TXC	0x16>; /* ETH1_RGMII_TXC */
889ae5de77eSEmmanuel Vadot	};
890ae5de77eSEmmanuel Vadot
891ae5de77eSEmmanuel Vadot	/* SMARC GBE1_SDP */
892ae5de77eSEmmanuel Vadot	pinctrl_fec_1588_event: fec1588eventgrp {
893ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_SAI1_RXC__ENET1_1588_EVENT0_OUT	0x4>; /* SMARC P5 - GBE1_SDP */
894ae5de77eSEmmanuel Vadot	};
895ae5de77eSEmmanuel Vadot
896ae5de77eSEmmanuel Vadot	/* SMARC CAN1 */
897ae5de77eSEmmanuel Vadot	pinctrl_flexcan1: flexcan1grp {
898ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_SAI2_TXC__CAN1_RX	0x154>, /* SMARC P146 - CAN1_RX */
899ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SAI2_RXC__CAN1_TX	0x154>; /* SMARC P145 - CAN1_TX */
900ae5de77eSEmmanuel Vadot	};
901ae5de77eSEmmanuel Vadot
902ae5de77eSEmmanuel Vadot	/* SMARC CAN0 */
903ae5de77eSEmmanuel Vadot	pinctrl_flexcan2: flexcan2grp {
904ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_SAI2_MCLK__CAN2_RX	0x154>, /* SMARC P144 - CAN0_RX */
905ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SAI2_TXD0__CAN2_TX	0x154>; /* SMARC P143 - CAN0_TX */
906ae5de77eSEmmanuel Vadot	};
907ae5de77eSEmmanuel Vadot
908ae5de77eSEmmanuel Vadot	/* SMARC GPIO4 */
909ae5de77eSEmmanuel Vadot	pinctrl_gpio4: gpio4grp {
910ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_SAI1_TXD6__GPIO4_IO18	0x144>; /* SMARC P112 - GPIO4 */
911ae5de77eSEmmanuel Vadot	};
912ae5de77eSEmmanuel Vadot
913ae5de77eSEmmanuel Vadot	/* SMARC GPIO5 */
914ae5de77eSEmmanuel Vadot	pinctrl_gpio5: gpio5grp {
915ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_GPIO1_IO10__GPIO1_IO10	0x144>; /* SMARC P113 - GPIO5 */
916ae5de77eSEmmanuel Vadot	};
917ae5de77eSEmmanuel Vadot
918ae5de77eSEmmanuel Vadot	/* SMARC GPIO5 as PWM */
919ae5de77eSEmmanuel Vadot	pinctrl_gpio5_pwm: gpio5pwmgrp {
920ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_GPIO1_IO10__PWM3_OUT	0x12>; /* SMARC P113 - PWM_OUT */
921ae5de77eSEmmanuel Vadot	};
922ae5de77eSEmmanuel Vadot
923ae5de77eSEmmanuel Vadot	/* SMARC GPIO6 */
924ae5de77eSEmmanuel Vadot	pinctrl_gpio6: gpio6grp {
925ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_SAI3_RXC__GPIO4_IO29	0x144>; /* SMARC P114 - GPIO6 */
926ae5de77eSEmmanuel Vadot	};
927ae5de77eSEmmanuel Vadot
928ae5de77eSEmmanuel Vadot	/* SMARC GPIO7 */
929ae5de77eSEmmanuel Vadot	pinctrl_gpio7: gpio7grp {
930ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_GPIO1_IO00__GPIO1_IO00	0x144>; /* SMARC P115 - GPIO7 */
931ae5de77eSEmmanuel Vadot	};
932ae5de77eSEmmanuel Vadot
933ae5de77eSEmmanuel Vadot	/* SMARC GPIO8 */
934ae5de77eSEmmanuel Vadot	pinctrl_gpio8: gpio8grp {
935ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_GPIO1_IO01__GPIO1_IO01	0x144>; /* SMARC P116 - GPIO8 */
936ae5de77eSEmmanuel Vadot	};
937ae5de77eSEmmanuel Vadot
938ae5de77eSEmmanuel Vadot	/* SMARC GPIO9 */
939ae5de77eSEmmanuel Vadot	pinctrl_gpio9: gpio9grp {
940ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_GPIO1_IO05__GPIO1_IO05	0x144>; /* SMARC P117 - GPIO9 */
941ae5de77eSEmmanuel Vadot	};
942ae5de77eSEmmanuel Vadot
943ae5de77eSEmmanuel Vadot	/* SMARC GPIO10 */
944ae5de77eSEmmanuel Vadot	pinctrl_gpio10: gpio10grp {
945ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_GPIO1_IO06__GPIO1_IO06	0x144>; /* SMARC P118 - GPIO10 */
946ae5de77eSEmmanuel Vadot	};
947ae5de77eSEmmanuel Vadot
948ae5de77eSEmmanuel Vadot	/* SMARC GPIO11 */
949ae5de77eSEmmanuel Vadot	pinctrl_gpio11: gpio11grp {
950ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_GPIO1_IO07__GPIO1_IO07	0x144>; /* SMARC P119 - GPIO11 */
951ae5de77eSEmmanuel Vadot	};
952ae5de77eSEmmanuel Vadot
953ae5de77eSEmmanuel Vadot	/* SMARC GPIO12 */
954ae5de77eSEmmanuel Vadot	pinctrl_gpio12: gpio12grp {
955ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_GPIO1_IO08__GPIO1_IO08	0x144>; /* SMARC S142 - GPIO12 */
956ae5de77eSEmmanuel Vadot	};
957ae5de77eSEmmanuel Vadot
958ae5de77eSEmmanuel Vadot	/* SMARC GPIO13 */
959ae5de77eSEmmanuel Vadot	pinctrl_gpio13: gpio13grp {
960ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_GPIO1_IO13__GPIO1_IO13	0x144>; /* SMARC S123 - GPIO13 */
961ae5de77eSEmmanuel Vadot	};
962ae5de77eSEmmanuel Vadot
963ae5de77eSEmmanuel Vadot	/* SMARC HDMI */
964ae5de77eSEmmanuel Vadot	pinctrl_hdmi: hdmigrp {
965ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_HDMI_DDC_SCL__HDMIMIX_HDMI_SCL	0x400001c6>, /* SMARC P105 - HDMI_CTRL_CK */
966ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_HDMI_DDC_SDA__HDMIMIX_HDMI_SDA	0x400001c6>, /* SMARC P106 - HDMI_CTRL_DAT */
967ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_HDMI_HPD__HDMIMIX_HDMI_HPD	0x180>;      /* SMARC P104 - HDMI_HPD */
968ae5de77eSEmmanuel Vadot	};
969ae5de77eSEmmanuel Vadot
970ae5de77eSEmmanuel Vadot	/* On-module I2C */
971ae5de77eSEmmanuel Vadot	pinctrl_i2c1: i2c1grp {
972ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_I2C1_SCL__I2C1_SCL	0x400001c6>, /* CTRL_I2C_SCL */
973ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_I2C1_SDA__I2C1_SDA	0x400001c6>; /* CTRL_I2C_SDA */
974ae5de77eSEmmanuel Vadot	};
975ae5de77eSEmmanuel Vadot
976ae5de77eSEmmanuel Vadot	/* On-module I2C as GPIOs */
977ae5de77eSEmmanuel Vadot	pinctrl_i2c1_gpio: i2c1gpiogrp {
978ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_I2C1_SCL__GPIO5_IO14	0x400001c6>, /* CTRL_I2C_SCL */
979ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_I2C1_SDA__GPIO5_IO15	0x400001c6>; /* CTRL_I2C_SDA */
980ae5de77eSEmmanuel Vadot	};
981ae5de77eSEmmanuel Vadot
982ae5de77eSEmmanuel Vadot	/* SMARC I2C_LCD */
983ae5de77eSEmmanuel Vadot	pinctrl_i2c2: i2c2grp {
984ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_I2C2_SCL__I2C2_SCL	0x400001c6>, /* SMARC S139 - I2C_LCD_CK */
985ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_I2C2_SDA__I2C2_SDA	0x400001c6>; /* SMARC S140 - I2C_LCD_DAT */
986ae5de77eSEmmanuel Vadot	};
987ae5de77eSEmmanuel Vadot
988ae5de77eSEmmanuel Vadot	/* SMARC I2C_LCD as GPIOs */
989ae5de77eSEmmanuel Vadot	pinctrl_i2c2_gpio: i2c2gpiogrp {
990ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_I2C2_SCL__GPIO5_IO16	0x400001c6>, /* SMARC S139 - I2C_LCD_CK */
991ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_I2C2_SDA__GPIO5_IO17	0x400001c6>; /* SMARC S140 - I2C_LCD_DAT */
992ae5de77eSEmmanuel Vadot	};
993ae5de77eSEmmanuel Vadot
994ae5de77eSEmmanuel Vadot	/* SMARC I2C_CAM0 */
995ae5de77eSEmmanuel Vadot	pinctrl_i2c3: i2c3grp {
996ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_I2C3_SCL__I2C3_SCL	0x400001c6>, /* SMARC S5 - I2C_CAM0_CK */
997ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_I2C3_SDA__I2C3_SDA	0x400001c6>; /* SMARC S7 - I2C_CAM0_DAT */
998ae5de77eSEmmanuel Vadot	};
999ae5de77eSEmmanuel Vadot
1000ae5de77eSEmmanuel Vadot	/* SMARC I2C_CAM0 as GPIOs */
1001ae5de77eSEmmanuel Vadot	pinctrl_i2c3_gpio: i2c3gpiogrp {
1002ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_I2C3_SCL__GPIO5_IO18	0x400001c6>, /* SMARC S5 - I2C_CAM0_CK */
1003ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_I2C3_SDA__GPIO5_IO19	0x400001c6>; /* SMARC S7 - I2C_CAM0_DAT */
1004ae5de77eSEmmanuel Vadot	};
1005ae5de77eSEmmanuel Vadot
1006ae5de77eSEmmanuel Vadot	/* SMARC I2C_GP */
1007ae5de77eSEmmanuel Vadot	pinctrl_i2c4: i2c4grp {
1008ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_I2C4_SCL__I2C4_SCL	0x400001c6>, /* SMARC S48 - I2C_GP_CK */
1009ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_I2C4_SDA__I2C4_SDA	0x400001c6>; /* SMARC S49 - I2C_GP_DAT */
1010ae5de77eSEmmanuel Vadot	};
1011ae5de77eSEmmanuel Vadot
1012ae5de77eSEmmanuel Vadot	/* SMARC I2C_GP as GPIOs */
1013ae5de77eSEmmanuel Vadot	pinctrl_i2c4_gpio: i2c4gpiogrp {
1014ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_I2C4_SCL__GPIO5_IO20	0x400001c6>, /* SMARC S48 - I2C_GP_CK */
1015ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_I2C4_SDA__GPIO5_IO21	0x400001c6>; /* SMARC S49 - I2C_GP_DAT */
1016ae5de77eSEmmanuel Vadot	};
1017ae5de77eSEmmanuel Vadot
1018ae5de77eSEmmanuel Vadot	/* SMARC I2C_CAM1 */
1019ae5de77eSEmmanuel Vadot	pinctrl_i2c5: i2c5grp {
1020ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_SPDIF_RX__I2C5_SDA	0x400001c6>, /* SMARC S2 - I2C_CAM1_DAT  */
1021ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SPDIF_TX__I2C5_SCL	0x400001c6>; /* SMARC S1 - I2C_CAM1_CK  */
1022ae5de77eSEmmanuel Vadot	};
1023ae5de77eSEmmanuel Vadot
1024ae5de77eSEmmanuel Vadot	/* SMARC I2C_CAM1 as GPIOs */
1025ae5de77eSEmmanuel Vadot	pinctrl_i2c5_gpio: i2c5gpiogrp {
1026ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_SPDIF_RX__GPIO5_IO04	0x400001c6>, /* SMARC S2 - I2C_CAM1_DAT  */
1027ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SPDIF_TX__GPIO5_IO03	0x400001c6>; /* SMARC S1 - I2C_CAM1_CK  */
1028ae5de77eSEmmanuel Vadot	};
1029ae5de77eSEmmanuel Vadot
1030ae5de77eSEmmanuel Vadot	/* SMARC I2C_PM */
1031ae5de77eSEmmanuel Vadot	pinctrl_i2c6: i2c6grp {
1032ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_HDMI_CEC__I2C6_SCL	0x400001c6>, /* SMARC P121 - I2C_PM_CK */
1033ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SAI5_RXC__I2C6_SDA	0x400001c6>; /* SMARC P122 - I2C_PM_DAT */
1034ae5de77eSEmmanuel Vadot	};
1035ae5de77eSEmmanuel Vadot
1036ae5de77eSEmmanuel Vadot	/* SMARC I2C_PM as GPIOs */
1037ae5de77eSEmmanuel Vadot	pinctrl_i2c6_gpio: i2c6gpiogrp {
1038ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_HDMI_CEC__GPIO3_IO28	0x400001c6>, /* SMARC P121 - I2C_PM_CK */
1039ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SAI5_RXC__GPIO3_IO20	0x400001c6>; /* SMARC P122 - I2C_PM_DAT */
1040ae5de77eSEmmanuel Vadot	};
1041ae5de77eSEmmanuel Vadot
1042ae5de77eSEmmanuel Vadot	pinctrl_lvds_dsi_sel: lvdsdsiselgrp {
1043ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_NAND_DATA01__GPIO3_IO07	0x104>; /* LVDS_DSI_SEL */
1044ae5de77eSEmmanuel Vadot	};
1045ae5de77eSEmmanuel Vadot
1046ae5de77eSEmmanuel Vadot	pinctrl_mcu_int: mcuintgrp {
1047ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_NAND_DATA02__GPIO3_IO08	0x1C0>; /* MCU_INT# */
1048ae5de77eSEmmanuel Vadot	};
1049ae5de77eSEmmanuel Vadot
1050ae5de77eSEmmanuel Vadot	/* SMARC LCD1_BKLT_PWM */
1051ae5de77eSEmmanuel Vadot	pinctrl_lcd1_bklt_pwm1: pwm1grp {
1052ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_SPDIF_EXT_CLK__PWM1_OUT	0x12>; /* SMARC S122 - LCD1_BKLT_PWM */
1053ae5de77eSEmmanuel Vadot	};
1054ae5de77eSEmmanuel Vadot
1055ae5de77eSEmmanuel Vadot	/* SMARC LCD0_BKLT_PWM */
1056ae5de77eSEmmanuel Vadot	pinctrl_lcd0_bklt_pwm2: pwm2grp {
1057ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_GPIO1_IO11__PWM2_OUT	0x12>; /* SMARC S141 - LCD0_BKLT_PWM */
1058ae5de77eSEmmanuel Vadot	};
1059ae5de77eSEmmanuel Vadot
1060ae5de77eSEmmanuel Vadot	/* PCAL6408 Interrupt */
1061ae5de77eSEmmanuel Vadot	pinctrl_pcal6408: pcal6408intgrp {
1062ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_NAND_DATA03__GPIO3_IO09	0x1c4>; /* GPIO_EX_INT# */
1063ae5de77eSEmmanuel Vadot	};
1064ae5de77eSEmmanuel Vadot
1065ae5de77eSEmmanuel Vadot	/* SMARC PCIE_A */
1066ae5de77eSEmmanuel Vadot	pinctrl_pcie: pciegrp {
1067ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_SAI1_RXFS__GPIO4_IO00	0x1c0>, /* SMARC S146 - PCIE_WAKE# */
1068ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SAI1_TXD7__GPIO4_IO19	0x04>;  /* SMARC P75 - PCIE_A_RST# */
1069ae5de77eSEmmanuel Vadot	};
1070ae5de77eSEmmanuel Vadot
1071ae5de77eSEmmanuel Vadot	/* PMIC Interrupt */
1072ae5de77eSEmmanuel Vadot	pinctrl_pmic: pmicintgrp {
1073ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_GPIO1_IO03__GPIO1_IO03	0x1c4>; /* PMIC_INT# */
1074ae5de77eSEmmanuel Vadot	};
1075ae5de77eSEmmanuel Vadot
1076ae5de77eSEmmanuel Vadot	/* SMARC I2S0 */
1077ae5de77eSEmmanuel Vadot	pinctrl_sai1: sai1grp {
1078ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_SAI5_MCLK__AUDIOMIX_SAI1_TX_BCLK	0x94>, /* SMARC S42 - I2S0_CK */
1079ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SAI5_RXD1__AUDIOMIX_SAI1_TX_SYNC	0x94>, /* SMARC S39 - I2S0_LRCLK */
1080ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SAI1_RXD0__AUDIOMIX_SAI1_RX_DATA00	0x94>, /* SMARC S41 - I2S0_SDIN */
1081ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SAI5_RXFS__AUDIOMIX_SAI1_TX_DATA00	0x94>; /* SMARC S40 - I2S0_SDOUT */
1082ae5de77eSEmmanuel Vadot	};
1083ae5de77eSEmmanuel Vadot
1084ae5de77eSEmmanuel Vadot	/* SMARC AUDIO_MCK */
1085ae5de77eSEmmanuel Vadot	pinctrl_sai1_mclk: sai1mclkgrp {
1086ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_SAI1_MCLK__AUDIOMIX_SAI1_MCLK	0x96>; /* SMARC S38 - AUDIO_MCK */
1087ae5de77eSEmmanuel Vadot	};
1088ae5de77eSEmmanuel Vadot
1089ae5de77eSEmmanuel Vadot	/* SMARC I2S2 */
1090ae5de77eSEmmanuel Vadot	pinctrl_sai3: sai3grp {
1091ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_SAI3_RXD__AUDIOMIX_SAI3_RX_DATA00	0x94>, /* SMARC S52 - I2S2_SDIN */
1092ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SAI3_TXC__AUDIOMIX_SAI3_TX_BCLK	0x94>, /* SMARC S53 - I2S2_CK */
1093ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SAI3_TXD__AUDIOMIX_SAI3_TX_DATA00	0x94>, /* SMARC S51 - I2S2_SDOUT */
1094ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SAI3_TXFS__AUDIOMIX_SAI3_TX_SYNC	0x94>; /* SMARC S50 - I2S2_LRCLK */
1095ae5de77eSEmmanuel Vadot	};
1096ae5de77eSEmmanuel Vadot
1097ae5de77eSEmmanuel Vadot	/* SMARC SLEEP# */
1098ae5de77eSEmmanuel Vadot	pinctrl_sleep: sleepgrp {
1099ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_NAND_CE0_B__GPIO3_IO01	0x1C0>; /* SMARC S149 - SLEEP# */
1100ae5de77eSEmmanuel Vadot	};
1101ae5de77eSEmmanuel Vadot
1102ae5de77eSEmmanuel Vadot	/* SMARC SMB_ALERT# */
1103ae5de77eSEmmanuel Vadot	pinctrl_smb_alert: smbalertgrp {
1104ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_NAND_READY_B__GPIO3_IO16	0x1C0>; /* SMARC P1 - SMB_ALERT# */
1105ae5de77eSEmmanuel Vadot	};
1106ae5de77eSEmmanuel Vadot
1107ae5de77eSEmmanuel Vadot	/* TPM_CS# */
1108ae5de77eSEmmanuel Vadot	pinctrl_tpm_cs: tpmcsgrp {
1109ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_NAND_DATA00__GPIO3_IO06	0x82>; /* TPM_CS# */
1110ae5de77eSEmmanuel Vadot	};
1111ae5de77eSEmmanuel Vadot
1112ae5de77eSEmmanuel Vadot	/* WIFI_BT_WKUP_HOST/TPM_INT# */
1113ae5de77eSEmmanuel Vadot	pinctrl_tpm_irq_wifi_bt_wkup: tpmirq-wifibtwkupgrp {
1114ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_SAI1_RXD2__GPIO4_IO04	0x16>; /* WIFI_BT_WKUP_HOST/TPM_INT# */
1115ae5de77eSEmmanuel Vadot	};
1116ae5de77eSEmmanuel Vadot
1117ae5de77eSEmmanuel Vadot	/* SMARC SER0 */
1118ae5de77eSEmmanuel Vadot	pinctrl_uart1: uart1grp {
1119ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_SAI2_RXD0__UART1_DCE_RTS	0x1c4>, /* SMARC P132 - SER2_CTS */
1120ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SAI2_TXFS__UART1_DCE_CTS	0x1c4>, /* SMARC P131 - SER2_RTS */
1121ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_UART1_RXD__UART1_DCE_RX	0x1c4>, /* SMARC P130 - SER2_RX */
1122ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_UART1_TXD__UART1_DCE_TX	0x1c4>; /* SMARC P139 - SER2_TX */
1123ae5de77eSEmmanuel Vadot	};
1124ae5de77eSEmmanuel Vadot
1125ae5de77eSEmmanuel Vadot	/* SMARC SER2 */
1126ae5de77eSEmmanuel Vadot	pinctrl_uart2: uart2grp {
1127ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_SD1_DATA4__UART2_DCE_RTS	0x1c4>, /* SMARC P139 - SER2_CTS */
1128ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SD1_DATA5__UART2_DCE_CTS	0x1c4>, /* SMARC P138 - SER2_RTS */
1129ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_UART2_RXD__UART2_DCE_RX	0x1c4>, /* SMARC P137 - SER2_RX */
1130ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_UART2_TXD__UART2_DCE_TX	0x1c4>; /* SMARC P136 - SER2_TX */
1131ae5de77eSEmmanuel Vadot	};
1132ae5de77eSEmmanuel Vadot
1133ae5de77eSEmmanuel Vadot	/* SMARC SER3 */
1134ae5de77eSEmmanuel Vadot	pinctrl_uart3: uart3grp {
1135ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_UART3_RXD__UART3_DCE_RX	0x1c4>, /* SMARC P141 - SER3_RX */
1136ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_UART3_TXD__UART3_DCE_TX	0x1c4>; /* SMARC P140 - SER3_TX */
1137ae5de77eSEmmanuel Vadot	};
1138ae5de77eSEmmanuel Vadot
1139ae5de77eSEmmanuel Vadot	/* SMARC SER1 */
1140ae5de77eSEmmanuel Vadot	pinctrl_uart4: uart4grp {
1141ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_UART4_RXD__UART4_DCE_RX	0x1c4>, /* SMARC P135 - SER1_RX */
1142ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_UART4_TXD__UART4_DCE_TX	0x1c4>; /* SMARC P134 - SER1_TX */
1143ae5de77eSEmmanuel Vadot	};
1144ae5de77eSEmmanuel Vadot
1145ae5de77eSEmmanuel Vadot	/* SMARC USB0_OTG_ID */
1146ae5de77eSEmmanuel Vadot	pinctrl_usb0_id: usb0idgrp {
1147ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_SAI3_MCLK__GPIO5_IO02	0x1c4>; /* SMARC P64 - USB0_OTG_ID */
1148ae5de77eSEmmanuel Vadot	};
1149ae5de77eSEmmanuel Vadot
1150ae5de77eSEmmanuel Vadot	/* SMARC USB0_EN_OC# */
1151ae5de77eSEmmanuel Vadot	pinctrl_usb0_en_oc: usb0enocgrp {
1152ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_GPIO1_IO12__GPIO1_IO12	0x04>; /* SMARC P62 - USB0_EN_OC# */
1153ae5de77eSEmmanuel Vadot	};
1154ae5de77eSEmmanuel Vadot
1155ae5de77eSEmmanuel Vadot	/* On module USB Hub VBUS, or SMARC USB2_EN_OC# depending on assembling */
1156ae5de77eSEmmanuel Vadot	pinctrl_usb1_en_oc: usb1enocgrp {
1157ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_GPIO1_IO14__GPIO1_IO14	0x04>; /* SMARC P71 - USB2_EN_OC# */
1158ae5de77eSEmmanuel Vadot	};
1159ae5de77eSEmmanuel Vadot
1160ae5de77eSEmmanuel Vadot	/* On-module Wi-Fi */
1161ae5de77eSEmmanuel Vadot	pinctrl_usdhc1: usdhc1grp {
1162ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_SD1_CLK__USDHC1_CLK		0x190>, /* WiFi_SDIO_CLK */
1163ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SD1_CMD__USDHC1_CMD		0x1d0>, /* WiFi_SDIO_CMD */
1164ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SD1_DATA0__USDHC1_DATA0	0x1d0>, /* WiFi_SDIO_DATA0 */
1165ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SD1_DATA1__USDHC1_DATA1	0x1d0>, /* WiFi_SDIO_DATA1 */
1166ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SD1_DATA2__USDHC1_DATA2	0x1d0>, /* WiFi_SDIO_DATA2 */
1167ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SD1_DATA3__USDHC1_DATA3	0x1d0>; /* WiFi_SDIO_DATA3 */
1168ae5de77eSEmmanuel Vadot	};
1169ae5de77eSEmmanuel Vadot
1170ae5de77eSEmmanuel Vadot	/* On-module Wi-Fi */
1171ae5de77eSEmmanuel Vadot	pinctrl_usdhc1_100mhz: usdhc1-100mhzgrp {
1172ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_SD1_CLK__USDHC1_CLK		0x194>, /* WiFi_SDIO_CLK */
1173ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SD1_CMD__USDHC1_CMD		0x1d4>, /* WiFi_SDIO_CMD */
1174ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SD1_DATA0__USDHC1_DATA0	0x1d4>, /* WiFi_SDIO_DATA0 */
1175ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SD1_DATA1__USDHC1_DATA1	0x1d4>, /* WiFi_SDIO_DATA1 */
1176ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SD1_DATA2__USDHC1_DATA2	0x1d4>, /* WiFi_SDIO_DATA2 */
1177ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SD1_DATA3__USDHC1_DATA3	0x1d4>; /* WiFi_SDIO_DATA3 */
1178ae5de77eSEmmanuel Vadot	};
1179ae5de77eSEmmanuel Vadot
1180ae5de77eSEmmanuel Vadot	/* On-module Wi-Fi */
1181ae5de77eSEmmanuel Vadot	pinctrl_usdhc1_200mhz: usdhc1-200mhzgrp {
1182ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_SD1_CLK__USDHC1_CLK		0x196>, /* WiFi_SDIO_CLK */
1183ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SD1_CMD__USDHC1_CMD		0x1d6>, /* WiFi_SDIO_CMD */
1184ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SD1_DATA0__USDHC1_DATA0	0x1d6>, /* WiFi_SDIO_DATA0 */
1185ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SD1_DATA1__USDHC1_DATA1	0x1d6>, /* WiFi_SDIO_DATA1 */
1186ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SD1_DATA2__USDHC1_DATA2	0x1d6>, /* WiFi_SDIO_DATA2 */
1187ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SD1_DATA3__USDHC1_DATA3	0x1d6>; /* WiFi_SDIO_DATA3 */
1188ae5de77eSEmmanuel Vadot	};
1189ae5de77eSEmmanuel Vadot
1190ae5de77eSEmmanuel Vadot	/* SMARC SDIO */
1191ae5de77eSEmmanuel Vadot	pinctrl_usdhc2: usdhc2grp {
1192ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_SD2_CLK__USDHC2_CLK		0x190>, /* SMARC P36 - SDIO_CK */
1193ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SD2_CMD__USDHC2_CMD		0x1d0>, /* SMARC P34 - SDIO_CMD */
1194ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SD2_DATA0__USDHC2_DATA0	0x1d0>, /* SMARC P39 - SDIO_DO */
1195ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SD2_DATA1__USDHC2_DATA1	0x1d0>, /* SMARC P40 - SDIO_D1 */
1196ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SD2_DATA2__USDHC2_DATA2	0x1d0>, /* SMARC P41 - SDIO_D2 */
1197ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SD2_DATA3__USDHC2_DATA3	0x1d0>; /* SMARC P42 - SDIO_D3 */
1198ae5de77eSEmmanuel Vadot	};
1199ae5de77eSEmmanuel Vadot
1200ae5de77eSEmmanuel Vadot	/* SMARC SDIO 100MHz */
1201ae5de77eSEmmanuel Vadot	pinctrl_usdhc2_100mhz: usdhc2-100mhzgrp {
1202ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_SD2_CLK__USDHC2_CLK		0x194>, /* SMARC P36 - SDIO_CK */
1203ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SD2_CMD__USDHC2_CMD		0x1d4>, /* SMARC P34 - SDIO_CMD */
1204ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SD2_DATA0__USDHC2_DATA0	0x1d4>, /* SMARC P39 - SDIO_DO */
1205ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SD2_DATA1__USDHC2_DATA1	0x1d4>, /* SMARC P40 - SDIO_D1 */
1206ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SD2_DATA2__USDHC2_DATA2	0x1d4>, /* SMARC P41 - SDIO_D2 */
1207ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SD2_DATA3__USDHC2_DATA3	0x1d4>; /* SMARC P42 - SDIO_D3 */
1208ae5de77eSEmmanuel Vadot	};
1209ae5de77eSEmmanuel Vadot
1210ae5de77eSEmmanuel Vadot	/* SMARC SDIO 200MHz */
1211ae5de77eSEmmanuel Vadot	pinctrl_usdhc2_200mhz: usdhc2-200mhzgrp {
1212ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_SD2_CLK__USDHC2_CLK		0x196>, /* SMARC P36 - SDIO_CK */
1213ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SD2_CMD__USDHC2_CMD		0x1d6>, /* SMARC P34 - SDIO_CMD */
1214ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SD2_DATA0__USDHC2_DATA0	0x1d6>, /* SMARC P39 - SDIO_DO */
1215ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SD2_DATA1__USDHC2_DATA1	0x1d6>, /* SMARC P40 - SDIO_D1 */
1216ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SD2_DATA2__USDHC2_DATA2	0x1d6>, /* SMARC P41 - SDIO_D2 */
1217ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SD2_DATA3__USDHC2_DATA3	0x1d6>; /* SMARC P42 - SDIO_D3 */
1218ae5de77eSEmmanuel Vadot	};
1219ae5de77eSEmmanuel Vadot
1220ae5de77eSEmmanuel Vadot	/* SMARC SDIO_CD# */
1221ae5de77eSEmmanuel Vadot	pinctrl_usdhc2_cd: usdhc2cdgrp {
1222ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_SD2_CD_B__GPIO2_IO12	0x1c4>; /* SMARC P35 - SDIO_CD# */
1223ae5de77eSEmmanuel Vadot	};
1224ae5de77eSEmmanuel Vadot
1225ae5de77eSEmmanuel Vadot	/* SMARC SDIO_CD# */
1226ae5de77eSEmmanuel Vadot	pinctrl_usdhc2_cd_sleep: usdhc2cdslpgrp {
1227ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_SD2_CD_B__GPIO2_IO12	0x0>; /* SMARC P35 - SDIO_CD# */
1228ae5de77eSEmmanuel Vadot	};
1229ae5de77eSEmmanuel Vadot
1230ae5de77eSEmmanuel Vadot	/* SMARC SDIO_PWR_EN */
1231ae5de77eSEmmanuel Vadot	pinctrl_usdhc2_pwr_en: usdhc2pwrengrp {
1232ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_SD2_RESET_B__GPIO2_IO19	0x1c4>; /* SMARC P37 - SDIO_PWR_EN */
1233ae5de77eSEmmanuel Vadot	};
1234ae5de77eSEmmanuel Vadot
1235ae5de77eSEmmanuel Vadot	/* SMARC SDIO Sleep - Avoid backfeeding with removed card power */
1236ae5de77eSEmmanuel Vadot	pinctrl_usdhc2_sleep: usdhc2slpgrp {
1237ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_SD2_CLK__USDHC2_CLK		0x100>, /* SMARC P36 - SDIO_CK */
1238ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SD2_CMD__USDHC2_CMD		0x100>, /* SMARC P34 - SDIO_CMD */
1239ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SD2_DATA0__USDHC2_DATA0	0x100>, /* SMARC P39 - SDIO_DO */
1240ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SD2_DATA1__USDHC2_DATA1	0x100>, /* SMARC P39 - SDIO_D1 */
1241ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SD2_DATA2__USDHC2_DATA2	0x100>, /* SMARC P39 - SDIO_D2 */
1242ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_SD2_DATA3__USDHC2_DATA3	0x100>; /* SMARC P39 - SDIO_D3 */
1243ae5de77eSEmmanuel Vadot	};
1244ae5de77eSEmmanuel Vadot
1245ae5de77eSEmmanuel Vadot	pinctrl_usdhc2_vsel: usdhc2vselgrp {
1246ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_GPIO1_IO04__GPIO1_IO04	0x4>; /* PMIC_USDHC_VSELECT */
1247ae5de77eSEmmanuel Vadot	};
1248ae5de77eSEmmanuel Vadot
1249ae5de77eSEmmanuel Vadot	/* SMARC SDIO_WP */
1250ae5de77eSEmmanuel Vadot	pinctrl_usdhc2_wp: usdhc2wpgrp {
1251ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_SD2_WP__GPIO2_IO20	0x144>; /* SMARC P33 - SDIO_WP */
1252ae5de77eSEmmanuel Vadot	};
1253ae5de77eSEmmanuel Vadot
1254ae5de77eSEmmanuel Vadot	/* On-module eMMC */
1255ae5de77eSEmmanuel Vadot	pinctrl_usdhc3: usdhc3grp {
1256ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_NAND_CE1_B__USDHC3_STROBE	0x190>, /* eMMC_STROBE */
1257ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_NAND_CE2_B__USDHC3_DATA5	0x1d0>, /* eMMC_DATA5 */
1258ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_NAND_CE3_B__USDHC3_DATA6	0x1d0>, /* eMMC_DATA6 */
1259ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_NAND_CLE__USDHC3_DATA7		0x1d0>, /* eMMC_DATA7 */
1260ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_NAND_DATA04__USDHC3_DATA0	0x1d0>, /* eMMC_DATA0 */
1261ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_NAND_DATA05__USDHC3_DATA1	0x1d0>, /* eMMC_DATA1 */
1262ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_NAND_DATA06__USDHC3_DATA2	0x1d0>, /* eMMC_DATA2 */
1263ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_NAND_DATA07__USDHC3_DATA3	0x1d0>, /* eMMC_DATA3 */
1264ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_NAND_RE_B__USDHC3_DATA4	0x1d0>, /* eMMC_DATA4 */
1265ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_NAND_WE_B__USDHC3_CLK		0x190>, /* eMMC_CLK */
1266ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_NAND_WP_B__USDHC3_CMD		0x1d0>; /* eMMC_CMD */
1267ae5de77eSEmmanuel Vadot	};
1268ae5de77eSEmmanuel Vadot
1269ae5de77eSEmmanuel Vadot	/* On-module eMMC */
1270ae5de77eSEmmanuel Vadot	pinctrl_usdhc3_100mhz: usdhc3-100mhzgrp {
1271ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_NAND_CE1_B__USDHC3_STROBE	0x194>, /* eMMC_STROBE */
1272ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_NAND_CE2_B__USDHC3_DATA5	0x1d4>, /* eMMC_DATA5 */
1273ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_NAND_CE3_B__USDHC3_DATA6	0x1d4>, /* eMMC_DATA6 */
1274ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_NAND_CLE__USDHC3_DATA7		0x1d4>, /* eMMC_DATA7 */
1275ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_NAND_DATA04__USDHC3_DATA0	0x1d4>, /* eMMC_DATA0 */
1276ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_NAND_DATA05__USDHC3_DATA1	0x1d4>, /* eMMC_DATA1 */
1277ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_NAND_DATA06__USDHC3_DATA2	0x1d4>, /* eMMC_DATA2 */
1278ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_NAND_DATA07__USDHC3_DATA3	0x1d4>, /* eMMC_DATA3 */
1279ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_NAND_RE_B__USDHC3_DATA4	0x1d4>, /* eMMC_DATA4 */
1280ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_NAND_WE_B__USDHC3_CLK		0x194>, /* eMMC_CLK */
1281ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_NAND_WP_B__USDHC3_CMD		0x1d4>; /* eMMC_CMD */
1282ae5de77eSEmmanuel Vadot	};
1283ae5de77eSEmmanuel Vadot
1284ae5de77eSEmmanuel Vadot	/* On-module eMMC */
1285ae5de77eSEmmanuel Vadot	pinctrl_usdhc3_200mhz: usdhc3-200mhzgrp {
1286ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_NAND_CE1_B__USDHC3_STROBE	0x196>, /* eMMC_STROBE */
1287ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_NAND_CE2_B__USDHC3_DATA5	0x1d2>, /* eMMC_DATA5 */
1288ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_NAND_CE3_B__USDHC3_DATA6	0x1d2>, /* eMMC_DATA6 */
1289ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_NAND_CLE__USDHC3_DATA7		0x1d2>, /* eMMC_DATA7 */
1290ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_NAND_DATA04__USDHC3_DATA0	0x1d2>, /* eMMC_DATA0 */
1291ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_NAND_DATA05__USDHC3_DATA1	0x1d2>, /* eMMC_DATA1 */
1292ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_NAND_DATA06__USDHC3_DATA2	0x1d2>, /* eMMC_DATA2 */
1293ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_NAND_DATA07__USDHC3_DATA3	0x1d2>, /* eMMC_DATA3 */
1294ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_NAND_RE_B__USDHC3_DATA4	0x1d2>, /* eMMC_DATA4 */
1295ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_NAND_WE_B__USDHC3_CLK		0x196>, /* eMMC_CLK */
1296ae5de77eSEmmanuel Vadot			   <MX8MP_IOMUXC_NAND_WP_B__USDHC3_CMD		0x1d6>; /* eMMC_CMD */
1297ae5de77eSEmmanuel Vadot	};
1298ae5de77eSEmmanuel Vadot
1299ae5de77eSEmmanuel Vadot	/* SoC Watchdog */
1300ae5de77eSEmmanuel Vadot	pinctrl_wdog: wdoggrp {
1301ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_GPIO1_IO02__WDOG1_WDOG_B	0x4>; /* CTRL_SOC_WDOG */
1302ae5de77eSEmmanuel Vadot	};
1303ae5de77eSEmmanuel Vadot
1304ae5de77eSEmmanuel Vadot	/* On-module Wi-Fi power enable */
1305ae5de77eSEmmanuel Vadot	pinctrl_wifi_pwr_en: wifipwrengrp {
1306ae5de77eSEmmanuel Vadot		fsl,pins = <MX8MP_IOMUXC_NAND_DQS__GPIO3_IO14	0x104>; /* CTRL_EN_WIFI */
1307ae5de77eSEmmanuel Vadot	};
1308ae5de77eSEmmanuel Vadot};
1309