xref: /freebsd/sys/contrib/device-tree/src/arm64/rockchip/rk3588-nanopc-t6.dtsi (revision b2d2a78ad80ec68d4a17f5aef97d21686cb1e29b)
1*b2d2a78aSEmmanuel Vadot// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2*b2d2a78aSEmmanuel Vadot/*
3*b2d2a78aSEmmanuel Vadot * Copyright (c) 2021 Rockchip Electronics Co., Ltd.
4*b2d2a78aSEmmanuel Vadot * Copyright (c) 2023 Thomas McKahan
5*b2d2a78aSEmmanuel Vadot *
6*b2d2a78aSEmmanuel Vadot */
7*b2d2a78aSEmmanuel Vadot
8*b2d2a78aSEmmanuel Vadot/dts-v1/;
9*b2d2a78aSEmmanuel Vadot
10*b2d2a78aSEmmanuel Vadot#include <dt-bindings/gpio/gpio.h>
11*b2d2a78aSEmmanuel Vadot#include <dt-bindings/input/input.h>
12*b2d2a78aSEmmanuel Vadot#include <dt-bindings/pinctrl/rockchip.h>
13*b2d2a78aSEmmanuel Vadot#include <dt-bindings/usb/pd.h>
14*b2d2a78aSEmmanuel Vadot#include "rk3588.dtsi"
15*b2d2a78aSEmmanuel Vadot
16*b2d2a78aSEmmanuel Vadot/ {
17*b2d2a78aSEmmanuel Vadot	model = "FriendlyElec NanoPC-T6";
18*b2d2a78aSEmmanuel Vadot	compatible = "friendlyarm,nanopc-t6", "rockchip,rk3588";
19*b2d2a78aSEmmanuel Vadot
20*b2d2a78aSEmmanuel Vadot	aliases {
21*b2d2a78aSEmmanuel Vadot		mmc0 = &sdhci;
22*b2d2a78aSEmmanuel Vadot		mmc1 = &sdmmc;
23*b2d2a78aSEmmanuel Vadot	};
24*b2d2a78aSEmmanuel Vadot
25*b2d2a78aSEmmanuel Vadot	adc-keys-0 {
26*b2d2a78aSEmmanuel Vadot		compatible = "adc-keys";
27*b2d2a78aSEmmanuel Vadot		io-channels = <&saradc 0>;
28*b2d2a78aSEmmanuel Vadot		io-channel-names = "buttons";
29*b2d2a78aSEmmanuel Vadot		keyup-threshold-microvolt = <1800000>;
30*b2d2a78aSEmmanuel Vadot		poll-interval = <100>;
31*b2d2a78aSEmmanuel Vadot
32*b2d2a78aSEmmanuel Vadot		button-maskrom {
33*b2d2a78aSEmmanuel Vadot			label = "Mask Rom";
34*b2d2a78aSEmmanuel Vadot			linux,code = <KEY_SETUP>;
35*b2d2a78aSEmmanuel Vadot			press-threshold-microvolt = <2000>;
36*b2d2a78aSEmmanuel Vadot		};
37*b2d2a78aSEmmanuel Vadot	};
38*b2d2a78aSEmmanuel Vadot
39*b2d2a78aSEmmanuel Vadot	chosen {
40*b2d2a78aSEmmanuel Vadot		stdout-path = "serial2:1500000n8";
41*b2d2a78aSEmmanuel Vadot	};
42*b2d2a78aSEmmanuel Vadot
43*b2d2a78aSEmmanuel Vadot	ir-receiver {
44*b2d2a78aSEmmanuel Vadot		compatible = "gpio-ir-receiver";
45*b2d2a78aSEmmanuel Vadot		gpios = <&gpio0 RK_PD4 GPIO_ACTIVE_LOW>;
46*b2d2a78aSEmmanuel Vadot		pinctrl-names = "default";
47*b2d2a78aSEmmanuel Vadot		pinctrl-0 = <&ir_receiver_pin>;
48*b2d2a78aSEmmanuel Vadot	};
49*b2d2a78aSEmmanuel Vadot
50*b2d2a78aSEmmanuel Vadot	leds {
51*b2d2a78aSEmmanuel Vadot		compatible = "gpio-leds";
52*b2d2a78aSEmmanuel Vadot
53*b2d2a78aSEmmanuel Vadot		sys_led: led-0 {
54*b2d2a78aSEmmanuel Vadot			gpios = <&gpio2 RK_PB7 GPIO_ACTIVE_HIGH>;
55*b2d2a78aSEmmanuel Vadot			label = "system-led";
56*b2d2a78aSEmmanuel Vadot			linux,default-trigger = "heartbeat";
57*b2d2a78aSEmmanuel Vadot			pinctrl-names = "default";
58*b2d2a78aSEmmanuel Vadot			pinctrl-0 = <&sys_led_pin>;
59*b2d2a78aSEmmanuel Vadot		};
60*b2d2a78aSEmmanuel Vadot
61*b2d2a78aSEmmanuel Vadot		usr_led: led-1 {
62*b2d2a78aSEmmanuel Vadot			gpios = <&gpio2 RK_PC0 GPIO_ACTIVE_HIGH>;
63*b2d2a78aSEmmanuel Vadot			label = "user-led";
64*b2d2a78aSEmmanuel Vadot			pinctrl-names = "default";
65*b2d2a78aSEmmanuel Vadot			pinctrl-0 = <&usr_led_pin>;
66*b2d2a78aSEmmanuel Vadot		};
67*b2d2a78aSEmmanuel Vadot	};
68*b2d2a78aSEmmanuel Vadot
69*b2d2a78aSEmmanuel Vadot	sound {
70*b2d2a78aSEmmanuel Vadot		compatible = "simple-audio-card";
71*b2d2a78aSEmmanuel Vadot		pinctrl-names = "default";
72*b2d2a78aSEmmanuel Vadot		pinctrl-0 = <&hp_det>;
73*b2d2a78aSEmmanuel Vadot
74*b2d2a78aSEmmanuel Vadot		simple-audio-card,name = "realtek,rt5616-codec";
75*b2d2a78aSEmmanuel Vadot		simple-audio-card,format = "i2s";
76*b2d2a78aSEmmanuel Vadot		simple-audio-card,mclk-fs = <256>;
77*b2d2a78aSEmmanuel Vadot
78*b2d2a78aSEmmanuel Vadot		simple-audio-card,hp-det-gpio = <&gpio1 RK_PC4 GPIO_ACTIVE_LOW>;
79*b2d2a78aSEmmanuel Vadot
80*b2d2a78aSEmmanuel Vadot		simple-audio-card,widgets =
81*b2d2a78aSEmmanuel Vadot			"Headphone", "Headphones",
82*b2d2a78aSEmmanuel Vadot			"Microphone", "Microphone Jack";
83*b2d2a78aSEmmanuel Vadot		simple-audio-card,routing =
84*b2d2a78aSEmmanuel Vadot			"Headphones", "HPOL",
85*b2d2a78aSEmmanuel Vadot			"Headphones", "HPOR",
86*b2d2a78aSEmmanuel Vadot			"MIC1", "Microphone Jack",
87*b2d2a78aSEmmanuel Vadot			"Microphone Jack", "micbias1";
88*b2d2a78aSEmmanuel Vadot
89*b2d2a78aSEmmanuel Vadot		simple-audio-card,cpu {
90*b2d2a78aSEmmanuel Vadot			sound-dai = <&i2s0_8ch>;
91*b2d2a78aSEmmanuel Vadot		};
92*b2d2a78aSEmmanuel Vadot		simple-audio-card,codec {
93*b2d2a78aSEmmanuel Vadot			sound-dai = <&rt5616>;
94*b2d2a78aSEmmanuel Vadot		};
95*b2d2a78aSEmmanuel Vadot	};
96*b2d2a78aSEmmanuel Vadot
97*b2d2a78aSEmmanuel Vadot	vcc12v_dcin: vcc12v-dcin-regulator {
98*b2d2a78aSEmmanuel Vadot		compatible = "regulator-fixed";
99*b2d2a78aSEmmanuel Vadot		regulator-name = "vcc12v_dcin";
100*b2d2a78aSEmmanuel Vadot		regulator-always-on;
101*b2d2a78aSEmmanuel Vadot		regulator-boot-on;
102*b2d2a78aSEmmanuel Vadot		regulator-min-microvolt = <12000000>;
103*b2d2a78aSEmmanuel Vadot		regulator-max-microvolt = <12000000>;
104*b2d2a78aSEmmanuel Vadot	};
105*b2d2a78aSEmmanuel Vadot
106*b2d2a78aSEmmanuel Vadot	/* vcc5v0_sys powers peripherals */
107*b2d2a78aSEmmanuel Vadot	vcc5v0_sys: vcc5v0-sys-regulator {
108*b2d2a78aSEmmanuel Vadot		compatible = "regulator-fixed";
109*b2d2a78aSEmmanuel Vadot		regulator-name = "vcc5v0_sys";
110*b2d2a78aSEmmanuel Vadot		regulator-always-on;
111*b2d2a78aSEmmanuel Vadot		regulator-boot-on;
112*b2d2a78aSEmmanuel Vadot		regulator-min-microvolt = <5000000>;
113*b2d2a78aSEmmanuel Vadot		regulator-max-microvolt = <5000000>;
114*b2d2a78aSEmmanuel Vadot		vin-supply = <&vcc12v_dcin>;
115*b2d2a78aSEmmanuel Vadot	};
116*b2d2a78aSEmmanuel Vadot
117*b2d2a78aSEmmanuel Vadot	/* vcc4v0_sys powers the RK806, RK860's */
118*b2d2a78aSEmmanuel Vadot	vcc4v0_sys: vcc4v0-sys-regulator {
119*b2d2a78aSEmmanuel Vadot		compatible = "regulator-fixed";
120*b2d2a78aSEmmanuel Vadot		regulator-name = "vcc4v0_sys";
121*b2d2a78aSEmmanuel Vadot		regulator-always-on;
122*b2d2a78aSEmmanuel Vadot		regulator-boot-on;
123*b2d2a78aSEmmanuel Vadot		regulator-min-microvolt = <4000000>;
124*b2d2a78aSEmmanuel Vadot		regulator-max-microvolt = <4000000>;
125*b2d2a78aSEmmanuel Vadot		vin-supply = <&vcc12v_dcin>;
126*b2d2a78aSEmmanuel Vadot	};
127*b2d2a78aSEmmanuel Vadot
128*b2d2a78aSEmmanuel Vadot	vcc_1v1_nldo_s3: vcc-1v1-nldo-s3-regulator {
129*b2d2a78aSEmmanuel Vadot		compatible = "regulator-fixed";
130*b2d2a78aSEmmanuel Vadot		regulator-name = "vcc-1v1-nldo-s3";
131*b2d2a78aSEmmanuel Vadot		regulator-always-on;
132*b2d2a78aSEmmanuel Vadot		regulator-boot-on;
133*b2d2a78aSEmmanuel Vadot		regulator-min-microvolt = <1100000>;
134*b2d2a78aSEmmanuel Vadot		regulator-max-microvolt = <1100000>;
135*b2d2a78aSEmmanuel Vadot		vin-supply = <&vcc4v0_sys>;
136*b2d2a78aSEmmanuel Vadot	};
137*b2d2a78aSEmmanuel Vadot
138*b2d2a78aSEmmanuel Vadot	vcc_3v3_pcie20: vcc3v3-pcie20-regulator {
139*b2d2a78aSEmmanuel Vadot		compatible = "regulator-fixed";
140*b2d2a78aSEmmanuel Vadot		regulator-name = "vcc_3v3_pcie20";
141*b2d2a78aSEmmanuel Vadot		regulator-always-on;
142*b2d2a78aSEmmanuel Vadot		regulator-boot-on;
143*b2d2a78aSEmmanuel Vadot		regulator-min-microvolt = <3300000>;
144*b2d2a78aSEmmanuel Vadot		regulator-max-microvolt = <3300000>;
145*b2d2a78aSEmmanuel Vadot		vin-supply = <&vcc_3v3_s3>;
146*b2d2a78aSEmmanuel Vadot	};
147*b2d2a78aSEmmanuel Vadot
148*b2d2a78aSEmmanuel Vadot	vbus5v0_typec: vbus5v0-typec-regulator {
149*b2d2a78aSEmmanuel Vadot		compatible = "regulator-fixed";
150*b2d2a78aSEmmanuel Vadot		enable-active-high;
151*b2d2a78aSEmmanuel Vadot		gpio = <&gpio1 RK_PD2 GPIO_ACTIVE_HIGH>;
152*b2d2a78aSEmmanuel Vadot		pinctrl-names = "default";
153*b2d2a78aSEmmanuel Vadot		pinctrl-0 = <&typec5v_pwren>;
154*b2d2a78aSEmmanuel Vadot		regulator-always-on;
155*b2d2a78aSEmmanuel Vadot		regulator-boot-on;
156*b2d2a78aSEmmanuel Vadot		regulator-name = "vbus5v0_typec";
157*b2d2a78aSEmmanuel Vadot		regulator-min-microvolt = <5000000>;
158*b2d2a78aSEmmanuel Vadot		regulator-max-microvolt = <5000000>;
159*b2d2a78aSEmmanuel Vadot		vin-supply = <&vcc5v0_sys>;
160*b2d2a78aSEmmanuel Vadot	};
161*b2d2a78aSEmmanuel Vadot
162*b2d2a78aSEmmanuel Vadot	vcc3v3_pcie2x1l0: vcc3v3-pcie2x1l0-regulator {
163*b2d2a78aSEmmanuel Vadot		compatible = "regulator-fixed";
164*b2d2a78aSEmmanuel Vadot		enable-active-high;
165*b2d2a78aSEmmanuel Vadot		gpio = <&gpio4 RK_PC2 GPIO_ACTIVE_HIGH>;
166*b2d2a78aSEmmanuel Vadot		pinctrl-names = "default";
167*b2d2a78aSEmmanuel Vadot		pinctrl-0 = <&pcie_m2_1_pwren>;
168*b2d2a78aSEmmanuel Vadot		regulator-name = "vcc3v3_pcie2x1l0";
169*b2d2a78aSEmmanuel Vadot		regulator-min-microvolt = <3300000>;
170*b2d2a78aSEmmanuel Vadot		regulator-max-microvolt = <3300000>;
171*b2d2a78aSEmmanuel Vadot		vin-supply = <&vcc5v0_sys>;
172*b2d2a78aSEmmanuel Vadot	};
173*b2d2a78aSEmmanuel Vadot
174*b2d2a78aSEmmanuel Vadot	vcc3v3_pcie30: vcc3v3-pcie30-regulator {
175*b2d2a78aSEmmanuel Vadot		compatible = "regulator-fixed";
176*b2d2a78aSEmmanuel Vadot		enable-active-high;
177*b2d2a78aSEmmanuel Vadot		gpios = <&gpio2 RK_PC5 GPIO_ACTIVE_HIGH>;
178*b2d2a78aSEmmanuel Vadot		pinctrl-names = "default";
179*b2d2a78aSEmmanuel Vadot		pinctrl-0 = <&pcie_m2_0_pwren>;
180*b2d2a78aSEmmanuel Vadot		regulator-name = "vcc3v3_pcie30";
181*b2d2a78aSEmmanuel Vadot		regulator-min-microvolt = <3300000>;
182*b2d2a78aSEmmanuel Vadot		regulator-max-microvolt = <3300000>;
183*b2d2a78aSEmmanuel Vadot		vin-supply = <&vcc5v0_sys>;
184*b2d2a78aSEmmanuel Vadot	};
185*b2d2a78aSEmmanuel Vadot
186*b2d2a78aSEmmanuel Vadot	vcc3v3_sd_s0: vcc3v3-sd-s0-regulator {
187*b2d2a78aSEmmanuel Vadot		compatible = "regulator-fixed";
188*b2d2a78aSEmmanuel Vadot		gpio = <&gpio4 RK_PA5 GPIO_ACTIVE_LOW>;
189*b2d2a78aSEmmanuel Vadot		regulator-boot-on;
190*b2d2a78aSEmmanuel Vadot		regulator-max-microvolt = <3300000>;
191*b2d2a78aSEmmanuel Vadot		regulator-min-microvolt = <3300000>;
192*b2d2a78aSEmmanuel Vadot		regulator-name = "vcc3v3_sd_s0";
193*b2d2a78aSEmmanuel Vadot		vin-supply = <&vcc_3v3_s3>;
194*b2d2a78aSEmmanuel Vadot	};
195*b2d2a78aSEmmanuel Vadot};
196*b2d2a78aSEmmanuel Vadot
197*b2d2a78aSEmmanuel Vadot&combphy0_ps {
198*b2d2a78aSEmmanuel Vadot	status = "okay";
199*b2d2a78aSEmmanuel Vadot};
200*b2d2a78aSEmmanuel Vadot
201*b2d2a78aSEmmanuel Vadot&combphy1_ps {
202*b2d2a78aSEmmanuel Vadot	status = "okay";
203*b2d2a78aSEmmanuel Vadot};
204*b2d2a78aSEmmanuel Vadot
205*b2d2a78aSEmmanuel Vadot&combphy2_psu {
206*b2d2a78aSEmmanuel Vadot	status = "okay";
207*b2d2a78aSEmmanuel Vadot};
208*b2d2a78aSEmmanuel Vadot
209*b2d2a78aSEmmanuel Vadot&cpu_l0 {
210*b2d2a78aSEmmanuel Vadot	cpu-supply = <&vdd_cpu_lit_s0>;
211*b2d2a78aSEmmanuel Vadot};
212*b2d2a78aSEmmanuel Vadot
213*b2d2a78aSEmmanuel Vadot&cpu_l1 {
214*b2d2a78aSEmmanuel Vadot	cpu-supply = <&vdd_cpu_lit_s0>;
215*b2d2a78aSEmmanuel Vadot};
216*b2d2a78aSEmmanuel Vadot
217*b2d2a78aSEmmanuel Vadot&cpu_l2 {
218*b2d2a78aSEmmanuel Vadot	cpu-supply = <&vdd_cpu_lit_s0>;
219*b2d2a78aSEmmanuel Vadot};
220*b2d2a78aSEmmanuel Vadot
221*b2d2a78aSEmmanuel Vadot&cpu_l3 {
222*b2d2a78aSEmmanuel Vadot	cpu-supply = <&vdd_cpu_lit_s0>;
223*b2d2a78aSEmmanuel Vadot};
224*b2d2a78aSEmmanuel Vadot
225*b2d2a78aSEmmanuel Vadot&cpu_b0 {
226*b2d2a78aSEmmanuel Vadot	cpu-supply = <&vdd_cpu_big0_s0>;
227*b2d2a78aSEmmanuel Vadot};
228*b2d2a78aSEmmanuel Vadot
229*b2d2a78aSEmmanuel Vadot&cpu_b1 {
230*b2d2a78aSEmmanuel Vadot	cpu-supply = <&vdd_cpu_big0_s0>;
231*b2d2a78aSEmmanuel Vadot};
232*b2d2a78aSEmmanuel Vadot
233*b2d2a78aSEmmanuel Vadot&cpu_b2 {
234*b2d2a78aSEmmanuel Vadot	cpu-supply = <&vdd_cpu_big1_s0>;
235*b2d2a78aSEmmanuel Vadot};
236*b2d2a78aSEmmanuel Vadot
237*b2d2a78aSEmmanuel Vadot&cpu_b3 {
238*b2d2a78aSEmmanuel Vadot	cpu-supply = <&vdd_cpu_big1_s0>;
239*b2d2a78aSEmmanuel Vadot};
240*b2d2a78aSEmmanuel Vadot
241*b2d2a78aSEmmanuel Vadot&gpio0 {
242*b2d2a78aSEmmanuel Vadot	gpio-line-names = /* GPIO0 A0-A7 */
243*b2d2a78aSEmmanuel Vadot			  "", "", "", "",
244*b2d2a78aSEmmanuel Vadot			  "", "", "", "",
245*b2d2a78aSEmmanuel Vadot			  /* GPIO0 B0-B7 */
246*b2d2a78aSEmmanuel Vadot			  "", "", "", "",
247*b2d2a78aSEmmanuel Vadot			  "", "", "", "",
248*b2d2a78aSEmmanuel Vadot			  /* GPIO0 C0-C7 */
249*b2d2a78aSEmmanuel Vadot			  "", "", "", "",
250*b2d2a78aSEmmanuel Vadot			  "HEADER_10", "HEADER_08", "HEADER_32", "",
251*b2d2a78aSEmmanuel Vadot			  /* GPIO0 D0-D7 */
252*b2d2a78aSEmmanuel Vadot			  "", "", "", "",
253*b2d2a78aSEmmanuel Vadot			  "IR receiver [PWM3_IR_M0]", "", "", "";
254*b2d2a78aSEmmanuel Vadot};
255*b2d2a78aSEmmanuel Vadot
256*b2d2a78aSEmmanuel Vadot&gpio1 {
257*b2d2a78aSEmmanuel Vadot	gpio-line-names = /* GPIO1 A0-A7 */
258*b2d2a78aSEmmanuel Vadot			  "HEADER_27", "HEADER_28", "", "",
259*b2d2a78aSEmmanuel Vadot			  "", "", "", "HEADER_15",
260*b2d2a78aSEmmanuel Vadot			  /* GPIO1 B0-B7 */
261*b2d2a78aSEmmanuel Vadot			  "HEADER_26", "HEADER_21", "HEADER_19", "HEADER_23",
262*b2d2a78aSEmmanuel Vadot			  "HEADER_24", "HEADER_22", "", "",
263*b2d2a78aSEmmanuel Vadot			  /* GPIO1 C0-C7 */
264*b2d2a78aSEmmanuel Vadot			  "", "", "", "",
265*b2d2a78aSEmmanuel Vadot			  "", "", "", "",
266*b2d2a78aSEmmanuel Vadot			  /* GPIO1 D0-D7 */
267*b2d2a78aSEmmanuel Vadot			  "", "", "", "",
268*b2d2a78aSEmmanuel Vadot			  "", "", "HEADER_05", "HEADER_03";
269*b2d2a78aSEmmanuel Vadot};
270*b2d2a78aSEmmanuel Vadot
271*b2d2a78aSEmmanuel Vadot&gpio2 {
272*b2d2a78aSEmmanuel Vadot	gpio-line-names = /* GPIO2 A0-A7 */
273*b2d2a78aSEmmanuel Vadot			  "", "", "", "",
274*b2d2a78aSEmmanuel Vadot			  "", "", "", "",
275*b2d2a78aSEmmanuel Vadot			  /* GPIO2 B0-B7 */
276*b2d2a78aSEmmanuel Vadot			  "", "", "", "",
277*b2d2a78aSEmmanuel Vadot			  "", "", "", "",
278*b2d2a78aSEmmanuel Vadot			  /* GPIO2 C0-C7 */
279*b2d2a78aSEmmanuel Vadot			  "", "CSI1_11", "CSI1_12", "",
280*b2d2a78aSEmmanuel Vadot			  "", "", "", "",
281*b2d2a78aSEmmanuel Vadot			  /* GPIO2 D0-D7 */
282*b2d2a78aSEmmanuel Vadot			  "", "", "", "",
283*b2d2a78aSEmmanuel Vadot			  "", "", "", "";
284*b2d2a78aSEmmanuel Vadot};
285*b2d2a78aSEmmanuel Vadot
286*b2d2a78aSEmmanuel Vadot&gpio3 {
287*b2d2a78aSEmmanuel Vadot	gpio-line-names = /* GPIO3 A0-A7 */
288*b2d2a78aSEmmanuel Vadot			  "HEADER_35", "HEADER_38", "HEADER_40", "HEADER_36",
289*b2d2a78aSEmmanuel Vadot			  "HEADER_37", "", "DSI0_12", "",
290*b2d2a78aSEmmanuel Vadot			  /* GPIO3 B0-B7 */
291*b2d2a78aSEmmanuel Vadot			  "HEADER_33", "DSI0_10", "HEADER_07", "HEADER_16",
292*b2d2a78aSEmmanuel Vadot			  "HEADER_18", "HEADER_29", "HEADER_31", "HEADER_12",
293*b2d2a78aSEmmanuel Vadot			  /* GPIO3 C0-C7 */
294*b2d2a78aSEmmanuel Vadot			  "DSI0_08", "DSI0_14", "HEADER_11", "HEADER_13",
295*b2d2a78aSEmmanuel Vadot			  "", "", "", "",
296*b2d2a78aSEmmanuel Vadot			  /* GPIO3 D0-D7 */
297*b2d2a78aSEmmanuel Vadot			  "", "", "", "",
298*b2d2a78aSEmmanuel Vadot			  "", "DSI1_10", "", "";
299*b2d2a78aSEmmanuel Vadot};
300*b2d2a78aSEmmanuel Vadot
301*b2d2a78aSEmmanuel Vadot&gpio4 {
302*b2d2a78aSEmmanuel Vadot	gpio-line-names = /* GPIO4 A0-A7 */
303*b2d2a78aSEmmanuel Vadot			  "DSI1_08", "DSI1_14", "", "DSI1_12",
304*b2d2a78aSEmmanuel Vadot			  "", "", "", "",
305*b2d2a78aSEmmanuel Vadot			  /* GPIO4 B0-B7 */
306*b2d2a78aSEmmanuel Vadot			  "", "", "", "",
307*b2d2a78aSEmmanuel Vadot			  "", "", "", "",
308*b2d2a78aSEmmanuel Vadot			  /* GPIO4 C0-C7 */
309*b2d2a78aSEmmanuel Vadot			  "", "", "", "",
310*b2d2a78aSEmmanuel Vadot			  "CSI0_11", "CSI0_12", "", "",
311*b2d2a78aSEmmanuel Vadot			  /* GPIO4 D0-D7 */
312*b2d2a78aSEmmanuel Vadot			  "", "", "", "",
313*b2d2a78aSEmmanuel Vadot			  "", "", "", "";
314*b2d2a78aSEmmanuel Vadot};
315*b2d2a78aSEmmanuel Vadot
316*b2d2a78aSEmmanuel Vadot&gpu {
317*b2d2a78aSEmmanuel Vadot	mali-supply = <&vdd_gpu_s0>;
318*b2d2a78aSEmmanuel Vadot	status = "okay";
319*b2d2a78aSEmmanuel Vadot};
320*b2d2a78aSEmmanuel Vadot
321*b2d2a78aSEmmanuel Vadot&i2c0 {
322*b2d2a78aSEmmanuel Vadot	pinctrl-names = "default";
323*b2d2a78aSEmmanuel Vadot	pinctrl-0 = <&i2c0m2_xfer>;
324*b2d2a78aSEmmanuel Vadot	status = "okay";
325*b2d2a78aSEmmanuel Vadot
326*b2d2a78aSEmmanuel Vadot	vdd_cpu_big0_s0: regulator@42 {
327*b2d2a78aSEmmanuel Vadot		compatible = "rockchip,rk8602";
328*b2d2a78aSEmmanuel Vadot		reg = <0x42>;
329*b2d2a78aSEmmanuel Vadot		fcs,suspend-voltage-selector = <1>;
330*b2d2a78aSEmmanuel Vadot		regulator-name = "vdd_cpu_big0_s0";
331*b2d2a78aSEmmanuel Vadot		regulator-always-on;
332*b2d2a78aSEmmanuel Vadot		regulator-boot-on;
333*b2d2a78aSEmmanuel Vadot		regulator-min-microvolt = <550000>;
334*b2d2a78aSEmmanuel Vadot		regulator-max-microvolt = <1050000>;
335*b2d2a78aSEmmanuel Vadot		regulator-ramp-delay = <2300>;
336*b2d2a78aSEmmanuel Vadot		vin-supply = <&vcc4v0_sys>;
337*b2d2a78aSEmmanuel Vadot
338*b2d2a78aSEmmanuel Vadot		regulator-state-mem {
339*b2d2a78aSEmmanuel Vadot			regulator-off-in-suspend;
340*b2d2a78aSEmmanuel Vadot		};
341*b2d2a78aSEmmanuel Vadot	};
342*b2d2a78aSEmmanuel Vadot
343*b2d2a78aSEmmanuel Vadot	vdd_cpu_big1_s0: regulator@43 {
344*b2d2a78aSEmmanuel Vadot		compatible = "rockchip,rk8603", "rockchip,rk8602";
345*b2d2a78aSEmmanuel Vadot		reg = <0x43>;
346*b2d2a78aSEmmanuel Vadot		fcs,suspend-voltage-selector = <1>;
347*b2d2a78aSEmmanuel Vadot		regulator-name = "vdd_cpu_big1_s0";
348*b2d2a78aSEmmanuel Vadot		regulator-always-on;
349*b2d2a78aSEmmanuel Vadot		regulator-boot-on;
350*b2d2a78aSEmmanuel Vadot		regulator-min-microvolt = <550000>;
351*b2d2a78aSEmmanuel Vadot		regulator-max-microvolt = <1050000>;
352*b2d2a78aSEmmanuel Vadot		regulator-ramp-delay = <2300>;
353*b2d2a78aSEmmanuel Vadot		vin-supply = <&vcc4v0_sys>;
354*b2d2a78aSEmmanuel Vadot
355*b2d2a78aSEmmanuel Vadot		regulator-state-mem {
356*b2d2a78aSEmmanuel Vadot			regulator-off-in-suspend;
357*b2d2a78aSEmmanuel Vadot		};
358*b2d2a78aSEmmanuel Vadot	};
359*b2d2a78aSEmmanuel Vadot};
360*b2d2a78aSEmmanuel Vadot
361*b2d2a78aSEmmanuel Vadot&i2c2 {
362*b2d2a78aSEmmanuel Vadot	status = "okay";
363*b2d2a78aSEmmanuel Vadot
364*b2d2a78aSEmmanuel Vadot	vdd_npu_s0: regulator@42 {
365*b2d2a78aSEmmanuel Vadot		compatible = "rockchip,rk8602";
366*b2d2a78aSEmmanuel Vadot		reg = <0x42>;
367*b2d2a78aSEmmanuel Vadot		fcs,suspend-voltage-selector = <1>;
368*b2d2a78aSEmmanuel Vadot		regulator-name = "vdd_npu_s0";
369*b2d2a78aSEmmanuel Vadot		regulator-always-on;
370*b2d2a78aSEmmanuel Vadot		regulator-boot-on;
371*b2d2a78aSEmmanuel Vadot		regulator-min-microvolt = <550000>;
372*b2d2a78aSEmmanuel Vadot		regulator-max-microvolt = <950000>;
373*b2d2a78aSEmmanuel Vadot		regulator-ramp-delay = <2300>;
374*b2d2a78aSEmmanuel Vadot		vin-supply = <&vcc4v0_sys>;
375*b2d2a78aSEmmanuel Vadot
376*b2d2a78aSEmmanuel Vadot		regulator-state-mem {
377*b2d2a78aSEmmanuel Vadot			regulator-off-in-suspend;
378*b2d2a78aSEmmanuel Vadot		};
379*b2d2a78aSEmmanuel Vadot	};
380*b2d2a78aSEmmanuel Vadot};
381*b2d2a78aSEmmanuel Vadot
382*b2d2a78aSEmmanuel Vadot&i2c6 {
383*b2d2a78aSEmmanuel Vadot	clock-frequency = <200000>;
384*b2d2a78aSEmmanuel Vadot	status = "okay";
385*b2d2a78aSEmmanuel Vadot
386*b2d2a78aSEmmanuel Vadot	fusb302: typec-portc@22 {
387*b2d2a78aSEmmanuel Vadot		compatible = "fcs,fusb302";
388*b2d2a78aSEmmanuel Vadot		reg = <0x22>;
389*b2d2a78aSEmmanuel Vadot		interrupt-parent = <&gpio0>;
390*b2d2a78aSEmmanuel Vadot		interrupts = <RK_PD3 IRQ_TYPE_LEVEL_LOW>;
391*b2d2a78aSEmmanuel Vadot		pinctrl-0 = <&usbc0_int>;
392*b2d2a78aSEmmanuel Vadot		pinctrl-names = "default";
393*b2d2a78aSEmmanuel Vadot		vbus-supply = <&vbus5v0_typec>;
394*b2d2a78aSEmmanuel Vadot
395*b2d2a78aSEmmanuel Vadot		connector {
396*b2d2a78aSEmmanuel Vadot			compatible = "usb-c-connector";
397*b2d2a78aSEmmanuel Vadot			data-role = "dual";
398*b2d2a78aSEmmanuel Vadot			label = "USB-C";
399*b2d2a78aSEmmanuel Vadot			power-role = "source";
400*b2d2a78aSEmmanuel Vadot			source-pdos = <PDO_FIXED(5000, 2000, PDO_FIXED_USB_COMM)>;
401*b2d2a78aSEmmanuel Vadot
402*b2d2a78aSEmmanuel Vadot			ports {
403*b2d2a78aSEmmanuel Vadot				#address-cells = <1>;
404*b2d2a78aSEmmanuel Vadot				#size-cells = <0>;
405*b2d2a78aSEmmanuel Vadot
406*b2d2a78aSEmmanuel Vadot				port@0 {
407*b2d2a78aSEmmanuel Vadot					reg = <0>;
408*b2d2a78aSEmmanuel Vadot					usbc0_hs: endpoint {
409*b2d2a78aSEmmanuel Vadot						remote-endpoint = <&usb_host0_xhci_drd_sw>;
410*b2d2a78aSEmmanuel Vadot					};
411*b2d2a78aSEmmanuel Vadot				};
412*b2d2a78aSEmmanuel Vadot
413*b2d2a78aSEmmanuel Vadot				port@1 {
414*b2d2a78aSEmmanuel Vadot					reg = <1>;
415*b2d2a78aSEmmanuel Vadot					usbc0_ss: endpoint {
416*b2d2a78aSEmmanuel Vadot						remote-endpoint = <&usbdp_phy0_typec_ss>;
417*b2d2a78aSEmmanuel Vadot					};
418*b2d2a78aSEmmanuel Vadot				};
419*b2d2a78aSEmmanuel Vadot
420*b2d2a78aSEmmanuel Vadot				port@2 {
421*b2d2a78aSEmmanuel Vadot					reg = <2>;
422*b2d2a78aSEmmanuel Vadot					usbc0_sbu: endpoint {
423*b2d2a78aSEmmanuel Vadot						remote-endpoint = <&usbdp_phy0_typec_sbu>;
424*b2d2a78aSEmmanuel Vadot					};
425*b2d2a78aSEmmanuel Vadot				};
426*b2d2a78aSEmmanuel Vadot			};
427*b2d2a78aSEmmanuel Vadot		};
428*b2d2a78aSEmmanuel Vadot	};
429*b2d2a78aSEmmanuel Vadot
430*b2d2a78aSEmmanuel Vadot	hym8563: rtc@51 {
431*b2d2a78aSEmmanuel Vadot		compatible = "haoyu,hym8563";
432*b2d2a78aSEmmanuel Vadot		reg = <0x51>;
433*b2d2a78aSEmmanuel Vadot		#clock-cells = <0>;
434*b2d2a78aSEmmanuel Vadot		clock-output-names = "hym8563";
435*b2d2a78aSEmmanuel Vadot		pinctrl-names = "default";
436*b2d2a78aSEmmanuel Vadot		pinctrl-0 = <&hym8563_int>;
437*b2d2a78aSEmmanuel Vadot		interrupt-parent = <&gpio0>;
438*b2d2a78aSEmmanuel Vadot		interrupts = <RK_PB0 IRQ_TYPE_LEVEL_LOW>;
439*b2d2a78aSEmmanuel Vadot		wakeup-source;
440*b2d2a78aSEmmanuel Vadot	};
441*b2d2a78aSEmmanuel Vadot};
442*b2d2a78aSEmmanuel Vadot
443*b2d2a78aSEmmanuel Vadot&i2c7 {
444*b2d2a78aSEmmanuel Vadot	clock-frequency = <200000>;
445*b2d2a78aSEmmanuel Vadot	status = "okay";
446*b2d2a78aSEmmanuel Vadot
447*b2d2a78aSEmmanuel Vadot	rt5616: codec@1b {
448*b2d2a78aSEmmanuel Vadot		compatible = "realtek,rt5616";
449*b2d2a78aSEmmanuel Vadot		reg = <0x1b>;
450*b2d2a78aSEmmanuel Vadot		clocks = <&cru I2S0_8CH_MCLKOUT>;
451*b2d2a78aSEmmanuel Vadot		clock-names = "mclk";
452*b2d2a78aSEmmanuel Vadot		#sound-dai-cells = <0>;
453*b2d2a78aSEmmanuel Vadot		assigned-clocks = <&cru I2S0_8CH_MCLKOUT>;
454*b2d2a78aSEmmanuel Vadot		assigned-clock-rates = <12288000>;
455*b2d2a78aSEmmanuel Vadot
456*b2d2a78aSEmmanuel Vadot		port {
457*b2d2a78aSEmmanuel Vadot			rt5616_p0_0: endpoint {
458*b2d2a78aSEmmanuel Vadot				remote-endpoint = <&i2s0_8ch_p0_0>;
459*b2d2a78aSEmmanuel Vadot			};
460*b2d2a78aSEmmanuel Vadot		};
461*b2d2a78aSEmmanuel Vadot	};
462*b2d2a78aSEmmanuel Vadot
463*b2d2a78aSEmmanuel Vadot	/* connected with MIPI-CSI1 */
464*b2d2a78aSEmmanuel Vadot};
465*b2d2a78aSEmmanuel Vadot
466*b2d2a78aSEmmanuel Vadot&i2c8 {
467*b2d2a78aSEmmanuel Vadot	pinctrl-0 = <&i2c8m2_xfer>;
468*b2d2a78aSEmmanuel Vadot};
469*b2d2a78aSEmmanuel Vadot
470*b2d2a78aSEmmanuel Vadot&i2s0_8ch {
471*b2d2a78aSEmmanuel Vadot	pinctrl-names = "default";
472*b2d2a78aSEmmanuel Vadot	pinctrl-0 = <&i2s0_lrck
473*b2d2a78aSEmmanuel Vadot		     &i2s0_mclk
474*b2d2a78aSEmmanuel Vadot		     &i2s0_sclk
475*b2d2a78aSEmmanuel Vadot		     &i2s0_sdi0
476*b2d2a78aSEmmanuel Vadot		     &i2s0_sdo0>;
477*b2d2a78aSEmmanuel Vadot	status = "okay";
478*b2d2a78aSEmmanuel Vadot
479*b2d2a78aSEmmanuel Vadot	i2s0_8ch_p0: port {
480*b2d2a78aSEmmanuel Vadot		i2s0_8ch_p0_0: endpoint {
481*b2d2a78aSEmmanuel Vadot			dai-format = "i2s";
482*b2d2a78aSEmmanuel Vadot			mclk-fs = <256>;
483*b2d2a78aSEmmanuel Vadot			remote-endpoint = <&rt5616_p0_0>;
484*b2d2a78aSEmmanuel Vadot		};
485*b2d2a78aSEmmanuel Vadot	};
486*b2d2a78aSEmmanuel Vadot};
487*b2d2a78aSEmmanuel Vadot
488*b2d2a78aSEmmanuel Vadot&pcie2x1l0 {
489*b2d2a78aSEmmanuel Vadot	reset-gpios = <&gpio4 RK_PB3 GPIO_ACTIVE_HIGH>;
490*b2d2a78aSEmmanuel Vadot	vpcie3v3-supply = <&vcc_3v3_pcie20>;
491*b2d2a78aSEmmanuel Vadot	pinctrl-names = "default";
492*b2d2a78aSEmmanuel Vadot	pinctrl-0 = <&pcie2_0_rst>;
493*b2d2a78aSEmmanuel Vadot	status = "okay";
494*b2d2a78aSEmmanuel Vadot};
495*b2d2a78aSEmmanuel Vadot
496*b2d2a78aSEmmanuel Vadot&pcie2x1l1 {
497*b2d2a78aSEmmanuel Vadot	reset-gpios = <&gpio4 RK_PA2 GPIO_ACTIVE_HIGH>;
498*b2d2a78aSEmmanuel Vadot	vpcie3v3-supply = <&vcc3v3_pcie2x1l0>;
499*b2d2a78aSEmmanuel Vadot	pinctrl-names = "default";
500*b2d2a78aSEmmanuel Vadot	pinctrl-0 = <&pcie2_1_rst>;
501*b2d2a78aSEmmanuel Vadot	status = "okay";
502*b2d2a78aSEmmanuel Vadot};
503*b2d2a78aSEmmanuel Vadot
504*b2d2a78aSEmmanuel Vadot&pcie2x1l2 {
505*b2d2a78aSEmmanuel Vadot	reset-gpios = <&gpio4 RK_PA4 GPIO_ACTIVE_HIGH>;
506*b2d2a78aSEmmanuel Vadot	vpcie3v3-supply = <&vcc_3v3_pcie20>;
507*b2d2a78aSEmmanuel Vadot	pinctrl-names = "default";
508*b2d2a78aSEmmanuel Vadot	pinctrl-0 = <&pcie2_2_rst>;
509*b2d2a78aSEmmanuel Vadot	status = "okay";
510*b2d2a78aSEmmanuel Vadot};
511*b2d2a78aSEmmanuel Vadot
512*b2d2a78aSEmmanuel Vadot&pcie30phy {
513*b2d2a78aSEmmanuel Vadot	status = "okay";
514*b2d2a78aSEmmanuel Vadot};
515*b2d2a78aSEmmanuel Vadot
516*b2d2a78aSEmmanuel Vadot&pcie3x4 {
517*b2d2a78aSEmmanuel Vadot	reset-gpios = <&gpio4 RK_PB6 GPIO_ACTIVE_HIGH>;
518*b2d2a78aSEmmanuel Vadot	vpcie3v3-supply = <&vcc3v3_pcie30>;
519*b2d2a78aSEmmanuel Vadot	status = "okay";
520*b2d2a78aSEmmanuel Vadot};
521*b2d2a78aSEmmanuel Vadot
522*b2d2a78aSEmmanuel Vadot&pinctrl {
523*b2d2a78aSEmmanuel Vadot	gpio-leds {
524*b2d2a78aSEmmanuel Vadot		sys_led_pin: sys-led-pin {
525*b2d2a78aSEmmanuel Vadot			rockchip,pins = <2 RK_PB7 RK_FUNC_GPIO &pcfg_pull_none>;
526*b2d2a78aSEmmanuel Vadot		};
527*b2d2a78aSEmmanuel Vadot
528*b2d2a78aSEmmanuel Vadot		usr_led_pin: usr-led-pin {
529*b2d2a78aSEmmanuel Vadot			rockchip,pins = <2 RK_PC0 RK_FUNC_GPIO &pcfg_pull_none>;
530*b2d2a78aSEmmanuel Vadot		};
531*b2d2a78aSEmmanuel Vadot	};
532*b2d2a78aSEmmanuel Vadot
533*b2d2a78aSEmmanuel Vadot	headphone {
534*b2d2a78aSEmmanuel Vadot		hp_det: hp-det {
535*b2d2a78aSEmmanuel Vadot			rockchip,pins = <1 RK_PC4 RK_FUNC_GPIO &pcfg_pull_none>;
536*b2d2a78aSEmmanuel Vadot		};
537*b2d2a78aSEmmanuel Vadot	};
538*b2d2a78aSEmmanuel Vadot
539*b2d2a78aSEmmanuel Vadot	hym8563 {
540*b2d2a78aSEmmanuel Vadot		hym8563_int: hym8563-int {
541*b2d2a78aSEmmanuel Vadot			rockchip,pins = <0 RK_PB0 RK_FUNC_GPIO &pcfg_pull_up>;
542*b2d2a78aSEmmanuel Vadot		};
543*b2d2a78aSEmmanuel Vadot	};
544*b2d2a78aSEmmanuel Vadot
545*b2d2a78aSEmmanuel Vadot	ir-receiver {
546*b2d2a78aSEmmanuel Vadot		ir_receiver_pin: ir-receiver-pin {
547*b2d2a78aSEmmanuel Vadot			rockchip,pins = <0 RK_PD4 RK_FUNC_GPIO &pcfg_pull_none>;
548*b2d2a78aSEmmanuel Vadot		};
549*b2d2a78aSEmmanuel Vadot	};
550*b2d2a78aSEmmanuel Vadot
551*b2d2a78aSEmmanuel Vadot	pcie {
552*b2d2a78aSEmmanuel Vadot		pcie2_0_rst: pcie2-0-rst {
553*b2d2a78aSEmmanuel Vadot			rockchip,pins = <4 RK_PB3 RK_FUNC_GPIO &pcfg_pull_none>;
554*b2d2a78aSEmmanuel Vadot		};
555*b2d2a78aSEmmanuel Vadot
556*b2d2a78aSEmmanuel Vadot		pcie2_1_rst: pcie2-1-rst {
557*b2d2a78aSEmmanuel Vadot			rockchip,pins = <4 RK_PA2 RK_FUNC_GPIO &pcfg_pull_none>;
558*b2d2a78aSEmmanuel Vadot		};
559*b2d2a78aSEmmanuel Vadot
560*b2d2a78aSEmmanuel Vadot		pcie2_2_rst: pcie2-2-rst {
561*b2d2a78aSEmmanuel Vadot			rockchip,pins = <4 RK_PA4 RK_FUNC_GPIO &pcfg_pull_none>;
562*b2d2a78aSEmmanuel Vadot		};
563*b2d2a78aSEmmanuel Vadot
564*b2d2a78aSEmmanuel Vadot		pcie_m2_0_pwren: pcie-m20-pwren {
565*b2d2a78aSEmmanuel Vadot			rockchip,pins = <2 RK_PC5 RK_FUNC_GPIO &pcfg_pull_none>;
566*b2d2a78aSEmmanuel Vadot		};
567*b2d2a78aSEmmanuel Vadot
568*b2d2a78aSEmmanuel Vadot		pcie_m2_1_pwren: pcie-m21-pwren {
569*b2d2a78aSEmmanuel Vadot			rockchip,pins = <4 RK_PC2 RK_FUNC_GPIO &pcfg_pull_none>;
570*b2d2a78aSEmmanuel Vadot		};
571*b2d2a78aSEmmanuel Vadot	};
572*b2d2a78aSEmmanuel Vadot
573*b2d2a78aSEmmanuel Vadot	usb {
574*b2d2a78aSEmmanuel Vadot		typec5v_pwren: typec5v-pwren {
575*b2d2a78aSEmmanuel Vadot			rockchip,pins = <1 RK_PD2 RK_FUNC_GPIO &pcfg_pull_none>;
576*b2d2a78aSEmmanuel Vadot		};
577*b2d2a78aSEmmanuel Vadot
578*b2d2a78aSEmmanuel Vadot		usbc0_int: usbc0-int {
579*b2d2a78aSEmmanuel Vadot			rockchip,pins = <0 RK_PD3 RK_FUNC_GPIO &pcfg_pull_up>;
580*b2d2a78aSEmmanuel Vadot		};
581*b2d2a78aSEmmanuel Vadot	};
582*b2d2a78aSEmmanuel Vadot};
583*b2d2a78aSEmmanuel Vadot
584*b2d2a78aSEmmanuel Vadot&pwm1 {
585*b2d2a78aSEmmanuel Vadot	pinctrl-0 = <&pwm1m1_pins>;
586*b2d2a78aSEmmanuel Vadot	status = "okay";
587*b2d2a78aSEmmanuel Vadot};
588*b2d2a78aSEmmanuel Vadot
589*b2d2a78aSEmmanuel Vadot&saradc {
590*b2d2a78aSEmmanuel Vadot	vref-supply = <&avcc_1v8_s0>;
591*b2d2a78aSEmmanuel Vadot	status = "okay";
592*b2d2a78aSEmmanuel Vadot};
593*b2d2a78aSEmmanuel Vadot
594*b2d2a78aSEmmanuel Vadot&sdhci {
595*b2d2a78aSEmmanuel Vadot	bus-width = <8>;
596*b2d2a78aSEmmanuel Vadot	no-sdio;
597*b2d2a78aSEmmanuel Vadot	no-sd;
598*b2d2a78aSEmmanuel Vadot	non-removable;
599*b2d2a78aSEmmanuel Vadot	max-frequency = <200000000>;
600*b2d2a78aSEmmanuel Vadot	mmc-hs400-1_8v;
601*b2d2a78aSEmmanuel Vadot	mmc-hs400-enhanced-strobe;
602*b2d2a78aSEmmanuel Vadot	status = "okay";
603*b2d2a78aSEmmanuel Vadot};
604*b2d2a78aSEmmanuel Vadot
605*b2d2a78aSEmmanuel Vadot&sdmmc {
606*b2d2a78aSEmmanuel Vadot	bus-width = <4>;
607*b2d2a78aSEmmanuel Vadot	cap-mmc-highspeed;
608*b2d2a78aSEmmanuel Vadot	cap-sd-highspeed;
609*b2d2a78aSEmmanuel Vadot	cd-gpios = <&gpio0 RK_PA4 GPIO_ACTIVE_LOW>;
610*b2d2a78aSEmmanuel Vadot	disable-wp;
611*b2d2a78aSEmmanuel Vadot	no-mmc;
612*b2d2a78aSEmmanuel Vadot	no-sdio;
613*b2d2a78aSEmmanuel Vadot	sd-uhs-sdr104;
614*b2d2a78aSEmmanuel Vadot	vmmc-supply = <&vcc3v3_sd_s0>;
615*b2d2a78aSEmmanuel Vadot	vqmmc-supply = <&vccio_sd_s0>;
616*b2d2a78aSEmmanuel Vadot	status = "okay";
617*b2d2a78aSEmmanuel Vadot};
618*b2d2a78aSEmmanuel Vadot
619*b2d2a78aSEmmanuel Vadot/* optional on non-LTS, populated on LTS version */
620*b2d2a78aSEmmanuel Vadot&sfc {
621*b2d2a78aSEmmanuel Vadot	pinctrl-names = "default";
622*b2d2a78aSEmmanuel Vadot	pinctrl-0 = <&fspim1_pins>;
623*b2d2a78aSEmmanuel Vadot	status = "okay";
624*b2d2a78aSEmmanuel Vadot
625*b2d2a78aSEmmanuel Vadot	flash@0 {
626*b2d2a78aSEmmanuel Vadot		compatible = "jedec,spi-nor";
627*b2d2a78aSEmmanuel Vadot		reg = <0>;
628*b2d2a78aSEmmanuel Vadot		spi-max-frequency = <104000000>;
629*b2d2a78aSEmmanuel Vadot		spi-rx-bus-width = <4>;
630*b2d2a78aSEmmanuel Vadot		spi-tx-bus-width = <1>;
631*b2d2a78aSEmmanuel Vadot	};
632*b2d2a78aSEmmanuel Vadot};
633*b2d2a78aSEmmanuel Vadot
634*b2d2a78aSEmmanuel Vadot&spi2 {
635*b2d2a78aSEmmanuel Vadot	status = "okay";
636*b2d2a78aSEmmanuel Vadot	assigned-clocks = <&cru CLK_SPI2>;
637*b2d2a78aSEmmanuel Vadot	assigned-clock-rates = <200000000>;
638*b2d2a78aSEmmanuel Vadot	pinctrl-names = "default";
639*b2d2a78aSEmmanuel Vadot	pinctrl-0 = <&spi2m2_cs0 &spi2m2_pins>;
640*b2d2a78aSEmmanuel Vadot	num-cs = <1>;
641*b2d2a78aSEmmanuel Vadot
642*b2d2a78aSEmmanuel Vadot	pmic@0 {
643*b2d2a78aSEmmanuel Vadot		compatible = "rockchip,rk806";
644*b2d2a78aSEmmanuel Vadot		spi-max-frequency = <1000000>;
645*b2d2a78aSEmmanuel Vadot		reg = <0x0>;
646*b2d2a78aSEmmanuel Vadot
647*b2d2a78aSEmmanuel Vadot		interrupt-parent = <&gpio0>;
648*b2d2a78aSEmmanuel Vadot		interrupts = <7 IRQ_TYPE_LEVEL_LOW>;
649*b2d2a78aSEmmanuel Vadot
650*b2d2a78aSEmmanuel Vadot		pinctrl-names = "default";
651*b2d2a78aSEmmanuel Vadot		pinctrl-0 = <&pmic_pins>, <&rk806_dvs1_null>,
652*b2d2a78aSEmmanuel Vadot			    <&rk806_dvs2_null>, <&rk806_dvs3_null>;
653*b2d2a78aSEmmanuel Vadot
654*b2d2a78aSEmmanuel Vadot		system-power-controller;
655*b2d2a78aSEmmanuel Vadot
656*b2d2a78aSEmmanuel Vadot		vcc1-supply = <&vcc4v0_sys>;
657*b2d2a78aSEmmanuel Vadot		vcc2-supply = <&vcc4v0_sys>;
658*b2d2a78aSEmmanuel Vadot		vcc3-supply = <&vcc4v0_sys>;
659*b2d2a78aSEmmanuel Vadot		vcc4-supply = <&vcc4v0_sys>;
660*b2d2a78aSEmmanuel Vadot		vcc5-supply = <&vcc4v0_sys>;
661*b2d2a78aSEmmanuel Vadot		vcc6-supply = <&vcc4v0_sys>;
662*b2d2a78aSEmmanuel Vadot		vcc7-supply = <&vcc4v0_sys>;
663*b2d2a78aSEmmanuel Vadot		vcc8-supply = <&vcc4v0_sys>;
664*b2d2a78aSEmmanuel Vadot		vcc9-supply = <&vcc4v0_sys>;
665*b2d2a78aSEmmanuel Vadot		vcc10-supply = <&vcc4v0_sys>;
666*b2d2a78aSEmmanuel Vadot		vcc11-supply = <&vcc_2v0_pldo_s3>;
667*b2d2a78aSEmmanuel Vadot		vcc12-supply = <&vcc4v0_sys>;
668*b2d2a78aSEmmanuel Vadot		vcc13-supply = <&vcc_1v1_nldo_s3>;
669*b2d2a78aSEmmanuel Vadot		vcc14-supply = <&vcc_1v1_nldo_s3>;
670*b2d2a78aSEmmanuel Vadot		vcca-supply = <&vcc4v0_sys>;
671*b2d2a78aSEmmanuel Vadot
672*b2d2a78aSEmmanuel Vadot		gpio-controller;
673*b2d2a78aSEmmanuel Vadot		#gpio-cells = <2>;
674*b2d2a78aSEmmanuel Vadot
675*b2d2a78aSEmmanuel Vadot		rk806_dvs1_null: dvs1-null-pins {
676*b2d2a78aSEmmanuel Vadot			pins = "gpio_pwrctrl1";
677*b2d2a78aSEmmanuel Vadot			function = "pin_fun0";
678*b2d2a78aSEmmanuel Vadot		};
679*b2d2a78aSEmmanuel Vadot
680*b2d2a78aSEmmanuel Vadot		rk806_dvs2_null: dvs2-null-pins {
681*b2d2a78aSEmmanuel Vadot			pins = "gpio_pwrctrl2";
682*b2d2a78aSEmmanuel Vadot			function = "pin_fun0";
683*b2d2a78aSEmmanuel Vadot		};
684*b2d2a78aSEmmanuel Vadot
685*b2d2a78aSEmmanuel Vadot		rk806_dvs3_null: dvs3-null-pins {
686*b2d2a78aSEmmanuel Vadot			pins = "gpio_pwrctrl3";
687*b2d2a78aSEmmanuel Vadot			function = "pin_fun0";
688*b2d2a78aSEmmanuel Vadot		};
689*b2d2a78aSEmmanuel Vadot
690*b2d2a78aSEmmanuel Vadot		regulators {
691*b2d2a78aSEmmanuel Vadot			vdd_gpu_s0: vdd_gpu_mem_s0: dcdc-reg1 {
692*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
693*b2d2a78aSEmmanuel Vadot				regulator-min-microvolt = <550000>;
694*b2d2a78aSEmmanuel Vadot				regulator-max-microvolt = <950000>;
695*b2d2a78aSEmmanuel Vadot				regulator-ramp-delay = <12500>;
696*b2d2a78aSEmmanuel Vadot				regulator-name = "vdd_gpu_s0";
697*b2d2a78aSEmmanuel Vadot				regulator-enable-ramp-delay = <400>;
698*b2d2a78aSEmmanuel Vadot
699*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
700*b2d2a78aSEmmanuel Vadot					regulator-off-in-suspend;
701*b2d2a78aSEmmanuel Vadot				};
702*b2d2a78aSEmmanuel Vadot			};
703*b2d2a78aSEmmanuel Vadot
704*b2d2a78aSEmmanuel Vadot			vdd_cpu_lit_s0: vdd_cpu_lit_mem_s0: dcdc-reg2 {
705*b2d2a78aSEmmanuel Vadot				regulator-always-on;
706*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
707*b2d2a78aSEmmanuel Vadot				regulator-min-microvolt = <550000>;
708*b2d2a78aSEmmanuel Vadot				regulator-max-microvolt = <950000>;
709*b2d2a78aSEmmanuel Vadot				regulator-ramp-delay = <12500>;
710*b2d2a78aSEmmanuel Vadot				regulator-name = "vdd_cpu_lit_s0";
711*b2d2a78aSEmmanuel Vadot
712*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
713*b2d2a78aSEmmanuel Vadot					regulator-off-in-suspend;
714*b2d2a78aSEmmanuel Vadot				};
715*b2d2a78aSEmmanuel Vadot			};
716*b2d2a78aSEmmanuel Vadot
717*b2d2a78aSEmmanuel Vadot			vdd_log_s0: dcdc-reg3 {
718*b2d2a78aSEmmanuel Vadot				regulator-always-on;
719*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
720*b2d2a78aSEmmanuel Vadot				regulator-min-microvolt = <675000>;
721*b2d2a78aSEmmanuel Vadot				regulator-max-microvolt = <750000>;
722*b2d2a78aSEmmanuel Vadot				regulator-ramp-delay = <12500>;
723*b2d2a78aSEmmanuel Vadot				regulator-name = "vdd_log_s0";
724*b2d2a78aSEmmanuel Vadot
725*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
726*b2d2a78aSEmmanuel Vadot					regulator-off-in-suspend;
727*b2d2a78aSEmmanuel Vadot					regulator-suspend-microvolt = <750000>;
728*b2d2a78aSEmmanuel Vadot				};
729*b2d2a78aSEmmanuel Vadot			};
730*b2d2a78aSEmmanuel Vadot
731*b2d2a78aSEmmanuel Vadot			vdd_vdenc_s0: vdd_vdenc_mem_s0: dcdc-reg4 {
732*b2d2a78aSEmmanuel Vadot				regulator-always-on;
733*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
734*b2d2a78aSEmmanuel Vadot				regulator-min-microvolt = <550000>;
735*b2d2a78aSEmmanuel Vadot				regulator-max-microvolt = <950000>;
736*b2d2a78aSEmmanuel Vadot				regulator-ramp-delay = <12500>;
737*b2d2a78aSEmmanuel Vadot				regulator-name = "vdd_vdenc_s0";
738*b2d2a78aSEmmanuel Vadot
739*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
740*b2d2a78aSEmmanuel Vadot					regulator-off-in-suspend;
741*b2d2a78aSEmmanuel Vadot				};
742*b2d2a78aSEmmanuel Vadot			};
743*b2d2a78aSEmmanuel Vadot
744*b2d2a78aSEmmanuel Vadot			vdd_ddr_s0: dcdc-reg5 {
745*b2d2a78aSEmmanuel Vadot				regulator-always-on;
746*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
747*b2d2a78aSEmmanuel Vadot				regulator-min-microvolt = <675000>;
748*b2d2a78aSEmmanuel Vadot				regulator-max-microvolt = <900000>;
749*b2d2a78aSEmmanuel Vadot				regulator-ramp-delay = <12500>;
750*b2d2a78aSEmmanuel Vadot				regulator-name = "vdd_ddr_s0";
751*b2d2a78aSEmmanuel Vadot
752*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
753*b2d2a78aSEmmanuel Vadot					regulator-off-in-suspend;
754*b2d2a78aSEmmanuel Vadot					regulator-suspend-microvolt = <850000>;
755*b2d2a78aSEmmanuel Vadot				};
756*b2d2a78aSEmmanuel Vadot			};
757*b2d2a78aSEmmanuel Vadot
758*b2d2a78aSEmmanuel Vadot			vdd2_ddr_s3: dcdc-reg6 {
759*b2d2a78aSEmmanuel Vadot				regulator-always-on;
760*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
761*b2d2a78aSEmmanuel Vadot				regulator-name = "vdd2_ddr_s3";
762*b2d2a78aSEmmanuel Vadot
763*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
764*b2d2a78aSEmmanuel Vadot					regulator-on-in-suspend;
765*b2d2a78aSEmmanuel Vadot				};
766*b2d2a78aSEmmanuel Vadot			};
767*b2d2a78aSEmmanuel Vadot
768*b2d2a78aSEmmanuel Vadot			vcc_2v0_pldo_s3: dcdc-reg7 {
769*b2d2a78aSEmmanuel Vadot				regulator-always-on;
770*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
771*b2d2a78aSEmmanuel Vadot				regulator-min-microvolt = <2000000>;
772*b2d2a78aSEmmanuel Vadot				regulator-max-microvolt = <2000000>;
773*b2d2a78aSEmmanuel Vadot				regulator-ramp-delay = <12500>;
774*b2d2a78aSEmmanuel Vadot				regulator-name = "vdd_2v0_pldo_s3";
775*b2d2a78aSEmmanuel Vadot
776*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
777*b2d2a78aSEmmanuel Vadot					regulator-on-in-suspend;
778*b2d2a78aSEmmanuel Vadot					regulator-suspend-microvolt = <2000000>;
779*b2d2a78aSEmmanuel Vadot				};
780*b2d2a78aSEmmanuel Vadot			};
781*b2d2a78aSEmmanuel Vadot
782*b2d2a78aSEmmanuel Vadot			vcc_3v3_s3: dcdc-reg8 {
783*b2d2a78aSEmmanuel Vadot				regulator-always-on;
784*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
785*b2d2a78aSEmmanuel Vadot				regulator-min-microvolt = <3300000>;
786*b2d2a78aSEmmanuel Vadot				regulator-max-microvolt = <3300000>;
787*b2d2a78aSEmmanuel Vadot				regulator-name = "vcc_3v3_s3";
788*b2d2a78aSEmmanuel Vadot
789*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
790*b2d2a78aSEmmanuel Vadot					regulator-on-in-suspend;
791*b2d2a78aSEmmanuel Vadot					regulator-suspend-microvolt = <3300000>;
792*b2d2a78aSEmmanuel Vadot				};
793*b2d2a78aSEmmanuel Vadot			};
794*b2d2a78aSEmmanuel Vadot
795*b2d2a78aSEmmanuel Vadot			vddq_ddr_s0: dcdc-reg9 {
796*b2d2a78aSEmmanuel Vadot				regulator-always-on;
797*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
798*b2d2a78aSEmmanuel Vadot				regulator-name = "vddq_ddr_s0";
799*b2d2a78aSEmmanuel Vadot
800*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
801*b2d2a78aSEmmanuel Vadot					regulator-off-in-suspend;
802*b2d2a78aSEmmanuel Vadot				};
803*b2d2a78aSEmmanuel Vadot			};
804*b2d2a78aSEmmanuel Vadot
805*b2d2a78aSEmmanuel Vadot			vcc_1v8_s3: dcdc-reg10 {
806*b2d2a78aSEmmanuel Vadot				regulator-always-on;
807*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
808*b2d2a78aSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
809*b2d2a78aSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
810*b2d2a78aSEmmanuel Vadot				regulator-name = "vcc_1v8_s3";
811*b2d2a78aSEmmanuel Vadot
812*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
813*b2d2a78aSEmmanuel Vadot					regulator-on-in-suspend;
814*b2d2a78aSEmmanuel Vadot					regulator-suspend-microvolt = <1800000>;
815*b2d2a78aSEmmanuel Vadot				};
816*b2d2a78aSEmmanuel Vadot			};
817*b2d2a78aSEmmanuel Vadot
818*b2d2a78aSEmmanuel Vadot			avcc_1v8_s0: pldo-reg1 {
819*b2d2a78aSEmmanuel Vadot				regulator-always-on;
820*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
821*b2d2a78aSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
822*b2d2a78aSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
823*b2d2a78aSEmmanuel Vadot				regulator-name = "avcc_1v8_s0";
824*b2d2a78aSEmmanuel Vadot
825*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
826*b2d2a78aSEmmanuel Vadot					regulator-off-in-suspend;
827*b2d2a78aSEmmanuel Vadot				};
828*b2d2a78aSEmmanuel Vadot			};
829*b2d2a78aSEmmanuel Vadot
830*b2d2a78aSEmmanuel Vadot			vcc_1v8_s0: pldo-reg2 {
831*b2d2a78aSEmmanuel Vadot				regulator-always-on;
832*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
833*b2d2a78aSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
834*b2d2a78aSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
835*b2d2a78aSEmmanuel Vadot				regulator-name = "vcc_1v8_s0";
836*b2d2a78aSEmmanuel Vadot
837*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
838*b2d2a78aSEmmanuel Vadot					regulator-off-in-suspend;
839*b2d2a78aSEmmanuel Vadot					regulator-suspend-microvolt = <1800000>;
840*b2d2a78aSEmmanuel Vadot				};
841*b2d2a78aSEmmanuel Vadot			};
842*b2d2a78aSEmmanuel Vadot
843*b2d2a78aSEmmanuel Vadot			avdd_1v2_s0: pldo-reg3 {
844*b2d2a78aSEmmanuel Vadot				regulator-always-on;
845*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
846*b2d2a78aSEmmanuel Vadot				regulator-min-microvolt = <1200000>;
847*b2d2a78aSEmmanuel Vadot				regulator-max-microvolt = <1200000>;
848*b2d2a78aSEmmanuel Vadot				regulator-name = "avdd_1v2_s0";
849*b2d2a78aSEmmanuel Vadot
850*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
851*b2d2a78aSEmmanuel Vadot					regulator-off-in-suspend;
852*b2d2a78aSEmmanuel Vadot				};
853*b2d2a78aSEmmanuel Vadot			};
854*b2d2a78aSEmmanuel Vadot
855*b2d2a78aSEmmanuel Vadot			vcc_3v3_s0: pldo-reg4 {
856*b2d2a78aSEmmanuel Vadot				regulator-always-on;
857*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
858*b2d2a78aSEmmanuel Vadot				regulator-min-microvolt = <3300000>;
859*b2d2a78aSEmmanuel Vadot				regulator-max-microvolt = <3300000>;
860*b2d2a78aSEmmanuel Vadot				regulator-ramp-delay = <12500>;
861*b2d2a78aSEmmanuel Vadot				regulator-name = "vcc_3v3_s0";
862*b2d2a78aSEmmanuel Vadot
863*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
864*b2d2a78aSEmmanuel Vadot					regulator-off-in-suspend;
865*b2d2a78aSEmmanuel Vadot				};
866*b2d2a78aSEmmanuel Vadot			};
867*b2d2a78aSEmmanuel Vadot
868*b2d2a78aSEmmanuel Vadot			vccio_sd_s0: pldo-reg5 {
869*b2d2a78aSEmmanuel Vadot				regulator-always-on;
870*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
871*b2d2a78aSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
872*b2d2a78aSEmmanuel Vadot				regulator-max-microvolt = <3300000>;
873*b2d2a78aSEmmanuel Vadot				regulator-ramp-delay = <12500>;
874*b2d2a78aSEmmanuel Vadot				regulator-name = "vccio_sd_s0";
875*b2d2a78aSEmmanuel Vadot
876*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
877*b2d2a78aSEmmanuel Vadot					regulator-off-in-suspend;
878*b2d2a78aSEmmanuel Vadot				};
879*b2d2a78aSEmmanuel Vadot			};
880*b2d2a78aSEmmanuel Vadot
881*b2d2a78aSEmmanuel Vadot			pldo6_s3: pldo-reg6 {
882*b2d2a78aSEmmanuel Vadot				regulator-always-on;
883*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
884*b2d2a78aSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
885*b2d2a78aSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
886*b2d2a78aSEmmanuel Vadot				regulator-name = "pldo6_s3";
887*b2d2a78aSEmmanuel Vadot
888*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
889*b2d2a78aSEmmanuel Vadot					regulator-on-in-suspend;
890*b2d2a78aSEmmanuel Vadot					regulator-suspend-microvolt = <1800000>;
891*b2d2a78aSEmmanuel Vadot				};
892*b2d2a78aSEmmanuel Vadot			};
893*b2d2a78aSEmmanuel Vadot
894*b2d2a78aSEmmanuel Vadot			vdd_0v75_s3: nldo-reg1 {
895*b2d2a78aSEmmanuel Vadot				regulator-always-on;
896*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
897*b2d2a78aSEmmanuel Vadot				regulator-min-microvolt = <750000>;
898*b2d2a78aSEmmanuel Vadot				regulator-max-microvolt = <750000>;
899*b2d2a78aSEmmanuel Vadot				regulator-name = "vdd_0v75_s3";
900*b2d2a78aSEmmanuel Vadot
901*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
902*b2d2a78aSEmmanuel Vadot					regulator-on-in-suspend;
903*b2d2a78aSEmmanuel Vadot					regulator-suspend-microvolt = <750000>;
904*b2d2a78aSEmmanuel Vadot				};
905*b2d2a78aSEmmanuel Vadot			};
906*b2d2a78aSEmmanuel Vadot
907*b2d2a78aSEmmanuel Vadot			vdd_ddr_pll_s0: nldo-reg2 {
908*b2d2a78aSEmmanuel Vadot				regulator-always-on;
909*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
910*b2d2a78aSEmmanuel Vadot				regulator-min-microvolt = <850000>;
911*b2d2a78aSEmmanuel Vadot				regulator-max-microvolt = <850000>;
912*b2d2a78aSEmmanuel Vadot				regulator-name = "vdd_ddr_pll_s0";
913*b2d2a78aSEmmanuel Vadot
914*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
915*b2d2a78aSEmmanuel Vadot					regulator-off-in-suspend;
916*b2d2a78aSEmmanuel Vadot					regulator-suspend-microvolt = <850000>;
917*b2d2a78aSEmmanuel Vadot				};
918*b2d2a78aSEmmanuel Vadot			};
919*b2d2a78aSEmmanuel Vadot
920*b2d2a78aSEmmanuel Vadot			avdd_0v75_s0: nldo-reg3 {
921*b2d2a78aSEmmanuel Vadot				regulator-always-on;
922*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
923*b2d2a78aSEmmanuel Vadot				regulator-min-microvolt = <750000>;
924*b2d2a78aSEmmanuel Vadot				regulator-max-microvolt = <750000>;
925*b2d2a78aSEmmanuel Vadot				regulator-name = "avdd_0v75_s0";
926*b2d2a78aSEmmanuel Vadot
927*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
928*b2d2a78aSEmmanuel Vadot					regulator-off-in-suspend;
929*b2d2a78aSEmmanuel Vadot				};
930*b2d2a78aSEmmanuel Vadot			};
931*b2d2a78aSEmmanuel Vadot
932*b2d2a78aSEmmanuel Vadot			vdd_0v85_s0: nldo-reg4 {
933*b2d2a78aSEmmanuel Vadot				regulator-always-on;
934*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
935*b2d2a78aSEmmanuel Vadot				regulator-min-microvolt = <850000>;
936*b2d2a78aSEmmanuel Vadot				regulator-max-microvolt = <850000>;
937*b2d2a78aSEmmanuel Vadot				regulator-name = "vdd_0v85_s0";
938*b2d2a78aSEmmanuel Vadot
939*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
940*b2d2a78aSEmmanuel Vadot					regulator-off-in-suspend;
941*b2d2a78aSEmmanuel Vadot				};
942*b2d2a78aSEmmanuel Vadot			};
943*b2d2a78aSEmmanuel Vadot
944*b2d2a78aSEmmanuel Vadot			vdd_0v75_s0: nldo-reg5 {
945*b2d2a78aSEmmanuel Vadot				regulator-always-on;
946*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
947*b2d2a78aSEmmanuel Vadot				regulator-min-microvolt = <750000>;
948*b2d2a78aSEmmanuel Vadot				regulator-max-microvolt = <750000>;
949*b2d2a78aSEmmanuel Vadot				regulator-name = "vdd_0v75_s0";
950*b2d2a78aSEmmanuel Vadot
951*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
952*b2d2a78aSEmmanuel Vadot					regulator-off-in-suspend;
953*b2d2a78aSEmmanuel Vadot				};
954*b2d2a78aSEmmanuel Vadot			};
955*b2d2a78aSEmmanuel Vadot		};
956*b2d2a78aSEmmanuel Vadot	};
957*b2d2a78aSEmmanuel Vadot};
958*b2d2a78aSEmmanuel Vadot
959*b2d2a78aSEmmanuel Vadot&tsadc {
960*b2d2a78aSEmmanuel Vadot	status = "okay";
961*b2d2a78aSEmmanuel Vadot};
962*b2d2a78aSEmmanuel Vadot
963*b2d2a78aSEmmanuel Vadot&uart2 {
964*b2d2a78aSEmmanuel Vadot	pinctrl-0 = <&uart2m0_xfer>;
965*b2d2a78aSEmmanuel Vadot	status = "okay";
966*b2d2a78aSEmmanuel Vadot};
967*b2d2a78aSEmmanuel Vadot
968*b2d2a78aSEmmanuel Vadot&u2phy0 {
969*b2d2a78aSEmmanuel Vadot	status = "okay";
970*b2d2a78aSEmmanuel Vadot};
971*b2d2a78aSEmmanuel Vadot
972*b2d2a78aSEmmanuel Vadot&u2phy0_otg {
973*b2d2a78aSEmmanuel Vadot	status = "okay";
974*b2d2a78aSEmmanuel Vadot};
975*b2d2a78aSEmmanuel Vadot
976*b2d2a78aSEmmanuel Vadot&u2phy2_host {
977*b2d2a78aSEmmanuel Vadot	status = "okay";
978*b2d2a78aSEmmanuel Vadot};
979*b2d2a78aSEmmanuel Vadot
980*b2d2a78aSEmmanuel Vadot&u2phy3_host {
981*b2d2a78aSEmmanuel Vadot	status = "okay";
982*b2d2a78aSEmmanuel Vadot};
983*b2d2a78aSEmmanuel Vadot
984*b2d2a78aSEmmanuel Vadot&u2phy2 {
985*b2d2a78aSEmmanuel Vadot	status = "okay";
986*b2d2a78aSEmmanuel Vadot};
987*b2d2a78aSEmmanuel Vadot
988*b2d2a78aSEmmanuel Vadot&u2phy3 {
989*b2d2a78aSEmmanuel Vadot	status = "okay";
990*b2d2a78aSEmmanuel Vadot};
991*b2d2a78aSEmmanuel Vadot
992*b2d2a78aSEmmanuel Vadot&usbdp_phy0 {
993*b2d2a78aSEmmanuel Vadot	mode-switch;
994*b2d2a78aSEmmanuel Vadot	orientation-switch;
995*b2d2a78aSEmmanuel Vadot	sbu1-dc-gpios = <&gpio4 RK_PA6 GPIO_ACTIVE_HIGH>;
996*b2d2a78aSEmmanuel Vadot	sbu2-dc-gpios = <&gpio4 RK_PA7 GPIO_ACTIVE_HIGH>;
997*b2d2a78aSEmmanuel Vadot	status = "okay";
998*b2d2a78aSEmmanuel Vadot
999*b2d2a78aSEmmanuel Vadot	port {
1000*b2d2a78aSEmmanuel Vadot		#address-cells = <1>;
1001*b2d2a78aSEmmanuel Vadot		#size-cells = <0>;
1002*b2d2a78aSEmmanuel Vadot
1003*b2d2a78aSEmmanuel Vadot		usbdp_phy0_typec_ss: endpoint@0 {
1004*b2d2a78aSEmmanuel Vadot			reg = <0>;
1005*b2d2a78aSEmmanuel Vadot			remote-endpoint = <&usbc0_ss>;
1006*b2d2a78aSEmmanuel Vadot		};
1007*b2d2a78aSEmmanuel Vadot
1008*b2d2a78aSEmmanuel Vadot		usbdp_phy0_typec_sbu: endpoint@1 {
1009*b2d2a78aSEmmanuel Vadot			reg = <1>;
1010*b2d2a78aSEmmanuel Vadot			remote-endpoint = <&usbc0_sbu>;
1011*b2d2a78aSEmmanuel Vadot		};
1012*b2d2a78aSEmmanuel Vadot	};
1013*b2d2a78aSEmmanuel Vadot};
1014*b2d2a78aSEmmanuel Vadot
1015*b2d2a78aSEmmanuel Vadot&usb_host0_ehci {
1016*b2d2a78aSEmmanuel Vadot	status = "okay";
1017*b2d2a78aSEmmanuel Vadot};
1018*b2d2a78aSEmmanuel Vadot
1019*b2d2a78aSEmmanuel Vadot&usb_host0_ohci {
1020*b2d2a78aSEmmanuel Vadot	status = "okay";
1021*b2d2a78aSEmmanuel Vadot};
1022*b2d2a78aSEmmanuel Vadot
1023*b2d2a78aSEmmanuel Vadot&usb_host0_xhci {
1024*b2d2a78aSEmmanuel Vadot	dr_mode = "host";
1025*b2d2a78aSEmmanuel Vadot	status = "okay";
1026*b2d2a78aSEmmanuel Vadot	usb-role-switch;
1027*b2d2a78aSEmmanuel Vadot
1028*b2d2a78aSEmmanuel Vadot	port {
1029*b2d2a78aSEmmanuel Vadot		usb_host0_xhci_drd_sw: endpoint {
1030*b2d2a78aSEmmanuel Vadot			remote-endpoint = <&usbc0_hs>;
1031*b2d2a78aSEmmanuel Vadot		};
1032*b2d2a78aSEmmanuel Vadot	};
1033*b2d2a78aSEmmanuel Vadot};
1034*b2d2a78aSEmmanuel Vadot
1035*b2d2a78aSEmmanuel Vadot&usb_host1_ehci {
1036*b2d2a78aSEmmanuel Vadot	status = "okay";
1037*b2d2a78aSEmmanuel Vadot};
1038*b2d2a78aSEmmanuel Vadot
1039*b2d2a78aSEmmanuel Vadot&usb_host1_ohci {
1040*b2d2a78aSEmmanuel Vadot	status = "okay";
1041*b2d2a78aSEmmanuel Vadot};
1042