xref: /OK3568_Linux_fs/kernel/arch/arm64/boot/dts/rockchip/rk3399-evb-rev3.dtsi (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2/*
3 * Copyright (c) 2022 Rockchip Electronics Co., Ltd.
4 *
5 */
6
7#include "rk3399-evb.dtsi"
8#include <dt-bindings/suspend/rockchip-rk3399.h>
9
10/ {
11	compatible = "rockchip,rk3399-evb-rev3", "rockchip,rk3399";
12
13	vcc5v0_sys: vcc5v0-sys {
14		compatible = "regulator-fixed";
15		regulator-name = "vcc5v0_sys";
16		regulator-always-on;
17		regulator-boot-on;
18		regulator-min-microvolt = <5000000>;
19		regulator-max-microvolt = <5000000>;
20	};
21
22	vdd_center: vdd-center {
23		compatible = "pwm-regulator";
24		rockchip,pwm_id = <2>;
25		rockchip,pwm_voltage = <900000>;
26		pwms = <&pwm2 0 25000 1>;
27		regulator-name = "vdd_center";
28		regulator-min-microvolt = <800000>;
29		regulator-max-microvolt = <1400000>;
30		regulator-always-on;
31		regulator-boot-on;
32	};
33
34	xin32k: xin32k {
35		compatible = "fixed-clock";
36		clock-frequency = <32768>;
37		clock-output-names = "xin32k";
38		#clock-cells = <0>;
39	};
40
41	rockchip_suspend: rockchip-suspend {
42		compatible = "rockchip,pm-rk3399";
43		status = "okay";
44		rockchip,sleep-debug-en = <1>;
45		rockchip,wakeup-config = <
46			(0
47			| RKPM_GPIO_WKUP_EN
48			)
49		>;
50		rockchip,pwm-regulator-config = <
51			(0
52			| PWM2_REGULATOR_EN
53			)
54		>;
55		rockchip,power-ctrl =
56			<&gpio1 17 GPIO_ACTIVE_HIGH>;
57	};
58};
59
60&i2c0 {
61	fusb1: fusb30x@22 {
62		compatible = "fairchild,fusb302";
63		reg = <0x22>;
64		pinctrl-names = "default";
65		pinctrl-0 = <&fusb1_int>;
66		vbus-5v-gpios = <&gpio1 4 GPIO_ACTIVE_HIGH>;
67		int-n-gpios = <&gpio1 24 GPIO_ACTIVE_HIGH>;
68		status = "okay";
69	};
70
71	vdd_cpu_b: syr827@40 {
72		compatible = "silergy,syr827";
73		reg = <0x40>;
74		vin-supply = <&vcc5v0_sys>;
75		regulator-compatible = "fan53555-reg";
76		pinctrl-0 = <&vsel1_gpio>;
77		vsel-gpios = <&gpio1 17 GPIO_ACTIVE_HIGH>;
78		regulator-name = "vdd_cpu_b";
79		regulator-min-microvolt = <712500>;
80		regulator-max-microvolt = <1500000>;
81		regulator-ramp-delay = <1000>;
82		fcs,suspend-voltage-selector = <1>;
83		regulator-always-on;
84		regulator-boot-on;
85		regulator-initial-state = <3>;
86			regulator-state-mem {
87			regulator-off-in-suspend;
88		};
89	};
90
91	vdd_gpu: syr828@41 {
92		compatible = "silergy,syr828";
93		reg = <0x41>;
94		vin-supply = <&vcc5v0_sys>;
95		regulator-compatible = "fan53555-reg";
96		pinctrl-0 = <&vsel2_gpio>;
97		vsel-gpios = <&gpio1 14 GPIO_ACTIVE_HIGH>;
98		regulator-name = "vdd_gpu";
99		regulator-min-microvolt = <712500>;
100		regulator-max-microvolt = <1500000>;
101		regulator-ramp-delay = <1000>;
102		fcs,suspend-voltage-selector = <1>;
103		regulator-always-on;
104		regulator-boot-on;
105		regulator-initial-state = <3>;
106			regulator-state-mem {
107			regulator-off-in-suspend;
108		};
109	};
110
111	rk808: pmic@1b {
112		compatible = "rockchip,rk808";
113		reg = <0x1b>;
114		interrupt-parent = <&gpio1>;
115		interrupts = <21 IRQ_TYPE_LEVEL_LOW>;
116		pinctrl-names = "default";
117		pinctrl-0 = <&pmic_int_l &pmic_dvs2>;
118		rockchip,system-power-controller;
119		wakeup-source;
120		#clock-cells = <1>;
121		clock-output-names = "rk808-clkout1", "rk808-clkout2";
122
123		vcc1-supply = <&vcc3v3_sys>;
124		vcc2-supply = <&vcc3v3_sys>;
125		vcc3-supply = <&vcc3v3_sys>;
126		vcc4-supply = <&vcc3v3_sys>;
127		vcc6-supply = <&vcc3v3_sys>;
128		vcc7-supply = <&vcc3v3_sys>;
129		vcc8-supply = <&vcc3v3_sys>;
130		vcc9-supply = <&vcc3v3_sys>;
131		vcc10-supply = <&vcc3v3_sys>;
132		vcc11-supply = <&vcc3v3_sys>;
133		vcc12-supply = <&vcc3v3_sys>;
134		vddio-supply = <&vcc1v8_pmu>;
135
136		regulators {
137			vdd_log: DCDC_REG1 {
138				regulator-always-on;
139				regulator-boot-on;
140				regulator-min-microvolt = <750000>;
141				regulator-max-microvolt = <1350000>;
142				regulator-ramp-delay = <6001>;
143				regulator-name = "vdd_log";
144				regulator-state-mem {
145					regulator-on-in-suspend;
146					regulator-suspend-microvolt = <900000>;
147				};
148			};
149
150			vdd_cpu_l: DCDC_REG2 {
151				regulator-always-on;
152				regulator-boot-on;
153				regulator-min-microvolt = <750000>;
154				regulator-max-microvolt = <1350000>;
155				regulator-ramp-delay = <6001>;
156				regulator-name = "vdd_cpu_l";
157				regulator-state-mem {
158					regulator-off-in-suspend;
159				};
160			};
161
162			vcc_ddr: DCDC_REG3 {
163				regulator-always-on;
164				regulator-boot-on;
165				regulator-name = "vcc_ddr";
166				regulator-state-mem {
167					regulator-on-in-suspend;
168				};
169			};
170
171			vcc_1v8: DCDC_REG4 {
172				regulator-always-on;
173				regulator-boot-on;
174				regulator-min-microvolt = <1800000>;
175				regulator-max-microvolt = <1800000>;
176				regulator-name = "vcc_1v8";
177				regulator-state-mem {
178					regulator-on-in-suspend;
179					regulator-suspend-microvolt = <1800000>;
180				};
181			};
182
183			vcc1v8_dvp: LDO_REG1 {
184				regulator-always-on;
185				regulator-boot-on;
186				regulator-min-microvolt = <1800000>;
187				regulator-max-microvolt = <1800000>;
188				regulator-name = "vcc1v8_dvp";
189				regulator-state-mem {
190					regulator-off-in-suspend;
191				};
192			};
193
194			vcc3v0_tp: LDO_REG2 {
195				regulator-always-on;
196				regulator-boot-on;
197				regulator-min-microvolt = <3000000>;
198				regulator-max-microvolt = <3000000>;
199				regulator-name = "vcc3v0_tp";
200				regulator-state-mem {
201					regulator-off-in-suspend;
202				};
203			};
204
205			vcc1v8_pmu: LDO_REG3 {
206				regulator-always-on;
207				regulator-boot-on;
208				regulator-min-microvolt = <1800000>;
209				regulator-max-microvolt = <1800000>;
210				regulator-name = "vcc1v8_pmu";
211				regulator-state-mem {
212					regulator-on-in-suspend;
213					regulator-suspend-microvolt = <1800000>;
214				};
215			};
216
217			vcc_sd: LDO_REG4 {
218				regulator-always-on;
219				regulator-boot-on;
220				regulator-min-microvolt = <1800000>;
221				regulator-max-microvolt = <3000000>;
222				regulator-name = "vcc_sd";
223				regulator-state-mem {
224					regulator-on-in-suspend;
225					regulator-suspend-microvolt = <3000000>;
226				};
227			};
228
229			vcca3v0_codec: LDO_REG5 {
230				regulator-always-on;
231				regulator-boot-on;
232				regulator-min-microvolt = <3000000>;
233				regulator-max-microvolt = <3000000>;
234				regulator-name = "vcca3v0_codec";
235				regulator-state-mem {
236					regulator-off-in-suspend;
237				};
238			};
239
240			vcc_1v5: LDO_REG6 {
241				regulator-always-on;
242				regulator-boot-on;
243				regulator-min-microvolt = <1500000>;
244				regulator-max-microvolt = <1500000>;
245				regulator-name = "vcc_1v5";
246				regulator-state-mem {
247					regulator-on-in-suspend;
248					regulator-suspend-microvolt = <1500000>;
249				};
250			};
251
252			vcca1v8_codec: LDO_REG7 {
253				regulator-always-on;
254				regulator-boot-on;
255				regulator-min-microvolt = <1800000>;
256				regulator-max-microvolt = <1800000>;
257				regulator-name = "vcca1v8_codec";
258				regulator-state-mem {
259					regulator-off-in-suspend;
260				};
261			};
262
263			vcc_3v0: LDO_REG8 {
264				regulator-always-on;
265				regulator-boot-on;
266				regulator-min-microvolt = <3000000>;
267				regulator-max-microvolt = <3000000>;
268				regulator-name = "vcc_3v0";
269				regulator-state-mem {
270					regulator-on-in-suspend;
271					regulator-suspend-microvolt = <3000000>;
272				};
273			};
274
275			vcc3v3_s3: SWITCH_REG1 {
276				regulator-always-on;
277				regulator-boot-on;
278				regulator-name = "vcc3v3_s3";
279				regulator-state-mem {
280					regulator-on-in-suspend;
281				};
282			};
283
284			vcc3v3_s0: SWITCH_REG2 {
285				regulator-always-on;
286				regulator-boot-on;
287				regulator-name = "vcc3v3_s0";
288				regulator-state-mem {
289					regulator-off-in-suspend;
290				};
291			};
292		};
293	};
294};
295
296&es8316 {
297	reg = <0x11>;
298};
299
300&i2c6 {
301	status = "okay";
302	fusb0: fusb30x@22 {
303		compatible = "fairchild,fusb302";
304		reg = <0x22>;
305		pinctrl-names = "default";
306		pinctrl-0 = <&fusb0_int>;
307		vbus-5v-gpios = <&gpio1 3 GPIO_ACTIVE_HIGH>;
308		int-n-gpios = <&gpio1 2 GPIO_ACTIVE_HIGH>;
309		status = "okay";
310	};
311};
312
313&pwm2 {
314	status = "okay";
315	pinctrl-names = "active";
316	pinctrl-0 = <&pwm2_pin_pull_down>;
317};
318