1418d1d84SAlexander Stein// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
2418d1d84SAlexander Stein/*
3418d1d84SAlexander Stein * Copyright 2021-2022 TQ-Systems GmbH
4418d1d84SAlexander Stein * Author: Alexander Stein <alexander.stein@tq-group.com>
5418d1d84SAlexander Stein */
6418d1d84SAlexander Stein
7418d1d84SAlexander Stein/dts-v1/;
8418d1d84SAlexander Stein
9418d1d84SAlexander Stein#include <dt-bindings/leds/common.h>
10418d1d84SAlexander Stein#include <dt-bindings/net/ti-dp83867.h>
11*630ecc93SAlexander Stein#include <dt-bindings/phy/phy-imx8-pcie.h>
12418d1d84SAlexander Stein#include <dt-bindings/pwm/pwm.h>
13418d1d84SAlexander Stein#include "imx8mp-tqma8mpql.dtsi"
14418d1d84SAlexander Stein
15418d1d84SAlexander Stein/ {
16418d1d84SAlexander Stein	model = "TQ-Systems i.MX8MPlus TQMa8MPxL on MBa8MPxL";
17418d1d84SAlexander Stein	compatible = "tq,imx8mp-tqma8mpql-mba8mpxl", "tq,imx8mp-tqma8mpql", "fsl,imx8mp";
18418d1d84SAlexander Stein
19418d1d84SAlexander Stein	chosen {
20418d1d84SAlexander Stein		stdout-path = &uart4;
21418d1d84SAlexander Stein	};
22418d1d84SAlexander Stein
23418d1d84SAlexander Stein	iio-hwmon {
24418d1d84SAlexander Stein		compatible = "iio-hwmon";
25418d1d84SAlexander Stein		io-channels = <&adc 0>, <&adc 1>;
26418d1d84SAlexander Stein	};
27418d1d84SAlexander Stein
28418d1d84SAlexander Stein	aliases {
29418d1d84SAlexander Stein		mmc0 = &usdhc3;
30418d1d84SAlexander Stein		mmc1 = &usdhc2;
31418d1d84SAlexander Stein		mmc2 = &usdhc1;
32418d1d84SAlexander Stein		rtc0 = &pcf85063;
33418d1d84SAlexander Stein		rtc1 = &snvs_rtc;
34418d1d84SAlexander Stein		spi0 = &flexspi;
35418d1d84SAlexander Stein		spi1 = &ecspi1;
36418d1d84SAlexander Stein		spi2 = &ecspi2;
37418d1d84SAlexander Stein		spi3 = &ecspi3;
38418d1d84SAlexander Stein	};
39418d1d84SAlexander Stein
40418d1d84SAlexander Stein	backlight_lvds: backlight {
41418d1d84SAlexander Stein		compatible = "pwm-backlight";
42418d1d84SAlexander Stein		pinctrl-names = "default";
43418d1d84SAlexander Stein		pinctrl-0 = <&pinctrl_backlight>;
44418d1d84SAlexander Stein		pwms = <&pwm2 0 5000000 0>;
45418d1d84SAlexander Stein		brightness-levels = <0 4 8 16 32 64 128 255>;
46418d1d84SAlexander Stein		default-brightness-level = <7>;
47418d1d84SAlexander Stein		power-supply = <&reg_vcc_12v0>;
48418d1d84SAlexander Stein		enable-gpios = <&gpio3 19 GPIO_ACTIVE_HIGH>;
49418d1d84SAlexander Stein		status = "disabled";
50418d1d84SAlexander Stein	};
51418d1d84SAlexander Stein
52*630ecc93SAlexander Stein	clk_xtal25: clk-xtal25 {
53*630ecc93SAlexander Stein		compatible = "fixed-clock";
54*630ecc93SAlexander Stein		#clock-cells = <0>;
55*630ecc93SAlexander Stein		clock-frequency = <25000000>;
56*630ecc93SAlexander Stein	};
57*630ecc93SAlexander Stein
58418d1d84SAlexander Stein	gpio-keys {
59418d1d84SAlexander Stein		compatible = "gpio-keys";
60418d1d84SAlexander Stein		pinctrl-names = "default";
61418d1d84SAlexander Stein		pinctrl-0 = <&pinctrl_gpiobutton>;
62418d1d84SAlexander Stein		autorepeat;
63418d1d84SAlexander Stein
64418d1d84SAlexander Stein		switch-1 {
65418d1d84SAlexander Stein			label = "S12";
66418d1d84SAlexander Stein			linux,code = <BTN_0>;
67d707ff34SAlexander Stein			gpios = <&gpio5 27 GPIO_ACTIVE_LOW>;
68418d1d84SAlexander Stein		};
69418d1d84SAlexander Stein
70418d1d84SAlexander Stein		switch-2 {
71418d1d84SAlexander Stein			label = "S13";
72418d1d84SAlexander Stein			linux,code = <BTN_1>;
73d707ff34SAlexander Stein			gpios = <&gpio5 26 GPIO_ACTIVE_LOW>;
74418d1d84SAlexander Stein		};
75418d1d84SAlexander Stein	};
76418d1d84SAlexander Stein
77418d1d84SAlexander Stein	gpio-leds {
78418d1d84SAlexander Stein		compatible = "gpio-leds";
79418d1d84SAlexander Stein		pinctrl-names = "default";
80418d1d84SAlexander Stein		pinctrl-0 = <&pinctrl_gpioled>;
81418d1d84SAlexander Stein
82418d1d84SAlexander Stein		led-0 {
83418d1d84SAlexander Stein			color = <LED_COLOR_ID_GREEN>;
84418d1d84SAlexander Stein			function = LED_FUNCTION_STATUS;
85418d1d84SAlexander Stein			function-enumerator = <0>;
86418d1d84SAlexander Stein			gpios = <&gpio5 5 GPIO_ACTIVE_HIGH>;
87418d1d84SAlexander Stein			linux,default-trigger = "default-on";
88418d1d84SAlexander Stein		};
89418d1d84SAlexander Stein
90418d1d84SAlexander Stein		led-1 {
91418d1d84SAlexander Stein			color = <LED_COLOR_ID_GREEN>;
92418d1d84SAlexander Stein			function = LED_FUNCTION_HEARTBEAT;
93418d1d84SAlexander Stein			gpios = <&gpio5 4 GPIO_ACTIVE_HIGH>;
94418d1d84SAlexander Stein			linux,default-trigger = "heartbeat";
95418d1d84SAlexander Stein		};
96418d1d84SAlexander Stein
97418d1d84SAlexander Stein		led-2 {
98418d1d84SAlexander Stein			color = <LED_COLOR_ID_YELLOW>;
99418d1d84SAlexander Stein			function = LED_FUNCTION_STATUS;
100418d1d84SAlexander Stein			function-enumerator = <1>;
101418d1d84SAlexander Stein			gpios = <&gpio5 3 GPIO_ACTIVE_HIGH>;
102418d1d84SAlexander Stein		};
103418d1d84SAlexander Stein	};
104418d1d84SAlexander Stein
105418d1d84SAlexander Stein	display: display {
106418d1d84SAlexander Stein		/*
107418d1d84SAlexander Stein		 * Display is not fixed, so compatible has to be added from
108418d1d84SAlexander Stein		 * DT overlay
109418d1d84SAlexander Stein		 */
110418d1d84SAlexander Stein		pinctrl-names = "default";
111418d1d84SAlexander Stein		pinctrl-0 = <&pinctrl_lvdsdisplay>;
112418d1d84SAlexander Stein		power-supply = <&reg_vcc_3v3>;
113418d1d84SAlexander Stein		enable-gpios = <&gpio3 20 GPIO_ACTIVE_HIGH>;
114418d1d84SAlexander Stein		backlight = <&backlight_lvds>;
115418d1d84SAlexander Stein		status = "disabled";
116418d1d84SAlexander Stein	};
117418d1d84SAlexander Stein
118418d1d84SAlexander Stein	reg_usdhc2_vmmc: regulator-usdhc2 {
119418d1d84SAlexander Stein		compatible = "regulator-fixed";
120418d1d84SAlexander Stein		pinctrl-names = "default";
121418d1d84SAlexander Stein		pinctrl-0 = <&pinctrl_reg_usdhc2_vmmc>;
122418d1d84SAlexander Stein		regulator-name = "VSD_3V3";
123418d1d84SAlexander Stein		regulator-min-microvolt = <3300000>;
124418d1d84SAlexander Stein		regulator-max-microvolt = <3300000>;
125418d1d84SAlexander Stein		gpio = <&gpio2 19 GPIO_ACTIVE_HIGH>;
126418d1d84SAlexander Stein		enable-active-high;
127418d1d84SAlexander Stein		startup-delay-us = <100>;
128418d1d84SAlexander Stein		off-on-delay-us = <12000>;
129418d1d84SAlexander Stein	};
130418d1d84SAlexander Stein
131418d1d84SAlexander Stein	reg_vcc_12v0: regulator-12v0 {
132418d1d84SAlexander Stein		compatible = "regulator-fixed";
133418d1d84SAlexander Stein		pinctrl-names = "default";
134418d1d84SAlexander Stein		pinctrl-0 = <&pinctrl_reg12v0>;
135418d1d84SAlexander Stein		regulator-name = "VCC_12V0";
136418d1d84SAlexander Stein		regulator-min-microvolt = <12000000>;
137418d1d84SAlexander Stein		regulator-max-microvolt = <12000000>;
138418d1d84SAlexander Stein		gpio = <&gpio2 6 GPIO_ACTIVE_HIGH>;
139418d1d84SAlexander Stein		enable-active-high;
140418d1d84SAlexander Stein	};
141418d1d84SAlexander Stein
142418d1d84SAlexander Stein	reg_vcc_3v3: regulator-3v3 {
143418d1d84SAlexander Stein		compatible = "regulator-fixed";
144418d1d84SAlexander Stein		regulator-name = "VCC_3V3";
145418d1d84SAlexander Stein		regulator-min-microvolt = <3300000>;
146418d1d84SAlexander Stein		regulator-max-microvolt = <3300000>;
147418d1d84SAlexander Stein	};
148418d1d84SAlexander Stein
149fb4f0b69SAlexander Stein	reg_vcc_5v0: regulator-5v0 {
150fb4f0b69SAlexander Stein		compatible = "regulator-fixed";
151fb4f0b69SAlexander Stein		regulator-name = "VCC_5V0";
152fb4f0b69SAlexander Stein		regulator-min-microvolt = <5000000>;
153fb4f0b69SAlexander Stein		regulator-max-microvolt = <5000000>;
154fb4f0b69SAlexander Stein	};
155fb4f0b69SAlexander Stein
156418d1d84SAlexander Stein	reserved-memory {
157418d1d84SAlexander Stein		#address-cells = <2>;
158418d1d84SAlexander Stein		#size-cells = <2>;
159418d1d84SAlexander Stein		ranges;
160418d1d84SAlexander Stein
161418d1d84SAlexander Stein		ocram: ocram@900000 {
162418d1d84SAlexander Stein			no-map;
163418d1d84SAlexander Stein			reg = <0 0x900000 0 0x70000>;
164418d1d84SAlexander Stein		};
165418d1d84SAlexander Stein
166418d1d84SAlexander Stein		/* global autoconfigured region for contiguous allocations */
167418d1d84SAlexander Stein		linux,cma {
168418d1d84SAlexander Stein			compatible = "shared-dma-pool";
169418d1d84SAlexander Stein			reusable;
170418d1d84SAlexander Stein			size = <0 0x38000000>;
171418d1d84SAlexander Stein			alloc-ranges = <0 0x40000000 0 0xB0000000>;
172418d1d84SAlexander Stein			linux,cma-default;
173418d1d84SAlexander Stein		};
174418d1d84SAlexander Stein	};
175418d1d84SAlexander Stein};
176418d1d84SAlexander Stein
177418d1d84SAlexander Stein&ecspi1 {
178418d1d84SAlexander Stein	pinctrl-names = "default";
179418d1d84SAlexander Stein	pinctrl-0 = <&pinctrl_ecspi1>;
180418d1d84SAlexander Stein	cs-gpios = <&gpio5 9 GPIO_ACTIVE_LOW>;
181418d1d84SAlexander Stein	status = "okay";
182418d1d84SAlexander Stein};
183418d1d84SAlexander Stein
184418d1d84SAlexander Stein&ecspi2 {
185418d1d84SAlexander Stein	pinctrl-names = "default";
186418d1d84SAlexander Stein	pinctrl-0 = <&pinctrl_ecspi2>;
187418d1d84SAlexander Stein	cs-gpios = <&gpio5 13 GPIO_ACTIVE_LOW>;
188418d1d84SAlexander Stein	status = "okay";
189418d1d84SAlexander Stein};
190418d1d84SAlexander Stein
191418d1d84SAlexander Stein&ecspi3 {
192418d1d84SAlexander Stein	pinctrl-names = "default";
193418d1d84SAlexander Stein	pinctrl-0 = <&pinctrl_ecspi3>;
194418d1d84SAlexander Stein	cs-gpios = <&gpio5 25 GPIO_ACTIVE_LOW>;
195418d1d84SAlexander Stein	status = "okay";
196418d1d84SAlexander Stein
197418d1d84SAlexander Stein	adc: adc@0 {
198418d1d84SAlexander Stein		reg = <0>;
199418d1d84SAlexander Stein		compatible = "microchip,mcp3202";
200418d1d84SAlexander Stein		/* 100 ksps * 18 */
201418d1d84SAlexander Stein		spi-max-frequency = <1800000>;
202418d1d84SAlexander Stein		vref-supply = <&reg_vcc_3v3>;
203418d1d84SAlexander Stein		#io-channel-cells = <1>;
204418d1d84SAlexander Stein	};
205418d1d84SAlexander Stein};
206418d1d84SAlexander Stein
207418d1d84SAlexander Stein&eqos {
208418d1d84SAlexander Stein	pinctrl-names = "default";
209418d1d84SAlexander Stein	pinctrl-0 = <&pinctrl_eqos>, <&pinctrl_eqos_phy>;
210418d1d84SAlexander Stein	phy-mode = "rgmii-id";
211418d1d84SAlexander Stein	phy-handle = <&ethphy3>;
212418d1d84SAlexander Stein	status = "okay";
213418d1d84SAlexander Stein
214418d1d84SAlexander Stein	mdio {
215418d1d84SAlexander Stein		compatible = "snps,dwmac-mdio";
216418d1d84SAlexander Stein		#address-cells = <1>;
217418d1d84SAlexander Stein		#size-cells = <0>;
218418d1d84SAlexander Stein
219418d1d84SAlexander Stein		ethphy3: ethernet-phy@3 {
220418d1d84SAlexander Stein			compatible = "ethernet-phy-ieee802.3-c22";
221418d1d84SAlexander Stein			reg = <3>;
222418d1d84SAlexander Stein			ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_25_NS>;
223418d1d84SAlexander Stein			ti,tx-internal-delay = <DP83867_RGMIIDCTL_2_25_NS>;
224418d1d84SAlexander Stein			ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>;
225418d1d84SAlexander Stein			ti,dp83867-rxctrl-strap-quirk;
226418d1d84SAlexander Stein			ti,clk-output-sel = <DP83867_CLK_O_SEL_OFF>;
227418d1d84SAlexander Stein			reset-gpios = <&gpio4 2 GPIO_ACTIVE_LOW>;
228418d1d84SAlexander Stein			reset-assert-us = <500000>;
229418d1d84SAlexander Stein			reset-deassert-us = <50000>;
230418d1d84SAlexander Stein			enet-phy-lane-no-swap;
231418d1d84SAlexander Stein			interrupt-parent = <&gpio4>;
232418d1d84SAlexander Stein			interrupts = <3 IRQ_TYPE_EDGE_FALLING>;
233418d1d84SAlexander Stein		};
234418d1d84SAlexander Stein	};
235418d1d84SAlexander Stein};
236418d1d84SAlexander Stein
237418d1d84SAlexander Stein&fec {
238418d1d84SAlexander Stein	pinctrl-names = "default";
239418d1d84SAlexander Stein	pinctrl-0 = <&pinctrl_fec>, <&pinctrl_fec_phy>;
240418d1d84SAlexander Stein	phy-mode = "rgmii-id";
241418d1d84SAlexander Stein	phy-handle = <&ethphy0>;
242418d1d84SAlexander Stein	fsl,magic-packet;
243418d1d84SAlexander Stein	status = "okay";
244418d1d84SAlexander Stein
245418d1d84SAlexander Stein	mdio {
246418d1d84SAlexander Stein		#address-cells = <1>;
247418d1d84SAlexander Stein		#size-cells = <0>;
248418d1d84SAlexander Stein
249418d1d84SAlexander Stein		ethphy0: ethernet-phy@0 {
250418d1d84SAlexander Stein			compatible = "ethernet-phy-ieee802.3-c22";
251418d1d84SAlexander Stein			reg = <0>;
252418d1d84SAlexander Stein			ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_25_NS>;
253418d1d84SAlexander Stein			ti,tx-internal-delay = <DP83867_RGMIIDCTL_2_25_NS>;
254418d1d84SAlexander Stein			ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>;
255418d1d84SAlexander Stein			ti,dp83867-rxctrl-strap-quirk;
256418d1d84SAlexander Stein			ti,clk-output-sel = <DP83867_CLK_O_SEL_OFF>;
257418d1d84SAlexander Stein			reset-gpios = <&gpio4 0 GPIO_ACTIVE_LOW>;
258418d1d84SAlexander Stein			reset-assert-us = <500000>;
259418d1d84SAlexander Stein			reset-deassert-us = <50000>;
260418d1d84SAlexander Stein			enet-phy-lane-no-swap;
261418d1d84SAlexander Stein			interrupt-parent = <&gpio4>;
262418d1d84SAlexander Stein			interrupts = <1 IRQ_TYPE_EDGE_FALLING>;
263418d1d84SAlexander Stein		};
264418d1d84SAlexander Stein	};
265418d1d84SAlexander Stein};
266418d1d84SAlexander Stein
267418d1d84SAlexander Stein&flexcan1 {
268418d1d84SAlexander Stein	pinctrl-names = "default";
269418d1d84SAlexander Stein	pinctrl-0 = <&pinctrl_flexcan1>;
270418d1d84SAlexander Stein	xceiver-supply = <&reg_vcc_3v3>;
271418d1d84SAlexander Stein	status = "okay";
272418d1d84SAlexander Stein};
273418d1d84SAlexander Stein
274418d1d84SAlexander Stein&flexcan2 {
275418d1d84SAlexander Stein	pinctrl-names = "default";
276418d1d84SAlexander Stein	pinctrl-0 = <&pinctrl_flexcan2>;
277418d1d84SAlexander Stein	xceiver-supply = <&reg_vcc_3v3>;
278418d1d84SAlexander Stein	status = "okay";
279418d1d84SAlexander Stein};
280418d1d84SAlexander Stein
281418d1d84SAlexander Stein&gpio1 {
282418d1d84SAlexander Stein	pinctrl-names = "default";
283418d1d84SAlexander Stein	pinctrl-0 = <&pinctrl_gpio1>;
284418d1d84SAlexander Stein
285418d1d84SAlexander Stein	gpio-line-names = "GPO1", "GPO0", "", "GPO3",
286418d1d84SAlexander Stein			  "", "", "GPO2", "GPI0",
287418d1d84SAlexander Stein			  "PMIC_IRQ", "GPI1", "OTG_ID", "USB_HUB_RST#",
288418d1d84SAlexander Stein			  "OTG_PWR", "", "GPI2", "GPI3",
289418d1d84SAlexander Stein			  "", "", "", "",
290418d1d84SAlexander Stein			  "", "", "", "",
291418d1d84SAlexander Stein			  "", "", "", "",
292418d1d84SAlexander Stein			  "", "", "", "";
293418d1d84SAlexander Stein};
294418d1d84SAlexander Stein
295418d1d84SAlexander Stein&gpio2 {
296418d1d84SAlexander Stein	pinctrl-names = "default";
297418d1d84SAlexander Stein	pinctrl-0 = <&pinctrl_hoggpio2>;
298418d1d84SAlexander Stein
299418d1d84SAlexander Stein	gpio-line-names = "", "", "", "",
300418d1d84SAlexander Stein			  "", "", "VCC12V_EN", "PERST#",
301418d1d84SAlexander Stein			  "", "", "CLKREQ#", "PEWAKE#",
302418d1d84SAlexander Stein			  "USDHC2_CD", "", "", "",
303418d1d84SAlexander Stein			  "", "", "", "V_SD3V3_EN",
304418d1d84SAlexander Stein			  "", "", "", "",
305418d1d84SAlexander Stein			  "", "", "", "",
306418d1d84SAlexander Stein			  "", "", "", "";
307418d1d84SAlexander Stein
308418d1d84SAlexander Stein	perst-hog {
309418d1d84SAlexander Stein		gpio-hog;
310418d1d84SAlexander Stein		gpios = <7 0>;
311418d1d84SAlexander Stein		output-high;
312418d1d84SAlexander Stein		line-name = "PERST#";
313418d1d84SAlexander Stein	};
314418d1d84SAlexander Stein
315418d1d84SAlexander Stein	clkreq-hog {
316418d1d84SAlexander Stein		gpio-hog;
317418d1d84SAlexander Stein		gpios = <10 0>;
318418d1d84SAlexander Stein		input;
319418d1d84SAlexander Stein		line-name = "CLKREQ#";
320418d1d84SAlexander Stein	};
321418d1d84SAlexander Stein
322418d1d84SAlexander Stein	pewake-hog {
323418d1d84SAlexander Stein		gpio-hog;
324418d1d84SAlexander Stein		gpios = <11 0>;
325418d1d84SAlexander Stein		input;
326418d1d84SAlexander Stein		line-name = "PEWAKE#";
327418d1d84SAlexander Stein	};
328418d1d84SAlexander Stein};
329418d1d84SAlexander Stein
330418d1d84SAlexander Stein&gpio3 {
331418d1d84SAlexander Stein	gpio-line-names = "", "", "", "",
332418d1d84SAlexander Stein			  "", "", "", "",
333418d1d84SAlexander Stein			  "", "", "", "",
334418d1d84SAlexander Stein			  "", "", "LVDS0_RESET#", "",
335418d1d84SAlexander Stein			  "", "", "", "LVDS0_BLT_EN",
336418d1d84SAlexander Stein			  "LVDS0_PWR_EN", "", "", "",
337418d1d84SAlexander Stein			  "", "", "", "",
338418d1d84SAlexander Stein			  "", "", "", "";
339418d1d84SAlexander Stein};
340418d1d84SAlexander Stein
341418d1d84SAlexander Stein&gpio4 {
342418d1d84SAlexander Stein	pinctrl-names = "default";
343418d1d84SAlexander Stein	pinctrl-0 = <&pinctrl_gpio4>;
344418d1d84SAlexander Stein
345418d1d84SAlexander Stein	gpio-line-names = "ENET0_RST#", "ENET0_INT#", "ENET1_RST#", "ENET1_INT#",
346418d1d84SAlexander Stein			  "", "", "", "",
347418d1d84SAlexander Stein			  "", "", "", "",
348418d1d84SAlexander Stein			  "", "", "", "",
349418d1d84SAlexander Stein			  "", "", "DP_IRQ", "DSI_EN",
350*630ecc93SAlexander Stein			  "HDMI_OC#", "TEMP_EVENT#", "PCIE_REFCLK_OE#", "",
351418d1d84SAlexander Stein			  "", "", "", "FAN_PWR",
352418d1d84SAlexander Stein			  "RTC_EVENT#", "CODEC_RST#", "", "";
353*630ecc93SAlexander Stein
354*630ecc93SAlexander Stein	pcie-refclkreq-hog {
355*630ecc93SAlexander Stein		gpio-hog;
356*630ecc93SAlexander Stein		gpios = <22 0>;
357*630ecc93SAlexander Stein		output-high;
358*630ecc93SAlexander Stein		line-name = "PCIE_REFCLK_OE#";
359*630ecc93SAlexander Stein	};
360418d1d84SAlexander Stein};
361418d1d84SAlexander Stein
362418d1d84SAlexander Stein&gpio5 {
363418d1d84SAlexander Stein	gpio-line-names = "", "", "", "LED2",
364418d1d84SAlexander Stein			  "LED1", "LED0", "CSI0_RESET#", "CSI0_SYNC",
365418d1d84SAlexander Stein			  "CSI0_TRIGGER", "CSI0_ENABLE", "", "",
366418d1d84SAlexander Stein			  "", "ECSPI2_SS0", "", "",
367418d1d84SAlexander Stein			  "", "", "", "",
368418d1d84SAlexander Stein			  "", "", "", "",
369418d1d84SAlexander Stein			  "", "ECSPI3_SS0", "SWITCH_A", "SWITCH_B",
370418d1d84SAlexander Stein			  "", "", "", "";
371418d1d84SAlexander Stein};
372418d1d84SAlexander Stein
373418d1d84SAlexander Stein&i2c2 {
374418d1d84SAlexander Stein	clock-frequency = <384000>;
375418d1d84SAlexander Stein	pinctrl-names = "default", "gpio";
376418d1d84SAlexander Stein	pinctrl-0 = <&pinctrl_i2c2>;
377418d1d84SAlexander Stein	pinctrl-1 = <&pinctrl_i2c2_gpio>;
378418d1d84SAlexander Stein	scl-gpios = <&gpio5 16 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
379418d1d84SAlexander Stein	sda-gpios = <&gpio5 17 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
380418d1d84SAlexander Stein	status = "okay";
381418d1d84SAlexander Stein
382418d1d84SAlexander Stein	/* NXP SE97BTP with temperature sensor + eeprom */
383418d1d84SAlexander Stein	se97_1c: temperature-sensor-eeprom@1c {
384418d1d84SAlexander Stein		compatible = "nxp,se97", "jedec,jc-42.4-temp";
385418d1d84SAlexander Stein		reg = <0x1c>;
386418d1d84SAlexander Stein	};
387418d1d84SAlexander Stein
388418d1d84SAlexander Stein	at24c02_54: eeprom@54 {
389418d1d84SAlexander Stein		compatible = "nxp,se97b", "atmel,24c02";
390418d1d84SAlexander Stein		reg = <0x54>;
391418d1d84SAlexander Stein		pagesize = <16>;
392418d1d84SAlexander Stein		vcc-supply = <&reg_vcc_3v3>;
393418d1d84SAlexander Stein	};
394*630ecc93SAlexander Stein
395*630ecc93SAlexander Stein	pcieclk: clock-generator@6a {
396*630ecc93SAlexander Stein		compatible = "renesas,9fgv0241";
397*630ecc93SAlexander Stein		reg = <0x6a>;
398*630ecc93SAlexander Stein		clocks = <&clk_xtal25>;
399*630ecc93SAlexander Stein		#clock-cells = <1>;
400*630ecc93SAlexander Stein	};
401418d1d84SAlexander Stein};
402418d1d84SAlexander Stein
403418d1d84SAlexander Stein&i2c4 {
404418d1d84SAlexander Stein	clock-frequency = <384000>;
405418d1d84SAlexander Stein	pinctrl-names = "default", "gpio";
406418d1d84SAlexander Stein	pinctrl-0 = <&pinctrl_i2c4>;
407418d1d84SAlexander Stein	pinctrl-1 = <&pinctrl_i2c4_gpio>;
408418d1d84SAlexander Stein	scl-gpios = <&gpio5 20 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
409418d1d84SAlexander Stein	sda-gpios = <&gpio5 21 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
410418d1d84SAlexander Stein	status = "okay";
411418d1d84SAlexander Stein};
412418d1d84SAlexander Stein
413418d1d84SAlexander Stein&i2c6 {
414418d1d84SAlexander Stein	clock-frequency = <384000>;
415418d1d84SAlexander Stein	pinctrl-names = "default", "gpio";
416418d1d84SAlexander Stein	pinctrl-0 = <&pinctrl_i2c6>;
417418d1d84SAlexander Stein	pinctrl-1 = <&pinctrl_i2c6_gpio>;
418418d1d84SAlexander Stein	scl-gpios = <&gpio2 2 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
419418d1d84SAlexander Stein	sda-gpios = <&gpio2 3 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
420418d1d84SAlexander Stein	status = "okay";
421418d1d84SAlexander Stein};
422418d1d84SAlexander Stein
423418d1d84SAlexander Stein&pcf85063 {
424418d1d84SAlexander Stein	/* RTC_EVENT# is connected on MBa8MPxL */
42545b91a15SAlexander Stein	pinctrl-names = "default";
42645b91a15SAlexander Stein	pinctrl-0 = <&pinctrl_pcf85063>;
427418d1d84SAlexander Stein	interrupt-parent = <&gpio4>;
428418d1d84SAlexander Stein	interrupts = <28 IRQ_TYPE_EDGE_FALLING>;
429418d1d84SAlexander Stein};
430418d1d84SAlexander Stein
431*630ecc93SAlexander Stein&pcie_phy {
432*630ecc93SAlexander Stein	fsl,clkreq-unsupported;
433*630ecc93SAlexander Stein	fsl,refclk-pad-mode = <IMX8_PCIE_REFCLK_PAD_INPUT>;
434*630ecc93SAlexander Stein	clocks = <&pcieclk 0>;
435*630ecc93SAlexander Stein	clock-names = "ref";
436*630ecc93SAlexander Stein	status = "okay";
437*630ecc93SAlexander Stein};
438*630ecc93SAlexander Stein
439*630ecc93SAlexander Stein&pcie {
440*630ecc93SAlexander Stein	clocks = <&clk IMX8MP_CLK_HSIO_ROOT>,
441*630ecc93SAlexander Stein		 <&clk IMX8MP_CLK_HSIO_AXI>,
442*630ecc93SAlexander Stein		 <&clk IMX8MP_CLK_PCIE_ROOT>;
443*630ecc93SAlexander Stein	clock-names = "pcie", "pcie_bus", "pcie_aux";
444*630ecc93SAlexander Stein	assigned-clocks = <&clk IMX8MP_CLK_PCIE_AUX>;
445*630ecc93SAlexander Stein	assigned-clock-rates = <10000000>;
446*630ecc93SAlexander Stein	assigned-clock-parents = <&clk IMX8MP_SYS_PLL2_50M>;
447*630ecc93SAlexander Stein	status = "okay";
448*630ecc93SAlexander Stein};
449*630ecc93SAlexander Stein
450418d1d84SAlexander Stein&pwm2 {
451418d1d84SAlexander Stein	pinctrl-names = "default";
452418d1d84SAlexander Stein	pinctrl-0 = <&pinctrl_pwm2>;
453418d1d84SAlexander Stein	status = "disabled";
454418d1d84SAlexander Stein};
455418d1d84SAlexander Stein
456418d1d84SAlexander Stein&pwm3 {
457418d1d84SAlexander Stein	pinctrl-names = "default";
458418d1d84SAlexander Stein	pinctrl-0 = <&pinctrl_pwm3>;
459418d1d84SAlexander Stein	status = "okay";
460418d1d84SAlexander Stein};
461418d1d84SAlexander Stein
462418d1d84SAlexander Stein&snvs_pwrkey {
463418d1d84SAlexander Stein	status = "okay";
464418d1d84SAlexander Stein};
465418d1d84SAlexander Stein
466418d1d84SAlexander Stein&uart1 {
467418d1d84SAlexander Stein	pinctrl-names = "default";
468418d1d84SAlexander Stein	pinctrl-0 = <&pinctrl_uart1>;
469418d1d84SAlexander Stein	assigned-clocks = <&clk IMX8MP_CLK_UART1>;
470418d1d84SAlexander Stein	assigned-clock-parents = <&clk IMX8MP_SYS_PLL1_80M>;
471418d1d84SAlexander Stein	status = "okay";
472418d1d84SAlexander Stein};
473418d1d84SAlexander Stein
474418d1d84SAlexander Stein&uart2 {
475418d1d84SAlexander Stein	pinctrl-names = "default";
476418d1d84SAlexander Stein	pinctrl-0 = <&pinctrl_uart2>;
477418d1d84SAlexander Stein	assigned-clocks = <&clk IMX8MP_CLK_UART2>;
478418d1d84SAlexander Stein	assigned-clock-parents = <&clk IMX8MP_SYS_PLL1_80M>;
479418d1d84SAlexander Stein	status = "okay";
480418d1d84SAlexander Stein};
481418d1d84SAlexander Stein
482418d1d84SAlexander Stein&uart3 {
483418d1d84SAlexander Stein	pinctrl-names = "default";
484418d1d84SAlexander Stein	pinctrl-0 = <&pinctrl_uart3>;
485418d1d84SAlexander Stein	assigned-clocks = <&clk IMX8MP_CLK_UART3>;
486418d1d84SAlexander Stein	assigned-clock-parents = <&clk IMX8MP_SYS_PLL1_80M>;
487418d1d84SAlexander Stein	status = "okay";
488418d1d84SAlexander Stein};
489418d1d84SAlexander Stein
490418d1d84SAlexander Stein&uart4 {
491418d1d84SAlexander Stein	/* console */
492418d1d84SAlexander Stein	pinctrl-names = "default";
493418d1d84SAlexander Stein	pinctrl-0 = <&pinctrl_uart4>;
494418d1d84SAlexander Stein	status = "okay";
495418d1d84SAlexander Stein};
496418d1d84SAlexander Stein
497fb4f0b69SAlexander Stein&usb3_0 {
498fb4f0b69SAlexander Stein	pinctrl-names = "default";
499fb4f0b69SAlexander Stein	pinctrl-0 = <&pinctrl_usb0>;
500fb4f0b69SAlexander Stein	fsl,over-current-active-low;
501fb4f0b69SAlexander Stein	status = "okay";
502fb4f0b69SAlexander Stein};
503fb4f0b69SAlexander Stein
504ca69b6c7SAlexander Stein&usb3_1 {
505ca69b6c7SAlexander Stein	fsl,disable-port-power-control;
506ca69b6c7SAlexander Stein	fsl,permanently-attached;
507ca69b6c7SAlexander Stein	dr_mode = "host";
508ca69b6c7SAlexander Stein	status = "okay";
509ca69b6c7SAlexander Stein};
510ca69b6c7SAlexander Stein
511fb4f0b69SAlexander Stein&usb3_phy0 {
512fb4f0b69SAlexander Stein	vbus-supply = <&reg_vcc_5v0>;
513fb4f0b69SAlexander Stein	status = "okay";
514fb4f0b69SAlexander Stein};
515fb4f0b69SAlexander Stein
516ca69b6c7SAlexander Stein&usb3_phy1 {
517ca69b6c7SAlexander Stein	vbus-supply = <&reg_vcc_5v0>;
518ca69b6c7SAlexander Stein	status = "okay";
519ca69b6c7SAlexander Stein};
520ca69b6c7SAlexander Stein
521fb4f0b69SAlexander Stein&usb_dwc3_0 {
522fb4f0b69SAlexander Stein	/* dual role is implemented, but not a full featured OTG */
523fb4f0b69SAlexander Stein	hnp-disable;
524fb4f0b69SAlexander Stein	srp-disable;
525fb4f0b69SAlexander Stein	adp-disable;
526fb4f0b69SAlexander Stein	dr_mode = "otg";
527fb4f0b69SAlexander Stein	usb-role-switch;
528fb4f0b69SAlexander Stein	role-switch-default-mode = "peripheral";
529fb4f0b69SAlexander Stein	status = "okay";
530fb4f0b69SAlexander Stein
531fb4f0b69SAlexander Stein	connector {
532fb4f0b69SAlexander Stein		compatible = "gpio-usb-b-connector", "usb-b-connector";
533fb4f0b69SAlexander Stein		type = "micro";
534fb4f0b69SAlexander Stein		label = "X29";
535fb4f0b69SAlexander Stein		pinctrl-names = "default";
536fb4f0b69SAlexander Stein		pinctrl-0 = <&pinctrl_usbcon0>;
537fb4f0b69SAlexander Stein		id-gpios = <&gpio1 10 GPIO_ACTIVE_HIGH>;
538fb4f0b69SAlexander Stein	};
539fb4f0b69SAlexander Stein};
540fb4f0b69SAlexander Stein
541ca69b6c7SAlexander Stein&usb_dwc3_1 {
542ca69b6c7SAlexander Stein	dr_mode = "host";
543ca69b6c7SAlexander Stein	#address-cells = <1>;
544ca69b6c7SAlexander Stein	#size-cells = <0>;
545ca69b6c7SAlexander Stein	pinctrl-names = "default";
546ca69b6c7SAlexander Stein	pinctrl-0 = <&pinctrl_usbhub>;
547ca69b6c7SAlexander Stein	status = "okay";
548ca69b6c7SAlexander Stein
549ca69b6c7SAlexander Stein	hub_2_0: hub@1 {
550ca69b6c7SAlexander Stein		compatible = "usb451,8142";
551ca69b6c7SAlexander Stein		reg = <1>;
552ca69b6c7SAlexander Stein		peer-hub = <&hub_3_0>;
553ca69b6c7SAlexander Stein		reset-gpios = <&gpio1 11 GPIO_ACTIVE_LOW>;
554ca69b6c7SAlexander Stein		vdd-supply = <&reg_vcc_3v3>;
555ca69b6c7SAlexander Stein	};
556ca69b6c7SAlexander Stein
557ca69b6c7SAlexander Stein	hub_3_0: hub@2 {
558ca69b6c7SAlexander Stein		compatible = "usb451,8140";
559ca69b6c7SAlexander Stein		reg = <2>;
560ca69b6c7SAlexander Stein		peer-hub = <&hub_2_0>;
561ca69b6c7SAlexander Stein		reset-gpios = <&gpio1 11 GPIO_ACTIVE_LOW>;
562ca69b6c7SAlexander Stein		vdd-supply = <&reg_vcc_3v3>;
563ca69b6c7SAlexander Stein	};
564ca69b6c7SAlexander Stein};
565ca69b6c7SAlexander Stein
566418d1d84SAlexander Stein&usdhc2 {
567418d1d84SAlexander Stein	pinctrl-names = "default", "state_100mhz", "state_200mhz";
568418d1d84SAlexander Stein	pinctrl-0 = <&pinctrl_usdhc2>, <&pinctrl_usdhc2_gpio>;
569418d1d84SAlexander Stein	pinctrl-1 = <&pinctrl_usdhc2_100mhz>, <&pinctrl_usdhc2_gpio>;
570418d1d84SAlexander Stein	pinctrl-2 = <&pinctrl_usdhc2_200mhz>, <&pinctrl_usdhc2_gpio>;
571418d1d84SAlexander Stein	cd-gpios = <&gpio2 12 GPIO_ACTIVE_LOW>;
572418d1d84SAlexander Stein	vmmc-supply = <&reg_usdhc2_vmmc>;
573418d1d84SAlexander Stein	no-mmc;
574418d1d84SAlexander Stein	no-sdio;
575418d1d84SAlexander Stein	disable-wp;
576418d1d84SAlexander Stein	bus-width = <4>;
577418d1d84SAlexander Stein	status = "okay";
578418d1d84SAlexander Stein};
579418d1d84SAlexander Stein
580418d1d84SAlexander Stein&iomuxc {
581418d1d84SAlexander Stein	pinctrl_backlight: backlightgrp {
582418d1d84SAlexander Stein		fsl,pins = <MX8MP_IOMUXC_SAI5_RXFS__GPIO3_IO19		0x14>;
583418d1d84SAlexander Stein	};
584418d1d84SAlexander Stein
585418d1d84SAlexander Stein	pinctrl_flexcan1: flexcan1grp {
586418d1d84SAlexander Stein		fsl,pins = <MX8MP_IOMUXC_SAI5_RXD1__CAN1_TX		0x150>,
587418d1d84SAlexander Stein			   <MX8MP_IOMUXC_SAI5_RXD2__CAN1_RX		0x150>;
588418d1d84SAlexander Stein	};
589418d1d84SAlexander Stein
590418d1d84SAlexander Stein	pinctrl_flexcan2: flexcan2grp {
591418d1d84SAlexander Stein		fsl,pins = <MX8MP_IOMUXC_SAI5_RXD3__CAN2_TX		0x150>,
592418d1d84SAlexander Stein			   <MX8MP_IOMUXC_SAI5_MCLK__CAN2_RX		0x150>;
593418d1d84SAlexander Stein	};
594418d1d84SAlexander Stein
595418d1d84SAlexander Stein	/* only on X57, primary used as CSI0 control signals */
596418d1d84SAlexander Stein	pinctrl_ecspi1: ecspi1grp {
597418d1d84SAlexander Stein		fsl,pins = <MX8MP_IOMUXC_ECSPI1_MISO__ECSPI1_MISO	0x1c0>,
598418d1d84SAlexander Stein			   <MX8MP_IOMUXC_ECSPI1_MOSI__ECSPI1_MOSI	0x1c0>,
599418d1d84SAlexander Stein			   <MX8MP_IOMUXC_ECSPI1_SCLK__ECSPI1_SCLK	0x1c0>,
600418d1d84SAlexander Stein			   <MX8MP_IOMUXC_ECSPI1_SS0__GPIO5_IO09		0x1c0>;
601418d1d84SAlexander Stein	};
602418d1d84SAlexander Stein
603418d1d84SAlexander Stein	/* on X63 and optionally on X57, can also be used as CSI1 control signals */
604418d1d84SAlexander Stein	pinctrl_ecspi2: ecspi2grp {
605418d1d84SAlexander Stein		fsl,pins = <MX8MP_IOMUXC_ECSPI2_MISO__ECSPI2_MISO	0x1c0>,
606418d1d84SAlexander Stein			   <MX8MP_IOMUXC_ECSPI2_MOSI__ECSPI2_MOSI	0x1c0>,
607418d1d84SAlexander Stein			   <MX8MP_IOMUXC_ECSPI2_SCLK__ECSPI2_SCLK	0x1c0>,
608418d1d84SAlexander Stein			   <MX8MP_IOMUXC_ECSPI2_SS0__GPIO5_IO13		0x1c0>;
609418d1d84SAlexander Stein	};
610418d1d84SAlexander Stein
611418d1d84SAlexander Stein	pinctrl_ecspi3: ecspi3grp {
612418d1d84SAlexander Stein		fsl,pins = <MX8MP_IOMUXC_UART1_TXD__ECSPI3_MOSI		0x1c0>,
613418d1d84SAlexander Stein			   <MX8MP_IOMUXC_UART1_RXD__ECSPI3_SCLK		0x1c0>,
614418d1d84SAlexander Stein			   <MX8MP_IOMUXC_UART2_RXD__ECSPI3_MISO		0x1c0>,
615418d1d84SAlexander Stein			   <MX8MP_IOMUXC_UART2_TXD__GPIO5_IO25		0x1c0>;
616418d1d84SAlexander Stein	};
617418d1d84SAlexander Stein
618418d1d84SAlexander Stein	pinctrl_eqos: eqosgrp {
619418d1d84SAlexander Stein		fsl,pins = <MX8MP_IOMUXC_ENET_MDC__ENET_QOS_MDC				0x40000044>,
620418d1d84SAlexander Stein			   <MX8MP_IOMUXC_ENET_MDIO__ENET_QOS_MDIO			0x40000044>,
621418d1d84SAlexander Stein			   <MX8MP_IOMUXC_ENET_RD0__ENET_QOS_RGMII_RD0			0x90>,
622418d1d84SAlexander Stein			   <MX8MP_IOMUXC_ENET_RD1__ENET_QOS_RGMII_RD1			0x90>,
623418d1d84SAlexander Stein			   <MX8MP_IOMUXC_ENET_RD2__ENET_QOS_RGMII_RD2			0x90>,
624418d1d84SAlexander Stein			   <MX8MP_IOMUXC_ENET_RD3__ENET_QOS_RGMII_RD3			0x90>,
625418d1d84SAlexander Stein			   <MX8MP_IOMUXC_ENET_RXC__CCM_ENET_QOS_CLOCK_GENERATE_RX_CLK	0x90>,
626418d1d84SAlexander Stein			   <MX8MP_IOMUXC_ENET_RX_CTL__ENET_QOS_RGMII_RX_CTL		0x90>,
627418d1d84SAlexander Stein			   <MX8MP_IOMUXC_ENET_TD0__ENET_QOS_RGMII_TD0			0x12>,
628418d1d84SAlexander Stein			   <MX8MP_IOMUXC_ENET_TD1__ENET_QOS_RGMII_TD1			0x12>,
629418d1d84SAlexander Stein			   <MX8MP_IOMUXC_ENET_TD2__ENET_QOS_RGMII_TD2			0x12>,
630418d1d84SAlexander Stein			   <MX8MP_IOMUXC_ENET_TD3__ENET_QOS_RGMII_TD3			0x12>,
631418d1d84SAlexander Stein			   <MX8MP_IOMUXC_ENET_TX_CTL__ENET_QOS_RGMII_TX_CTL		0x12>,
632418d1d84SAlexander Stein			   <MX8MP_IOMUXC_ENET_TXC__CCM_ENET_QOS_CLOCK_GENERATE_TX_CLK	0x14>;
633418d1d84SAlexander Stein	};
634418d1d84SAlexander Stein
635418d1d84SAlexander Stein	pinctrl_eqos_event: eqosevtgrp {
636418d1d84SAlexander Stein		fsl,pins = <MX8MP_IOMUXC_SAI2_RXD0__ENET_QOS_1588_EVENT2_OUT		0x100>,
637418d1d84SAlexander Stein			   <MX8MP_IOMUXC_SAI2_TXD0__ENET_QOS_1588_EVENT2_IN		0x1c0>;
638418d1d84SAlexander Stein	};
639418d1d84SAlexander Stein
640418d1d84SAlexander Stein	pinctrl_eqos_phy: eqosphygrp {
641418d1d84SAlexander Stein		fsl,pins = <MX8MP_IOMUXC_SAI1_RXD0__GPIO4_IO02				0x100>,
642418d1d84SAlexander Stein			   <MX8MP_IOMUXC_SAI1_RXD1__GPIO4_IO03				0x1c0>;
643418d1d84SAlexander Stein	};
644418d1d84SAlexander Stein
645418d1d84SAlexander Stein	pinctrl_fec: fecgrp {
646418d1d84SAlexander Stein		fsl,pins = <MX8MP_IOMUXC_SAI1_RXD2__ENET1_MDC		0x40000044>,
647418d1d84SAlexander Stein			   <MX8MP_IOMUXC_SAI1_RXD3__ENET1_MDIO		0x40000044>,
648418d1d84SAlexander Stein			   <MX8MP_IOMUXC_SAI1_RXD4__ENET1_RGMII_RD0	0x90>,
649418d1d84SAlexander Stein			   <MX8MP_IOMUXC_SAI1_RXD5__ENET1_RGMII_RD1	0x90>,
650418d1d84SAlexander Stein			   <MX8MP_IOMUXC_SAI1_RXD6__ENET1_RGMII_RD2	0x90>,
651418d1d84SAlexander Stein			   <MX8MP_IOMUXC_SAI1_RXD7__ENET1_RGMII_RD3	0x90>,
652418d1d84SAlexander Stein			   <MX8MP_IOMUXC_SAI1_TXC__ENET1_RGMII_RXC	0x90>,
653418d1d84SAlexander Stein			   <MX8MP_IOMUXC_SAI1_TXFS__ENET1_RGMII_RX_CTL	0x90>,
654418d1d84SAlexander Stein			   <MX8MP_IOMUXC_SAI1_TXD0__ENET1_RGMII_TD0	0x12>,
655418d1d84SAlexander Stein			   <MX8MP_IOMUXC_SAI1_TXD1__ENET1_RGMII_TD1	0x12>,
656418d1d84SAlexander Stein			   <MX8MP_IOMUXC_SAI1_TXD2__ENET1_RGMII_TD2	0x12>,
657418d1d84SAlexander Stein			   <MX8MP_IOMUXC_SAI1_TXD3__ENET1_RGMII_TD3	0x12>,
658418d1d84SAlexander Stein			   <MX8MP_IOMUXC_SAI1_TXD4__ENET1_RGMII_TX_CTL	0x12>,
659418d1d84SAlexander Stein			   <MX8MP_IOMUXC_SAI1_TXD5__ENET1_RGMII_TXC	0x14>;
660418d1d84SAlexander Stein	};
661418d1d84SAlexander Stein
662418d1d84SAlexander Stein	pinctrl_fec_event: fecevtgrp {
663418d1d84SAlexander Stein		fsl,pins = <MX8MP_IOMUXC_SAI1_RXFS__ENET1_1588_EVENT0_IN	0x100>,
664418d1d84SAlexander Stein			   <MX8MP_IOMUXC_SAI1_RXC__ENET1_1588_EVENT0_OUT	0x1c0>;
665418d1d84SAlexander Stein	};
666418d1d84SAlexander Stein
667418d1d84SAlexander Stein	pinctrl_fec_phy: fecphygrp {
668418d1d84SAlexander Stein		fsl,pins = <MX8MP_IOMUXC_SAI1_RXFS__GPIO4_IO00		0x100>,
669418d1d84SAlexander Stein			   <MX8MP_IOMUXC_SAI1_RXC__GPIO4_IO01		0x1c0>;
670418d1d84SAlexander Stein	};
671418d1d84SAlexander Stein
672418d1d84SAlexander Stein	pinctrl_fec_phyalt: fecphyaltgrp {
673418d1d84SAlexander Stein		fsl,pins = <MX8MP_IOMUXC_SAI2_TXFS__GPIO4_IO24		0x180>,
674418d1d84SAlexander Stein			   <MX8MP_IOMUXC_SAI2_TXC__GPIO4_IO25		0x180>;
675418d1d84SAlexander Stein	};
676418d1d84SAlexander Stein
677418d1d84SAlexander Stein	pinctrl_gpiobutton: gpiobuttongrp {
678418d1d84SAlexander Stein		fsl,pins = <MX8MP_IOMUXC_UART3_RXD__GPIO5_IO26		0x10>,
679418d1d84SAlexander Stein			   <MX8MP_IOMUXC_UART3_TXD__GPIO5_IO27		0x10>;
680418d1d84SAlexander Stein	};
681418d1d84SAlexander Stein
682418d1d84SAlexander Stein	pinctrl_gpioled: gpioledgrp {
683418d1d84SAlexander Stein		fsl,pins = <MX8MP_IOMUXC_SPDIF_EXT_CLK__GPIO5_IO05	0x14>,
684418d1d84SAlexander Stein			   <MX8MP_IOMUXC_SPDIF_RX__GPIO5_IO04		0x14>,
685418d1d84SAlexander Stein			   <MX8MP_IOMUXC_SPDIF_TX__GPIO5_IO03		0x14>;
686418d1d84SAlexander Stein	};
687418d1d84SAlexander Stein
688418d1d84SAlexander Stein	pinctrl_gpio1: gpio1grp {
689418d1d84SAlexander Stein		fsl,pins = <MX8MP_IOMUXC_GPIO1_IO00__GPIO1_IO00		0x10>,
690418d1d84SAlexander Stein			   <MX8MP_IOMUXC_GPIO1_IO01__GPIO1_IO01		0x10>,
691418d1d84SAlexander Stein			   <MX8MP_IOMUXC_GPIO1_IO03__GPIO1_IO03		0x10>,
692418d1d84SAlexander Stein			   <MX8MP_IOMUXC_GPIO1_IO06__GPIO1_IO06		0x10>,
693418d1d84SAlexander Stein			   <MX8MP_IOMUXC_GPIO1_IO07__GPIO1_IO07		0x80>,
694418d1d84SAlexander Stein			   <MX8MP_IOMUXC_GPIO1_IO09__GPIO1_IO09		0x80>,
695418d1d84SAlexander Stein			   <MX8MP_IOMUXC_GPIO1_IO14__GPIO1_IO14		0x80>,
696418d1d84SAlexander Stein			   <MX8MP_IOMUXC_GPIO1_IO15__GPIO1_IO15		0x80>;
697418d1d84SAlexander Stein	};
698418d1d84SAlexander Stein
699418d1d84SAlexander Stein	pinctrl_gpio4: gpio4grp {
700418d1d84SAlexander Stein		fsl,pins = <MX8MP_IOMUXC_SAI1_MCLK__GPIO4_IO20		0x180>,
701418d1d84SAlexander Stein			   <MX8MP_IOMUXC_SAI2_RXC__GPIO4_IO22		0x180>;
702418d1d84SAlexander Stein	};
703418d1d84SAlexander Stein
704418d1d84SAlexander Stein	pinctrl_hdmi: hdmigrp {
705418d1d84SAlexander Stein		fsl,pins = <MX8MP_IOMUXC_HDMI_DDC_SCL__HDMIMIX_HDMI_SCL	0x400001c2>,
706418d1d84SAlexander Stein			   <MX8MP_IOMUXC_HDMI_DDC_SDA__HDMIMIX_HDMI_SDA	0x400001c2>,
707418d1d84SAlexander Stein			   <MX8MP_IOMUXC_HDMI_HPD__HDMIMIX_HDMI_HPD	0x40000010>,
708418d1d84SAlexander Stein			   <MX8MP_IOMUXC_HDMI_CEC__HDMIMIX_HDMI_CEC	0x40000010>;
709418d1d84SAlexander Stein	};
710418d1d84SAlexander Stein
711418d1d84SAlexander Stein	pinctrl_hoggpio2: hoggpio2grp {
712418d1d84SAlexander Stein		fsl,pins = <MX8MP_IOMUXC_SD1_DATA5__GPIO2_IO07		0x140>,
713418d1d84SAlexander Stein			   <MX8MP_IOMUXC_SD1_RESET_B__GPIO2_IO10	0x140>,
714418d1d84SAlexander Stein			   <MX8MP_IOMUXC_SD1_STROBE__GPIO2_IO11		0x140>;
715418d1d84SAlexander Stein	};
716418d1d84SAlexander Stein
717418d1d84SAlexander Stein	pinctrl_i2c2: i2c2grp {
718418d1d84SAlexander Stein		fsl,pins = <MX8MP_IOMUXC_I2C2_SCL__I2C2_SCL		0x400001e2>,
719418d1d84SAlexander Stein			   <MX8MP_IOMUXC_I2C2_SDA__I2C2_SDA		0x400001e2>;
720418d1d84SAlexander Stein	};
721418d1d84SAlexander Stein
722418d1d84SAlexander Stein	pinctrl_i2c2_gpio: i2c2-gpiogrp {
723418d1d84SAlexander Stein		fsl,pins = <MX8MP_IOMUXC_I2C2_SCL__GPIO5_IO16		0x400001e2>,
724418d1d84SAlexander Stein			   <MX8MP_IOMUXC_I2C2_SDA__GPIO5_IO17		0x400001e2>;
725418d1d84SAlexander Stein	};
726418d1d84SAlexander Stein
727418d1d84SAlexander Stein	pinctrl_i2c4: i2c4grp {
728418d1d84SAlexander Stein		fsl,pins = <MX8MP_IOMUXC_I2C4_SCL__I2C4_SCL		0x400001e2>,
729418d1d84SAlexander Stein			   <MX8MP_IOMUXC_I2C4_SDA__I2C4_SDA		0x400001e2>;
730418d1d84SAlexander Stein	};
731418d1d84SAlexander Stein
732418d1d84SAlexander Stein	pinctrl_i2c4_gpio: i2c4-gpiogrp {
733418d1d84SAlexander Stein		fsl,pins = <MX8MP_IOMUXC_I2C4_SCL__GPIO5_IO20		0x400001e2>,
734418d1d84SAlexander Stein			   <MX8MP_IOMUXC_I2C4_SDA__GPIO5_IO21		0x400001e2>;
735418d1d84SAlexander Stein	};
736418d1d84SAlexander Stein
737418d1d84SAlexander Stein	pinctrl_i2c6: i2c6grp {
738418d1d84SAlexander Stein		fsl,pins = <MX8MP_IOMUXC_SD1_DATA0__I2C6_SCL		0x400001e2>,
739418d1d84SAlexander Stein			   <MX8MP_IOMUXC_SD1_DATA1__I2C6_SDA		0x400001e2>;
740418d1d84SAlexander Stein	};
741418d1d84SAlexander Stein
742418d1d84SAlexander Stein	pinctrl_i2c6_gpio: i2c6-gpiogrp {
743418d1d84SAlexander Stein		fsl,pins = <MX8MP_IOMUXC_SD1_DATA0__GPIO2_IO02		0x400001e2>,
744418d1d84SAlexander Stein			   <MX8MP_IOMUXC_SD1_DATA1__GPIO2_IO03		0x400001e2>;
745418d1d84SAlexander Stein	};
746418d1d84SAlexander Stein
747418d1d84SAlexander Stein	pinctrl_lvdsdisplay: lvdsdisplaygrp {
748418d1d84SAlexander Stein		fsl,pins = <MX8MP_IOMUXC_SAI5_RXC__GPIO3_IO20		0x10>; /* Power enable */
749418d1d84SAlexander Stein	};
750418d1d84SAlexander Stein
75145b91a15SAlexander Stein	pinctrl_pcf85063: pcf85063grp {
75245b91a15SAlexander Stein		fsl,pins = <MX8MP_IOMUXC_SAI3_RXFS__GPIO4_IO28		0x80>;
75345b91a15SAlexander Stein	};
75445b91a15SAlexander Stein
755418d1d84SAlexander Stein	/* LVDS Backlight */
756418d1d84SAlexander Stein	pinctrl_pwm2: pwm2grp {
757418d1d84SAlexander Stein		fsl,pins = <MX8MP_IOMUXC_SAI5_RXD0__PWM2_OUT		0x14>;
758418d1d84SAlexander Stein	};
759418d1d84SAlexander Stein
760418d1d84SAlexander Stein	/* FAN */
761418d1d84SAlexander Stein	pinctrl_pwm3: pwm3grp {
762418d1d84SAlexander Stein		fsl,pins = <MX8MP_IOMUXC_I2C3_SDA__PWM3_OUT		0x14>;
763418d1d84SAlexander Stein	};
764418d1d84SAlexander Stein
765418d1d84SAlexander Stein	pinctrl_reg12v0: reg12v0grp {
766418d1d84SAlexander Stein		fsl,pins = <MX8MP_IOMUXC_SD1_DATA4__GPIO2_IO06		0x140>; /* VCC12V enable */
767418d1d84SAlexander Stein	};
768418d1d84SAlexander Stein
769418d1d84SAlexander Stein	/* X61 */
770418d1d84SAlexander Stein	pinctrl_uart1: uart1grp {
771418d1d84SAlexander Stein		fsl,pins = <MX8MP_IOMUXC_SD1_CLK__UART1_DCE_TX		0x140>,
772418d1d84SAlexander Stein			   <MX8MP_IOMUXC_SD1_CMD__UART1_DCE_RX		0x140>;
773418d1d84SAlexander Stein	};
774418d1d84SAlexander Stein
775418d1d84SAlexander Stein	/* X61 */
776418d1d84SAlexander Stein	pinctrl_uart2: uart2grp {
777418d1d84SAlexander Stein		fsl,pins = <MX8MP_IOMUXC_SD1_DATA2__UART2_DCE_TX	0x140>,
778418d1d84SAlexander Stein			   <MX8MP_IOMUXC_SD1_DATA3__UART2_DCE_RX	0x140>;
779418d1d84SAlexander Stein	};
780418d1d84SAlexander Stein
781418d1d84SAlexander Stein	pinctrl_uart3: uart3grp {
782418d1d84SAlexander Stein		fsl,pins = <MX8MP_IOMUXC_SD1_DATA6__UART3_DCE_TX	0x140>,
783418d1d84SAlexander Stein			   <MX8MP_IOMUXC_SD1_DATA7__UART3_DCE_RX	0x140>;
784418d1d84SAlexander Stein	};
785418d1d84SAlexander Stein
786418d1d84SAlexander Stein	pinctrl_uart4: uart4grp {
787418d1d84SAlexander Stein		fsl,pins = <MX8MP_IOMUXC_UART4_RXD__UART4_DCE_RX	0x140>,
788418d1d84SAlexander Stein			   <MX8MP_IOMUXC_UART4_TXD__UART4_DCE_TX	0x140>;
789418d1d84SAlexander Stein	};
790418d1d84SAlexander Stein
791fb4f0b69SAlexander Stein	pinctrl_usb0: usb0grp {
792fb4f0b69SAlexander Stein		fsl,pins = <MX8MP_IOMUXC_GPIO1_IO13__USB1_OTG_OC	0x1c0>,
793fb4f0b69SAlexander Stein			   <MX8MP_IOMUXC_GPIO1_IO12__USB1_OTG_PWR	0x1c0>;
794fb4f0b69SAlexander Stein	};
795fb4f0b69SAlexander Stein
796fb4f0b69SAlexander Stein	pinctrl_usbcon0: usb0congrp {
797fb4f0b69SAlexander Stein		fsl,pins = <MX8MP_IOMUXC_GPIO1_IO10__GPIO1_IO10		0x1c0>;
798fb4f0b69SAlexander Stein	};
799fb4f0b69SAlexander Stein
800ca69b6c7SAlexander Stein	pinctrl_usbhub: usbhubgrp {
801ca69b6c7SAlexander Stein		fsl,pins = <MX8MP_IOMUXC_GPIO1_IO11__GPIO1_IO11		0x10>;
802ca69b6c7SAlexander Stein	};
803ca69b6c7SAlexander Stein
804418d1d84SAlexander Stein	pinctrl_usdhc2: usdhc2grp {
805418d1d84SAlexander Stein		fsl,pins = <MX8MP_IOMUXC_SD2_CLK__USDHC2_CLK		0x192>,
806418d1d84SAlexander Stein			   <MX8MP_IOMUXC_SD2_CMD__USDHC2_CMD		0x1d2>,
807418d1d84SAlexander Stein			   <MX8MP_IOMUXC_SD2_DATA0__USDHC2_DATA0	0x1d2>,
808418d1d84SAlexander Stein			   <MX8MP_IOMUXC_SD2_DATA1__USDHC2_DATA1	0x1d2>,
809418d1d84SAlexander Stein			   <MX8MP_IOMUXC_SD2_DATA2__USDHC2_DATA2	0x1d2>,
810418d1d84SAlexander Stein			   <MX8MP_IOMUXC_SD2_DATA3__USDHC2_DATA3	0x1d2>,
811418d1d84SAlexander Stein			   <MX8MP_IOMUXC_GPIO1_IO04__USDHC2_VSELECT	0xc0>;
812418d1d84SAlexander Stein	};
813418d1d84SAlexander Stein
814418d1d84SAlexander Stein	pinctrl_usdhc2_100mhz: usdhc2-100mhzgrp {
815418d1d84SAlexander Stein		fsl,pins = <MX8MP_IOMUXC_SD2_CLK__USDHC2_CLK		0x194>,
816418d1d84SAlexander Stein			   <MX8MP_IOMUXC_SD2_CMD__USDHC2_CMD		0x1d4>,
817418d1d84SAlexander Stein			   <MX8MP_IOMUXC_SD2_DATA0__USDHC2_DATA0	0x1d4>,
818418d1d84SAlexander Stein			   <MX8MP_IOMUXC_SD2_DATA1__USDHC2_DATA1	0x1d4>,
819418d1d84SAlexander Stein			   <MX8MP_IOMUXC_SD2_DATA2__USDHC2_DATA2	0x1d4>,
820418d1d84SAlexander Stein			   <MX8MP_IOMUXC_SD2_DATA3__USDHC2_DATA3	0x1d4>,
821418d1d84SAlexander Stein			   <MX8MP_IOMUXC_GPIO1_IO04__USDHC2_VSELECT	0xc0>;
822418d1d84SAlexander Stein	};
823418d1d84SAlexander Stein
824418d1d84SAlexander Stein	pinctrl_usdhc2_200mhz: usdhc2-200mhzgrp {
825418d1d84SAlexander Stein		fsl,pins = <MX8MP_IOMUXC_SD2_CLK__USDHC2_CLK		0x194>,
826418d1d84SAlexander Stein			   <MX8MP_IOMUXC_SD2_CMD__USDHC2_CMD		0x1d4>,
827418d1d84SAlexander Stein			   <MX8MP_IOMUXC_SD2_DATA0__USDHC2_DATA0	0x1d4>,
828418d1d84SAlexander Stein			   <MX8MP_IOMUXC_SD2_DATA1__USDHC2_DATA1	0x1d4>,
829418d1d84SAlexander Stein			   <MX8MP_IOMUXC_SD2_DATA2__USDHC2_DATA2	0x1d4>,
830418d1d84SAlexander Stein			   <MX8MP_IOMUXC_SD2_DATA3__USDHC2_DATA3	0x1d4>,
831418d1d84SAlexander Stein			   <MX8MP_IOMUXC_GPIO1_IO04__USDHC2_VSELECT	0xc0>;
832418d1d84SAlexander Stein	};
833418d1d84SAlexander Stein
834418d1d84SAlexander Stein	pinctrl_usdhc2_gpio: usdhc2-gpiogrp {
835418d1d84SAlexander Stein		fsl,pins = <MX8MP_IOMUXC_SD2_CD_B__GPIO2_IO12		0x1c0>;
836418d1d84SAlexander Stein	};
837418d1d84SAlexander Stein};
838