1*f126890aSEmmanuel Vadot// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2*f126890aSEmmanuel Vadot/*
3*f126890aSEmmanuel Vadot * Copyright (C) 2017 Jagan Teki <jagan@amarulasolutions.com>
4*f126890aSEmmanuel Vadot */
5*f126890aSEmmanuel Vadot
6*f126890aSEmmanuel Vadot/dts-v1/;
7*f126890aSEmmanuel Vadot#include "rk3288.dtsi"
8*f126890aSEmmanuel Vadot
9*f126890aSEmmanuel Vadot/ {
10*f126890aSEmmanuel Vadot	model = "Amarula Vyasa-RK3288";
11*f126890aSEmmanuel Vadot	compatible = "amarula,vyasa-rk3288", "rockchip,rk3288";
12*f126890aSEmmanuel Vadot
13*f126890aSEmmanuel Vadot	chosen {
14*f126890aSEmmanuel Vadot		stdout-path = &uart2;
15*f126890aSEmmanuel Vadot	};
16*f126890aSEmmanuel Vadot
17*f126890aSEmmanuel Vadot	memory {
18*f126890aSEmmanuel Vadot		reg = <0x0 0x0 0x0 0x80000000>;
19*f126890aSEmmanuel Vadot		device_type = "memory";
20*f126890aSEmmanuel Vadot	};
21*f126890aSEmmanuel Vadot
22*f126890aSEmmanuel Vadot	dc12_vbat: dc12-vbat {
23*f126890aSEmmanuel Vadot		compatible = "regulator-fixed";
24*f126890aSEmmanuel Vadot		regulator-name = "dc12_vbat";
25*f126890aSEmmanuel Vadot		regulator-min-microvolt = <12000000>;
26*f126890aSEmmanuel Vadot		regulator-max-microvolt = <12000000>;
27*f126890aSEmmanuel Vadot		regulator-always-on;
28*f126890aSEmmanuel Vadot		regulator-boot-on;
29*f126890aSEmmanuel Vadot	};
30*f126890aSEmmanuel Vadot
31*f126890aSEmmanuel Vadot	vboot_3v3: vboot-3v3 {
32*f126890aSEmmanuel Vadot		compatible = "regulator-fixed";
33*f126890aSEmmanuel Vadot		regulator-name = "vboot_3v3";
34*f126890aSEmmanuel Vadot		regulator-min-microvolt = <3300000>;
35*f126890aSEmmanuel Vadot		regulator-max-microvolt = <3300000>;
36*f126890aSEmmanuel Vadot		regulator-always-on;
37*f126890aSEmmanuel Vadot		regulator-boot-on;
38*f126890aSEmmanuel Vadot		vin-supply = <&dc12_vbat>;
39*f126890aSEmmanuel Vadot	};
40*f126890aSEmmanuel Vadot
41*f126890aSEmmanuel Vadot	vcc_sys: vsys-regulator {
42*f126890aSEmmanuel Vadot		compatible = "regulator-fixed";
43*f126890aSEmmanuel Vadot		regulator-name = "vcc_sys";
44*f126890aSEmmanuel Vadot		regulator-min-microvolt = <3700000>;
45*f126890aSEmmanuel Vadot		regulator-max-microvolt = <3700000>;
46*f126890aSEmmanuel Vadot		regulator-always-on;
47*f126890aSEmmanuel Vadot		regulator-boot-on;
48*f126890aSEmmanuel Vadot		vin-supply = <&dc12_vbat>;
49*f126890aSEmmanuel Vadot	};
50*f126890aSEmmanuel Vadot
51*f126890aSEmmanuel Vadot	vboot_5v: vboot-5v {
52*f126890aSEmmanuel Vadot		compatible = "regulator-fixed";
53*f126890aSEmmanuel Vadot		regulator-name = "vboot_sv";
54*f126890aSEmmanuel Vadot		regulator-min-microvolt = <5000000>;
55*f126890aSEmmanuel Vadot		regulator-max-microvolt = <5000000>;
56*f126890aSEmmanuel Vadot		regulator-always-on;
57*f126890aSEmmanuel Vadot		regulator-boot-on;
58*f126890aSEmmanuel Vadot		vin-supply = <&dc12_vbat>;
59*f126890aSEmmanuel Vadot	};
60*f126890aSEmmanuel Vadot
61*f126890aSEmmanuel Vadot	v3g_3v3: v3g-3v3 {
62*f126890aSEmmanuel Vadot		compatible = "regulator-fixed";
63*f126890aSEmmanuel Vadot		regulator-name = "v3g_3v3";
64*f126890aSEmmanuel Vadot		regulator-min-microvolt = <3300000>;
65*f126890aSEmmanuel Vadot		regulator-max-microvolt = <3300000>;
66*f126890aSEmmanuel Vadot		regulator-always-on;
67*f126890aSEmmanuel Vadot		regulator-boot-on;
68*f126890aSEmmanuel Vadot		vin-supply = <&dc12_vbat>;
69*f126890aSEmmanuel Vadot	};
70*f126890aSEmmanuel Vadot
71*f126890aSEmmanuel Vadot	vsus_5v: vsus-5v {
72*f126890aSEmmanuel Vadot		compatible = "regulator-fixed";
73*f126890aSEmmanuel Vadot		regulator-name = "vsus_5v";
74*f126890aSEmmanuel Vadot		regulator-min-microvolt = <5000000>;
75*f126890aSEmmanuel Vadot		regulator-max-microvolt = <5000000>;
76*f126890aSEmmanuel Vadot		regulator-always-on;
77*f126890aSEmmanuel Vadot		regulator-boot-on;
78*f126890aSEmmanuel Vadot		vin-supply = <&vcc_io>;
79*f126890aSEmmanuel Vadot	};
80*f126890aSEmmanuel Vadot
81*f126890aSEmmanuel Vadot	vcc50_hdmi: vcc50-hdmi {
82*f126890aSEmmanuel Vadot		compatible = "regulator-fixed";
83*f126890aSEmmanuel Vadot		regulator-name = "vcc50_hdmi";
84*f126890aSEmmanuel Vadot		enable-active-high;
85*f126890aSEmmanuel Vadot		gpio = <&gpio7 RK_PB4 GPIO_ACTIVE_HIGH>; /* HDMI_EN */
86*f126890aSEmmanuel Vadot		pinctrl-names = "default";
87*f126890aSEmmanuel Vadot		pinctrl-0 = <&vcc50_hdmi_en>;
88*f126890aSEmmanuel Vadot		regulator-always-on;
89*f126890aSEmmanuel Vadot		regulator-boot-on;
90*f126890aSEmmanuel Vadot		vin-supply = <&vsus_5v>;
91*f126890aSEmmanuel Vadot	};
92*f126890aSEmmanuel Vadot
93*f126890aSEmmanuel Vadot	vusb1_5v: vusb1-5v {
94*f126890aSEmmanuel Vadot		compatible = "regulator-fixed";
95*f126890aSEmmanuel Vadot		regulator-name = "vusb1_5v";
96*f126890aSEmmanuel Vadot		enable-active-high;
97*f126890aSEmmanuel Vadot		gpio = <&gpio0 RK_PB4 GPIO_ACTIVE_HIGH>; /* OTG_VBUS_DRV */
98*f126890aSEmmanuel Vadot		pinctrl-names = "default";
99*f126890aSEmmanuel Vadot		pinctrl-0 = <&otg_vbus_drv>;
100*f126890aSEmmanuel Vadot		regulator-min-microvolt = <5000000>;
101*f126890aSEmmanuel Vadot		regulator-max-microvolt = <5000000>;
102*f126890aSEmmanuel Vadot		vin-supply = <&vsus_5v>;
103*f126890aSEmmanuel Vadot	};
104*f126890aSEmmanuel Vadot
105*f126890aSEmmanuel Vadot	vusb2_5v: vusb2-5v {
106*f126890aSEmmanuel Vadot		compatible = "regulator-fixed";
107*f126890aSEmmanuel Vadot		regulator-name = "vusb2_5v";
108*f126890aSEmmanuel Vadot		enable-active-high;
109*f126890aSEmmanuel Vadot		gpio = <&gpio8 RK_PB1 GPIO_ACTIVE_HIGH>; /* USB2_PWR_EN */
110*f126890aSEmmanuel Vadot		pinctrl-names = "default";
111*f126890aSEmmanuel Vadot		pinctrl-0 = <&usb2_pwr_en>;
112*f126890aSEmmanuel Vadot		regulator-min-microvolt = <5000000>;
113*f126890aSEmmanuel Vadot		regulator-max-microvolt = <5000000>;
114*f126890aSEmmanuel Vadot		regulator-always-on;
115*f126890aSEmmanuel Vadot		regulator-boot-on;
116*f126890aSEmmanuel Vadot		vin-supply = <&vsus_5v>;
117*f126890aSEmmanuel Vadot	};
118*f126890aSEmmanuel Vadot
119*f126890aSEmmanuel Vadot	ext_gmac: external-gmac-clock {
120*f126890aSEmmanuel Vadot		compatible = "fixed-clock";
121*f126890aSEmmanuel Vadot		#clock-cells = <0>;
122*f126890aSEmmanuel Vadot		clock-frequency = <125000000>;
123*f126890aSEmmanuel Vadot		clock-output-names = "ext_gmac";
124*f126890aSEmmanuel Vadot	};
125*f126890aSEmmanuel Vadot};
126*f126890aSEmmanuel Vadot
127*f126890aSEmmanuel Vadot&cpu0 {
128*f126890aSEmmanuel Vadot	cpu-supply = <&vdd_cpu>;
129*f126890aSEmmanuel Vadot};
130*f126890aSEmmanuel Vadot
131*f126890aSEmmanuel Vadot&cpu1 {
132*f126890aSEmmanuel Vadot	cpu-supply = <&vdd_cpu>;
133*f126890aSEmmanuel Vadot};
134*f126890aSEmmanuel Vadot
135*f126890aSEmmanuel Vadot&cpu2 {
136*f126890aSEmmanuel Vadot	cpu-supply = <&vdd_cpu>;
137*f126890aSEmmanuel Vadot};
138*f126890aSEmmanuel Vadot
139*f126890aSEmmanuel Vadot&cpu3 {
140*f126890aSEmmanuel Vadot	cpu-supply = <&vdd_cpu>;
141*f126890aSEmmanuel Vadot};
142*f126890aSEmmanuel Vadot
143*f126890aSEmmanuel Vadot&emmc {
144*f126890aSEmmanuel Vadot	bus-width = <8>;
145*f126890aSEmmanuel Vadot	cap-mmc-highspeed;
146*f126890aSEmmanuel Vadot	non-removable;
147*f126890aSEmmanuel Vadot	pinctrl-names = "default";
148*f126890aSEmmanuel Vadot	pinctrl-0 = <&emmc_clk &emmc_cmd &emmc_pwr &emmc_bus8>;
149*f126890aSEmmanuel Vadot	vmmc-supply = <&vcc_io>;
150*f126890aSEmmanuel Vadot	status = "okay";
151*f126890aSEmmanuel Vadot};
152*f126890aSEmmanuel Vadot
153*f126890aSEmmanuel Vadot&gmac {
154*f126890aSEmmanuel Vadot	assigned-clocks = <&cru SCLK_MAC>;
155*f126890aSEmmanuel Vadot	assigned-clock-parents = <&ext_gmac>;
156*f126890aSEmmanuel Vadot	clock_in_out = "input";
157*f126890aSEmmanuel Vadot	pinctrl-names = "default";
158*f126890aSEmmanuel Vadot	pinctrl-0 = <&rgmii_pins>, <&phy_rst>, <&phy_pmeb>, <&phy_int>;
159*f126890aSEmmanuel Vadot	phy-supply = <&vcc_lan>;
160*f126890aSEmmanuel Vadot	phy-mode = "rgmii";
161*f126890aSEmmanuel Vadot	snps,reset-active-low;
162*f126890aSEmmanuel Vadot	snps,reset-delays-us = <0 10000 1000000>;
163*f126890aSEmmanuel Vadot	snps,reset-gpio = <&gpio4 RK_PB0 GPIO_ACTIVE_LOW>;
164*f126890aSEmmanuel Vadot	tx_delay = <0x30>;
165*f126890aSEmmanuel Vadot	rx_delay = <0x10>;
166*f126890aSEmmanuel Vadot	status = "okay";
167*f126890aSEmmanuel Vadot};
168*f126890aSEmmanuel Vadot
169*f126890aSEmmanuel Vadot&gpu {
170*f126890aSEmmanuel Vadot	mali-supply = <&vdd_gpu>;
171*f126890aSEmmanuel Vadot	status = "okay";
172*f126890aSEmmanuel Vadot};
173*f126890aSEmmanuel Vadot
174*f126890aSEmmanuel Vadot&hdmi {
175*f126890aSEmmanuel Vadot	ddc-i2c-bus = <&i2c5>;
176*f126890aSEmmanuel Vadot	status = "okay";
177*f126890aSEmmanuel Vadot};
178*f126890aSEmmanuel Vadot
179*f126890aSEmmanuel Vadot&i2c0 {
180*f126890aSEmmanuel Vadot	clock-frequency = <400000>;
181*f126890aSEmmanuel Vadot	status = "okay";
182*f126890aSEmmanuel Vadot
183*f126890aSEmmanuel Vadot	rk808: pmic@1b {
184*f126890aSEmmanuel Vadot		compatible = "rockchip,rk808";
185*f126890aSEmmanuel Vadot		reg = <0x1b>;
186*f126890aSEmmanuel Vadot		interrupt-parent = <&gpio0>;
187*f126890aSEmmanuel Vadot		interrupts = <RK_PA4 IRQ_TYPE_LEVEL_LOW>;
188*f126890aSEmmanuel Vadot		#clock-cells = <1>;
189*f126890aSEmmanuel Vadot		clock-output-names = "xin32k", "rk808-clkout2";
190*f126890aSEmmanuel Vadot		pinctrl-names = "default";
191*f126890aSEmmanuel Vadot		pinctrl-0 = <&pmic_int &global_pwroff>;
192*f126890aSEmmanuel Vadot		rockchip,system-power-controller;
193*f126890aSEmmanuel Vadot		wakeup-source;
194*f126890aSEmmanuel Vadot
195*f126890aSEmmanuel Vadot		vcc1-supply = <&vcc_sys>;
196*f126890aSEmmanuel Vadot		vcc2-supply = <&vcc_sys>;
197*f126890aSEmmanuel Vadot		vcc3-supply = <&vcc_sys>;
198*f126890aSEmmanuel Vadot		vcc4-supply = <&vcc_sys>;
199*f126890aSEmmanuel Vadot		vcc6-supply = <&vcc_sys>;
200*f126890aSEmmanuel Vadot		vcc7-supply = <&vcc_sys>;
201*f126890aSEmmanuel Vadot		vcc8-supply = <&vcc_io>;
202*f126890aSEmmanuel Vadot		vcc9-supply = <&vcc_sys>;
203*f126890aSEmmanuel Vadot		vcc10-supply = <&vcc_sys>;
204*f126890aSEmmanuel Vadot		vcc11-supply = <&vcc_sys>;
205*f126890aSEmmanuel Vadot		vcc12-supply = <&vcc_io>;
206*f126890aSEmmanuel Vadot
207*f126890aSEmmanuel Vadot		regulators {
208*f126890aSEmmanuel Vadot			vdd_cpu: DCDC_REG1 {
209*f126890aSEmmanuel Vadot				regulator-name = "vdd_arm";
210*f126890aSEmmanuel Vadot				regulator-min-microvolt = <750000>;
211*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1350000>;
212*f126890aSEmmanuel Vadot				regulator-always-on;
213*f126890aSEmmanuel Vadot				regulator-boot-on;
214*f126890aSEmmanuel Vadot				regulator-state-mem {
215*f126890aSEmmanuel Vadot					regulator-off-in-suspend;
216*f126890aSEmmanuel Vadot				};
217*f126890aSEmmanuel Vadot			};
218*f126890aSEmmanuel Vadot
219*f126890aSEmmanuel Vadot			vdd_gpu: DCDC_REG2 {
220*f126890aSEmmanuel Vadot				regulator-name = "vdd_gpu";
221*f126890aSEmmanuel Vadot				regulator-min-microvolt = <850000>;
222*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1250000>;
223*f126890aSEmmanuel Vadot				regulator-always-on;
224*f126890aSEmmanuel Vadot				regulator-boot-on;
225*f126890aSEmmanuel Vadot				regulator-state-mem {
226*f126890aSEmmanuel Vadot					regulator-on-in-suspend;
227*f126890aSEmmanuel Vadot					regulator-suspend-microvolt = <1000000>;
228*f126890aSEmmanuel Vadot				};
229*f126890aSEmmanuel Vadot			};
230*f126890aSEmmanuel Vadot
231*f126890aSEmmanuel Vadot			vcc_ddr: DCDC_REG3 {
232*f126890aSEmmanuel Vadot				regulator-name = "vcc_ddr";
233*f126890aSEmmanuel Vadot				regulator-always-on;
234*f126890aSEmmanuel Vadot				regulator-boot-on;
235*f126890aSEmmanuel Vadot				regulator-state-mem {
236*f126890aSEmmanuel Vadot					regulator-on-in-suspend;
237*f126890aSEmmanuel Vadot				};
238*f126890aSEmmanuel Vadot			};
239*f126890aSEmmanuel Vadot
240*f126890aSEmmanuel Vadot			vcc_io: DCDC_REG4 {
241*f126890aSEmmanuel Vadot				regulator-name = "vcc_io";
242*f126890aSEmmanuel Vadot				regulator-min-microvolt = <3300000>;
243*f126890aSEmmanuel Vadot				regulator-max-microvolt = <3300000>;
244*f126890aSEmmanuel Vadot				regulator-always-on;
245*f126890aSEmmanuel Vadot				regulator-boot-on;
246*f126890aSEmmanuel Vadot				regulator-state-mem {
247*f126890aSEmmanuel Vadot					regulator-on-in-suspend;
248*f126890aSEmmanuel Vadot					regulator-suspend-microvolt = <3300000>;
249*f126890aSEmmanuel Vadot				};
250*f126890aSEmmanuel Vadot			};
251*f126890aSEmmanuel Vadot
252*f126890aSEmmanuel Vadot			vcca_tp: LDO_REG1 {
253*f126890aSEmmanuel Vadot				regulator-name = "vcc_tp";
254*f126890aSEmmanuel Vadot				regulator-min-microvolt = <3300000>;
255*f126890aSEmmanuel Vadot				regulator-max-microvolt = <3300000>;
256*f126890aSEmmanuel Vadot				regulator-always-on;
257*f126890aSEmmanuel Vadot				regulator-boot-on;
258*f126890aSEmmanuel Vadot				regulator-state-mem {
259*f126890aSEmmanuel Vadot					regulator-on-in-suspend;
260*f126890aSEmmanuel Vadot					regulator-suspend-microvolt = <3300000>;
261*f126890aSEmmanuel Vadot				};
262*f126890aSEmmanuel Vadot			};
263*f126890aSEmmanuel Vadot
264*f126890aSEmmanuel Vadot			vcc_codec: LDO_REG2 {
265*f126890aSEmmanuel Vadot				regulator-name = "vcc_codec";
266*f126890aSEmmanuel Vadot				regulator-min-microvolt = <3300000>;
267*f126890aSEmmanuel Vadot				regulator-max-microvolt = <3300000>;
268*f126890aSEmmanuel Vadot				regulator-always-on;
269*f126890aSEmmanuel Vadot				regulator-boot-on;
270*f126890aSEmmanuel Vadot				regulator-state-mem {
271*f126890aSEmmanuel Vadot					regulator-off-in-suspend;
272*f126890aSEmmanuel Vadot				};
273*f126890aSEmmanuel Vadot			};
274*f126890aSEmmanuel Vadot
275*f126890aSEmmanuel Vadot			vdd_10: LDO_REG3 {
276*f126890aSEmmanuel Vadot				regulator-name = "vdd_10";
277*f126890aSEmmanuel Vadot				regulator-min-microvolt = <1000000>;
278*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1000000>;
279*f126890aSEmmanuel Vadot				regulator-always-on;
280*f126890aSEmmanuel Vadot				regulator-boot-on;
281*f126890aSEmmanuel Vadot				regulator-state-mem {
282*f126890aSEmmanuel Vadot					regulator-on-in-suspend;
283*f126890aSEmmanuel Vadot					regulator-suspend-microvolt = <1000000>;
284*f126890aSEmmanuel Vadot				};
285*f126890aSEmmanuel Vadot			};
286*f126890aSEmmanuel Vadot
287*f126890aSEmmanuel Vadot			vcc_gps: LDO_REG4 {
288*f126890aSEmmanuel Vadot				regulator-name = "vcc_gps";
289*f126890aSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
290*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
291*f126890aSEmmanuel Vadot				regulator-always-on;
292*f126890aSEmmanuel Vadot				regulator-boot-on;
293*f126890aSEmmanuel Vadot				regulator-state-mem {
294*f126890aSEmmanuel Vadot					regulator-on-in-suspend;
295*f126890aSEmmanuel Vadot					regulator-suspend-microvolt = <1800000>;
296*f126890aSEmmanuel Vadot				};
297*f126890aSEmmanuel Vadot			};
298*f126890aSEmmanuel Vadot
299*f126890aSEmmanuel Vadot			vccio_sd: LDO_REG5 {
300*f126890aSEmmanuel Vadot				regulator-name = "vccio_sd";
301*f126890aSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
302*f126890aSEmmanuel Vadot				regulator-max-microvolt = <3300000>;
303*f126890aSEmmanuel Vadot				regulator-always-on;
304*f126890aSEmmanuel Vadot				regulator-boot-on;
305*f126890aSEmmanuel Vadot				regulator-state-mem {
306*f126890aSEmmanuel Vadot					regulator-on-in-suspend;
307*f126890aSEmmanuel Vadot					regulator-suspend-microvolt = <3300000>;
308*f126890aSEmmanuel Vadot				};
309*f126890aSEmmanuel Vadot			};
310*f126890aSEmmanuel Vadot
311*f126890aSEmmanuel Vadot			vdd10_lcd: LDO_REG6 {
312*f126890aSEmmanuel Vadot				regulator-name = "vdd10_lcd";
313*f126890aSEmmanuel Vadot				regulator-min-microvolt = <1000000>;
314*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1000000>;
315*f126890aSEmmanuel Vadot				regulator-always-on;
316*f126890aSEmmanuel Vadot				regulator-boot-on;
317*f126890aSEmmanuel Vadot				regulator-state-mem {
318*f126890aSEmmanuel Vadot					regulator-on-in-suspend;
319*f126890aSEmmanuel Vadot					regulator-suspend-microvolt = <1000000>;
320*f126890aSEmmanuel Vadot				};
321*f126890aSEmmanuel Vadot			};
322*f126890aSEmmanuel Vadot
323*f126890aSEmmanuel Vadot			vcc_18: LDO_REG7 {
324*f126890aSEmmanuel Vadot				regulator-name = "vcc_18";
325*f126890aSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
326*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
327*f126890aSEmmanuel Vadot				regulator-always-on;
328*f126890aSEmmanuel Vadot				regulator-boot-on;
329*f126890aSEmmanuel Vadot				regulator-state-mem {
330*f126890aSEmmanuel Vadot					regulator-on-in-suspend;
331*f126890aSEmmanuel Vadot					regulator-suspend-microvolt = <1800000>;
332*f126890aSEmmanuel Vadot				};
333*f126890aSEmmanuel Vadot			};
334*f126890aSEmmanuel Vadot
335*f126890aSEmmanuel Vadot			vcc18_lcd: LDO_REG8 {
336*f126890aSEmmanuel Vadot				regulator-name = "vcc18_lcd";
337*f126890aSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
338*f126890aSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
339*f126890aSEmmanuel Vadot				regulator-always-on;
340*f126890aSEmmanuel Vadot				regulator-boot-on;
341*f126890aSEmmanuel Vadot				regulator-state-mem {
342*f126890aSEmmanuel Vadot					regulator-on-in-suspend;
343*f126890aSEmmanuel Vadot					regulator-suspend-microvolt = <1800000>;
344*f126890aSEmmanuel Vadot				};
345*f126890aSEmmanuel Vadot			};
346*f126890aSEmmanuel Vadot
347*f126890aSEmmanuel Vadot			vcc_sd: SWITCH_REG1 {
348*f126890aSEmmanuel Vadot				regulator-name = "vcc_sd";
349*f126890aSEmmanuel Vadot				regulator-min-microvolt = <3300000>;
350*f126890aSEmmanuel Vadot				regulator-max-microvolt = <3300000>;
351*f126890aSEmmanuel Vadot				regulator-always-on;
352*f126890aSEmmanuel Vadot				regulator-boot-on;
353*f126890aSEmmanuel Vadot				regulator-state-mem {
354*f126890aSEmmanuel Vadot					regulator-on-in-suspend;
355*f126890aSEmmanuel Vadot				};
356*f126890aSEmmanuel Vadot			};
357*f126890aSEmmanuel Vadot
358*f126890aSEmmanuel Vadot			vcc_lan: SWITCH_REG2 {
359*f126890aSEmmanuel Vadot				regulator-name = "vcc_lan";
360*f126890aSEmmanuel Vadot				regulator-min-microvolt = <3300000>;
361*f126890aSEmmanuel Vadot				regulator-max-microvolt = <3300000>;
362*f126890aSEmmanuel Vadot				regulator-always-on;
363*f126890aSEmmanuel Vadot				regulator-boot-on;
364*f126890aSEmmanuel Vadot				regulator-state-mem {
365*f126890aSEmmanuel Vadot					regulator-on-in-suspend;
366*f126890aSEmmanuel Vadot				};
367*f126890aSEmmanuel Vadot			};
368*f126890aSEmmanuel Vadot		};
369*f126890aSEmmanuel Vadot	};
370*f126890aSEmmanuel Vadot};
371*f126890aSEmmanuel Vadot
372*f126890aSEmmanuel Vadot&i2c5 {
373*f126890aSEmmanuel Vadot	status = "okay";
374*f126890aSEmmanuel Vadot};
375*f126890aSEmmanuel Vadot
376*f126890aSEmmanuel Vadot&io_domains {
377*f126890aSEmmanuel Vadot	status = "okay";
378*f126890aSEmmanuel Vadot
379*f126890aSEmmanuel Vadot	audio-supply = <&vcc_18>;
380*f126890aSEmmanuel Vadot	bb-supply = <&vcc_io>;
381*f126890aSEmmanuel Vadot	dvp-supply = <&vcc_io>;
382*f126890aSEmmanuel Vadot	flash0-supply = <&vcc_18>;
383*f126890aSEmmanuel Vadot	flash1-supply = <&vcc_lan>;
384*f126890aSEmmanuel Vadot	gpio30-supply = <&vcc_io>;
385*f126890aSEmmanuel Vadot	gpio1830-supply = <&vcc_io>;
386*f126890aSEmmanuel Vadot	lcdc-supply = <&vcc_io>;
387*f126890aSEmmanuel Vadot	sdcard-supply = <&vccio_sd>;
388*f126890aSEmmanuel Vadot	wifi-supply = <&vcc_18>;
389*f126890aSEmmanuel Vadot};
390*f126890aSEmmanuel Vadot
391*f126890aSEmmanuel Vadot&sdmmc {
392*f126890aSEmmanuel Vadot	bus-width = <4>;
393*f126890aSEmmanuel Vadot	cap-mmc-highspeed;
394*f126890aSEmmanuel Vadot	cap-sd-highspeed;
395*f126890aSEmmanuel Vadot	card-detect-delay = <200>;
396*f126890aSEmmanuel Vadot	disable-wp;
397*f126890aSEmmanuel Vadot	pinctrl-names = "default";
398*f126890aSEmmanuel Vadot	pinctrl-0 = <&sdmmc_clk>, <&sdmmc_cmd>, <&sdmmc_cd>, <&sdmmc_bus4>;
399*f126890aSEmmanuel Vadot	vmmc-supply = <&vcc_sd>;
400*f126890aSEmmanuel Vadot	vqmmc-supply = <&vccio_sd>;
401*f126890aSEmmanuel Vadot	status = "okay";
402*f126890aSEmmanuel Vadot};
403*f126890aSEmmanuel Vadot
404*f126890aSEmmanuel Vadot&tsadc {
405*f126890aSEmmanuel Vadot	rockchip,hw-tshut-mode = <1>; /* tshut mode 0:CRU 1:GPIO */
406*f126890aSEmmanuel Vadot	rockchip,hw-tshut-polarity = <1>; /* tshut polarity 0:LOW 1:HIGH */
407*f126890aSEmmanuel Vadot	status = "okay";
408*f126890aSEmmanuel Vadot};
409*f126890aSEmmanuel Vadot
410*f126890aSEmmanuel Vadot&uart2 {
411*f126890aSEmmanuel Vadot	status = "okay";
412*f126890aSEmmanuel Vadot};
413*f126890aSEmmanuel Vadot
414*f126890aSEmmanuel Vadot&usbphy {
415*f126890aSEmmanuel Vadot	status = "okay";
416*f126890aSEmmanuel Vadot};
417*f126890aSEmmanuel Vadot
418*f126890aSEmmanuel Vadot&usb_host0_ehci {
419*f126890aSEmmanuel Vadot	status = "okay";
420*f126890aSEmmanuel Vadot};
421*f126890aSEmmanuel Vadot
422*f126890aSEmmanuel Vadot&usb_host1 {
423*f126890aSEmmanuel Vadot	pinctrl-names = "default";
424*f126890aSEmmanuel Vadot	pinctrl-0 = <&phy_pwr_en>;
425*f126890aSEmmanuel Vadot	status = "okay";
426*f126890aSEmmanuel Vadot};
427*f126890aSEmmanuel Vadot
428*f126890aSEmmanuel Vadot&usb_otg {
429*f126890aSEmmanuel Vadot	vbus-supply = <&vusb1_5v>;
430*f126890aSEmmanuel Vadot	status = "okay";
431*f126890aSEmmanuel Vadot};
432*f126890aSEmmanuel Vadot
433*f126890aSEmmanuel Vadot&vopb {
434*f126890aSEmmanuel Vadot	status = "okay";
435*f126890aSEmmanuel Vadot};
436*f126890aSEmmanuel Vadot
437*f126890aSEmmanuel Vadot&vopb_mmu {
438*f126890aSEmmanuel Vadot	status = "okay";
439*f126890aSEmmanuel Vadot};
440*f126890aSEmmanuel Vadot
441*f126890aSEmmanuel Vadot&vopl {
442*f126890aSEmmanuel Vadot	status = "okay";
443*f126890aSEmmanuel Vadot};
444*f126890aSEmmanuel Vadot
445*f126890aSEmmanuel Vadot&vopl_mmu {
446*f126890aSEmmanuel Vadot	status = "okay";
447*f126890aSEmmanuel Vadot};
448*f126890aSEmmanuel Vadot
449*f126890aSEmmanuel Vadot&wdt {
450*f126890aSEmmanuel Vadot	status = "okay";
451*f126890aSEmmanuel Vadot};
452*f126890aSEmmanuel Vadot
453*f126890aSEmmanuel Vadot&pinctrl {
454*f126890aSEmmanuel Vadot	pcfg_output_high: pcfg-output-high {
455*f126890aSEmmanuel Vadot		output-high;
456*f126890aSEmmanuel Vadot	};
457*f126890aSEmmanuel Vadot
458*f126890aSEmmanuel Vadot	gmac {
459*f126890aSEmmanuel Vadot		phy_int: phy-int {
460*f126890aSEmmanuel Vadot			rockchip,pins = <0 RK_PB1 RK_FUNC_GPIO &pcfg_pull_up>;
461*f126890aSEmmanuel Vadot		};
462*f126890aSEmmanuel Vadot
463*f126890aSEmmanuel Vadot		phy_pmeb: phy-pmeb {
464*f126890aSEmmanuel Vadot			rockchip,pins = <0 RK_PA6 RK_FUNC_GPIO &pcfg_pull_up>;
465*f126890aSEmmanuel Vadot		};
466*f126890aSEmmanuel Vadot
467*f126890aSEmmanuel Vadot		phy_rst: phy-rst {
468*f126890aSEmmanuel Vadot			rockchip,pins = <4 RK_PB0 RK_FUNC_GPIO &pcfg_output_high>;
469*f126890aSEmmanuel Vadot		};
470*f126890aSEmmanuel Vadot	};
471*f126890aSEmmanuel Vadot
472*f126890aSEmmanuel Vadot	hdmi {
473*f126890aSEmmanuel Vadot		vcc50_hdmi_en: vcc50-hdmi-en {
474*f126890aSEmmanuel Vadot			rockchip,pins = <7 RK_PB4 RK_FUNC_GPIO &pcfg_pull_none>;
475*f126890aSEmmanuel Vadot		};
476*f126890aSEmmanuel Vadot	};
477*f126890aSEmmanuel Vadot
478*f126890aSEmmanuel Vadot	pmic {
479*f126890aSEmmanuel Vadot		pmic_int: pmic-int {
480*f126890aSEmmanuel Vadot			rockchip,pins = <0 RK_PA4 RK_FUNC_GPIO &pcfg_pull_up>;
481*f126890aSEmmanuel Vadot		};
482*f126890aSEmmanuel Vadot	};
483*f126890aSEmmanuel Vadot
484*f126890aSEmmanuel Vadot	usb_host {
485*f126890aSEmmanuel Vadot		phy_pwr_en: phy-pwr-en {
486*f126890aSEmmanuel Vadot			rockchip,pins = <2 RK_PB1 RK_FUNC_GPIO &pcfg_output_high>;
487*f126890aSEmmanuel Vadot		};
488*f126890aSEmmanuel Vadot
489*f126890aSEmmanuel Vadot		usb2_pwr_en: usb2-pwr-en {
490*f126890aSEmmanuel Vadot			rockchip,pins = <8 RK_PB1 RK_FUNC_GPIO &pcfg_pull_none>;
491*f126890aSEmmanuel Vadot		};
492*f126890aSEmmanuel Vadot	};
493*f126890aSEmmanuel Vadot
494*f126890aSEmmanuel Vadot	usb_otg {
495*f126890aSEmmanuel Vadot		otg_vbus_drv: otg-vbus-drv {
496*f126890aSEmmanuel Vadot			rockchip,pins = <0 RK_PB4 RK_FUNC_GPIO &pcfg_pull_none>;
497*f126890aSEmmanuel Vadot
498*f126890aSEmmanuel Vadot		};
499*f126890aSEmmanuel Vadot	};
500*f126890aSEmmanuel Vadot};
501