xref: /linux/scripts/dtc/include-prefixes/arm64/freescale/imx91-var-som.dtsi (revision b2128290c29902315e632ea59e0504d6bc9e9b42)
1*92e5a165SStefano Radaelli// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2*92e5a165SStefano Radaelli/*
3*92e5a165SStefano Radaelli * Common dtsi for Variscite VAR-SOM-MX91
4*92e5a165SStefano Radaelli *
5*92e5a165SStefano Radaelli * Link: https://variscite.com/system-on-module-som/i-mx-9/i-mx-91/var-som-mx91/
6*92e5a165SStefano Radaelli *
7*92e5a165SStefano Radaelli * Copyright (C) 2026 Variscite Ltd. - https://www.variscite.com/
8*92e5a165SStefano Radaelli *
9*92e5a165SStefano Radaelli */
10*92e5a165SStefano Radaelli
11*92e5a165SStefano Radaelli/dts-v1/;
12*92e5a165SStefano Radaelli
13*92e5a165SStefano Radaelli#include "imx91.dtsi"
14*92e5a165SStefano Radaelli
15*92e5a165SStefano Radaelli/{
16*92e5a165SStefano Radaelli	model = "Variscite VAR-SOM-MX91 module";
17*92e5a165SStefano Radaelli	compatible = "variscite,var-som-mx91", "fsl,imx91";
18*92e5a165SStefano Radaelli
19*92e5a165SStefano Radaelli	usdhc3_pwrseq: mmc-pwrseq {
20*92e5a165SStefano Radaelli		compatible = "mmc-pwrseq-simple";
21*92e5a165SStefano Radaelli		post-power-on-delay-ms = <100>;
22*92e5a165SStefano Radaelli		power-off-delay-us = <10000>;
23*92e5a165SStefano Radaelli		reset-gpios = <&gpio4 14 GPIO_ACTIVE_LOW>, /* WIFI_RESET */
24*92e5a165SStefano Radaelli			      <&gpio3 7 GPIO_ACTIVE_LOW>; /* WIFI_PWR_EN */
25*92e5a165SStefano Radaelli	};
26*92e5a165SStefano Radaelli
27*92e5a165SStefano Radaelli	sound {
28*92e5a165SStefano Radaelli		compatible = "simple-audio-card";
29*92e5a165SStefano Radaelli		simple-audio-card,bitclock-master = <&codec_dai>;
30*92e5a165SStefano Radaelli		simple-audio-card,format = "i2s";
31*92e5a165SStefano Radaelli		simple-audio-card,frame-master = <&codec_dai>;
32*92e5a165SStefano Radaelli		simple-audio-card,name = "wm8904-audio";
33*92e5a165SStefano Radaelli		simple-audio-card,routing =
34*92e5a165SStefano Radaelli			"Headphone Jack", "HPOUTL",
35*92e5a165SStefano Radaelli			"Headphone Jack", "HPOUTR",
36*92e5a165SStefano Radaelli			"IN2L", "Line In Jack",
37*92e5a165SStefano Radaelli			"IN2R", "Line In Jack",
38*92e5a165SStefano Radaelli			"IN1L", "Microphone Jack",
39*92e5a165SStefano Radaelli			"IN1R", "Microphone Jack";
40*92e5a165SStefano Radaelli		simple-audio-card,widgets =
41*92e5a165SStefano Radaelli			"Microphone", "Microphone Jack",
42*92e5a165SStefano Radaelli			"Headphone", "Headphone Jack",
43*92e5a165SStefano Radaelli			"Line", "Line In Jack";
44*92e5a165SStefano Radaelli		simple-audio-card,mclk-fs = <256>;
45*92e5a165SStefano Radaelli
46*92e5a165SStefano Radaelli		codec_dai: simple-audio-card,codec {
47*92e5a165SStefano Radaelli			sound-dai = <&wm8904>;
48*92e5a165SStefano Radaelli		};
49*92e5a165SStefano Radaelli
50*92e5a165SStefano Radaelli		simple-audio-card,cpu {
51*92e5a165SStefano Radaelli			sound-dai = <&sai1>;
52*92e5a165SStefano Radaelli		};
53*92e5a165SStefano Radaelli	};
54*92e5a165SStefano Radaelli};
55*92e5a165SStefano Radaelli
56*92e5a165SStefano Radaelli&eqos {
57*92e5a165SStefano Radaelli	pinctrl-names = "default", "sleep";
58*92e5a165SStefano Radaelli	pinctrl-0 = <&pinctrl_eqos>;
59*92e5a165SStefano Radaelli	pinctrl-1 = <&pinctrl_eqos_sleep>;
60*92e5a165SStefano Radaelli	/*
61*92e5a165SStefano Radaelli	 * The required RGMII TX and RX 2ns delays are implemented directly
62*92e5a165SStefano Radaelli	 * in hardware via passive delay elements on the SOM PCB.
63*92e5a165SStefano Radaelli	 * No delay configuration is needed in software via PHY driver.
64*92e5a165SStefano Radaelli	 */
65*92e5a165SStefano Radaelli	phy-mode = "rgmii";
66*92e5a165SStefano Radaelli	phy-handle = <&ethphy0>;
67*92e5a165SStefano Radaelli	snps,clk-csr = <5>;
68*92e5a165SStefano Radaelli	status = "okay";
69*92e5a165SStefano Radaelli
70*92e5a165SStefano Radaelli	mdio {
71*92e5a165SStefano Radaelli		compatible = "snps,dwmac-mdio";
72*92e5a165SStefano Radaelli		#address-cells = <1>;
73*92e5a165SStefano Radaelli		#size-cells = <0>;
74*92e5a165SStefano Radaelli
75*92e5a165SStefano Radaelli		ethphy0: ethernet-phy@0 {
76*92e5a165SStefano Radaelli			compatible = "ethernet-phy-ieee802.3-c22";
77*92e5a165SStefano Radaelli			reg = <0>;
78*92e5a165SStefano Radaelli			eee-broken-1000t;
79*92e5a165SStefano Radaelli			reset-gpios = <&gpio1 7 GPIO_ACTIVE_LOW>;
80*92e5a165SStefano Radaelli			reset-assert-us = <15000>;
81*92e5a165SStefano Radaelli			reset-deassert-us = <100000>;
82*92e5a165SStefano Radaelli		};
83*92e5a165SStefano Radaelli	};
84*92e5a165SStefano Radaelli};
85*92e5a165SStefano Radaelli
86*92e5a165SStefano Radaelli&lpi2c3 {
87*92e5a165SStefano Radaelli	clock-frequency = <400000>;
88*92e5a165SStefano Radaelli	pinctrl-names = "default", "sleep", "gpio";
89*92e5a165SStefano Radaelli	pinctrl-0 = <&pinctrl_lpi2c3>;
90*92e5a165SStefano Radaelli	pinctrl-1 = <&pinctrl_lpi2c3_gpio>;
91*92e5a165SStefano Radaelli	pinctrl-2 = <&pinctrl_lpi2c3_gpio>;
92*92e5a165SStefano Radaelli	scl-gpios = <&gpio2 29 GPIO_ACTIVE_HIGH>;
93*92e5a165SStefano Radaelli	sda-gpios = <&gpio2 28 GPIO_ACTIVE_HIGH>;
94*92e5a165SStefano Radaelli	status = "okay";
95*92e5a165SStefano Radaelli
96*92e5a165SStefano Radaelli	pmic@25 {
97*92e5a165SStefano Radaelli		compatible = "nxp,pca9451a";
98*92e5a165SStefano Radaelli		reg = <0x25>;
99*92e5a165SStefano Radaelli
100*92e5a165SStefano Radaelli		regulators {
101*92e5a165SStefano Radaelli			buck1: BUCK1 {
102*92e5a165SStefano Radaelli				regulator-name = "BUCK1";
103*92e5a165SStefano Radaelli				regulator-min-microvolt = <650000>;
104*92e5a165SStefano Radaelli				regulator-max-microvolt = <2237500>;
105*92e5a165SStefano Radaelli				regulator-boot-on;
106*92e5a165SStefano Radaelli				regulator-always-on;
107*92e5a165SStefano Radaelli				regulator-ramp-delay = <3125>;
108*92e5a165SStefano Radaelli			};
109*92e5a165SStefano Radaelli
110*92e5a165SStefano Radaelli			buck2: BUCK2 {
111*92e5a165SStefano Radaelli				regulator-name = "BUCK2";
112*92e5a165SStefano Radaelli				regulator-min-microvolt = <600000>;
113*92e5a165SStefano Radaelli				regulator-max-microvolt = <2187500>;
114*92e5a165SStefano Radaelli				regulator-boot-on;
115*92e5a165SStefano Radaelli				regulator-always-on;
116*92e5a165SStefano Radaelli				regulator-ramp-delay = <3125>;
117*92e5a165SStefano Radaelli			};
118*92e5a165SStefano Radaelli
119*92e5a165SStefano Radaelli			buck4: BUCK4 {
120*92e5a165SStefano Radaelli				regulator-name = "BUCK4";
121*92e5a165SStefano Radaelli				regulator-min-microvolt = <600000>;
122*92e5a165SStefano Radaelli				regulator-max-microvolt = <3400000>;
123*92e5a165SStefano Radaelli				regulator-boot-on;
124*92e5a165SStefano Radaelli				regulator-always-on;
125*92e5a165SStefano Radaelli			};
126*92e5a165SStefano Radaelli
127*92e5a165SStefano Radaelli			buck5: BUCK5 {
128*92e5a165SStefano Radaelli				regulator-name = "BUCK5";
129*92e5a165SStefano Radaelli				regulator-min-microvolt = <600000>;
130*92e5a165SStefano Radaelli				regulator-max-microvolt = <3400000>;
131*92e5a165SStefano Radaelli				regulator-boot-on;
132*92e5a165SStefano Radaelli				regulator-always-on;
133*92e5a165SStefano Radaelli			};
134*92e5a165SStefano Radaelli
135*92e5a165SStefano Radaelli			buck6: BUCK6 {
136*92e5a165SStefano Radaelli				regulator-name = "BUCK6";
137*92e5a165SStefano Radaelli				regulator-min-microvolt = <600000>;
138*92e5a165SStefano Radaelli				regulator-max-microvolt = <3400000>;
139*92e5a165SStefano Radaelli				regulator-boot-on;
140*92e5a165SStefano Radaelli				regulator-always-on;
141*92e5a165SStefano Radaelli			};
142*92e5a165SStefano Radaelli
143*92e5a165SStefano Radaelli			ldo1: LDO1 {
144*92e5a165SStefano Radaelli				regulator-name = "LDO1";
145*92e5a165SStefano Radaelli				regulator-min-microvolt = <1600000>;
146*92e5a165SStefano Radaelli				regulator-max-microvolt = <3300000>;
147*92e5a165SStefano Radaelli				regulator-boot-on;
148*92e5a165SStefano Radaelli				regulator-always-on;
149*92e5a165SStefano Radaelli			};
150*92e5a165SStefano Radaelli
151*92e5a165SStefano Radaelli			ldo4: LDO4 {
152*92e5a165SStefano Radaelli				regulator-name = "LDO4";
153*92e5a165SStefano Radaelli				regulator-min-microvolt = <800000>;
154*92e5a165SStefano Radaelli				regulator-max-microvolt = <3300000>;
155*92e5a165SStefano Radaelli				regulator-boot-on;
156*92e5a165SStefano Radaelli				regulator-always-on;
157*92e5a165SStefano Radaelli			};
158*92e5a165SStefano Radaelli
159*92e5a165SStefano Radaelli			ldo5: LDO5 {
160*92e5a165SStefano Radaelli				regulator-name = "LDO5";
161*92e5a165SStefano Radaelli				regulator-min-microvolt = <1800000>;
162*92e5a165SStefano Radaelli				regulator-max-microvolt = <3300000>;
163*92e5a165SStefano Radaelli				regulator-boot-on;
164*92e5a165SStefano Radaelli				regulator-always-on;
165*92e5a165SStefano Radaelli			};
166*92e5a165SStefano Radaelli		};
167*92e5a165SStefano Radaelli	};
168*92e5a165SStefano Radaelli
169*92e5a165SStefano Radaelli	wm8904: audio-codec@1a {
170*92e5a165SStefano Radaelli		compatible = "wlf,wm8904";
171*92e5a165SStefano Radaelli		reg = <0x1a>;
172*92e5a165SStefano Radaelli		#sound-dai-cells = <0>;
173*92e5a165SStefano Radaelli		clocks = <&clk IMX93_CLK_SAI1_GATE>;
174*92e5a165SStefano Radaelli		clock-names = "mclk";
175*92e5a165SStefano Radaelli		AVDD-supply = <&buck5>;
176*92e5a165SStefano Radaelli		CPVDD-supply = <&buck5>;
177*92e5a165SStefano Radaelli		DBVDD-supply = <&buck4>;
178*92e5a165SStefano Radaelli		DCVDD-supply = <&buck5>;
179*92e5a165SStefano Radaelli		MICVDD-supply = <&buck5>;
180*92e5a165SStefano Radaelli		wlf,drc-cfg-names = "default", "peaklimiter", "tradition",
181*92e5a165SStefano Radaelli				    "soft", "music";
182*92e5a165SStefano Radaelli		/*
183*92e5a165SStefano Radaelli		 * Config registers per name, respectively:
184*92e5a165SStefano Radaelli		 * KNEE_IP = 0,   KNEE_OP = 0,     HI_COMP = 1,   LO_COMP = 1
185*92e5a165SStefano Radaelli		 * KNEE_IP = -24, KNEE_OP = -6,    HI_COMP = 1/4, LO_COMP = 1
186*92e5a165SStefano Radaelli		 * KNEE_IP = -42, KNEE_OP = -3,    HI_COMP = 0,   LO_COMP = 1
187*92e5a165SStefano Radaelli		 * KNEE_IP = -45, KNEE_OP = -9,    HI_COMP = 1/8, LO_COMP = 1
188*92e5a165SStefano Radaelli		 * KNEE_IP = -30, KNEE_OP = -10.5, HI_COMP = 1/4, LO_COMP = 1
189*92e5a165SStefano Radaelli		 */
190*92e5a165SStefano Radaelli		wlf,drc-cfg-regs = /bits/ 16 <0x01af 0x3248 0x0000 0x0000>,
191*92e5a165SStefano Radaelli				   /bits/ 16 <0x04af 0x324b 0x0010 0x0408>,
192*92e5a165SStefano Radaelli				   /bits/ 16 <0x04af 0x324b 0x0028 0x0704>,
193*92e5a165SStefano Radaelli				   /bits/ 16 <0x04af 0x324b 0x0018 0x078c>,
194*92e5a165SStefano Radaelli				   /bits/ 16 <0x04af 0x324b 0x0010 0x050e>;
195*92e5a165SStefano Radaelli		/* GPIO1 = DMIC_CLK, don't touch others */
196*92e5a165SStefano Radaelli		wlf,gpio-cfg = <0x0018>, <0xffff>, <0xffff>, <0xffff>;
197*92e5a165SStefano Radaelli	};
198*92e5a165SStefano Radaelli};
199*92e5a165SStefano Radaelli
200*92e5a165SStefano Radaelli&lpspi8 {
201*92e5a165SStefano Radaelli	pinctrl-names = "default";
202*92e5a165SStefano Radaelli	pinctrl-0 = <&pinctrl_lpspi8>;
203*92e5a165SStefano Radaelli	cs-gpios = <&gpio2 12 GPIO_ACTIVE_LOW>;
204*92e5a165SStefano Radaelli	status = "okay";
205*92e5a165SStefano Radaelli};
206*92e5a165SStefano Radaelli
207*92e5a165SStefano Radaelli/* BT module */
208*92e5a165SStefano Radaelli&lpuart5 {
209*92e5a165SStefano Radaelli	pinctrl-names = "default";
210*92e5a165SStefano Radaelli	pinctrl-0 = <&pinctrl_lpuart5>, <&pinctrl_bluetooth>;
211*92e5a165SStefano Radaelli	uart-has-rtscts;
212*92e5a165SStefano Radaelli	status = "okay";
213*92e5a165SStefano Radaelli
214*92e5a165SStefano Radaelli	bluetooth {
215*92e5a165SStefano Radaelli		compatible = "nxp,88w8987-bt";
216*92e5a165SStefano Radaelli	};
217*92e5a165SStefano Radaelli};
218*92e5a165SStefano Radaelli
219*92e5a165SStefano Radaelli&sai1 {
220*92e5a165SStefano Radaelli	pinctrl-names = "default", "sleep";
221*92e5a165SStefano Radaelli	pinctrl-0 = <&pinctrl_sai1>;
222*92e5a165SStefano Radaelli	pinctrl-1 = <&pinctrl_sai1_sleep>;
223*92e5a165SStefano Radaelli	assigned-clocks = <&clk IMX93_CLK_SAI1>;
224*92e5a165SStefano Radaelli	assigned-clock-parents = <&clk IMX93_CLK_AUDIO_PLL>;
225*92e5a165SStefano Radaelli	assigned-clock-rates = <12288000>;
226*92e5a165SStefano Radaelli	fsl,sai-mclk-direction-output;
227*92e5a165SStefano Radaelli	status = "okay";
228*92e5a165SStefano Radaelli};
229*92e5a165SStefano Radaelli
230*92e5a165SStefano Radaelli/* eMMC */
231*92e5a165SStefano Radaelli&usdhc1 {
232*92e5a165SStefano Radaelli	pinctrl-names = "default", "state_100mhz", "state_200mhz";
233*92e5a165SStefano Radaelli	pinctrl-0 = <&pinctrl_usdhc1>;
234*92e5a165SStefano Radaelli	pinctrl-1 = <&pinctrl_usdhc1_100mhz>;
235*92e5a165SStefano Radaelli	pinctrl-2 = <&pinctrl_usdhc1_200mhz>;
236*92e5a165SStefano Radaelli	bus-width = <8>;
237*92e5a165SStefano Radaelli	non-removable;
238*92e5a165SStefano Radaelli	status = "okay";
239*92e5a165SStefano Radaelli};
240*92e5a165SStefano Radaelli
241*92e5a165SStefano Radaelli/* WiFi */
242*92e5a165SStefano Radaelli&usdhc3 {
243*92e5a165SStefano Radaelli	pinctrl-names = "default", "state_100mhz", "state_200mhz", "sleep";
244*92e5a165SStefano Radaelli	pinctrl-0 = <&pinctrl_usdhc3>, <&pinctrl_usdhc3_wlan>;
245*92e5a165SStefano Radaelli	pinctrl-1 = <&pinctrl_usdhc3_100mhz>, <&pinctrl_usdhc3_wlan>;
246*92e5a165SStefano Radaelli	pinctrl-2 = <&pinctrl_usdhc3_200mhz>, <&pinctrl_usdhc3_wlan>;
247*92e5a165SStefano Radaelli	pinctrl-3 = <&pinctrl_usdhc3_sleep>, <&pinctrl_usdhc3_wlan>;
248*92e5a165SStefano Radaelli	bus-width = <4>;
249*92e5a165SStefano Radaelli	keep-power-in-suspend;
250*92e5a165SStefano Radaelli	mmc-pwrseq = <&usdhc3_pwrseq>;
251*92e5a165SStefano Radaelli	non-removable;
252*92e5a165SStefano Radaelli	wakeup-source;
253*92e5a165SStefano Radaelli	status = "okay";
254*92e5a165SStefano Radaelli};
255*92e5a165SStefano Radaelli
256*92e5a165SStefano Radaelli&iomuxc {
257*92e5a165SStefano Radaelli	pinctrl_bluetooth: bluetoothgrp {
258*92e5a165SStefano Radaelli		fsl,pins = <
259*92e5a165SStefano Radaelli			MX91_PAD_ENET2_MDIO__GPIO4_IO15				0x51e
260*92e5a165SStefano Radaelli		>;
261*92e5a165SStefano Radaelli	};
262*92e5a165SStefano Radaelli
263*92e5a165SStefano Radaelli	pinctrl_eqos: eqosgrp {
264*92e5a165SStefano Radaelli		fsl,pins = <
265*92e5a165SStefano Radaelli			MX91_PAD_ENET1_MDC__ENET1_MDC				0x57e
266*92e5a165SStefano Radaelli			MX91_PAD_ENET1_MDIO__ENET_QOS_MDIO			0x57e
267*92e5a165SStefano Radaelli			MX91_PAD_ENET1_RD0__ENET_QOS_RGMII_RD0			0x57e
268*92e5a165SStefano Radaelli			MX91_PAD_ENET1_RD1__ENET_QOS_RGMII_RD1			0x57e
269*92e5a165SStefano Radaelli			MX91_PAD_ENET1_RD2__ENET_QOS_RGMII_RD2			0x57e
270*92e5a165SStefano Radaelli			MX91_PAD_ENET1_RD3__ENET_QOS_RGMII_RD3			0x57e
271*92e5a165SStefano Radaelli			MX91_PAD_ENET1_RXC__ENET_QOS_RGMII_RXC			0x5fe
272*92e5a165SStefano Radaelli			MX91_PAD_ENET1_RX_CTL__ENET_QOS_RGMII_RX_CTL		0x57e
273*92e5a165SStefano Radaelli			MX91_PAD_ENET1_TD0__ENET_QOS_RGMII_TD0			0x57e
274*92e5a165SStefano Radaelli			MX91_PAD_ENET1_TD1__ENET1_RGMII_TD1			0x57e
275*92e5a165SStefano Radaelli			MX91_PAD_ENET1_TD2__ENET_QOS_RGMII_TD2			0x57e
276*92e5a165SStefano Radaelli			MX91_PAD_ENET1_TD3__ENET_QOS_RGMII_TD3			0x57e
277*92e5a165SStefano Radaelli			MX91_PAD_ENET1_TXC__CCM_ENET_QOS_CLOCK_GENERATE_TX_CLK	0x5fe
278*92e5a165SStefano Radaelli			MX91_PAD_ENET1_TX_CTL__ENET_QOS_RGMII_TX_CTL		0x57e
279*92e5a165SStefano Radaelli			MX91_PAD_UART2_TXD__GPIO1_IO7				0x51e
280*92e5a165SStefano Radaelli		>;
281*92e5a165SStefano Radaelli	};
282*92e5a165SStefano Radaelli
283*92e5a165SStefano Radaelli	pinctrl_eqos_sleep: eqos-sleepgrp {
284*92e5a165SStefano Radaelli		fsl,pins = <
285*92e5a165SStefano Radaelli			MX91_PAD_ENET1_MDC__GPIO4_IO0				0x31e
286*92e5a165SStefano Radaelli			MX91_PAD_ENET1_MDIO__GPIO4_IO1				0x31e
287*92e5a165SStefano Radaelli			MX91_PAD_ENET1_RD0__GPIO4_IO10				0x31e
288*92e5a165SStefano Radaelli			MX91_PAD_ENET1_RD1__GPIO4_IO11				0x31e
289*92e5a165SStefano Radaelli			MX91_PAD_ENET1_RD2__GPIO4_IO12				0x31e
290*92e5a165SStefano Radaelli			MX91_PAD_ENET1_RD3__GPIO4_IO13				0x31e
291*92e5a165SStefano Radaelli			MX91_PAD_ENET1_RXC__GPIO4_IO9				0x31e
292*92e5a165SStefano Radaelli			MX91_PAD_ENET1_RX_CTL__GPIO4_IO8			0x31e
293*92e5a165SStefano Radaelli			MX91_PAD_ENET1_TD0__GPIO4_IO5				0x31e
294*92e5a165SStefano Radaelli			MX91_PAD_ENET1_TD1__GPIO4_IO4				0x31e
295*92e5a165SStefano Radaelli			MX91_PAD_ENET1_TD2__GPIO4_IO3				0x31e
296*92e5a165SStefano Radaelli			MX91_PAD_ENET1_TD3__GPIO4_IO2				0x31e
297*92e5a165SStefano Radaelli			MX91_PAD_ENET1_TXC__GPIO4_IO7				0x31e
298*92e5a165SStefano Radaelli			MX91_PAD_ENET1_TX_CTL__GPIO4_IO6			0x31e
299*92e5a165SStefano Radaelli		>;
300*92e5a165SStefano Radaelli	};
301*92e5a165SStefano Radaelli
302*92e5a165SStefano Radaelli	pinctrl_lpi2c3: lpi2c3grp {
303*92e5a165SStefano Radaelli		fsl,pins = <
304*92e5a165SStefano Radaelli			MX91_PAD_GPIO_IO28__LPI2C3_SDA				0x40000b9e
305*92e5a165SStefano Radaelli			MX91_PAD_GPIO_IO29__LPI2C3_SCL				0x40000b9e
306*92e5a165SStefano Radaelli		>;
307*92e5a165SStefano Radaelli	};
308*92e5a165SStefano Radaelli
309*92e5a165SStefano Radaelli	pinctrl_lpi2c3_gpio: lpi2c3-gpiogrp {
310*92e5a165SStefano Radaelli		fsl,pins = <
311*92e5a165SStefano Radaelli			MX91_PAD_GPIO_IO28__GPIO2_IO28				0x40000b9e
312*92e5a165SStefano Radaelli			MX91_PAD_GPIO_IO29__GPIO2_IO29				0x40000b9e
313*92e5a165SStefano Radaelli		>;
314*92e5a165SStefano Radaelli	};
315*92e5a165SStefano Radaelli
316*92e5a165SStefano Radaelli	pinctrl_lpspi8: lpspi8grp {
317*92e5a165SStefano Radaelli		fsl,pins = <
318*92e5a165SStefano Radaelli			MX91_PAD_GPIO_IO12__GPIO2_IO12				0x31e
319*92e5a165SStefano Radaelli			MX91_PAD_GPIO_IO13__LPSPI8_SIN				0x31e
320*92e5a165SStefano Radaelli			MX91_PAD_GPIO_IO14__LPSPI8_SOUT				0x31e
321*92e5a165SStefano Radaelli			MX91_PAD_GPIO_IO15__LPSPI8_SCK				0x31e
322*92e5a165SStefano Radaelli		>;
323*92e5a165SStefano Radaelli	};
324*92e5a165SStefano Radaelli
325*92e5a165SStefano Radaelli	pinctrl_lpuart5: lpuart5grp {
326*92e5a165SStefano Radaelli		fsl,pins = <
327*92e5a165SStefano Radaelli			MX91_PAD_DAP_TDO_TRACESWO__LPUART5_TX			0x31e
328*92e5a165SStefano Radaelli			MX91_PAD_DAP_TDI__LPUART5_RX				0x31e
329*92e5a165SStefano Radaelli			MX91_PAD_DAP_TMS_SWDIO__LPUART5_RTS_B			0x31e
330*92e5a165SStefano Radaelli			MX91_PAD_DAP_TCLK_SWCLK__LPUART5_CTS_B			0x31e
331*92e5a165SStefano Radaelli		>;
332*92e5a165SStefano Radaelli	};
333*92e5a165SStefano Radaelli
334*92e5a165SStefano Radaelli	pinctrl_sai1: sai1grp {
335*92e5a165SStefano Radaelli		fsl,pins = <
336*92e5a165SStefano Radaelli			MX91_PAD_SAI1_TXC__SAI1_TX_BCLK				0x31e
337*92e5a165SStefano Radaelli			MX91_PAD_SAI1_TXFS__SAI1_TX_SYNC			0x31e
338*92e5a165SStefano Radaelli			MX91_PAD_SAI1_TXD0__SAI1_TX_DATA0			0x31e
339*92e5a165SStefano Radaelli			MX91_PAD_SAI1_RXD0__SAI1_RX_DATA0			0x31e
340*92e5a165SStefano Radaelli			MX91_PAD_I2C2_SDA__SAI1_RX_BCLK				0x31e
341*92e5a165SStefano Radaelli			MX91_PAD_I2C2_SCL__SAI1_RX_SYNC				0x31e
342*92e5a165SStefano Radaelli			MX91_PAD_UART2_RXD__SAI1_MCLK				0x31e
343*92e5a165SStefano Radaelli		>;
344*92e5a165SStefano Radaelli	};
345*92e5a165SStefano Radaelli
346*92e5a165SStefano Radaelli	pinctrl_sai1_sleep: sai1-sleepgrp {
347*92e5a165SStefano Radaelli		fsl,pins = <
348*92e5a165SStefano Radaelli			MX91_PAD_SAI1_TXC__GPIO1_IO12				0x31e
349*92e5a165SStefano Radaelli			MX91_PAD_SAI1_TXFS__GPIO1_IO11				0x31e
350*92e5a165SStefano Radaelli			MX91_PAD_SAI1_TXD0__GPIO1_IO13				0x31e
351*92e5a165SStefano Radaelli			MX91_PAD_SAI1_RXD0__GPIO1_IO14				0x31e
352*92e5a165SStefano Radaelli			MX91_PAD_UART2_RXD__GPIO1_IO6				0x31e
353*92e5a165SStefano Radaelli			MX91_PAD_I2C2_SDA__GPIO1_IO3				0x31e
354*92e5a165SStefano Radaelli			MX91_PAD_I2C2_SCL__GPIO1_IO2				0x31e
355*92e5a165SStefano Radaelli		>;
356*92e5a165SStefano Radaelli	};
357*92e5a165SStefano Radaelli
358*92e5a165SStefano Radaelli	pinctrl_usdhc1: usdhc1grp {
359*92e5a165SStefano Radaelli		fsl,pins = <
360*92e5a165SStefano Radaelli			MX91_PAD_SD1_CLK__USDHC1_CLK				0x1582
361*92e5a165SStefano Radaelli			MX91_PAD_SD1_CMD__USDHC1_CMD				0x1382
362*92e5a165SStefano Radaelli			MX91_PAD_SD1_DATA0__USDHC1_DATA0			0x1382
363*92e5a165SStefano Radaelli			MX91_PAD_SD1_DATA1__USDHC1_DATA1			0x1382
364*92e5a165SStefano Radaelli			MX91_PAD_SD1_DATA2__USDHC1_DATA2			0x1382
365*92e5a165SStefano Radaelli			MX91_PAD_SD1_DATA3__USDHC1_DATA3			0x1382
366*92e5a165SStefano Radaelli			MX91_PAD_SD1_DATA4__USDHC1_DATA4			0x1382
367*92e5a165SStefano Radaelli			MX91_PAD_SD1_DATA5__USDHC1_DATA5			0x1382
368*92e5a165SStefano Radaelli			MX91_PAD_SD1_DATA6__USDHC1_DATA6			0x1382
369*92e5a165SStefano Radaelli			MX91_PAD_SD1_DATA7__USDHC1_DATA7			0x1382
370*92e5a165SStefano Radaelli			MX91_PAD_SD1_STROBE__USDHC1_STROBE			0x1582
371*92e5a165SStefano Radaelli		>;
372*92e5a165SStefano Radaelli	};
373*92e5a165SStefano Radaelli
374*92e5a165SStefano Radaelli	pinctrl_usdhc1_100mhz: usdhc1-100mhzgrp {
375*92e5a165SStefano Radaelli		fsl,pins = <
376*92e5a165SStefano Radaelli			MX91_PAD_SD1_CLK__USDHC1_CLK				0x158e
377*92e5a165SStefano Radaelli			MX91_PAD_SD1_CMD__USDHC1_CMD				0x138e
378*92e5a165SStefano Radaelli			MX91_PAD_SD1_DATA0__USDHC1_DATA0			0x138e
379*92e5a165SStefano Radaelli			MX91_PAD_SD1_DATA1__USDHC1_DATA1			0x138e
380*92e5a165SStefano Radaelli			MX91_PAD_SD1_DATA2__USDHC1_DATA2			0x138e
381*92e5a165SStefano Radaelli			MX91_PAD_SD1_DATA3__USDHC1_DATA3			0x138e
382*92e5a165SStefano Radaelli			MX91_PAD_SD1_DATA4__USDHC1_DATA4			0x138e
383*92e5a165SStefano Radaelli			MX91_PAD_SD1_DATA5__USDHC1_DATA5			0x138e
384*92e5a165SStefano Radaelli			MX91_PAD_SD1_DATA6__USDHC1_DATA6			0x138e
385*92e5a165SStefano Radaelli			MX91_PAD_SD1_DATA7__USDHC1_DATA7			0x138e
386*92e5a165SStefano Radaelli			MX91_PAD_SD1_STROBE__USDHC1_STROBE			0x158e
387*92e5a165SStefano Radaelli		>;
388*92e5a165SStefano Radaelli	};
389*92e5a165SStefano Radaelli
390*92e5a165SStefano Radaelli	pinctrl_usdhc1_200mhz: usdhc1-200mhzgrp {
391*92e5a165SStefano Radaelli		fsl,pins = <
392*92e5a165SStefano Radaelli			MX91_PAD_SD1_CLK__USDHC1_CLK				0x15fe
393*92e5a165SStefano Radaelli			MX91_PAD_SD1_CMD__USDHC1_CMD				0x13fe
394*92e5a165SStefano Radaelli			MX91_PAD_SD1_DATA0__USDHC1_DATA0			0x13fe
395*92e5a165SStefano Radaelli			MX91_PAD_SD1_DATA1__USDHC1_DATA1			0x13fe
396*92e5a165SStefano Radaelli			MX91_PAD_SD1_DATA2__USDHC1_DATA2			0x13fe
397*92e5a165SStefano Radaelli			MX91_PAD_SD1_DATA3__USDHC1_DATA3			0x13fe
398*92e5a165SStefano Radaelli			MX91_PAD_SD1_DATA4__USDHC1_DATA4			0x13fe
399*92e5a165SStefano Radaelli			MX91_PAD_SD1_DATA5__USDHC1_DATA5			0x13fe
400*92e5a165SStefano Radaelli			MX91_PAD_SD1_DATA6__USDHC1_DATA6			0x13fe
401*92e5a165SStefano Radaelli			MX91_PAD_SD1_DATA7__USDHC1_DATA7			0x13fe
402*92e5a165SStefano Radaelli			MX91_PAD_SD1_STROBE__USDHC1_STROBE			0x15fe
403*92e5a165SStefano Radaelli		>;
404*92e5a165SStefano Radaelli	};
405*92e5a165SStefano Radaelli
406*92e5a165SStefano Radaelli	pinctrl_usdhc3: usdhc3grp {
407*92e5a165SStefano Radaelli		fsl,pins = <
408*92e5a165SStefano Radaelli			MX91_PAD_SD3_CLK__USDHC3_CLK				0x1582
409*92e5a165SStefano Radaelli			MX91_PAD_SD3_CMD__USDHC3_CMD				0x1382
410*92e5a165SStefano Radaelli			MX91_PAD_SD3_DATA0__USDHC3_DATA0			0x1382
411*92e5a165SStefano Radaelli			MX91_PAD_SD3_DATA1__USDHC3_DATA1			0x1382
412*92e5a165SStefano Radaelli			MX91_PAD_SD3_DATA2__USDHC3_DATA2			0x1382
413*92e5a165SStefano Radaelli			MX91_PAD_SD3_DATA3__USDHC3_DATA3			0x1382
414*92e5a165SStefano Radaelli		>;
415*92e5a165SStefano Radaelli	};
416*92e5a165SStefano Radaelli
417*92e5a165SStefano Radaelli	pinctrl_usdhc3_100mhz: usdhc3-100mhzgrp {
418*92e5a165SStefano Radaelli		fsl,pins = <
419*92e5a165SStefano Radaelli			MX91_PAD_SD3_CLK__USDHC3_CLK				0x158e
420*92e5a165SStefano Radaelli			MX91_PAD_SD3_CMD__USDHC3_CMD				0x138e
421*92e5a165SStefano Radaelli			MX91_PAD_SD3_DATA0__USDHC3_DATA0			0x138e
422*92e5a165SStefano Radaelli			MX91_PAD_SD3_DATA1__USDHC3_DATA1			0x138e
423*92e5a165SStefano Radaelli			MX91_PAD_SD3_DATA2__USDHC3_DATA2			0x138e
424*92e5a165SStefano Radaelli			MX91_PAD_SD3_DATA3__USDHC3_DATA3			0x138e
425*92e5a165SStefano Radaelli		>;
426*92e5a165SStefano Radaelli	};
427*92e5a165SStefano Radaelli
428*92e5a165SStefano Radaelli	pinctrl_usdhc3_200mhz: usdhc3-200mhzgrp {
429*92e5a165SStefano Radaelli		fsl,pins = <
430*92e5a165SStefano Radaelli			MX91_PAD_SD3_CLK__USDHC3_CLK				0x15fe
431*92e5a165SStefano Radaelli			MX91_PAD_SD3_CMD__USDHC3_CMD				0x13fe
432*92e5a165SStefano Radaelli			MX91_PAD_SD3_DATA0__USDHC3_DATA0			0x13fe
433*92e5a165SStefano Radaelli			MX91_PAD_SD3_DATA1__USDHC3_DATA1			0x13fe
434*92e5a165SStefano Radaelli			MX91_PAD_SD3_DATA2__USDHC3_DATA2			0x13fe
435*92e5a165SStefano Radaelli			MX91_PAD_SD3_DATA3__USDHC3_DATA3			0x13fe
436*92e5a165SStefano Radaelli		>;
437*92e5a165SStefano Radaelli	};
438*92e5a165SStefano Radaelli
439*92e5a165SStefano Radaelli	pinctrl_usdhc3_sleep: usdhc3-sleepgrp {
440*92e5a165SStefano Radaelli		fsl,pins = <
441*92e5a165SStefano Radaelli			MX91_PAD_SD3_CLK__GPIO3_IO20				0x31e
442*92e5a165SStefano Radaelli			MX91_PAD_SD3_CMD__GPIO3_IO21				0x31e
443*92e5a165SStefano Radaelli			MX91_PAD_SD3_DATA0__GPIO3_IO22				0x31e
444*92e5a165SStefano Radaelli			MX91_PAD_SD3_DATA1__GPIO3_IO23				0x31e
445*92e5a165SStefano Radaelli			MX91_PAD_SD3_DATA2__GPIO3_IO24				0x31e
446*92e5a165SStefano Radaelli			MX91_PAD_SD3_DATA3__GPIO3_IO25				0x31e
447*92e5a165SStefano Radaelli		>;
448*92e5a165SStefano Radaelli	};
449*92e5a165SStefano Radaelli
450*92e5a165SStefano Radaelli	pinctrl_usdhc3_wlan: usdhc3-wlangrp {
451*92e5a165SStefano Radaelli		fsl,pins = <
452*92e5a165SStefano Radaelli			MX91_PAD_ENET2_MDC__GPIO4_IO14				0x51e
453*92e5a165SStefano Radaelli			MX91_PAD_SD2_RESET_B__GPIO3_IO7				0x51e
454*92e5a165SStefano Radaelli		>;
455*92e5a165SStefano Radaelli	};
456*92e5a165SStefano Radaelli};
457