1*1bad5e14SManivannan Sadhasivam// SPDX-License-Identifier: GPL-2.0+
2*1bad5e14SManivannan Sadhasivam/*
3*1bad5e14SManivannan Sadhasivam * Copyright (c) 2018 Linaro Ltd.
4*1bad5e14SManivannan Sadhasivam */
5*1bad5e14SManivannan Sadhasivam
6*1bad5e14SManivannan Sadhasivam#include <dt-bindings/pwm/pwm.h>
7*1bad5e14SManivannan Sadhasivam#include <dt-bindings/pinctrl/rockchip.h>
8*1bad5e14SManivannan Sadhasivam#include "rk3399.dtsi"
9*1bad5e14SManivannan Sadhasivam
10*1bad5e14SManivannan Sadhasivam/ {
11*1bad5e14SManivannan Sadhasivam	vcc1v8_s0: vcc1v8-s0 {
12*1bad5e14SManivannan Sadhasivam		compatible = "regulator-fixed";
13*1bad5e14SManivannan Sadhasivam		regulator-name = "vcc1v8_s0";
14*1bad5e14SManivannan Sadhasivam		regulator-min-microvolt = <1800000>;
15*1bad5e14SManivannan Sadhasivam		regulator-max-microvolt = <1800000>;
16*1bad5e14SManivannan Sadhasivam		regulator-always-on;
17*1bad5e14SManivannan Sadhasivam	};
18*1bad5e14SManivannan Sadhasivam
19*1bad5e14SManivannan Sadhasivam	vcc_sys: vcc-sys {
20*1bad5e14SManivannan Sadhasivam		compatible = "regulator-fixed";
21*1bad5e14SManivannan Sadhasivam		regulator-name = "vcc_sys";
22*1bad5e14SManivannan Sadhasivam		regulator-min-microvolt = <5000000>;
23*1bad5e14SManivannan Sadhasivam		regulator-max-microvolt = <5000000>;
24*1bad5e14SManivannan Sadhasivam		regulator-always-on;
25*1bad5e14SManivannan Sadhasivam	};
26*1bad5e14SManivannan Sadhasivam
27*1bad5e14SManivannan Sadhasivam	vcc3v3_sys: vcc3v3-sys {
28*1bad5e14SManivannan Sadhasivam		compatible = "regulator-fixed";
29*1bad5e14SManivannan Sadhasivam		regulator-name = "vcc3v3_sys";
30*1bad5e14SManivannan Sadhasivam		regulator-min-microvolt = <3300000>;
31*1bad5e14SManivannan Sadhasivam		regulator-max-microvolt = <3300000>;
32*1bad5e14SManivannan Sadhasivam		regulator-always-on;
33*1bad5e14SManivannan Sadhasivam		vin-supply = <&vcc_sys>;
34*1bad5e14SManivannan Sadhasivam	};
35*1bad5e14SManivannan Sadhasivam
36*1bad5e14SManivannan Sadhasivam	vcc3v3_pcie: vcc3v3-pcie-regulator {
37*1bad5e14SManivannan Sadhasivam		compatible = "regulator-fixed";
38*1bad5e14SManivannan Sadhasivam		enable-active-high;
39*1bad5e14SManivannan Sadhasivam		pinctrl-names = "default";
40*1bad5e14SManivannan Sadhasivam		pinctrl-0 = <&pcie_drv>;
41*1bad5e14SManivannan Sadhasivam		regulator-boot-on;
42*1bad5e14SManivannan Sadhasivam		regulator-name = "vcc3v3_pcie";
43*1bad5e14SManivannan Sadhasivam		regulator-min-microvolt = <3300000>;
44*1bad5e14SManivannan Sadhasivam		regulator-max-microvolt = <3300000>;
45*1bad5e14SManivannan Sadhasivam		vin-supply = <&vcc3v3_sys>;
46*1bad5e14SManivannan Sadhasivam	};
47*1bad5e14SManivannan Sadhasivam
48*1bad5e14SManivannan Sadhasivam	vcc5v0_host: vcc5v0-host-regulator {
49*1bad5e14SManivannan Sadhasivam		compatible = "regulator-fixed";
50*1bad5e14SManivannan Sadhasivam		enable-active-high;
51*1bad5e14SManivannan Sadhasivam		pinctrl-names = "default";
52*1bad5e14SManivannan Sadhasivam		pinctrl-0 = <&host_vbus_drv>;
53*1bad5e14SManivannan Sadhasivam		regulator-name = "vcc5v0_host";
54*1bad5e14SManivannan Sadhasivam		regulator-min-microvolt = <5000000>;
55*1bad5e14SManivannan Sadhasivam		regulator-max-microvolt = <5000000>;
56*1bad5e14SManivannan Sadhasivam		regulator-always-on;
57*1bad5e14SManivannan Sadhasivam		vin-supply = <&vcc_sys>;
58*1bad5e14SManivannan Sadhasivam	};
59*1bad5e14SManivannan Sadhasivam
60*1bad5e14SManivannan Sadhasivam	vdd_log: vdd-log {
61*1bad5e14SManivannan Sadhasivam		compatible = "pwm-regulator";
62*1bad5e14SManivannan Sadhasivam		pwms = <&pwm2 0 25000 0>;
63*1bad5e14SManivannan Sadhasivam		regulator-name = "vdd_log";
64*1bad5e14SManivannan Sadhasivam		regulator-min-microvolt = <800000>;
65*1bad5e14SManivannan Sadhasivam		regulator-max-microvolt = <1400000>;
66*1bad5e14SManivannan Sadhasivam		regulator-always-on;
67*1bad5e14SManivannan Sadhasivam		regulator-boot-on;
68*1bad5e14SManivannan Sadhasivam		vin-supply = <&vcc_sys>;
69*1bad5e14SManivannan Sadhasivam	};
70*1bad5e14SManivannan Sadhasivam
71*1bad5e14SManivannan Sadhasivam};
72*1bad5e14SManivannan Sadhasivam
73*1bad5e14SManivannan Sadhasivam&cpu_l0 {
74*1bad5e14SManivannan Sadhasivam	cpu-supply = <&vdd_cpu_l>;
75*1bad5e14SManivannan Sadhasivam};
76*1bad5e14SManivannan Sadhasivam
77*1bad5e14SManivannan Sadhasivam&cpu_l1 {
78*1bad5e14SManivannan Sadhasivam	cpu-supply = <&vdd_cpu_l>;
79*1bad5e14SManivannan Sadhasivam};
80*1bad5e14SManivannan Sadhasivam
81*1bad5e14SManivannan Sadhasivam&cpu_l2 {
82*1bad5e14SManivannan Sadhasivam	cpu-supply = <&vdd_cpu_l>;
83*1bad5e14SManivannan Sadhasivam};
84*1bad5e14SManivannan Sadhasivam
85*1bad5e14SManivannan Sadhasivam&cpu_l3 {
86*1bad5e14SManivannan Sadhasivam	cpu-supply = <&vdd_cpu_l>;
87*1bad5e14SManivannan Sadhasivam};
88*1bad5e14SManivannan Sadhasivam
89*1bad5e14SManivannan Sadhasivam&cpu_b0 {
90*1bad5e14SManivannan Sadhasivam	cpu-supply = <&vdd_cpu_b>;
91*1bad5e14SManivannan Sadhasivam};
92*1bad5e14SManivannan Sadhasivam
93*1bad5e14SManivannan Sadhasivam&cpu_b1 {
94*1bad5e14SManivannan Sadhasivam	cpu-supply = <&vdd_cpu_b>;
95*1bad5e14SManivannan Sadhasivam};
96*1bad5e14SManivannan Sadhasivam
97*1bad5e14SManivannan Sadhasivam&emmc_phy {
98*1bad5e14SManivannan Sadhasivam	status = "okay";
99*1bad5e14SManivannan Sadhasivam};
100*1bad5e14SManivannan Sadhasivam
101*1bad5e14SManivannan Sadhasivam&hdmi {
102*1bad5e14SManivannan Sadhasivam	status = "okay";
103*1bad5e14SManivannan Sadhasivam};
104*1bad5e14SManivannan Sadhasivam
105*1bad5e14SManivannan Sadhasivam&i2c0 {
106*1bad5e14SManivannan Sadhasivam	clock-frequency = <400000>;
107*1bad5e14SManivannan Sadhasivam	i2c-scl-rising-time-ns = <168>;
108*1bad5e14SManivannan Sadhasivam	i2c-scl-falling-time-ns = <4>;
109*1bad5e14SManivannan Sadhasivam	status = "okay";
110*1bad5e14SManivannan Sadhasivam
111*1bad5e14SManivannan Sadhasivam	vdd_cpu_b: regulator@40 {
112*1bad5e14SManivannan Sadhasivam		compatible = "silergy,syr827";
113*1bad5e14SManivannan Sadhasivam		reg = <0x40>;
114*1bad5e14SManivannan Sadhasivam		fcs,suspend-voltage-selector = <1>;
115*1bad5e14SManivannan Sadhasivam		regulator-name = "vdd_cpu_b";
116*1bad5e14SManivannan Sadhasivam		regulator-min-microvolt = <712500>;
117*1bad5e14SManivannan Sadhasivam		regulator-max-microvolt = <1500000>;
118*1bad5e14SManivannan Sadhasivam		regulator-ramp-delay = <1000>;
119*1bad5e14SManivannan Sadhasivam		regulator-always-on;
120*1bad5e14SManivannan Sadhasivam		regulator-boot-on;
121*1bad5e14SManivannan Sadhasivam		vin-supply = <&vcc_sys>;
122*1bad5e14SManivannan Sadhasivam		status = "okay";
123*1bad5e14SManivannan Sadhasivam
124*1bad5e14SManivannan Sadhasivam		regulator-state-mem {
125*1bad5e14SManivannan Sadhasivam			regulator-off-in-suspend;
126*1bad5e14SManivannan Sadhasivam		};
127*1bad5e14SManivannan Sadhasivam	};
128*1bad5e14SManivannan Sadhasivam
129*1bad5e14SManivannan Sadhasivam	vdd_gpu: regulator@41 {
130*1bad5e14SManivannan Sadhasivam		compatible = "silergy,syr828";
131*1bad5e14SManivannan Sadhasivam		reg = <0x41>;
132*1bad5e14SManivannan Sadhasivam		fcs,suspend-voltage-selector = <1>;
133*1bad5e14SManivannan Sadhasivam		regulator-name = "vdd_gpu";
134*1bad5e14SManivannan Sadhasivam		regulator-min-microvolt = <712500>;
135*1bad5e14SManivannan Sadhasivam		regulator-max-microvolt = <1500000>;
136*1bad5e14SManivannan Sadhasivam		regulator-ramp-delay = <1000>;
137*1bad5e14SManivannan Sadhasivam		regulator-always-on;
138*1bad5e14SManivannan Sadhasivam		regulator-boot-on;
139*1bad5e14SManivannan Sadhasivam		vin-supply = <&vcc_sys>;
140*1bad5e14SManivannan Sadhasivam		regulator-state-mem {
141*1bad5e14SManivannan Sadhasivam			regulator-off-in-suspend;
142*1bad5e14SManivannan Sadhasivam		};
143*1bad5e14SManivannan Sadhasivam	};
144*1bad5e14SManivannan Sadhasivam
145*1bad5e14SManivannan Sadhasivam	rk808: pmic@1b {
146*1bad5e14SManivannan Sadhasivam		compatible = "rockchip,rk808";
147*1bad5e14SManivannan Sadhasivam		reg = <0x1b>;
148*1bad5e14SManivannan Sadhasivam		interrupt-parent = <&gpio1>;
149*1bad5e14SManivannan Sadhasivam		interrupts = <21 IRQ_TYPE_LEVEL_LOW>;
150*1bad5e14SManivannan Sadhasivam		pinctrl-names = "default";
151*1bad5e14SManivannan Sadhasivam		pinctrl-0 = <&pmic_int_l>;
152*1bad5e14SManivannan Sadhasivam		rockchip,system-power-controller;
153*1bad5e14SManivannan Sadhasivam		wakeup-source;
154*1bad5e14SManivannan Sadhasivam		#clock-cells = <1>;
155*1bad5e14SManivannan Sadhasivam		clock-output-names = "xin32k", "rk808-clkout2";
156*1bad5e14SManivannan Sadhasivam
157*1bad5e14SManivannan Sadhasivam		vcc1-supply = <&vcc_sys>;
158*1bad5e14SManivannan Sadhasivam		vcc2-supply = <&vcc_sys>;
159*1bad5e14SManivannan Sadhasivam		vcc3-supply = <&vcc_sys>;
160*1bad5e14SManivannan Sadhasivam		vcc4-supply = <&vcc_sys>;
161*1bad5e14SManivannan Sadhasivam		vcc6-supply = <&vcc_sys>;
162*1bad5e14SManivannan Sadhasivam		vcc7-supply = <&vcc_sys>;
163*1bad5e14SManivannan Sadhasivam		vcc8-supply = <&vcc3v3_sys>;
164*1bad5e14SManivannan Sadhasivam		vcc9-supply = <&vcc_sys>;
165*1bad5e14SManivannan Sadhasivam		vcc10-supply = <&vcc_sys>;
166*1bad5e14SManivannan Sadhasivam		vcc11-supply = <&vcc_sys>;
167*1bad5e14SManivannan Sadhasivam		vcc12-supply = <&vcc3v3_sys>;
168*1bad5e14SManivannan Sadhasivam		vddio-supply = <&vcc_1v8>;
169*1bad5e14SManivannan Sadhasivam
170*1bad5e14SManivannan Sadhasivam		regulators {
171*1bad5e14SManivannan Sadhasivam			vdd_center: DCDC_REG1 {
172*1bad5e14SManivannan Sadhasivam				regulator-name = "vdd_center";
173*1bad5e14SManivannan Sadhasivam				regulator-min-microvolt = <750000>;
174*1bad5e14SManivannan Sadhasivam				regulator-max-microvolt = <1350000>;
175*1bad5e14SManivannan Sadhasivam				regulator-always-on;
176*1bad5e14SManivannan Sadhasivam				regulator-boot-on;
177*1bad5e14SManivannan Sadhasivam				regulator-state-mem {
178*1bad5e14SManivannan Sadhasivam					regulator-off-in-suspend;
179*1bad5e14SManivannan Sadhasivam				};
180*1bad5e14SManivannan Sadhasivam			};
181*1bad5e14SManivannan Sadhasivam
182*1bad5e14SManivannan Sadhasivam			vdd_cpu_l: DCDC_REG2 {
183*1bad5e14SManivannan Sadhasivam				regulator-name = "vdd_cpu_l";
184*1bad5e14SManivannan Sadhasivam				regulator-min-microvolt = <750000>;
185*1bad5e14SManivannan Sadhasivam				regulator-max-microvolt = <1350000>;
186*1bad5e14SManivannan Sadhasivam				regulator-always-on;
187*1bad5e14SManivannan Sadhasivam				regulator-boot-on;
188*1bad5e14SManivannan Sadhasivam				regulator-state-mem {
189*1bad5e14SManivannan Sadhasivam					regulator-off-in-suspend;
190*1bad5e14SManivannan Sadhasivam				};
191*1bad5e14SManivannan Sadhasivam			};
192*1bad5e14SManivannan Sadhasivam
193*1bad5e14SManivannan Sadhasivam			vcc_ddr: DCDC_REG3 {
194*1bad5e14SManivannan Sadhasivam				regulator-name = "vcc_ddr";
195*1bad5e14SManivannan Sadhasivam				regulator-always-on;
196*1bad5e14SManivannan Sadhasivam				regulator-boot-on;
197*1bad5e14SManivannan Sadhasivam				regulator-state-mem {
198*1bad5e14SManivannan Sadhasivam					regulator-on-in-suspend;
199*1bad5e14SManivannan Sadhasivam				};
200*1bad5e14SManivannan Sadhasivam			};
201*1bad5e14SManivannan Sadhasivam
202*1bad5e14SManivannan Sadhasivam			vcc_1v8: DCDC_REG4 {
203*1bad5e14SManivannan Sadhasivam				regulator-name = "vcc_1v8";
204*1bad5e14SManivannan Sadhasivam				regulator-min-microvolt = <1800000>;
205*1bad5e14SManivannan Sadhasivam				regulator-max-microvolt = <1800000>;
206*1bad5e14SManivannan Sadhasivam				regulator-always-on;
207*1bad5e14SManivannan Sadhasivam				regulator-boot-on;
208*1bad5e14SManivannan Sadhasivam				regulator-state-mem {
209*1bad5e14SManivannan Sadhasivam					regulator-on-in-suspend;
210*1bad5e14SManivannan Sadhasivam					regulator-suspend-microvolt = <1800000>;
211*1bad5e14SManivannan Sadhasivam				};
212*1bad5e14SManivannan Sadhasivam			};
213*1bad5e14SManivannan Sadhasivam
214*1bad5e14SManivannan Sadhasivam			vcc1v8_dvp: LDO_REG1 {
215*1bad5e14SManivannan Sadhasivam				regulator-name = "vcc1v8_dvp";
216*1bad5e14SManivannan Sadhasivam				regulator-min-microvolt = <1800000>;
217*1bad5e14SManivannan Sadhasivam				regulator-max-microvolt = <1800000>;
218*1bad5e14SManivannan Sadhasivam				regulator-always-on;
219*1bad5e14SManivannan Sadhasivam				regulator-boot-on;
220*1bad5e14SManivannan Sadhasivam				regulator-state-mem {
221*1bad5e14SManivannan Sadhasivam					regulator-on-in-suspend;
222*1bad5e14SManivannan Sadhasivam					regulator-suspend-microvolt = <1800000>;
223*1bad5e14SManivannan Sadhasivam				};
224*1bad5e14SManivannan Sadhasivam			};
225*1bad5e14SManivannan Sadhasivam
226*1bad5e14SManivannan Sadhasivam			vcca1v8_hdmi: LDO_REG2 {
227*1bad5e14SManivannan Sadhasivam				regulator-name = "vcca1v8_hdmi";
228*1bad5e14SManivannan Sadhasivam				regulator-min-microvolt = <1800000>;
229*1bad5e14SManivannan Sadhasivam				regulator-max-microvolt = <1800000>;
230*1bad5e14SManivannan Sadhasivam				regulator-always-on;
231*1bad5e14SManivannan Sadhasivam				regulator-boot-on;
232*1bad5e14SManivannan Sadhasivam				regulator-state-mem {
233*1bad5e14SManivannan Sadhasivam					regulator-on-in-suspend;
234*1bad5e14SManivannan Sadhasivam					regulator-suspend-microvolt = <1800000>;
235*1bad5e14SManivannan Sadhasivam				};
236*1bad5e14SManivannan Sadhasivam			};
237*1bad5e14SManivannan Sadhasivam
238*1bad5e14SManivannan Sadhasivam			vcca_1v8: LDO_REG3 {
239*1bad5e14SManivannan Sadhasivam				regulator-name = "vcca_1v8";
240*1bad5e14SManivannan Sadhasivam				regulator-min-microvolt = <1800000>;
241*1bad5e14SManivannan Sadhasivam				regulator-max-microvolt = <1800000>;
242*1bad5e14SManivannan Sadhasivam				regulator-always-on;
243*1bad5e14SManivannan Sadhasivam				regulator-boot-on;
244*1bad5e14SManivannan Sadhasivam				regulator-state-mem {
245*1bad5e14SManivannan Sadhasivam					regulator-on-in-suspend;
246*1bad5e14SManivannan Sadhasivam					regulator-suspend-microvolt = <1800000>;
247*1bad5e14SManivannan Sadhasivam				};
248*1bad5e14SManivannan Sadhasivam			};
249*1bad5e14SManivannan Sadhasivam
250*1bad5e14SManivannan Sadhasivam			vcc_sd: LDO_REG4 {
251*1bad5e14SManivannan Sadhasivam				regulator-name = "vcc_sd";
252*1bad5e14SManivannan Sadhasivam				regulator-min-microvolt = <1800000>;
253*1bad5e14SManivannan Sadhasivam				regulator-max-microvolt = <3300000>;
254*1bad5e14SManivannan Sadhasivam				regulator-always-on;
255*1bad5e14SManivannan Sadhasivam				regulator-boot-on;
256*1bad5e14SManivannan Sadhasivam				regulator-state-mem {
257*1bad5e14SManivannan Sadhasivam					regulator-on-in-suspend;
258*1bad5e14SManivannan Sadhasivam					regulator-suspend-microvolt = <3300000>;
259*1bad5e14SManivannan Sadhasivam				};
260*1bad5e14SManivannan Sadhasivam			};
261*1bad5e14SManivannan Sadhasivam
262*1bad5e14SManivannan Sadhasivam			vcc3v0_sd: LDO_REG5 {
263*1bad5e14SManivannan Sadhasivam				regulator-name = "vcc3v0_sd";
264*1bad5e14SManivannan Sadhasivam				regulator-min-microvolt = <3000000>;
265*1bad5e14SManivannan Sadhasivam				regulator-max-microvolt = <3000000>;
266*1bad5e14SManivannan Sadhasivam				regulator-always-on;
267*1bad5e14SManivannan Sadhasivam				regulator-boot-on;
268*1bad5e14SManivannan Sadhasivam				regulator-state-mem {
269*1bad5e14SManivannan Sadhasivam					regulator-on-in-suspend;
270*1bad5e14SManivannan Sadhasivam					regulator-suspend-microvolt = <3000000>;
271*1bad5e14SManivannan Sadhasivam				};
272*1bad5e14SManivannan Sadhasivam			};
273*1bad5e14SManivannan Sadhasivam
274*1bad5e14SManivannan Sadhasivam			vcc_1v5: LDO_REG6 {
275*1bad5e14SManivannan Sadhasivam				regulator-name = "vcc_1v5";
276*1bad5e14SManivannan Sadhasivam				regulator-min-microvolt = <1500000>;
277*1bad5e14SManivannan Sadhasivam				regulator-max-microvolt = <1500000>;
278*1bad5e14SManivannan Sadhasivam				regulator-always-on;
279*1bad5e14SManivannan Sadhasivam				regulator-boot-on;
280*1bad5e14SManivannan Sadhasivam				regulator-state-mem {
281*1bad5e14SManivannan Sadhasivam					regulator-on-in-suspend;
282*1bad5e14SManivannan Sadhasivam					regulator-suspend-microvolt = <1500000>;
283*1bad5e14SManivannan Sadhasivam				};
284*1bad5e14SManivannan Sadhasivam			};
285*1bad5e14SManivannan Sadhasivam
286*1bad5e14SManivannan Sadhasivam			vcca0v9_hdmi: LDO_REG7 {
287*1bad5e14SManivannan Sadhasivam				regulator-name = "vcca0v9_hdmi";
288*1bad5e14SManivannan Sadhasivam				regulator-min-microvolt = <900000>;
289*1bad5e14SManivannan Sadhasivam				regulator-max-microvolt = <900000>;
290*1bad5e14SManivannan Sadhasivam				regulator-always-on;
291*1bad5e14SManivannan Sadhasivam				regulator-boot-on;
292*1bad5e14SManivannan Sadhasivam				regulator-state-mem {
293*1bad5e14SManivannan Sadhasivam					regulator-on-in-suspend;
294*1bad5e14SManivannan Sadhasivam					regulator-suspend-microvolt = <900000>;
295*1bad5e14SManivannan Sadhasivam				};
296*1bad5e14SManivannan Sadhasivam			};
297*1bad5e14SManivannan Sadhasivam
298*1bad5e14SManivannan Sadhasivam			vcc_3v0: LDO_REG8 {
299*1bad5e14SManivannan Sadhasivam				regulator-name = "vcc_3v0";
300*1bad5e14SManivannan Sadhasivam				regulator-min-microvolt = <3000000>;
301*1bad5e14SManivannan Sadhasivam				regulator-max-microvolt = <3000000>;
302*1bad5e14SManivannan Sadhasivam				regulator-always-on;
303*1bad5e14SManivannan Sadhasivam				regulator-boot-on;
304*1bad5e14SManivannan Sadhasivam				regulator-state-mem {
305*1bad5e14SManivannan Sadhasivam					regulator-on-in-suspend;
306*1bad5e14SManivannan Sadhasivam					regulator-suspend-microvolt = <3000000>;
307*1bad5e14SManivannan Sadhasivam				};
308*1bad5e14SManivannan Sadhasivam			};
309*1bad5e14SManivannan Sadhasivam
310*1bad5e14SManivannan Sadhasivam			vcc3v3_s3: SWITCH_REG1 {
311*1bad5e14SManivannan Sadhasivam				regulator-name = "vcc3v3_s3";
312*1bad5e14SManivannan Sadhasivam				regulator-always-on;
313*1bad5e14SManivannan Sadhasivam				regulator-boot-on;
314*1bad5e14SManivannan Sadhasivam				regulator-state-mem {
315*1bad5e14SManivannan Sadhasivam					regulator-on-in-suspend;
316*1bad5e14SManivannan Sadhasivam				};
317*1bad5e14SManivannan Sadhasivam			};
318*1bad5e14SManivannan Sadhasivam
319*1bad5e14SManivannan Sadhasivam			vcc3v3_s0: SWITCH_REG2 {
320*1bad5e14SManivannan Sadhasivam				regulator-name = "vcc3v3_s0";
321*1bad5e14SManivannan Sadhasivam				regulator-always-on;
322*1bad5e14SManivannan Sadhasivam				regulator-boot-on;
323*1bad5e14SManivannan Sadhasivam				regulator-state-mem {
324*1bad5e14SManivannan Sadhasivam					regulator-on-in-suspend;
325*1bad5e14SManivannan Sadhasivam				};
326*1bad5e14SManivannan Sadhasivam			};
327*1bad5e14SManivannan Sadhasivam		};
328*1bad5e14SManivannan Sadhasivam	};
329*1bad5e14SManivannan Sadhasivam};
330*1bad5e14SManivannan Sadhasivam
331*1bad5e14SManivannan Sadhasivam&i2c1 {
332*1bad5e14SManivannan Sadhasivam	status = "okay";
333*1bad5e14SManivannan Sadhasivam};
334*1bad5e14SManivannan Sadhasivam
335*1bad5e14SManivannan Sadhasivam&i2c2 {
336*1bad5e14SManivannan Sadhasivam	status = "okay";
337*1bad5e14SManivannan Sadhasivam};
338*1bad5e14SManivannan Sadhasivam
339*1bad5e14SManivannan Sadhasivam&i2c3 {
340*1bad5e14SManivannan Sadhasivam	status = "okay";
341*1bad5e14SManivannan Sadhasivam};
342*1bad5e14SManivannan Sadhasivam
343*1bad5e14SManivannan Sadhasivam&i2c4 {
344*1bad5e14SManivannan Sadhasivam	status = "okay";
345*1bad5e14SManivannan Sadhasivam};
346*1bad5e14SManivannan Sadhasivam
347*1bad5e14SManivannan Sadhasivam&io_domains {
348*1bad5e14SManivannan Sadhasivam	bt656-supply = <&vcc1v8_s0>; /* bt656_gpio2ab_ms */
349*1bad5e14SManivannan Sadhasivam	audio-supply = <&vcc1v8_s0>; /* audio_gpio3d4a_ms */
350*1bad5e14SManivannan Sadhasivam	sdmmc-supply = <&vcc_sd>; /* sdmmc_gpio4b_ms */
351*1bad5e14SManivannan Sadhasivam	gpio1830-supply = <&vcc_3v0>; /* gpio1833_gpio4cd_ms */
352*1bad5e14SManivannan Sadhasivam	status = "okay";
353*1bad5e14SManivannan Sadhasivam};
354*1bad5e14SManivannan Sadhasivam
355*1bad5e14SManivannan Sadhasivam&pcie_phy {
356*1bad5e14SManivannan Sadhasivam	status = "okay";
357*1bad5e14SManivannan Sadhasivam};
358*1bad5e14SManivannan Sadhasivam
359*1bad5e14SManivannan Sadhasivam&pcie0 {
360*1bad5e14SManivannan Sadhasivam	num-lanes = <4>;
361*1bad5e14SManivannan Sadhasivam	pinctrl-names = "default";
362*1bad5e14SManivannan Sadhasivam	pinctrl-0 = <&pcie_clkreqn_cpm>;
363*1bad5e14SManivannan Sadhasivam	vpcie3v3-supply = <&vcc3v3_pcie>;
364*1bad5e14SManivannan Sadhasivam	status = "okay";
365*1bad5e14SManivannan Sadhasivam};
366*1bad5e14SManivannan Sadhasivam
367*1bad5e14SManivannan Sadhasivam&pmu_io_domains {
368*1bad5e14SManivannan Sadhasivam	pmu1830-supply = <&vcc_1v8>;
369*1bad5e14SManivannan Sadhasivam	status = "okay";
370*1bad5e14SManivannan Sadhasivam};
371*1bad5e14SManivannan Sadhasivam
372*1bad5e14SManivannan Sadhasivam&pinctrl {
373*1bad5e14SManivannan Sadhasivam	sdmmc {
374*1bad5e14SManivannan Sadhasivam		sdmmc_bus1: sdmmc-bus1 {
375*1bad5e14SManivannan Sadhasivam			rockchip,pins =
376*1bad5e14SManivannan Sadhasivam				<4 8 RK_FUNC_1 &pcfg_pull_up_8ma>;
377*1bad5e14SManivannan Sadhasivam		};
378*1bad5e14SManivannan Sadhasivam
379*1bad5e14SManivannan Sadhasivam		sdmmc_bus4: sdmmc-bus4 {
380*1bad5e14SManivannan Sadhasivam			rockchip,pins =
381*1bad5e14SManivannan Sadhasivam				<4 8 RK_FUNC_1 &pcfg_pull_up_8ma>,
382*1bad5e14SManivannan Sadhasivam				<4 9 RK_FUNC_1 &pcfg_pull_up_8ma>,
383*1bad5e14SManivannan Sadhasivam				<4 10 RK_FUNC_1 &pcfg_pull_up_8ma>,
384*1bad5e14SManivannan Sadhasivam				<4 11 RK_FUNC_1 &pcfg_pull_up_8ma>;
385*1bad5e14SManivannan Sadhasivam		};
386*1bad5e14SManivannan Sadhasivam
387*1bad5e14SManivannan Sadhasivam		sdmmc_clk: sdmmc-clk {
388*1bad5e14SManivannan Sadhasivam			rockchip,pins =
389*1bad5e14SManivannan Sadhasivam				<4 12 RK_FUNC_1 &pcfg_pull_none_18ma>;
390*1bad5e14SManivannan Sadhasivam		};
391*1bad5e14SManivannan Sadhasivam
392*1bad5e14SManivannan Sadhasivam		sdmmc_cmd: sdmmc-cmd {
393*1bad5e14SManivannan Sadhasivam			rockchip,pins =
394*1bad5e14SManivannan Sadhasivam				<4 13 RK_FUNC_1 &pcfg_pull_up_8ma>;
395*1bad5e14SManivannan Sadhasivam		};
396*1bad5e14SManivannan Sadhasivam	};
397*1bad5e14SManivannan Sadhasivam
398*1bad5e14SManivannan Sadhasivam	pmic {
399*1bad5e14SManivannan Sadhasivam		pmic_int_l: pmic-int-l {
400*1bad5e14SManivannan Sadhasivam			rockchip,pins =
401*1bad5e14SManivannan Sadhasivam				<1 21 RK_FUNC_GPIO &pcfg_pull_up>;
402*1bad5e14SManivannan Sadhasivam		};
403*1bad5e14SManivannan Sadhasivam
404*1bad5e14SManivannan Sadhasivam		vsel1_gpio: vsel1-gpio {
405*1bad5e14SManivannan Sadhasivam			rockchip,pins =
406*1bad5e14SManivannan Sadhasivam				<1 17 RK_FUNC_GPIO &pcfg_pull_down>;
407*1bad5e14SManivannan Sadhasivam		};
408*1bad5e14SManivannan Sadhasivam
409*1bad5e14SManivannan Sadhasivam		vsel2_gpio: vsel2-gpio {
410*1bad5e14SManivannan Sadhasivam			rockchip,pins =
411*1bad5e14SManivannan Sadhasivam				<1 14 RK_FUNC_GPIO &pcfg_pull_down>;
412*1bad5e14SManivannan Sadhasivam		};
413*1bad5e14SManivannan Sadhasivam	};
414*1bad5e14SManivannan Sadhasivam};
415*1bad5e14SManivannan Sadhasivam
416*1bad5e14SManivannan Sadhasivam&pwm2 {
417*1bad5e14SManivannan Sadhasivam	status = "okay";
418*1bad5e14SManivannan Sadhasivam};
419*1bad5e14SManivannan Sadhasivam
420*1bad5e14SManivannan Sadhasivam&pwm3 {
421*1bad5e14SManivannan Sadhasivam	status = "okay";
422*1bad5e14SManivannan Sadhasivam};
423*1bad5e14SManivannan Sadhasivam
424*1bad5e14SManivannan Sadhasivam&sdhci {
425*1bad5e14SManivannan Sadhasivam	bus-width = <8>;
426*1bad5e14SManivannan Sadhasivam	mmc-hs400-1_8v;
427*1bad5e14SManivannan Sadhasivam	mmc-hs400-enhanced-strobe;
428*1bad5e14SManivannan Sadhasivam	non-removable;
429*1bad5e14SManivannan Sadhasivam	status = "okay";
430*1bad5e14SManivannan Sadhasivam};
431*1bad5e14SManivannan Sadhasivam
432*1bad5e14SManivannan Sadhasivam&sdmmc {
433*1bad5e14SManivannan Sadhasivam	bus-width = <4>;
434*1bad5e14SManivannan Sadhasivam	cap-mmc-highspeed;
435*1bad5e14SManivannan Sadhasivam	cap-sd-highspeed;
436*1bad5e14SManivannan Sadhasivam	clock-frequency = <100000000>;
437*1bad5e14SManivannan Sadhasivam	clock-freq-min-max = <100000 100000000>;
438*1bad5e14SManivannan Sadhasivam	cd-gpios = <&gpio0 7 GPIO_ACTIVE_LOW>;
439*1bad5e14SManivannan Sadhasivam	disable-wp;
440*1bad5e14SManivannan Sadhasivam	sd-uhs-sdr104;
441*1bad5e14SManivannan Sadhasivam	vqmmc-supply = <&vcc_sd>;
442*1bad5e14SManivannan Sadhasivam	card-detect-delay = <800>;
443*1bad5e14SManivannan Sadhasivam	pinctrl-names = "default";
444*1bad5e14SManivannan Sadhasivam	pinctrl-0 = <&sdmmc_clk &sdmmc_cmd &sdmmc_cd &sdmmc_bus4>;
445*1bad5e14SManivannan Sadhasivam	status = "okay";
446*1bad5e14SManivannan Sadhasivam};
447*1bad5e14SManivannan Sadhasivam
448*1bad5e14SManivannan Sadhasivam&uart0 {
449*1bad5e14SManivannan Sadhasivam	pinctrl-names = "default";
450*1bad5e14SManivannan Sadhasivam	pinctrl-0 = <&uart0_xfer &uart0_cts>;
451*1bad5e14SManivannan Sadhasivam	status = "okay";
452*1bad5e14SManivannan Sadhasivam};
453*1bad5e14SManivannan Sadhasivam
454*1bad5e14SManivannan Sadhasivam&uart2 {
455*1bad5e14SManivannan Sadhasivam	status = "okay";
456*1bad5e14SManivannan Sadhasivam};
457*1bad5e14SManivannan Sadhasivam
458*1bad5e14SManivannan Sadhasivam&u2phy0 {
459*1bad5e14SManivannan Sadhasivam	status = "okay";
460*1bad5e14SManivannan Sadhasivam};
461*1bad5e14SManivannan Sadhasivam
462*1bad5e14SManivannan Sadhasivam&u2phy1 {
463*1bad5e14SManivannan Sadhasivam	status = "okay";
464*1bad5e14SManivannan Sadhasivam};
465*1bad5e14SManivannan Sadhasivam
466*1bad5e14SManivannan Sadhasivam&u2phy0_host {
467*1bad5e14SManivannan Sadhasivam	phy-supply = <&vcc5v0_host>;
468*1bad5e14SManivannan Sadhasivam	status = "okay";
469*1bad5e14SManivannan Sadhasivam};
470*1bad5e14SManivannan Sadhasivam
471*1bad5e14SManivannan Sadhasivam&u2phy1_host {
472*1bad5e14SManivannan Sadhasivam	phy-supply = <&vcc5v0_host>;
473*1bad5e14SManivannan Sadhasivam	status = "okay";
474*1bad5e14SManivannan Sadhasivam};
475*1bad5e14SManivannan Sadhasivam
476*1bad5e14SManivannan Sadhasivam&u2phy0_otg {
477*1bad5e14SManivannan Sadhasivam	status = "okay";
478*1bad5e14SManivannan Sadhasivam};
479*1bad5e14SManivannan Sadhasivam
480*1bad5e14SManivannan Sadhasivam&u2phy1_otg {
481*1bad5e14SManivannan Sadhasivam	status = "okay";
482*1bad5e14SManivannan Sadhasivam};
483*1bad5e14SManivannan Sadhasivam
484*1bad5e14SManivannan Sadhasivam&usb_host0_ehci {
485*1bad5e14SManivannan Sadhasivam	status = "okay";
486*1bad5e14SManivannan Sadhasivam};
487*1bad5e14SManivannan Sadhasivam
488*1bad5e14SManivannan Sadhasivam&usb_host0_ohci {
489*1bad5e14SManivannan Sadhasivam	status = "okay";
490*1bad5e14SManivannan Sadhasivam};
491*1bad5e14SManivannan Sadhasivam
492*1bad5e14SManivannan Sadhasivam&usb_host1_ehci {
493*1bad5e14SManivannan Sadhasivam	status = "okay";
494*1bad5e14SManivannan Sadhasivam};
495*1bad5e14SManivannan Sadhasivam
496*1bad5e14SManivannan Sadhasivam&usb_host1_ohci {
497*1bad5e14SManivannan Sadhasivam	status = "okay";
498*1bad5e14SManivannan Sadhasivam};
499*1bad5e14SManivannan Sadhasivam
500*1bad5e14SManivannan Sadhasivam&vopb {
501*1bad5e14SManivannan Sadhasivam	status = "okay";
502*1bad5e14SManivannan Sadhasivam};
503*1bad5e14SManivannan Sadhasivam
504*1bad5e14SManivannan Sadhasivam&vopl {
505*1bad5e14SManivannan Sadhasivam	status = "okay";
506*1bad5e14SManivannan Sadhasivam};
507