xref: /freebsd-src/sys/contrib/device-tree/src/arm64/freescale/imx8mq-librem5-devkit.dts (revision 7d0873ebb83b19ba1e8a89e679470d885efe12e3)
1c66ec88fSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0+
2c66ec88fSEmmanuel Vadot/*
3c66ec88fSEmmanuel Vadot * Copyright 2018-2019 Purism SPC
4c66ec88fSEmmanuel Vadot */
5c66ec88fSEmmanuel Vadot
6c66ec88fSEmmanuel Vadot/dts-v1/;
7c66ec88fSEmmanuel Vadot
8c66ec88fSEmmanuel Vadot#include "dt-bindings/input/input.h"
96be33864SEmmanuel Vadot#include <dt-bindings/interrupt-controller/irq.h>
108bab661aSEmmanuel Vadot#include <dt-bindings/leds/common.h>
11c66ec88fSEmmanuel Vadot#include "dt-bindings/pwm/pwm.h"
12c66ec88fSEmmanuel Vadot#include "dt-bindings/usb/pd.h"
13c66ec88fSEmmanuel Vadot#include "imx8mq.dtsi"
14c66ec88fSEmmanuel Vadot
15c66ec88fSEmmanuel Vadot/ {
16c66ec88fSEmmanuel Vadot	model = "Purism Librem 5 devkit";
17c66ec88fSEmmanuel Vadot	compatible = "purism,librem5-devkit", "fsl,imx8mq";
18c66ec88fSEmmanuel Vadot
19c66ec88fSEmmanuel Vadot	backlight_dsi: backlight-dsi {
20c66ec88fSEmmanuel Vadot		compatible = "pwm-backlight";
21c66ec88fSEmmanuel Vadot		/* 200 Hz for the PAM2841 */
22d5b0e70fSEmmanuel Vadot		pwms = <&pwm1 0 5000000 0>;
23c66ec88fSEmmanuel Vadot		brightness-levels = <0 100>;
24c66ec88fSEmmanuel Vadot		num-interpolated-steps = <100>;
25c66ec88fSEmmanuel Vadot		/* Default brightness level (index into the array defined by */
26c66ec88fSEmmanuel Vadot		/* the "brightness-levels" property) */
27c66ec88fSEmmanuel Vadot		default-brightness-level = <0>;
28c66ec88fSEmmanuel Vadot		power-supply = <&reg_22v4_p>;
29c66ec88fSEmmanuel Vadot	};
30c66ec88fSEmmanuel Vadot
31c66ec88fSEmmanuel Vadot	chosen {
32c66ec88fSEmmanuel Vadot		stdout-path = &uart1;
33c66ec88fSEmmanuel Vadot	};
34c66ec88fSEmmanuel Vadot
35c66ec88fSEmmanuel Vadot	gpio-keys {
36c66ec88fSEmmanuel Vadot		compatible = "gpio-keys";
37c66ec88fSEmmanuel Vadot		pinctrl-names = "default";
38c66ec88fSEmmanuel Vadot		pinctrl-0 = <&pinctrl_gpio_keys>;
39c66ec88fSEmmanuel Vadot
40b97ee269SEmmanuel Vadot		button-1 {
41c66ec88fSEmmanuel Vadot			label = "VOL_UP";
42c66ec88fSEmmanuel Vadot			gpios = <&gpio4 21 GPIO_ACTIVE_LOW>;
43c66ec88fSEmmanuel Vadot			wakeup-source;
44c66ec88fSEmmanuel Vadot			linux,code = <KEY_VOLUMEUP>;
45c66ec88fSEmmanuel Vadot		};
46c66ec88fSEmmanuel Vadot
47b97ee269SEmmanuel Vadot		button-2 {
48c66ec88fSEmmanuel Vadot			label = "VOL_DOWN";
49c66ec88fSEmmanuel Vadot			gpios = <&gpio4 22 GPIO_ACTIVE_LOW>;
50c66ec88fSEmmanuel Vadot			wakeup-source;
51c66ec88fSEmmanuel Vadot			linux,code = <KEY_VOLUMEDOWN>;
52c66ec88fSEmmanuel Vadot		};
53c66ec88fSEmmanuel Vadot
54b97ee269SEmmanuel Vadot		button-3 {
55c66ec88fSEmmanuel Vadot			label = "WWAN_WAKE";
56c66ec88fSEmmanuel Vadot			gpios = <&gpio3 8 GPIO_ACTIVE_LOW>;
57c66ec88fSEmmanuel Vadot			interrupt-parent = <&gpio3>;
586be33864SEmmanuel Vadot			interrupts = <8 IRQ_TYPE_LEVEL_LOW>;
59c66ec88fSEmmanuel Vadot			wakeup-source;
60c66ec88fSEmmanuel Vadot			linux,code = <KEY_PHONE>;
61c66ec88fSEmmanuel Vadot		};
62c66ec88fSEmmanuel Vadot	};
63c66ec88fSEmmanuel Vadot
64c66ec88fSEmmanuel Vadot	leds {
658bab661aSEmmanuel Vadot		compatible = "pwm-leds";
66c66ec88fSEmmanuel Vadot
67cb7aa33aSEmmanuel Vadot		led-1 {
688bab661aSEmmanuel Vadot			function = LED_FUNCTION_STATUS;
698bab661aSEmmanuel Vadot			color = <LED_COLOR_ID_RED>;
708bab661aSEmmanuel Vadot			max-brightness = <248>;
718bab661aSEmmanuel Vadot			pwms = <&pwm2 0 50000 0>;
72c66ec88fSEmmanuel Vadot		};
73c66ec88fSEmmanuel Vadot	};
74c66ec88fSEmmanuel Vadot
75c66ec88fSEmmanuel Vadot	pmic_osc: clock-pmic {
76c66ec88fSEmmanuel Vadot		compatible = "fixed-clock";
77c66ec88fSEmmanuel Vadot		#clock-cells = <0>;
78c66ec88fSEmmanuel Vadot		clock-frequency = <32768>;
79c66ec88fSEmmanuel Vadot		clock-output-names = "pmic_osc";
80c66ec88fSEmmanuel Vadot	};
81c66ec88fSEmmanuel Vadot
82c66ec88fSEmmanuel Vadot	reg_1v8_p: regulator-1v8-p {
83c66ec88fSEmmanuel Vadot		compatible = "regulator-fixed";
84c66ec88fSEmmanuel Vadot		regulator-name = "1v8_p";
85c66ec88fSEmmanuel Vadot		regulator-min-microvolt = <1800000>;
86c66ec88fSEmmanuel Vadot		regulator-max-microvolt = <1800000>;
87c66ec88fSEmmanuel Vadot		vin-supply = <&reg_pwr_en>;
88c66ec88fSEmmanuel Vadot	};
89c66ec88fSEmmanuel Vadot
90c66ec88fSEmmanuel Vadot	reg_2v8_p: regulator-2v8-p {
91c66ec88fSEmmanuel Vadot		compatible = "regulator-fixed";
92c66ec88fSEmmanuel Vadot		regulator-name = "2v8_p";
93c66ec88fSEmmanuel Vadot		regulator-min-microvolt = <2800000>;
94c66ec88fSEmmanuel Vadot		regulator-max-microvolt = <2800000>;
95c66ec88fSEmmanuel Vadot		vin-supply = <&reg_pwr_en>;
96c66ec88fSEmmanuel Vadot	};
97c66ec88fSEmmanuel Vadot
98c66ec88fSEmmanuel Vadot	reg_3v3_p: regulator-3v3-p {
99c66ec88fSEmmanuel Vadot		compatible = "regulator-fixed";
100c66ec88fSEmmanuel Vadot		regulator-name = "3v3_p";
101c66ec88fSEmmanuel Vadot		regulator-min-microvolt = <3300000>;
102c66ec88fSEmmanuel Vadot		regulator-max-microvolt = <3300000>;
103c66ec88fSEmmanuel Vadot		vin-supply = <&reg_pwr_en>;
104c66ec88fSEmmanuel Vadot
105c66ec88fSEmmanuel Vadot		regulator-state-mem {
106c66ec88fSEmmanuel Vadot			regulator-on-in-suspend;
107c66ec88fSEmmanuel Vadot		};
108c66ec88fSEmmanuel Vadot	};
109c66ec88fSEmmanuel Vadot
110c66ec88fSEmmanuel Vadot	reg_5v_p: regulator-5v-p {
111c66ec88fSEmmanuel Vadot		compatible = "regulator-fixed";
112c66ec88fSEmmanuel Vadot		regulator-name = "5v_p";
113c66ec88fSEmmanuel Vadot		regulator-min-microvolt = <5000000>;
114c66ec88fSEmmanuel Vadot		regulator-max-microvolt = <5000000>;
115c66ec88fSEmmanuel Vadot		vin-supply = <&reg_pwr_en>;
116c66ec88fSEmmanuel Vadot
117c66ec88fSEmmanuel Vadot		regulator-state-mem {
118c66ec88fSEmmanuel Vadot			regulator-on-in-suspend;
119c66ec88fSEmmanuel Vadot		};
120c66ec88fSEmmanuel Vadot	};
121c66ec88fSEmmanuel Vadot
122c66ec88fSEmmanuel Vadot	reg_22v4_p: regulator-22v4-p  {
123c66ec88fSEmmanuel Vadot		compatible = "regulator-fixed";
124c66ec88fSEmmanuel Vadot		regulator-name = "22v4_P";
125c66ec88fSEmmanuel Vadot		regulator-min-microvolt = <22400000>;
126c66ec88fSEmmanuel Vadot		regulator-max-microvolt = <22400000>;
127c66ec88fSEmmanuel Vadot		vin-supply = <&reg_pwr_en>;
128c66ec88fSEmmanuel Vadot	};
129c66ec88fSEmmanuel Vadot
130c66ec88fSEmmanuel Vadot	reg_pwr_en: regulator-pwr-en {
131c66ec88fSEmmanuel Vadot		compatible = "regulator-fixed";
132c66ec88fSEmmanuel Vadot		pinctrl-names = "default";
133c66ec88fSEmmanuel Vadot		pinctrl-0 = <&pinctrl_pwr_en>;
134c66ec88fSEmmanuel Vadot		regulator-name = "PWR_EN";
135c66ec88fSEmmanuel Vadot		regulator-min-microvolt = <3300000>;
136c66ec88fSEmmanuel Vadot		regulator-max-microvolt = <3300000>;
137c66ec88fSEmmanuel Vadot		gpio = <&gpio1 8 GPIO_ACTIVE_HIGH>;
138c66ec88fSEmmanuel Vadot		enable-active-high;
139c66ec88fSEmmanuel Vadot		regulator-always-on;
140c66ec88fSEmmanuel Vadot	};
141c66ec88fSEmmanuel Vadot
142c66ec88fSEmmanuel Vadot	wwan_codec: sound-wwan-codec {
143c66ec88fSEmmanuel Vadot		compatible = "option,gtm601";
144c66ec88fSEmmanuel Vadot		#sound-dai-cells = <0>;
145c66ec88fSEmmanuel Vadot	};
146c66ec88fSEmmanuel Vadot
1472eb4d8dcSEmmanuel Vadot	mic_mux: mic-mux {
1482eb4d8dcSEmmanuel Vadot		compatible = "simple-audio-mux";
1492eb4d8dcSEmmanuel Vadot		pinctrl-names = "default";
1502eb4d8dcSEmmanuel Vadot		pinctrl-0 = <&pinctrl_micsel>;
1512eb4d8dcSEmmanuel Vadot		mux-gpios = <&gpio5 5 GPIO_ACTIVE_LOW>;
1522eb4d8dcSEmmanuel Vadot		sound-name-prefix = "Mic Mux";
1532eb4d8dcSEmmanuel Vadot	};
1542eb4d8dcSEmmanuel Vadot
155c66ec88fSEmmanuel Vadot	sound {
156c66ec88fSEmmanuel Vadot		compatible = "simple-audio-card";
1572eb4d8dcSEmmanuel Vadot		pinctrl-names = "default";
1582eb4d8dcSEmmanuel Vadot		pinctrl-0 = <&pinctrl_hpdet>;
1592eb4d8dcSEmmanuel Vadot		simple-audio-card,aux-devs = <&speaker_amp>, <&mic_mux>;
1602eb4d8dcSEmmanuel Vadot		simple-audio-card,name = "Librem 5 Devkit";
161c66ec88fSEmmanuel Vadot		simple-audio-card,format = "i2s";
162c66ec88fSEmmanuel Vadot		simple-audio-card,widgets =
1632eb4d8dcSEmmanuel Vadot			"Microphone", "Builtin Microphone",
1642eb4d8dcSEmmanuel Vadot			"Microphone", "Headset Microphone",
1652eb4d8dcSEmmanuel Vadot			"Headphone", "Headphones",
1662eb4d8dcSEmmanuel Vadot			"Speaker", "Builtin Speaker";
167c66ec88fSEmmanuel Vadot		simple-audio-card,routing =
1682eb4d8dcSEmmanuel Vadot			"MIC_IN", "Mic Mux OUT",
1692eb4d8dcSEmmanuel Vadot			"Mic Mux IN1", "Headset Microphone",
1702eb4d8dcSEmmanuel Vadot			"Mic Mux IN2", "Builtin Microphone",
1712eb4d8dcSEmmanuel Vadot			"Mic Mux OUT", "Mic Bias",
1722eb4d8dcSEmmanuel Vadot			"Headphones", "HP_OUT",
1732eb4d8dcSEmmanuel Vadot			"Builtin Speaker", "Speaker Amp OUTR",
1742eb4d8dcSEmmanuel Vadot			"Speaker Amp INR", "LINE_OUT";
1752eb4d8dcSEmmanuel Vadot		simple-audio-card,hp-det-gpio = <&gpio3 20 GPIO_ACTIVE_HIGH>;
176c66ec88fSEmmanuel Vadot
177c66ec88fSEmmanuel Vadot		simple-audio-card,cpu {
178c66ec88fSEmmanuel Vadot			sound-dai = <&sai2>;
179c66ec88fSEmmanuel Vadot		};
180c66ec88fSEmmanuel Vadot
181c66ec88fSEmmanuel Vadot		simple-audio-card,codec {
182c66ec88fSEmmanuel Vadot			sound-dai = <&sgtl5000>;
183c66ec88fSEmmanuel Vadot			clocks = <&clk IMX8MQ_CLK_SAI2_ROOT>;
184c66ec88fSEmmanuel Vadot			frame-master;
185c66ec88fSEmmanuel Vadot			bitclock-master;
186c66ec88fSEmmanuel Vadot		};
187c66ec88fSEmmanuel Vadot	};
188c66ec88fSEmmanuel Vadot
189c66ec88fSEmmanuel Vadot	sound-wwan {
190c66ec88fSEmmanuel Vadot		compatible = "simple-audio-card";
191c66ec88fSEmmanuel Vadot		simple-audio-card,name = "SIMCom SIM7100";
192c66ec88fSEmmanuel Vadot		simple-audio-card,format = "dsp_a";
193c66ec88fSEmmanuel Vadot
194c66ec88fSEmmanuel Vadot		simple-audio-card,cpu {
195c66ec88fSEmmanuel Vadot			sound-dai = <&sai6>;
196c66ec88fSEmmanuel Vadot		};
197c66ec88fSEmmanuel Vadot
198c66ec88fSEmmanuel Vadot		telephony_link_master: simple-audio-card,codec {
199c66ec88fSEmmanuel Vadot			sound-dai = <&wwan_codec>;
200c66ec88fSEmmanuel Vadot			frame-master;
201c66ec88fSEmmanuel Vadot			bitclock-master;
202c66ec88fSEmmanuel Vadot		};
203c66ec88fSEmmanuel Vadot	};
204c66ec88fSEmmanuel Vadot
2052eb4d8dcSEmmanuel Vadot	speaker_amp: speaker-amp {
2062eb4d8dcSEmmanuel Vadot		compatible = "simple-audio-amplifier";
2072eb4d8dcSEmmanuel Vadot		pinctrl-names = "default";
2082eb4d8dcSEmmanuel Vadot		pinctrl-0 = <&pinctrl_spkamp>;
2092eb4d8dcSEmmanuel Vadot		VCC-supply = <&reg_3v3_p>;
2102eb4d8dcSEmmanuel Vadot		sound-name-prefix = "Speaker Amp";
2112eb4d8dcSEmmanuel Vadot		enable-gpios = <&gpio5 3 GPIO_ACTIVE_HIGH>;
2122eb4d8dcSEmmanuel Vadot	};
2132eb4d8dcSEmmanuel Vadot
214c66ec88fSEmmanuel Vadot	vibrator {
215c66ec88fSEmmanuel Vadot		compatible = "gpio-vibrator";
216c66ec88fSEmmanuel Vadot		pinctrl-names = "default";
217c66ec88fSEmmanuel Vadot		pinctrl-0 = <&pinctrl_haptic>;
218c66ec88fSEmmanuel Vadot	        enable-gpios = <&gpio5 4 GPIO_ACTIVE_LOW>;
219c66ec88fSEmmanuel Vadot		vcc-supply = <&reg_3v3_p>;
220c66ec88fSEmmanuel Vadot	};
221c66ec88fSEmmanuel Vadot
222c66ec88fSEmmanuel Vadot	wifi_pwr_en: regulator-wifi-en {
223c66ec88fSEmmanuel Vadot		compatible = "regulator-fixed";
224c66ec88fSEmmanuel Vadot		pinctrl-names = "default";
225c66ec88fSEmmanuel Vadot		pinctrl-0 = <&pinctrl_wifi_pwr_en>;
226c66ec88fSEmmanuel Vadot		regulator-name = "WIFI_EN";
227c66ec88fSEmmanuel Vadot		regulator-min-microvolt = <3300000>;
228c66ec88fSEmmanuel Vadot		regulator-max-microvolt = <3300000>;
229c66ec88fSEmmanuel Vadot		gpio = <&gpio3 5 GPIO_ACTIVE_HIGH>;
230c66ec88fSEmmanuel Vadot		enable-active-high;
231c66ec88fSEmmanuel Vadot		regulator-always-on;
232c66ec88fSEmmanuel Vadot	};
233aa1a8ff2SEmmanuel Vadot
234aa1a8ff2SEmmanuel Vadot	wifi_pwr_seq: pwrseq {
235aa1a8ff2SEmmanuel Vadot		pinctrl-names = "default";
236aa1a8ff2SEmmanuel Vadot		pinctrl-0 = <&pinctrl_usdhc2_rst>;
237aa1a8ff2SEmmanuel Vadot		compatible = "mmc-pwrseq-simple";
238aa1a8ff2SEmmanuel Vadot		reset-gpios = <&gpio2 19 GPIO_ACTIVE_LOW>;
239aa1a8ff2SEmmanuel Vadot	};
240c66ec88fSEmmanuel Vadot};
241c66ec88fSEmmanuel Vadot
242c66ec88fSEmmanuel Vadot&A53_0 {
243c66ec88fSEmmanuel Vadot	cpu-supply = <&buck2_reg>;
244c66ec88fSEmmanuel Vadot};
245c66ec88fSEmmanuel Vadot
246c66ec88fSEmmanuel Vadot&A53_1 {
247c66ec88fSEmmanuel Vadot	cpu-supply = <&buck2_reg>;
248c66ec88fSEmmanuel Vadot};
249c66ec88fSEmmanuel Vadot
250c66ec88fSEmmanuel Vadot&A53_2 {
251c66ec88fSEmmanuel Vadot	cpu-supply = <&buck2_reg>;
252c66ec88fSEmmanuel Vadot};
253c66ec88fSEmmanuel Vadot
254c66ec88fSEmmanuel Vadot&A53_3 {
255c66ec88fSEmmanuel Vadot	cpu-supply = <&buck2_reg>;
256c66ec88fSEmmanuel Vadot};
257c66ec88fSEmmanuel Vadot
258c66ec88fSEmmanuel Vadot&dphy {
259c66ec88fSEmmanuel Vadot	status = "okay";
260c66ec88fSEmmanuel Vadot};
261c66ec88fSEmmanuel Vadot
262c66ec88fSEmmanuel Vadot&fec1 {
263c66ec88fSEmmanuel Vadot	pinctrl-names = "default";
264c66ec88fSEmmanuel Vadot	pinctrl-0 = <&pinctrl_fec1>;
265c66ec88fSEmmanuel Vadot	phy-mode = "rgmii-id";
266c66ec88fSEmmanuel Vadot	phy-handle = <&ethphy0>;
267c66ec88fSEmmanuel Vadot	fsl,magic-packet;
268c66ec88fSEmmanuel Vadot	phy-supply = <&reg_3v3_p>;
269c66ec88fSEmmanuel Vadot	status = "okay";
270c66ec88fSEmmanuel Vadot
271c66ec88fSEmmanuel Vadot	mdio {
272c66ec88fSEmmanuel Vadot		#address-cells = <1>;
273c66ec88fSEmmanuel Vadot		#size-cells = <0>;
274c66ec88fSEmmanuel Vadot
275c66ec88fSEmmanuel Vadot		ethphy0: ethernet-phy@1 {
276c66ec88fSEmmanuel Vadot			compatible = "ethernet-phy-ieee802.3-c22";
277c66ec88fSEmmanuel Vadot			reg = <1>;
278c66ec88fSEmmanuel Vadot		};
279c66ec88fSEmmanuel Vadot	};
280c66ec88fSEmmanuel Vadot};
281c66ec88fSEmmanuel Vadot
282c66ec88fSEmmanuel Vadot&i2c1 {
283c66ec88fSEmmanuel Vadot	clock-frequency = <100000>;
284c66ec88fSEmmanuel Vadot	pinctrl-names = "default";
285c66ec88fSEmmanuel Vadot	pinctrl-0 = <&pinctrl_i2c1>;
286c66ec88fSEmmanuel Vadot	status = "okay";
287c66ec88fSEmmanuel Vadot
288c66ec88fSEmmanuel Vadot	pmic: pmic@4b {
289c66ec88fSEmmanuel Vadot		compatible = "rohm,bd71837";
290c66ec88fSEmmanuel Vadot		reg = <0x4b>;
291c66ec88fSEmmanuel Vadot		pinctrl-names = "default";
292c66ec88fSEmmanuel Vadot		pinctrl-0 = <&pinctrl_pmic>;
293c66ec88fSEmmanuel Vadot		clocks = <&pmic_osc>;
294c66ec88fSEmmanuel Vadot		clock-names = "osc";
2956be33864SEmmanuel Vadot		#clock-cells = <0>;
296c66ec88fSEmmanuel Vadot		clock-output-names = "pmic_clk";
297c66ec88fSEmmanuel Vadot		interrupt-parent = <&gpio1>;
2986be33864SEmmanuel Vadot		interrupts = <3 IRQ_TYPE_LEVEL_LOW>;
299c66ec88fSEmmanuel Vadot		rohm,reset-snvs-powered;
300c66ec88fSEmmanuel Vadot
301c66ec88fSEmmanuel Vadot		regulators {
302c66ec88fSEmmanuel Vadot			buck1_reg: BUCK1 {
303c66ec88fSEmmanuel Vadot				regulator-name = "buck1";
304c66ec88fSEmmanuel Vadot				regulator-min-microvolt = <700000>;
305c66ec88fSEmmanuel Vadot				regulator-max-microvolt = <1300000>;
306c66ec88fSEmmanuel Vadot				regulator-boot-on;
3075def4c47SEmmanuel Vadot				regulator-always-on;
308c66ec88fSEmmanuel Vadot				regulator-ramp-delay = <1250>;
309c66ec88fSEmmanuel Vadot				rohm,dvs-run-voltage = <900000>;
310c66ec88fSEmmanuel Vadot				rohm,dvs-idle-voltage = <850000>;
311c66ec88fSEmmanuel Vadot				rohm,dvs-suspend-voltage = <800000>;
312c66ec88fSEmmanuel Vadot			};
313c66ec88fSEmmanuel Vadot
314c66ec88fSEmmanuel Vadot			buck2_reg: BUCK2 {
315c66ec88fSEmmanuel Vadot				regulator-name = "buck2";
316c66ec88fSEmmanuel Vadot				regulator-min-microvolt = <700000>;
317c66ec88fSEmmanuel Vadot				regulator-max-microvolt = <1300000>;
318c66ec88fSEmmanuel Vadot				regulator-boot-on;
319c66ec88fSEmmanuel Vadot				regulator-ramp-delay = <1250>;
320c66ec88fSEmmanuel Vadot				rohm,dvs-run-voltage = <1000000>;
321c66ec88fSEmmanuel Vadot				rohm,dvs-idle-voltage = <900000>;
322aa1a8ff2SEmmanuel Vadot				regulator-always-on;
323c66ec88fSEmmanuel Vadot			};
324c66ec88fSEmmanuel Vadot
325c66ec88fSEmmanuel Vadot			buck3_reg: BUCK3 {
326c66ec88fSEmmanuel Vadot				regulator-name = "buck3";
327c66ec88fSEmmanuel Vadot				regulator-min-microvolt = <700000>;
328c66ec88fSEmmanuel Vadot				regulator-max-microvolt = <1300000>;
329c66ec88fSEmmanuel Vadot				regulator-boot-on;
330c66ec88fSEmmanuel Vadot				rohm,dvs-run-voltage = <900000>;
331c66ec88fSEmmanuel Vadot			};
332c66ec88fSEmmanuel Vadot
333c66ec88fSEmmanuel Vadot			buck4_reg: BUCK4 {
334c66ec88fSEmmanuel Vadot				regulator-name = "buck4";
335c66ec88fSEmmanuel Vadot				regulator-min-microvolt = <700000>;
336c66ec88fSEmmanuel Vadot				regulator-max-microvolt = <1300000>;
337c66ec88fSEmmanuel Vadot				rohm,dvs-run-voltage = <1000000>;
338c66ec88fSEmmanuel Vadot			};
339c66ec88fSEmmanuel Vadot
340c66ec88fSEmmanuel Vadot			buck5_reg: BUCK5 {
341c66ec88fSEmmanuel Vadot				regulator-name = "buck5";
342c66ec88fSEmmanuel Vadot				regulator-min-microvolt = <700000>;
343c66ec88fSEmmanuel Vadot				regulator-max-microvolt = <1350000>;
344c66ec88fSEmmanuel Vadot				regulator-boot-on;
3455def4c47SEmmanuel Vadot				regulator-always-on;
346c66ec88fSEmmanuel Vadot			};
347c66ec88fSEmmanuel Vadot
348c66ec88fSEmmanuel Vadot			buck6_reg: BUCK6 {
349c66ec88fSEmmanuel Vadot				regulator-name = "buck6";
350c66ec88fSEmmanuel Vadot				regulator-min-microvolt = <3000000>;
351c66ec88fSEmmanuel Vadot				regulator-max-microvolt = <3300000>;
352c66ec88fSEmmanuel Vadot				regulator-boot-on;
3535def4c47SEmmanuel Vadot				regulator-always-on;
354c66ec88fSEmmanuel Vadot			};
355c66ec88fSEmmanuel Vadot
356c66ec88fSEmmanuel Vadot			buck7_reg: BUCK7 {
357c66ec88fSEmmanuel Vadot				regulator-name = "buck7";
358c66ec88fSEmmanuel Vadot				regulator-min-microvolt = <1605000>;
359c66ec88fSEmmanuel Vadot				regulator-max-microvolt = <1995000>;
360c66ec88fSEmmanuel Vadot				regulator-boot-on;
3615def4c47SEmmanuel Vadot				regulator-always-on;
362c66ec88fSEmmanuel Vadot			};
363c66ec88fSEmmanuel Vadot
364c66ec88fSEmmanuel Vadot			buck8_reg: BUCK8 {
365c66ec88fSEmmanuel Vadot				regulator-name = "buck8";
366c66ec88fSEmmanuel Vadot				regulator-min-microvolt = <800000>;
367c66ec88fSEmmanuel Vadot				regulator-max-microvolt = <1400000>;
368c66ec88fSEmmanuel Vadot				regulator-boot-on;
3695def4c47SEmmanuel Vadot				regulator-always-on;
370c66ec88fSEmmanuel Vadot			};
371c66ec88fSEmmanuel Vadot
372c66ec88fSEmmanuel Vadot			ldo1_reg: LDO1 {
373c66ec88fSEmmanuel Vadot				regulator-name = "ldo1";
374c66ec88fSEmmanuel Vadot				regulator-min-microvolt = <3000000>;
375c66ec88fSEmmanuel Vadot				regulator-max-microvolt = <3300000>;
376c66ec88fSEmmanuel Vadot				regulator-boot-on;
377c66ec88fSEmmanuel Vadot				/* leave on for snvs power button */
378c66ec88fSEmmanuel Vadot				regulator-always-on;
379c66ec88fSEmmanuel Vadot			};
380c66ec88fSEmmanuel Vadot
381c66ec88fSEmmanuel Vadot			ldo2_reg: LDO2 {
382c66ec88fSEmmanuel Vadot				regulator-name = "ldo2";
383c66ec88fSEmmanuel Vadot				regulator-min-microvolt = <900000>;
384c66ec88fSEmmanuel Vadot				regulator-max-microvolt = <900000>;
385c66ec88fSEmmanuel Vadot				regulator-boot-on;
386c66ec88fSEmmanuel Vadot				/* leave on for snvs power button */
387c66ec88fSEmmanuel Vadot				regulator-always-on;
388c66ec88fSEmmanuel Vadot			};
389c66ec88fSEmmanuel Vadot
390c66ec88fSEmmanuel Vadot			ldo3_reg: LDO3 {
391c66ec88fSEmmanuel Vadot				regulator-name = "ldo3";
392c66ec88fSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
393c66ec88fSEmmanuel Vadot				regulator-max-microvolt = <3300000>;
394c66ec88fSEmmanuel Vadot				regulator-boot-on;
3955def4c47SEmmanuel Vadot				regulator-always-on;
396c66ec88fSEmmanuel Vadot			};
397c66ec88fSEmmanuel Vadot
398c66ec88fSEmmanuel Vadot			ldo4_reg: LDO4 {
399c66ec88fSEmmanuel Vadot				regulator-name = "ldo4";
400c66ec88fSEmmanuel Vadot				regulator-min-microvolt = <900000>;
401c66ec88fSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
402c66ec88fSEmmanuel Vadot				regulator-boot-on;
4035def4c47SEmmanuel Vadot				regulator-always-on;
404c66ec88fSEmmanuel Vadot			};
405c66ec88fSEmmanuel Vadot
406c66ec88fSEmmanuel Vadot			ldo5_reg: LDO5 {
407c66ec88fSEmmanuel Vadot				regulator-name = "ldo5";
408c66ec88fSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
409c66ec88fSEmmanuel Vadot				regulator-max-microvolt = <3300000>;
4105def4c47SEmmanuel Vadot				regulator-always-on;
411c66ec88fSEmmanuel Vadot			};
412c66ec88fSEmmanuel Vadot
413c66ec88fSEmmanuel Vadot			ldo6_reg: LDO6 {
414c66ec88fSEmmanuel Vadot				regulator-name = "ldo6";
415c66ec88fSEmmanuel Vadot				regulator-min-microvolt = <900000>;
416c66ec88fSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
417c66ec88fSEmmanuel Vadot				regulator-boot-on;
4185def4c47SEmmanuel Vadot				regulator-always-on;
419c66ec88fSEmmanuel Vadot			};
420c66ec88fSEmmanuel Vadot
421c66ec88fSEmmanuel Vadot			ldo7_reg: LDO7 {
422c66ec88fSEmmanuel Vadot				regulator-name = "ldo7";
423c66ec88fSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
424c66ec88fSEmmanuel Vadot				regulator-max-microvolt = <3300000>;
425c66ec88fSEmmanuel Vadot				regulator-boot-on;
4265def4c47SEmmanuel Vadot				regulator-always-on;
427c66ec88fSEmmanuel Vadot			};
428c66ec88fSEmmanuel Vadot		};
429c66ec88fSEmmanuel Vadot	};
430c66ec88fSEmmanuel Vadot
431c66ec88fSEmmanuel Vadot	typec_ptn5100: usb-typec@52 {
432*7d0873ebSEmmanuel Vadot		compatible = "nxp,ptn5110", "tcpci";
433c66ec88fSEmmanuel Vadot		reg = <0x52>;
434c66ec88fSEmmanuel Vadot		pinctrl-names = "default";
435c66ec88fSEmmanuel Vadot		pinctrl-0 = <&pinctrl_typec>;
436c66ec88fSEmmanuel Vadot		interrupt-parent = <&gpio3>;
437c66ec88fSEmmanuel Vadot		interrupts = <1 IRQ_TYPE_LEVEL_LOW>;
438c66ec88fSEmmanuel Vadot
439c66ec88fSEmmanuel Vadot		connector {
440c66ec88fSEmmanuel Vadot			compatible = "usb-c-connector";
441c66ec88fSEmmanuel Vadot			label = "USB-C";
442c66ec88fSEmmanuel Vadot			data-role = "dual";
443c66ec88fSEmmanuel Vadot			power-role = "dual";
444c66ec88fSEmmanuel Vadot			try-power-role = "sink";
445c66ec88fSEmmanuel Vadot			source-pdos = <PDO_FIXED(5000, 2000,
446c66ec88fSEmmanuel Vadot				PDO_FIXED_USB_COMM |
447c66ec88fSEmmanuel Vadot				PDO_FIXED_DUAL_ROLE |
448c66ec88fSEmmanuel Vadot				PDO_FIXED_DATA_SWAP )>;
449c66ec88fSEmmanuel Vadot			sink-pdos = <PDO_FIXED(5000, 3500, PDO_FIXED_USB_COMM |
450c66ec88fSEmmanuel Vadot				PDO_FIXED_DUAL_ROLE |
451c66ec88fSEmmanuel Vadot				PDO_FIXED_DATA_SWAP )
452c66ec88fSEmmanuel Vadot			     PDO_VAR(5000, 5000, 3500)>;
453c66ec88fSEmmanuel Vadot			op-sink-microwatt = <10000000>;
454c66ec88fSEmmanuel Vadot
455c66ec88fSEmmanuel Vadot			ports {
456c66ec88fSEmmanuel Vadot				#address-cells = <1>;
457c66ec88fSEmmanuel Vadot				#size-cells = <0>;
458c66ec88fSEmmanuel Vadot
459c66ec88fSEmmanuel Vadot				port@0 {
460c66ec88fSEmmanuel Vadot					reg = <0>;
461c66ec88fSEmmanuel Vadot
462c66ec88fSEmmanuel Vadot					usb_con_hs: endpoint {
463c66ec88fSEmmanuel Vadot						remote-endpoint = <&typec_hs>;
464c66ec88fSEmmanuel Vadot					};
465c66ec88fSEmmanuel Vadot				};
466c66ec88fSEmmanuel Vadot
467c66ec88fSEmmanuel Vadot				port@1 {
468c66ec88fSEmmanuel Vadot					reg = <1>;
469c66ec88fSEmmanuel Vadot
470c66ec88fSEmmanuel Vadot					usb_con_ss: endpoint {
471c66ec88fSEmmanuel Vadot						remote-endpoint = <&typec_ss>;
472c66ec88fSEmmanuel Vadot					};
473c66ec88fSEmmanuel Vadot				};
474c66ec88fSEmmanuel Vadot			};
475c66ec88fSEmmanuel Vadot		};
476c66ec88fSEmmanuel Vadot	};
477c66ec88fSEmmanuel Vadot
478c66ec88fSEmmanuel Vadot	rtc@68 {
479c66ec88fSEmmanuel Vadot		compatible = "microcrystal,rv4162";
480c66ec88fSEmmanuel Vadot		reg = <0x68>;
481c66ec88fSEmmanuel Vadot		pinctrl-names = "default";
482c66ec88fSEmmanuel Vadot		pinctrl-0 = <&pinctrl_rtc>;
483c66ec88fSEmmanuel Vadot		interrupt-parent = <&gpio4>;
484c66ec88fSEmmanuel Vadot		interrupts = <29 IRQ_TYPE_LEVEL_LOW>;
485c66ec88fSEmmanuel Vadot	};
486c66ec88fSEmmanuel Vadot
487c66ec88fSEmmanuel Vadot	charger@6b { /* bq25896 */
488c66ec88fSEmmanuel Vadot		compatible = "ti,bq25890";
489c66ec88fSEmmanuel Vadot		reg = <0x6b>;
490c66ec88fSEmmanuel Vadot		pinctrl-names = "default";
491c66ec88fSEmmanuel Vadot		pinctrl-0 = <&pinctrl_charger>;
492c66ec88fSEmmanuel Vadot		interrupt-parent = <&gpio3>;
493c66ec88fSEmmanuel Vadot		interrupts = <25 IRQ_TYPE_EDGE_FALLING>;
494c66ec88fSEmmanuel Vadot		ti,battery-regulation-voltage = <4192000>; /* 4.192V */
495c66ec88fSEmmanuel Vadot		ti,charge-current = <1600000>; /* 1.6A */
496c66ec88fSEmmanuel Vadot		ti,termination-current = <66000>;  /* 66mA */
497c66ec88fSEmmanuel Vadot		ti,precharge-current = <130000>; /* 130mA */
498c66ec88fSEmmanuel Vadot		ti,minimum-sys-voltage = <3000000>; /* 3V */
499c66ec88fSEmmanuel Vadot		ti,boost-voltage = <5000000>; /* 5V */
500c66ec88fSEmmanuel Vadot		ti,boost-max-current = <50000>; /* 50mA */
501c66ec88fSEmmanuel Vadot	};
502c66ec88fSEmmanuel Vadot};
503c66ec88fSEmmanuel Vadot
504c66ec88fSEmmanuel Vadot&i2c3 {
505c66ec88fSEmmanuel Vadot	clock-frequency = <100000>;
506c66ec88fSEmmanuel Vadot	pinctrl-names = "default";
507c66ec88fSEmmanuel Vadot	pinctrl-0 = <&pinctrl_i2c3>;
508c66ec88fSEmmanuel Vadot	status = "okay";
509c66ec88fSEmmanuel Vadot
510c66ec88fSEmmanuel Vadot	magnetometer@1e	{
511c66ec88fSEmmanuel Vadot		compatible = "st,lsm9ds1-magn";
512c66ec88fSEmmanuel Vadot		reg = <0x1e>;
513c66ec88fSEmmanuel Vadot		pinctrl-names = "default";
514c66ec88fSEmmanuel Vadot		pinctrl-0 = <&pinctrl_imu>;
515c66ec88fSEmmanuel Vadot		interrupt-parent = <&gpio3>;
516c66ec88fSEmmanuel Vadot		interrupts = <19 IRQ_TYPE_LEVEL_HIGH>;
517c66ec88fSEmmanuel Vadot		vdd-supply = <&reg_3v3_p>;
518c66ec88fSEmmanuel Vadot		vddio-supply = <&reg_3v3_p>;
519c66ec88fSEmmanuel Vadot	};
520c66ec88fSEmmanuel Vadot
521c66ec88fSEmmanuel Vadot	sgtl5000: audio-codec@a {
522c66ec88fSEmmanuel Vadot		compatible = "fsl,sgtl5000";
523c66ec88fSEmmanuel Vadot		clocks = <&clk IMX8MQ_CLK_SAI2_ROOT>;
524c66ec88fSEmmanuel Vadot		assigned-clocks = <&clk IMX8MQ_CLK_SAI2>;
525c66ec88fSEmmanuel Vadot		assigned-clock-parents = <&clk IMX8MQ_AUDIO_PLL1_OUT>;
526c66ec88fSEmmanuel Vadot		assigned-clock-rates = <24576000>;
527c66ec88fSEmmanuel Vadot		#sound-dai-cells = <0>;
528c66ec88fSEmmanuel Vadot		reg = <0x0a>;
529c66ec88fSEmmanuel Vadot		VDDD-supply = <&reg_1v8_p>;
530c66ec88fSEmmanuel Vadot		VDDIO-supply = <&reg_3v3_p>;
531c66ec88fSEmmanuel Vadot		VDDA-supply = <&reg_3v3_p>;
532c66ec88fSEmmanuel Vadot	};
533c66ec88fSEmmanuel Vadot
534c66ec88fSEmmanuel Vadot	touchscreen@5d {
535c66ec88fSEmmanuel Vadot		compatible = "goodix,gt5688";
536c66ec88fSEmmanuel Vadot		reg = <0x5d>;
537c66ec88fSEmmanuel Vadot		pinctrl-names = "default";
538c66ec88fSEmmanuel Vadot		pinctrl-0 = <&pinctrl_ts>;
539c66ec88fSEmmanuel Vadot		interrupt-parent = <&gpio3>;
540c66ec88fSEmmanuel Vadot		interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
541c66ec88fSEmmanuel Vadot		reset-gpios = <&gpio1 5 GPIO_ACTIVE_HIGH>;
542c66ec88fSEmmanuel Vadot		irq-gpios = <&gpio3 0 GPIO_ACTIVE_HIGH>;
543c66ec88fSEmmanuel Vadot		touchscreen-size-x = <720>;
544c66ec88fSEmmanuel Vadot		touchscreen-size-y = <1440>;
545c66ec88fSEmmanuel Vadot		AVDD28-supply = <&reg_2v8_p>;
546c66ec88fSEmmanuel Vadot		VDDIO-supply = <&reg_1v8_p>;
547c66ec88fSEmmanuel Vadot	};
548c66ec88fSEmmanuel Vadot
549c66ec88fSEmmanuel Vadot	proximity-sensor@60 {
550c66ec88fSEmmanuel Vadot		compatible = "vishay,vcnl4040";
551c66ec88fSEmmanuel Vadot		reg = <0x60>;
552c66ec88fSEmmanuel Vadot		pinctrl-0 = <&pinctrl_prox>;
553c66ec88fSEmmanuel Vadot	};
554c66ec88fSEmmanuel Vadot
555c66ec88fSEmmanuel Vadot	accel-gyro@6a {
556c66ec88fSEmmanuel Vadot		compatible = "st,lsm9ds1-imu";
557c66ec88fSEmmanuel Vadot		reg = <0x6a>;
558c66ec88fSEmmanuel Vadot		vdd-supply = <&reg_3v3_p>;
559c66ec88fSEmmanuel Vadot		vddio-supply = <&reg_3v3_p>;
560c66ec88fSEmmanuel Vadot		mount-matrix = "1",  "0",  "0",
561c66ec88fSEmmanuel Vadot			       "0",  "1",  "0",
562c66ec88fSEmmanuel Vadot			       "0",  "0", "-1";
563c66ec88fSEmmanuel Vadot	};
564c66ec88fSEmmanuel Vadot};
565c66ec88fSEmmanuel Vadot
566c66ec88fSEmmanuel Vadot&iomuxc {
567c66ec88fSEmmanuel Vadot	pinctrl_bl: blgrp {
568c66ec88fSEmmanuel Vadot		fsl,pins = <
569c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_GPIO1_IO01_PWM1_OUT	0x6 /* DSI_BL_PWM */
570c66ec88fSEmmanuel Vadot		>;
571c66ec88fSEmmanuel Vadot	};
572c66ec88fSEmmanuel Vadot
573c66ec88fSEmmanuel Vadot	pinctrl_bt: btgrp {
574c66ec88fSEmmanuel Vadot		fsl,pins = <
575c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_NAND_DATA05_GPIO3_IO11	0x16 /* nBT_DISABLE */
576c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_NAND_DATA01_GPIO3_IO7	0x10 /* BT_HOST_WAKE */
577c66ec88fSEmmanuel Vadot		>;
578c66ec88fSEmmanuel Vadot	};
579c66ec88fSEmmanuel Vadot
580c66ec88fSEmmanuel Vadot	pinctrl_charger: chargergrp {
581c66ec88fSEmmanuel Vadot		fsl,pins = <
582c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SAI5_MCLK_GPIO3_IO25	0x80 /* CHRG_nINT */
583c66ec88fSEmmanuel Vadot		>;
584c66ec88fSEmmanuel Vadot	};
585c66ec88fSEmmanuel Vadot
586c66ec88fSEmmanuel Vadot	pinctrl_fec1: fec1grp {
587c66ec88fSEmmanuel Vadot		fsl,pins = <
588c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_ENET_MDC_ENET1_MDC			0x3
589c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_ENET_MDIO_ENET1_MDIO		0x3
590c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_ENET_TD3_ENET1_RGMII_TD3		0x1f
591c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_ENET_TD2_ENET1_RGMII_TD2		0x1f
592c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_ENET_TD1_ENET1_RGMII_TD1		0x1f
593c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_ENET_TD0_ENET1_RGMII_TD0		0x1f
594c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_ENET_RD3_ENET1_RGMII_RD3		0x91
595c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_ENET_RD2_ENET1_RGMII_RD2		0x91
596c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_ENET_RD1_ENET1_RGMII_RD1		0x91
597c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_ENET_RD0_ENET1_RGMII_RD0		0x91
598c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_ENET_TXC_ENET1_RGMII_TXC		0x1f
599c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_ENET_RXC_ENET1_RGMII_RXC		0x91
600c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_ENET_RX_CTL_ENET1_RGMII_RX_CTL	0x91
601c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_ENET_TX_CTL_ENET1_RGMII_TX_CTL	0x1f
602c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_GPIO1_IO09_GPIO1_IO9		0x19
603c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_GPIO1_IO15_CCMSRCGPCMIX_CLKO2      0x1f
604c66ec88fSEmmanuel Vadot		>;
605c66ec88fSEmmanuel Vadot	};
606c66ec88fSEmmanuel Vadot
607c66ec88fSEmmanuel Vadot	pinctrl_ts: tsgrp {
608c66ec88fSEmmanuel Vadot		fsl,pins = <
609c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_NAND_ALE_GPIO3_IO0		0x16  /* TOUCH INT */
610c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_GPIO1_IO05_GPIO1_IO5	0x19  /* TOUCH RST */
611c66ec88fSEmmanuel Vadot		>;
612c66ec88fSEmmanuel Vadot	};
613c66ec88fSEmmanuel Vadot
6148bab661aSEmmanuel Vadot	pinctrl_pwm_led: pwmledgrp {
615c66ec88fSEmmanuel Vadot		fsl,pins = <
6168bab661aSEmmanuel Vadot			MX8MQ_IOMUXC_GPIO1_IO13_PWM2_OUT	0x16
617c66ec88fSEmmanuel Vadot		>;
618c66ec88fSEmmanuel Vadot	};
619c66ec88fSEmmanuel Vadot
620c66ec88fSEmmanuel Vadot	pinctrl_gpio_keys: gpiokeygrp {
621c66ec88fSEmmanuel Vadot		fsl,pins = <
622c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SAI2_RXFS_GPIO4_IO21	0x16
623c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SAI2_RXC_GPIO4_IO22	0x16
624c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_NAND_DATA02_GPIO3_IO8	0x80   /* nWoWWAN */
625c66ec88fSEmmanuel Vadot		>;
626c66ec88fSEmmanuel Vadot	};
627c66ec88fSEmmanuel Vadot
628c66ec88fSEmmanuel Vadot	pinctrl_haptic: hapticgrp {
629c66ec88fSEmmanuel Vadot		fsl,pins = <
630c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SPDIF_RX_GPIO5_IO4		0xc6   /* nHAPTIC */
631c66ec88fSEmmanuel Vadot		>;
632c66ec88fSEmmanuel Vadot	};
633c66ec88fSEmmanuel Vadot
6342eb4d8dcSEmmanuel Vadot	pinctrl_hpdet: hpdetgrp {
6352eb4d8dcSEmmanuel Vadot		fsl,pins = <
6362eb4d8dcSEmmanuel Vadot			MX8MQ_IOMUXC_SAI5_RXC_GPIO3_IO20	0xC0   /* HP_DET */
6372eb4d8dcSEmmanuel Vadot		>;
6382eb4d8dcSEmmanuel Vadot	};
6392eb4d8dcSEmmanuel Vadot
640c66ec88fSEmmanuel Vadot	pinctrl_i2c1: i2c1grp {
641c66ec88fSEmmanuel Vadot		fsl,pins = <
642c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_I2C1_SCL_I2C1_SCL		0x4000001f
643c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_I2C1_SDA_I2C1_SDA		0x4000001f
644c66ec88fSEmmanuel Vadot		>;
645c66ec88fSEmmanuel Vadot	};
646c66ec88fSEmmanuel Vadot
647c66ec88fSEmmanuel Vadot	pinctrl_i2c3: i2c3grp {
648c66ec88fSEmmanuel Vadot		fsl,pins = <
649c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_I2C3_SCL_I2C3_SCL		0x4000001f
650c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_I2C3_SDA_I2C3_SDA		0x4000001f
651c66ec88fSEmmanuel Vadot		>;
652c66ec88fSEmmanuel Vadot	};
653c66ec88fSEmmanuel Vadot
654c66ec88fSEmmanuel Vadot	pinctrl_imu: imugrp {
655c66ec88fSEmmanuel Vadot		fsl,pins = <
656c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SAI5_RXFS_GPIO3_IO19	0x8  /* IMU_INT */
657c66ec88fSEmmanuel Vadot		>;
658c66ec88fSEmmanuel Vadot	};
659c66ec88fSEmmanuel Vadot
6602eb4d8dcSEmmanuel Vadot	pinctrl_micsel: micselgrp {
6612eb4d8dcSEmmanuel Vadot		fsl,pins = <
6622eb4d8dcSEmmanuel Vadot			MX8MQ_IOMUXC_SPDIF_EXT_CLK_GPIO5_IO5	0xc6  /* MIC_SEL */
6632eb4d8dcSEmmanuel Vadot		>;
6642eb4d8dcSEmmanuel Vadot	};
6652eb4d8dcSEmmanuel Vadot
666fac71e4eSEmmanuel Vadot	pinctrl_spkamp: spkampgrp {
6672eb4d8dcSEmmanuel Vadot		fsl,pins = <
6682eb4d8dcSEmmanuel Vadot			MX8MQ_IOMUXC_SPDIF_TX_GPIO5_IO3		0x81  /* MUTE */
6692eb4d8dcSEmmanuel Vadot		>;
6702eb4d8dcSEmmanuel Vadot	};
6712eb4d8dcSEmmanuel Vadot
672c66ec88fSEmmanuel Vadot	pinctrl_pmic: pmicgrp {
673c66ec88fSEmmanuel Vadot		fsl,pins = <
674c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_GPIO1_IO03_GPIO1_IO3	0x80  /* PMIC intr */
675c66ec88fSEmmanuel Vadot		>;
676c66ec88fSEmmanuel Vadot	};
677c66ec88fSEmmanuel Vadot
678c66ec88fSEmmanuel Vadot	pinctrl_prox: proxgrp {
679c66ec88fSEmmanuel Vadot		fsl,pins = <
680c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_GPIO1_IO12_GPIO1_IO12	0x80  /* prox intr */
681c66ec88fSEmmanuel Vadot		>;
682c66ec88fSEmmanuel Vadot	};
683c66ec88fSEmmanuel Vadot
684c66ec88fSEmmanuel Vadot	pinctrl_pwr_en: pwrengrp {
685c66ec88fSEmmanuel Vadot		fsl,pins = <
686c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_GPIO1_IO08_GPIO1_IO8	0x06
687c66ec88fSEmmanuel Vadot		>;
688c66ec88fSEmmanuel Vadot	};
689c66ec88fSEmmanuel Vadot
690c66ec88fSEmmanuel Vadot	pinctrl_rtc: rtcgrp {
691c66ec88fSEmmanuel Vadot		fsl,pins = <
692c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SAI3_RXC_GPIO4_IO29	0x80  /* RTC intr */
693c66ec88fSEmmanuel Vadot		>;
694c66ec88fSEmmanuel Vadot	};
695c66ec88fSEmmanuel Vadot
696c66ec88fSEmmanuel Vadot	pinctrl_sai2: sai2grp {
697c66ec88fSEmmanuel Vadot		fsl,pins = <
698c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SAI2_TXFS_SAI2_TX_SYNC	0xd6
699c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SAI2_TXC_SAI2_TX_BCLK	0xd6
700c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SAI2_TXD0_SAI2_TX_DATA0	0xd6
701c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SAI2_RXD0_SAI2_RX_DATA0	0xd6
702c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SAI2_MCLK_SAI2_MCLK	0xd6
703c66ec88fSEmmanuel Vadot		>;
704c66ec88fSEmmanuel Vadot	};
705c66ec88fSEmmanuel Vadot
706c66ec88fSEmmanuel Vadot	pinctrl_sai6: sai6grp {
707c66ec88fSEmmanuel Vadot		fsl,pins = <
708c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SAI1_RXD5_SAI6_RX_DATA0	0xd6
709c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SAI1_RXD6_SAI6_RX_SYNC	0xd6
710c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SAI1_TXD4_SAI6_RX_BCLK     0xd6
711c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SAI1_TXD5_SAI6_TX_DATA0	0xd6
712c66ec88fSEmmanuel Vadot		>;
713c66ec88fSEmmanuel Vadot	};
714c66ec88fSEmmanuel Vadot
715c66ec88fSEmmanuel Vadot	pinctrl_typec: typecgrp {
716c66ec88fSEmmanuel Vadot		fsl,pins = <
717c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_NAND_DATA06_GPIO3_IO12		0x16
718c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_NAND_CE0_B_GPIO3_IO1		0x80
719c66ec88fSEmmanuel Vadot		>;
720c66ec88fSEmmanuel Vadot	};
721c66ec88fSEmmanuel Vadot
722c66ec88fSEmmanuel Vadot	pinctrl_uart1: uart1grp {
723c66ec88fSEmmanuel Vadot		fsl,pins = <
724c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_UART1_RXD_UART1_DCE_RX		0x49
725c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_UART1_TXD_UART1_DCE_TX		0x49
726c66ec88fSEmmanuel Vadot		>;
727c66ec88fSEmmanuel Vadot	};
728c66ec88fSEmmanuel Vadot
729c66ec88fSEmmanuel Vadot	pinctrl_uart2: uart2grp {
730c66ec88fSEmmanuel Vadot		fsl,pins = <
731c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_UART2_TXD_UART2_DCE_TX		0x49
732c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_UART2_RXD_UART2_DCE_RX		0x49
733c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_UART4_RXD_UART2_DCE_CTS_B		0x49
734c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_UART4_TXD_UART2_DCE_RTS_B		0x49
735c66ec88fSEmmanuel Vadot		>;
736c66ec88fSEmmanuel Vadot	};
737c66ec88fSEmmanuel Vadot
738c66ec88fSEmmanuel Vadot	pinctrl_uart3: uart3grp {
739c66ec88fSEmmanuel Vadot		fsl,pins = <
740c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_UART3_RXD_UART3_DCE_RX		0x49
741c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_UART3_TXD_UART3_DCE_TX		0x49
742c66ec88fSEmmanuel Vadot		>;
743c66ec88fSEmmanuel Vadot	};
744c66ec88fSEmmanuel Vadot
745c66ec88fSEmmanuel Vadot	pinctrl_uart4: uart4grp {
746c66ec88fSEmmanuel Vadot		fsl,pins = <
747c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_ECSPI2_SCLK_UART4_DCE_RX		0x49
748c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_ECSPI2_MOSI_UART4_DCE_TX		0x49
749c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_ECSPI2_MISO_UART4_DCE_CTS_B	0x49
750c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_ECSPI2_SS0_UART4_DCE_RTS_B		0x49
751c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_GPIO1_IO00_ANAMIX_REF_CLK_32K	0x49
752c66ec88fSEmmanuel Vadot		>;
753c66ec88fSEmmanuel Vadot	};
754c66ec88fSEmmanuel Vadot
755c66ec88fSEmmanuel Vadot	pinctrl_usdhc1: usdhc1grp {
756c66ec88fSEmmanuel Vadot		fsl,pins = <
757c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD1_CLK_USDHC1_CLK			0x83
758c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD1_CMD_USDHC1_CMD			0xc3
759c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD1_DATA0_USDHC1_DATA0		0xc3
760c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD1_DATA1_USDHC1_DATA1		0xc3
761c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD1_DATA2_USDHC1_DATA2		0xc3
762c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD1_DATA3_USDHC1_DATA3		0xc3
763c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD1_DATA4_USDHC1_DATA4		0xc3
764c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD1_DATA5_USDHC1_DATA5		0xc3
765c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD1_DATA6_USDHC1_DATA6		0xc3
766c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD1_DATA7_USDHC1_DATA7		0xc3
767c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD1_STROBE_USDHC1_STROBE		0x83
768c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD1_RESET_B_USDHC1_RESET_B		0xc1
769c66ec88fSEmmanuel Vadot		>;
770c66ec88fSEmmanuel Vadot	};
771c66ec88fSEmmanuel Vadot
7726be33864SEmmanuel Vadot	pinctrl_usdhc1_100mhz: usdhc1-100mhzgrp {
773c66ec88fSEmmanuel Vadot		fsl,pins = <
774c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD1_CLK_USDHC1_CLK			0x8d
775c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD1_CMD_USDHC1_CMD			0xcd
776c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD1_DATA0_USDHC1_DATA0		0xcd
777c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD1_DATA1_USDHC1_DATA1		0xcd
778c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD1_DATA2_USDHC1_DATA2		0xcd
779c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD1_DATA3_USDHC1_DATA3		0xcd
780c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD1_DATA4_USDHC1_DATA4		0xcd
781c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD1_DATA5_USDHC1_DATA5		0xcd
782c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD1_DATA6_USDHC1_DATA6		0xcd
783c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD1_DATA7_USDHC1_DATA7		0xcd
784c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD1_STROBE_USDHC1_STROBE		0x8d
785c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD1_RESET_B_USDHC1_RESET_B		0xc1
786c66ec88fSEmmanuel Vadot		>;
787c66ec88fSEmmanuel Vadot	};
788c66ec88fSEmmanuel Vadot
7896be33864SEmmanuel Vadot	pinctrl_usdhc1_200mhz: usdhc1-200mhzgrp {
790c66ec88fSEmmanuel Vadot		fsl,pins = <
791c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD1_CLK_USDHC1_CLK			0x9f
792c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD1_CMD_USDHC1_CMD			0xdf
793c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD1_DATA0_USDHC1_DATA0		0xdf
794c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD1_DATA1_USDHC1_DATA1		0xdf
795c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD1_DATA2_USDHC1_DATA2		0xdf
796c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD1_DATA3_USDHC1_DATA3		0xdf
797c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD1_DATA4_USDHC1_DATA4		0xdf
798c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD1_DATA5_USDHC1_DATA5		0xdf
799c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD1_DATA6_USDHC1_DATA6		0xdf
800c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD1_DATA7_USDHC1_DATA7		0xdf
801c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD1_STROBE_USDHC1_STROBE		0x9f
802c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD1_RESET_B_USDHC1_RESET_B		0xc1
803c66ec88fSEmmanuel Vadot		>;
804c66ec88fSEmmanuel Vadot	};
805c66ec88fSEmmanuel Vadot
806aa1a8ff2SEmmanuel Vadot	pinctrl_usdhc2_rst: usdhc2rstgrp {
807c66ec88fSEmmanuel Vadot		fsl,pins = <
808c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD2_RESET_B_GPIO2_IO19	0x41
809c66ec88fSEmmanuel Vadot		>;
810c66ec88fSEmmanuel Vadot	};
811c66ec88fSEmmanuel Vadot
8126be33864SEmmanuel Vadot	pinctrl_usdhc2_gpio: usdhc2gpiogrp {
813c66ec88fSEmmanuel Vadot		fsl,pins = <
814c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD2_WP_GPIO2_IO20		0x80 /* WIFI_WAKE */
815c66ec88fSEmmanuel Vadot		>;
816c66ec88fSEmmanuel Vadot	};
817c66ec88fSEmmanuel Vadot
818c66ec88fSEmmanuel Vadot	pinctrl_usdhc2: usdhc2grp {
819c66ec88fSEmmanuel Vadot		fsl,pins = <
820c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD2_CLK_USDHC2_CLK		0x83
821c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD2_CMD_USDHC2_CMD		0xc3
822c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD2_DATA0_USDHC2_DATA0	0xc3
823c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD2_DATA1_USDHC2_DATA1	0xc3
824c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD2_DATA2_USDHC2_DATA2	0xc3
825c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD2_DATA3_USDHC2_DATA3	0xc3
826c66ec88fSEmmanuel Vadot		>;
827c66ec88fSEmmanuel Vadot	};
828c66ec88fSEmmanuel Vadot
8296be33864SEmmanuel Vadot	pinctrl_usdhc2_100mhz: usdhc2-100mhzgrp {
830c66ec88fSEmmanuel Vadot		fsl,pins = <
831c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD2_CLK_USDHC2_CLK		0x8d
832c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD2_CMD_USDHC2_CMD		0xcd
833c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD2_DATA0_USDHC2_DATA0	0xcd
834c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD2_DATA1_USDHC2_DATA1	0xcd
835c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD2_DATA2_USDHC2_DATA2	0xcd
836c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD2_DATA3_USDHC2_DATA3	0xcd
837c66ec88fSEmmanuel Vadot		>;
838c66ec88fSEmmanuel Vadot	};
839c66ec88fSEmmanuel Vadot
8406be33864SEmmanuel Vadot	pinctrl_usdhc2_200mhz: usdhc2-200mhzgrp {
841c66ec88fSEmmanuel Vadot		fsl,pins = <
842c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD2_CLK_USDHC2_CLK		0x9f
843c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD2_CMD_USDHC2_CMD		0xcf
844c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD2_DATA0_USDHC2_DATA0	0xcf
845c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD2_DATA1_USDHC2_DATA1	0xcf
846c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD2_DATA2_USDHC2_DATA2	0xcf
847c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_SD2_DATA3_USDHC2_DATA3	0xcf
848c66ec88fSEmmanuel Vadot		>;
849c66ec88fSEmmanuel Vadot	};
850c66ec88fSEmmanuel Vadot
851c66ec88fSEmmanuel Vadot	pinctrl_wdog: wdoggrp {
852c66ec88fSEmmanuel Vadot		fsl,pins = <
853c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_GPIO1_IO02_WDOG1_WDOG_B	0xc6
854c66ec88fSEmmanuel Vadot		>;
855c66ec88fSEmmanuel Vadot	};
856c66ec88fSEmmanuel Vadot
857c66ec88fSEmmanuel Vadot	pinctrl_wifi_pwr_en: wifipwrengrp {
858c66ec88fSEmmanuel Vadot		fsl,pins = <
859c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_NAND_CLE_GPIO3_IO5         0x06
860c66ec88fSEmmanuel Vadot		>;
861c66ec88fSEmmanuel Vadot	};
862c66ec88fSEmmanuel Vadot
863c66ec88fSEmmanuel Vadot	pinctrl_wwan: wwangrp {
864c66ec88fSEmmanuel Vadot		fsl,pins = <
865c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_NAND_CE3_B_GPIO3_IO4	0x09 /* nWWAN_DISABLE */
866c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_NAND_DATA02_GPIO3_IO8	0x80 /* nWoWWAN */
867c66ec88fSEmmanuel Vadot			MX8MQ_IOMUXC_NAND_DATA03_GPIO3_IO9	0x19 /* WWAN_RESET */
868c66ec88fSEmmanuel Vadot		>;
869c66ec88fSEmmanuel Vadot	};
870c66ec88fSEmmanuel Vadot};
871c66ec88fSEmmanuel Vadot
8726be33864SEmmanuel Vadot&lcdif {
8736be33864SEmmanuel Vadot	status = "okay";
8746be33864SEmmanuel Vadot};
8756be33864SEmmanuel Vadot
8766be33864SEmmanuel Vadot&mipi_dsi {
8776be33864SEmmanuel Vadot	status = "okay";
8786be33864SEmmanuel Vadot	#address-cells = <1>;
8796be33864SEmmanuel Vadot	#size-cells = <0>;
8806be33864SEmmanuel Vadot
8816be33864SEmmanuel Vadot	panel@0 {
8826be33864SEmmanuel Vadot		compatible = "rocktech,jh057n00900";
8836be33864SEmmanuel Vadot		reg = <0>;
8846be33864SEmmanuel Vadot		backlight = <&backlight_dsi>;
8856be33864SEmmanuel Vadot		reset-gpios = <&gpio3 13 GPIO_ACTIVE_LOW>;
8866be33864SEmmanuel Vadot		iovcc-supply = <&reg_1v8_p>;
8876be33864SEmmanuel Vadot		vcc-supply = <&reg_2v8_p>;
8886be33864SEmmanuel Vadot		port {
8896be33864SEmmanuel Vadot			panel_in: endpoint {
8906be33864SEmmanuel Vadot				remote-endpoint = <&mipi_dsi_out>;
8916be33864SEmmanuel Vadot			};
8926be33864SEmmanuel Vadot		};
8936be33864SEmmanuel Vadot	};
8946be33864SEmmanuel Vadot
8956be33864SEmmanuel Vadot	ports {
8966be33864SEmmanuel Vadot		port@1 {
8976be33864SEmmanuel Vadot			reg = <1>;
8986be33864SEmmanuel Vadot			mipi_dsi_out: endpoint {
8996be33864SEmmanuel Vadot				remote-endpoint = <&panel_in>;
9006be33864SEmmanuel Vadot			};
9016be33864SEmmanuel Vadot		};
9026be33864SEmmanuel Vadot	};
9036be33864SEmmanuel Vadot};
9046be33864SEmmanuel Vadot
905c66ec88fSEmmanuel Vadot&pgc_gpu {
906c66ec88fSEmmanuel Vadot	power-supply = <&buck3_reg>;
907c66ec88fSEmmanuel Vadot};
908c66ec88fSEmmanuel Vadot
909c66ec88fSEmmanuel Vadot&pgc_vpu {
910c66ec88fSEmmanuel Vadot	power-supply = <&buck4_reg>;
911c66ec88fSEmmanuel Vadot};
912c66ec88fSEmmanuel Vadot
913c66ec88fSEmmanuel Vadot&pwm1 {
914c66ec88fSEmmanuel Vadot	pinctrl-names = "default";
915c66ec88fSEmmanuel Vadot	pinctrl-0 = <&pinctrl_bl>;
916c66ec88fSEmmanuel Vadot	status = "okay";
917c66ec88fSEmmanuel Vadot};
918c66ec88fSEmmanuel Vadot
9198bab661aSEmmanuel Vadot&pwm2 {
9208bab661aSEmmanuel Vadot	pinctrl-names = "default";
9218bab661aSEmmanuel Vadot	pinctrl-0 = <&pinctrl_pwm_led>;
9228bab661aSEmmanuel Vadot	status = "okay";
9238bab661aSEmmanuel Vadot};
9248bab661aSEmmanuel Vadot
925c66ec88fSEmmanuel Vadot&snvs_pwrkey {
926c66ec88fSEmmanuel Vadot	status = "okay";
927c66ec88fSEmmanuel Vadot};
928c66ec88fSEmmanuel Vadot
9295def4c47SEmmanuel Vadot&snvs_rtc {
9305def4c47SEmmanuel Vadot	status = "disabled";
9315def4c47SEmmanuel Vadot};
9325def4c47SEmmanuel Vadot
933c66ec88fSEmmanuel Vadot&sai2 {
934c66ec88fSEmmanuel Vadot	pinctrl-names = "default";
935c66ec88fSEmmanuel Vadot	pinctrl-0 = <&pinctrl_sai2>;
936c66ec88fSEmmanuel Vadot	assigned-clocks = <&clk IMX8MQ_CLK_SAI2>;
937c66ec88fSEmmanuel Vadot	assigned-clock-parents = <&clk IMX8MQ_AUDIO_PLL1_OUT>;
938c66ec88fSEmmanuel Vadot	assigned-clock-rates = <24576000>;
939c66ec88fSEmmanuel Vadot	status = "okay";
940c66ec88fSEmmanuel Vadot};
941c66ec88fSEmmanuel Vadot
942c66ec88fSEmmanuel Vadot&sai6 {
943c66ec88fSEmmanuel Vadot	pinctrl-names = "default";
944c66ec88fSEmmanuel Vadot	pinctrl-0 = <&pinctrl_sai6>;
945c66ec88fSEmmanuel Vadot	assigned-clocks = <&clk IMX8MQ_CLK_SAI6>;
946c66ec88fSEmmanuel Vadot	assigned-clock-parents = <&clk IMX8MQ_AUDIO_PLL1_OUT>;
947c66ec88fSEmmanuel Vadot	assigned-clock-rates = <24576000>;
948c66ec88fSEmmanuel Vadot	fsl,sai-synchronous-rx;
949c66ec88fSEmmanuel Vadot	status = "okay";
950c66ec88fSEmmanuel Vadot};
951c66ec88fSEmmanuel Vadot
952c66ec88fSEmmanuel Vadot&uart1 { /* console */
953c66ec88fSEmmanuel Vadot	pinctrl-names = "default";
954c66ec88fSEmmanuel Vadot	pinctrl-0 = <&pinctrl_uart1>;
955c66ec88fSEmmanuel Vadot	status = "okay";
956c66ec88fSEmmanuel Vadot};
957c66ec88fSEmmanuel Vadot
958c66ec88fSEmmanuel Vadot&uart3 { /* GNSS */
959c66ec88fSEmmanuel Vadot	pinctrl-names = "default";
960c66ec88fSEmmanuel Vadot	pinctrl-0 = <&pinctrl_uart3>;
961c66ec88fSEmmanuel Vadot	status = "okay";
962c66ec88fSEmmanuel Vadot};
963c66ec88fSEmmanuel Vadot
964c66ec88fSEmmanuel Vadot&uart4 { /* BT */
965c66ec88fSEmmanuel Vadot	pinctrl-names = "default";
966c66ec88fSEmmanuel Vadot	pinctrl-0 = <&pinctrl_uart4>, <&pinctrl_bt>;
967c66ec88fSEmmanuel Vadot	uart-has-rtscts;
968c66ec88fSEmmanuel Vadot	status = "okay";
969c66ec88fSEmmanuel Vadot};
970c66ec88fSEmmanuel Vadot
971c66ec88fSEmmanuel Vadot&usb3_phy0 {
972c66ec88fSEmmanuel Vadot	vbus-supply = <&reg_5v_p>;
973c66ec88fSEmmanuel Vadot	status = "okay";
974c66ec88fSEmmanuel Vadot};
975c66ec88fSEmmanuel Vadot
976c66ec88fSEmmanuel Vadot&usb3_phy1 {
977c66ec88fSEmmanuel Vadot	vbus-supply = <&reg_5v_p>;
978c66ec88fSEmmanuel Vadot	status = "okay";
979c66ec88fSEmmanuel Vadot};
980c66ec88fSEmmanuel Vadot
981c66ec88fSEmmanuel Vadot&usb_dwc3_0 {
982c66ec88fSEmmanuel Vadot	#address-cells = <1>;
983c66ec88fSEmmanuel Vadot	#size-cells = <0>;
984c66ec88fSEmmanuel Vadot	dr_mode = "otg";
985c66ec88fSEmmanuel Vadot	status = "okay";
986c66ec88fSEmmanuel Vadot
987c66ec88fSEmmanuel Vadot	port@0 {
988c66ec88fSEmmanuel Vadot		reg = <0>;
989c66ec88fSEmmanuel Vadot
990c66ec88fSEmmanuel Vadot		typec_hs: endpoint {
991c66ec88fSEmmanuel Vadot			remote-endpoint = <&usb_con_hs>;
992c66ec88fSEmmanuel Vadot		};
993c66ec88fSEmmanuel Vadot	};
994c66ec88fSEmmanuel Vadot
995c66ec88fSEmmanuel Vadot	port@1 {
996c66ec88fSEmmanuel Vadot		reg = <1>;
997c66ec88fSEmmanuel Vadot
998c66ec88fSEmmanuel Vadot		typec_ss: endpoint {
999c66ec88fSEmmanuel Vadot			remote-endpoint = <&usb_con_ss>;
1000c66ec88fSEmmanuel Vadot		};
1001c66ec88fSEmmanuel Vadot	};
1002c66ec88fSEmmanuel Vadot};
1003c66ec88fSEmmanuel Vadot
1004c66ec88fSEmmanuel Vadot&usb_dwc3_1 {
1005c66ec88fSEmmanuel Vadot	dr_mode = "host";
1006c66ec88fSEmmanuel Vadot	status = "okay";
1007c66ec88fSEmmanuel Vadot};
1008c66ec88fSEmmanuel Vadot
1009c66ec88fSEmmanuel Vadot&usdhc1 {
1010c66ec88fSEmmanuel Vadot	assigned-clocks = <&clk IMX8MQ_CLK_USDHC1>;
1011c66ec88fSEmmanuel Vadot	assigned-clock-rates = <400000000>;
1012c66ec88fSEmmanuel Vadot	pinctrl-names = "default", "state_100mhz", "state_200mhz";
1013c66ec88fSEmmanuel Vadot	pinctrl-0 = <&pinctrl_usdhc1>;
1014c66ec88fSEmmanuel Vadot	pinctrl-1 = <&pinctrl_usdhc1_100mhz>;
1015c66ec88fSEmmanuel Vadot	pinctrl-2 = <&pinctrl_usdhc1_200mhz>;
1016c66ec88fSEmmanuel Vadot	bus-width = <8>;
1017c66ec88fSEmmanuel Vadot	non-removable;
1018c66ec88fSEmmanuel Vadot	status = "okay";
1019c66ec88fSEmmanuel Vadot};
1020c66ec88fSEmmanuel Vadot
1021c66ec88fSEmmanuel Vadot&usdhc2 {
1022c66ec88fSEmmanuel Vadot	assigned-clocks = <&clk IMX8MQ_CLK_USDHC2>;
1023c66ec88fSEmmanuel Vadot	assigned-clock-rates = <200000000>;
1024c66ec88fSEmmanuel Vadot	pinctrl-names = "default", "state_100mhz", "state_200mhz";
1025c66ec88fSEmmanuel Vadot	pinctrl-0 = <&pinctrl_usdhc2>;
1026c66ec88fSEmmanuel Vadot	pinctrl-1 = <&pinctrl_usdhc2_100mhz>;
1027c66ec88fSEmmanuel Vadot	pinctrl-2 = <&pinctrl_usdhc2_200mhz>;
1028c66ec88fSEmmanuel Vadot	bus-width = <4>;
1029aa1a8ff2SEmmanuel Vadot	vmmc-supply = <&wifi_pwr_en>;
1030aa1a8ff2SEmmanuel Vadot	mmc-pwrseq = <&wifi_pwr_seq>;
1031c66ec88fSEmmanuel Vadot	broken-cd;
1032c66ec88fSEmmanuel Vadot	disable-wp;
1033c66ec88fSEmmanuel Vadot	cap-sdio-irq;
1034c66ec88fSEmmanuel Vadot	keep-power-in-suspend;
1035c66ec88fSEmmanuel Vadot	wakeup-source;
1036c66ec88fSEmmanuel Vadot	status = "okay";
1037c66ec88fSEmmanuel Vadot};
1038c66ec88fSEmmanuel Vadot
1039c66ec88fSEmmanuel Vadot&wdog1 {
1040c66ec88fSEmmanuel Vadot	pinctrl-names = "default";
1041c66ec88fSEmmanuel Vadot	pinctrl-0 = <&pinctrl_wdog>;
1042c66ec88fSEmmanuel Vadot	fsl,ext-reset-output;
1043c66ec88fSEmmanuel Vadot	status = "okay";
1044c66ec88fSEmmanuel Vadot};
1045