xref: /linux/arch/arm64/boot/dts/rockchip/rk3576-armsom-sige5.dts (revision 60675d4ca1ef0857e44eba5849b74a3a998d0c0f)
1*40f742b0SDetlev Casanova// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2*40f742b0SDetlev Casanova/*
3*40f742b0SDetlev Casanova * Copyright (c) 2024 Rockchip Electronics Co., Ltd.
4*40f742b0SDetlev Casanova *
5*40f742b0SDetlev Casanova */
6*40f742b0SDetlev Casanova
7*40f742b0SDetlev Casanova/dts-v1/;
8*40f742b0SDetlev Casanova
9*40f742b0SDetlev Casanova#include <dt-bindings/gpio/gpio.h>
10*40f742b0SDetlev Casanova#include <dt-bindings/leds/common.h>
11*40f742b0SDetlev Casanova#include <dt-bindings/pinctrl/rockchip.h>
12*40f742b0SDetlev Casanova#include <dt-bindings/pwm/pwm.h>
13*40f742b0SDetlev Casanova#include <dt-bindings/usb/pd.h>
14*40f742b0SDetlev Casanova#include "rk3576.dtsi"
15*40f742b0SDetlev Casanova
16*40f742b0SDetlev Casanova/ {
17*40f742b0SDetlev Casanova	model = "ArmSoM Sige5";
18*40f742b0SDetlev Casanova	compatible = "armsom,sige5", "rockchip,rk3576";
19*40f742b0SDetlev Casanova
20*40f742b0SDetlev Casanova	aliases {
21*40f742b0SDetlev Casanova		ethernet0 = &gmac0;
22*40f742b0SDetlev Casanova		ethernet1 = &gmac1;
23*40f742b0SDetlev Casanova	};
24*40f742b0SDetlev Casanova
25*40f742b0SDetlev Casanova	chosen {
26*40f742b0SDetlev Casanova		stdout-path = "serial0:1500000n8";
27*40f742b0SDetlev Casanova	};
28*40f742b0SDetlev Casanova
29*40f742b0SDetlev Casanova	leds: leds {
30*40f742b0SDetlev Casanova		compatible = "gpio-leds";
31*40f742b0SDetlev Casanova
32*40f742b0SDetlev Casanova		green_led: green-led {
33*40f742b0SDetlev Casanova			color = <LED_COLOR_ID_GREEN>;
34*40f742b0SDetlev Casanova			function = LED_FUNCTION_HEARTBEAT;
35*40f742b0SDetlev Casanova			gpios = <&gpio4 RK_PB2 GPIO_ACTIVE_HIGH>;
36*40f742b0SDetlev Casanova			linux,default-trigger = "heartbeat";
37*40f742b0SDetlev Casanova		};
38*40f742b0SDetlev Casanova
39*40f742b0SDetlev Casanova		red_led: red-led {
40*40f742b0SDetlev Casanova			color = <LED_COLOR_ID_RED>;
41*40f742b0SDetlev Casanova			function = LED_FUNCTION_STATUS;
42*40f742b0SDetlev Casanova			gpios = <&gpio4 RK_PB1 GPIO_ACTIVE_HIGH>;
43*40f742b0SDetlev Casanova			linux,default-trigger = "default-on";
44*40f742b0SDetlev Casanova		};
45*40f742b0SDetlev Casanova	};
46*40f742b0SDetlev Casanova
47*40f742b0SDetlev Casanova	vcc_12v0_dcin: regulator-vcc-12v0-dcin {
48*40f742b0SDetlev Casanova		compatible = "regulator-fixed";
49*40f742b0SDetlev Casanova		regulator-name = "vcc_12v0_dcin";
50*40f742b0SDetlev Casanova		regulator-always-on;
51*40f742b0SDetlev Casanova		regulator-boot-on;
52*40f742b0SDetlev Casanova		regulator-min-microvolt = <12000000>;
53*40f742b0SDetlev Casanova		regulator-max-microvolt = <12000000>;
54*40f742b0SDetlev Casanova	};
55*40f742b0SDetlev Casanova
56*40f742b0SDetlev Casanova	vcc_1v1_nldo_s3: regulator-vcc-1v1-nldo-s3 {
57*40f742b0SDetlev Casanova		compatible = "regulator-fixed";
58*40f742b0SDetlev Casanova		regulator-name = "vcc_1v1_nldo_s3";
59*40f742b0SDetlev Casanova		regulator-boot-on;
60*40f742b0SDetlev Casanova		regulator-always-on;
61*40f742b0SDetlev Casanova		regulator-min-microvolt = <1100000>;
62*40f742b0SDetlev Casanova		regulator-max-microvolt = <1100000>;
63*40f742b0SDetlev Casanova		vin-supply = <&vcc_5v0_sys>;
64*40f742b0SDetlev Casanova	};
65*40f742b0SDetlev Casanova
66*40f742b0SDetlev Casanova	vcc_1v2_ufs_vccq_s0: regulator-vcc-1v2-ufs-vccq-s0 {
67*40f742b0SDetlev Casanova		compatible = "regulator-fixed";
68*40f742b0SDetlev Casanova		regulator-name = "vcc_1v2_ufs_vccq_s0";
69*40f742b0SDetlev Casanova		regulator-boot-on;
70*40f742b0SDetlev Casanova		regulator-always-on;
71*40f742b0SDetlev Casanova		regulator-min-microvolt = <1200000>;
72*40f742b0SDetlev Casanova		regulator-max-microvolt = <1200000>;
73*40f742b0SDetlev Casanova		vin-supply = <&vcc_5v0_sys>;
74*40f742b0SDetlev Casanova	};
75*40f742b0SDetlev Casanova
76*40f742b0SDetlev Casanova	vcc_1v8_s0: regulator-vcc-1v8-s0 {
77*40f742b0SDetlev Casanova		compatible = "regulator-fixed";
78*40f742b0SDetlev Casanova		regulator-name = "vcc_1v8_s0";
79*40f742b0SDetlev Casanova		regulator-boot-on;
80*40f742b0SDetlev Casanova		regulator-always-on;
81*40f742b0SDetlev Casanova		regulator-min-microvolt = <1800000>;
82*40f742b0SDetlev Casanova		regulator-max-microvolt = <1800000>;
83*40f742b0SDetlev Casanova		vin-supply = <&vcc_1v8_s3>;
84*40f742b0SDetlev Casanova	};
85*40f742b0SDetlev Casanova
86*40f742b0SDetlev Casanova	vcc_1v8_ufs_vccq2_s0: regulator-vcc-1v8-ufs-vccq2-s0 {
87*40f742b0SDetlev Casanova		compatible = "regulator-fixed";
88*40f742b0SDetlev Casanova		regulator-name = "vcc_1v8_ufs_vccq2_s0";
89*40f742b0SDetlev Casanova		regulator-boot-on;
90*40f742b0SDetlev Casanova		regulator-always-on;
91*40f742b0SDetlev Casanova		regulator-min-microvolt = <1800000>;
92*40f742b0SDetlev Casanova		regulator-max-microvolt = <1800000>;
93*40f742b0SDetlev Casanova		vin-supply = <&vcc_1v8_s3>;
94*40f742b0SDetlev Casanova	};
95*40f742b0SDetlev Casanova
96*40f742b0SDetlev Casanova	vcc_2v0_pldo_s3: regulator-vcc-2v0-pldo-s3 {
97*40f742b0SDetlev Casanova		compatible = "regulator-fixed";
98*40f742b0SDetlev Casanova		regulator-name = "vcc_2v0_pldo_s3";
99*40f742b0SDetlev Casanova		regulator-boot-on;
100*40f742b0SDetlev Casanova		regulator-always-on;
101*40f742b0SDetlev Casanova		regulator-min-microvolt = <2000000>;
102*40f742b0SDetlev Casanova		regulator-max-microvolt = <2000000>;
103*40f742b0SDetlev Casanova		vin-supply = <&vcc_5v0_sys>;
104*40f742b0SDetlev Casanova	};
105*40f742b0SDetlev Casanova
106*40f742b0SDetlev Casanova	vcc_3v3_pcie: regulator-vcc-3v3-pcie {
107*40f742b0SDetlev Casanova		compatible = "regulator-fixed";
108*40f742b0SDetlev Casanova		regulator-name = "vcc_3v3_pcie";
109*40f742b0SDetlev Casanova		regulator-min-microvolt = <3300000>;
110*40f742b0SDetlev Casanova		regulator-max-microvolt = <3300000>;
111*40f742b0SDetlev Casanova		enable-active-high;
112*40f742b0SDetlev Casanova		gpio = <&gpio3 RK_PD6 GPIO_ACTIVE_HIGH>;
113*40f742b0SDetlev Casanova		startup-delay-us = <5000>;
114*40f742b0SDetlev Casanova		vin-supply = <&vcc_5v0_sys>;
115*40f742b0SDetlev Casanova	};
116*40f742b0SDetlev Casanova
117*40f742b0SDetlev Casanova	vcc_3v3_rtc_s5: regulator-vcc-3v3-rtc-s5 {
118*40f742b0SDetlev Casanova		compatible = "regulator-fixed";
119*40f742b0SDetlev Casanova		regulator-name = "vcc_3v3_rtc_s5";
120*40f742b0SDetlev Casanova		regulator-boot-on;
121*40f742b0SDetlev Casanova		regulator-always-on;
122*40f742b0SDetlev Casanova		regulator-min-microvolt = <3300000>;
123*40f742b0SDetlev Casanova		regulator-max-microvolt = <3300000>;
124*40f742b0SDetlev Casanova		vin-supply = <&vcc_5v0_sys>;
125*40f742b0SDetlev Casanova	};
126*40f742b0SDetlev Casanova
127*40f742b0SDetlev Casanova	vcc_3v3_s0: regulator-vcc-3v3-s0 {
128*40f742b0SDetlev Casanova		compatible = "regulator-fixed";
129*40f742b0SDetlev Casanova		regulator-name = "vcc_3v3_s0";
130*40f742b0SDetlev Casanova		regulator-boot-on;
131*40f742b0SDetlev Casanova		regulator-always-on;
132*40f742b0SDetlev Casanova		regulator-min-microvolt = <3300000>;
133*40f742b0SDetlev Casanova		regulator-max-microvolt = <3300000>;
134*40f742b0SDetlev Casanova		vin-supply = <&vcc_3v3_s3>;
135*40f742b0SDetlev Casanova	};
136*40f742b0SDetlev Casanova
137*40f742b0SDetlev Casanova	vcc_5v0_sys: regulator-vcc-5v0-sys {
138*40f742b0SDetlev Casanova		compatible = "regulator-fixed";
139*40f742b0SDetlev Casanova		regulator-name = "vcc_5v0_sys";
140*40f742b0SDetlev Casanova		regulator-always-on;
141*40f742b0SDetlev Casanova		regulator-boot-on;
142*40f742b0SDetlev Casanova		regulator-min-microvolt = <5000000>;
143*40f742b0SDetlev Casanova		regulator-max-microvolt = <5000000>;
144*40f742b0SDetlev Casanova		vin-supply = <&vcc_12v0_dcin>;
145*40f742b0SDetlev Casanova	};
146*40f742b0SDetlev Casanova
147*40f742b0SDetlev Casanova	vcc_5v0_device: regulator-vcc-5v0-device {
148*40f742b0SDetlev Casanova		compatible = "regulator-fixed";
149*40f742b0SDetlev Casanova		regulator-name = "vcc_5v0_device";
150*40f742b0SDetlev Casanova		regulator-always-on;
151*40f742b0SDetlev Casanova		regulator-boot-on;
152*40f742b0SDetlev Casanova		regulator-min-microvolt = <5000000>;
153*40f742b0SDetlev Casanova		regulator-max-microvolt = <5000000>;
154*40f742b0SDetlev Casanova		vin-supply = <&vcc_12v0_dcin>;
155*40f742b0SDetlev Casanova	};
156*40f742b0SDetlev Casanova
157*40f742b0SDetlev Casanova	vcc_3v3_ufs_s0: regulator-vcc-ufs-s0 {
158*40f742b0SDetlev Casanova		compatible = "regulator-fixed";
159*40f742b0SDetlev Casanova		regulator-name = "vcc_3v3_ufs_s0";
160*40f742b0SDetlev Casanova		regulator-boot-on;
161*40f742b0SDetlev Casanova		regulator-always-on;
162*40f742b0SDetlev Casanova		regulator-min-microvolt = <3300000>;
163*40f742b0SDetlev Casanova		regulator-max-microvolt = <3300000>;
164*40f742b0SDetlev Casanova		vin-supply = <&vcc_5v0_sys>;
165*40f742b0SDetlev Casanova	};
166*40f742b0SDetlev Casanova};
167*40f742b0SDetlev Casanova
168*40f742b0SDetlev Casanova&cpu_l0 {
169*40f742b0SDetlev Casanova	cpu-supply = <&vdd_cpu_lit_s0>;
170*40f742b0SDetlev Casanova};
171*40f742b0SDetlev Casanova
172*40f742b0SDetlev Casanova&gmac0 {
173*40f742b0SDetlev Casanova	phy-mode = "rgmii-id";
174*40f742b0SDetlev Casanova	clock_in_out = "output";
175*40f742b0SDetlev Casanova
176*40f742b0SDetlev Casanova	snps,reset-gpio = <&gpio2 RK_PB5 GPIO_ACTIVE_LOW>;
177*40f742b0SDetlev Casanova	snps,reset-active-low;
178*40f742b0SDetlev Casanova	snps,reset-delays-us = <0 20000 100000>;
179*40f742b0SDetlev Casanova
180*40f742b0SDetlev Casanova	pinctrl-names = "default";
181*40f742b0SDetlev Casanova	pinctrl-0 = <&eth0m0_miim
182*40f742b0SDetlev Casanova		     &eth0m0_tx_bus2
183*40f742b0SDetlev Casanova		     &eth0m0_rx_bus2
184*40f742b0SDetlev Casanova		     &eth0m0_rgmii_clk
185*40f742b0SDetlev Casanova		     &eth0m0_rgmii_bus
186*40f742b0SDetlev Casanova		     &ethm0_clk0_25m_out>;
187*40f742b0SDetlev Casanova
188*40f742b0SDetlev Casanova	phy-handle = <&rgmii_phy0>;
189*40f742b0SDetlev Casanova	status = "okay";
190*40f742b0SDetlev Casanova};
191*40f742b0SDetlev Casanova
192*40f742b0SDetlev Casanova&gmac1 {
193*40f742b0SDetlev Casanova	phy-mode = "rgmii-id";
194*40f742b0SDetlev Casanova	clock_in_out = "output";
195*40f742b0SDetlev Casanova
196*40f742b0SDetlev Casanova	snps,reset-gpio = <&gpio3 RK_PA3 GPIO_ACTIVE_LOW>;
197*40f742b0SDetlev Casanova	snps,reset-active-low;
198*40f742b0SDetlev Casanova	snps,reset-delays-us = <0 20000 100000>;
199*40f742b0SDetlev Casanova
200*40f742b0SDetlev Casanova	pinctrl-names = "default";
201*40f742b0SDetlev Casanova	pinctrl-0 = <&eth1m0_miim
202*40f742b0SDetlev Casanova		     &eth1m0_tx_bus2
203*40f742b0SDetlev Casanova		     &eth1m0_rx_bus2
204*40f742b0SDetlev Casanova		     &eth1m0_rgmii_clk
205*40f742b0SDetlev Casanova		     &eth1m0_rgmii_bus
206*40f742b0SDetlev Casanova		     &ethm0_clk1_25m_out>;
207*40f742b0SDetlev Casanova
208*40f742b0SDetlev Casanova	phy-handle = <&rgmii_phy1>;
209*40f742b0SDetlev Casanova	status = "okay";
210*40f742b0SDetlev Casanova};
211*40f742b0SDetlev Casanova
212*40f742b0SDetlev Casanova&gpu {
213*40f742b0SDetlev Casanova	mali-supply = <&vdd_gpu_s0>;
214*40f742b0SDetlev Casanova	status = "okay";
215*40f742b0SDetlev Casanova};
216*40f742b0SDetlev Casanova
217*40f742b0SDetlev Casanova&i2c1 {
218*40f742b0SDetlev Casanova	status = "okay";
219*40f742b0SDetlev Casanova
220*40f742b0SDetlev Casanova	pmic@23 {
221*40f742b0SDetlev Casanova		compatible = "rockchip,rk806";
222*40f742b0SDetlev Casanova		reg = <0x23>;
223*40f742b0SDetlev Casanova
224*40f742b0SDetlev Casanova		interrupt-parent = <&gpio0>;
225*40f742b0SDetlev Casanova		interrupts = <6 IRQ_TYPE_LEVEL_LOW>;
226*40f742b0SDetlev Casanova
227*40f742b0SDetlev Casanova		pinctrl-names = "default";
228*40f742b0SDetlev Casanova		pinctrl-0 = <&pmic_pins>, <&rk806_dvs1_null>,
229*40f742b0SDetlev Casanova			    <&rk806_dvs2_null>, <&rk806_dvs3_null>;
230*40f742b0SDetlev Casanova
231*40f742b0SDetlev Casanova		system-power-controller;
232*40f742b0SDetlev Casanova
233*40f742b0SDetlev Casanova		vcc1-supply = <&vcc_5v0_sys>;
234*40f742b0SDetlev Casanova		vcc2-supply = <&vcc_5v0_sys>;
235*40f742b0SDetlev Casanova		vcc3-supply = <&vcc_5v0_sys>;
236*40f742b0SDetlev Casanova		vcc4-supply = <&vcc_5v0_sys>;
237*40f742b0SDetlev Casanova		vcc5-supply = <&vcc_5v0_sys>;
238*40f742b0SDetlev Casanova		vcc6-supply = <&vcc_5v0_sys>;
239*40f742b0SDetlev Casanova		vcc7-supply = <&vcc_5v0_sys>;
240*40f742b0SDetlev Casanova		vcc8-supply = <&vcc_5v0_sys>;
241*40f742b0SDetlev Casanova		vcc9-supply = <&vcc_5v0_sys>;
242*40f742b0SDetlev Casanova		vcc10-supply = <&vcc_5v0_sys>;
243*40f742b0SDetlev Casanova		vcc11-supply = <&vcc_2v0_pldo_s3>;
244*40f742b0SDetlev Casanova		vcc12-supply = <&vcc_5v0_sys>;
245*40f742b0SDetlev Casanova		vcc13-supply = <&vcc_1v1_nldo_s3>;
246*40f742b0SDetlev Casanova		vcc14-supply = <&vcc_1v1_nldo_s3>;
247*40f742b0SDetlev Casanova		vcca-supply = <&vcc_5v0_sys>;
248*40f742b0SDetlev Casanova
249*40f742b0SDetlev Casanova		gpio-controller;
250*40f742b0SDetlev Casanova		#gpio-cells = <2>;
251*40f742b0SDetlev Casanova
252*40f742b0SDetlev Casanova		rk806_dvs1_null: dvs1-null-pins {
253*40f742b0SDetlev Casanova			pins = "gpio_pwrctrl1";
254*40f742b0SDetlev Casanova			function = "pin_fun0";
255*40f742b0SDetlev Casanova		};
256*40f742b0SDetlev Casanova
257*40f742b0SDetlev Casanova		rk806_dvs2_null: dvs2-null-pins {
258*40f742b0SDetlev Casanova			pins = "gpio_pwrctrl2";
259*40f742b0SDetlev Casanova			function = "pin_fun0";
260*40f742b0SDetlev Casanova		};
261*40f742b0SDetlev Casanova
262*40f742b0SDetlev Casanova		rk806_dvs3_null: dvs3-null-pins {
263*40f742b0SDetlev Casanova			pins = "gpio_pwrctrl3";
264*40f742b0SDetlev Casanova			function = "pin_fun0";
265*40f742b0SDetlev Casanova		};
266*40f742b0SDetlev Casanova
267*40f742b0SDetlev Casanova		rk806_dvs1_slp: dvs1-slp-pins {
268*40f742b0SDetlev Casanova			pins = "gpio_pwrctrl1";
269*40f742b0SDetlev Casanova			function = "pin_fun1";
270*40f742b0SDetlev Casanova		};
271*40f742b0SDetlev Casanova
272*40f742b0SDetlev Casanova		rk806_dvs1_pwrdn: dvs1-pwrdn-pins {
273*40f742b0SDetlev Casanova			pins = "gpio_pwrctrl1";
274*40f742b0SDetlev Casanova			function = "pin_fun2";
275*40f742b0SDetlev Casanova		};
276*40f742b0SDetlev Casanova
277*40f742b0SDetlev Casanova		rk806_dvs1_rst: dvs1-rst-pins {
278*40f742b0SDetlev Casanova			pins = "gpio_pwrctrl1";
279*40f742b0SDetlev Casanova			function = "pin_fun3";
280*40f742b0SDetlev Casanova		};
281*40f742b0SDetlev Casanova
282*40f742b0SDetlev Casanova		rk806_dvs2_slp: dvs2-slp-pins {
283*40f742b0SDetlev Casanova			pins = "gpio_pwrctrl2";
284*40f742b0SDetlev Casanova			function = "pin_fun1";
285*40f742b0SDetlev Casanova		};
286*40f742b0SDetlev Casanova
287*40f742b0SDetlev Casanova		rk806_dvs2_pwrdn: dvs2-pwrdn-pins {
288*40f742b0SDetlev Casanova			pins = "gpio_pwrctrl2";
289*40f742b0SDetlev Casanova			function = "pin_fun2";
290*40f742b0SDetlev Casanova		};
291*40f742b0SDetlev Casanova
292*40f742b0SDetlev Casanova		rk806_dvs2_rst: dvs2-rst-pins {
293*40f742b0SDetlev Casanova			pins = "gpio_pwrctrl2";
294*40f742b0SDetlev Casanova			function = "pin_fun3";
295*40f742b0SDetlev Casanova		};
296*40f742b0SDetlev Casanova
297*40f742b0SDetlev Casanova		rk806_dvs2_dvs: dvs2-dvs-pins {
298*40f742b0SDetlev Casanova			pins = "gpio_pwrctrl2";
299*40f742b0SDetlev Casanova			function = "pin_fun4";
300*40f742b0SDetlev Casanova		};
301*40f742b0SDetlev Casanova
302*40f742b0SDetlev Casanova		rk806_dvs2_gpio: dvs2-gpio-pins {
303*40f742b0SDetlev Casanova			pins = "gpio_pwrctrl2";
304*40f742b0SDetlev Casanova			function = "pin_fun5";
305*40f742b0SDetlev Casanova		};
306*40f742b0SDetlev Casanova
307*40f742b0SDetlev Casanova		rk806_dvs3_slp: dvs3-slp-pins {
308*40f742b0SDetlev Casanova			pins = "gpio_pwrctrl3";
309*40f742b0SDetlev Casanova			function = "pin_fun1";
310*40f742b0SDetlev Casanova		};
311*40f742b0SDetlev Casanova
312*40f742b0SDetlev Casanova		rk806_dvs3_pwrdn: dvs3-pwrdn-pins {
313*40f742b0SDetlev Casanova			pins = "gpio_pwrctrl3";
314*40f742b0SDetlev Casanova			function = "pin_fun2";
315*40f742b0SDetlev Casanova		};
316*40f742b0SDetlev Casanova
317*40f742b0SDetlev Casanova		rk806_dvs3_rst: dvs3-rst-pins {
318*40f742b0SDetlev Casanova			pins = "gpio_pwrctrl3";
319*40f742b0SDetlev Casanova			function = "pin_fun3";
320*40f742b0SDetlev Casanova		};
321*40f742b0SDetlev Casanova
322*40f742b0SDetlev Casanova		rk806_dvs3_dvs: dvs3-dvs-pins {
323*40f742b0SDetlev Casanova			pins = "gpio_pwrctrl3";
324*40f742b0SDetlev Casanova			function = "pin_fun4";
325*40f742b0SDetlev Casanova		};
326*40f742b0SDetlev Casanova
327*40f742b0SDetlev Casanova		rk806_dvs3_gpio: dvs3-gpio-pins {
328*40f742b0SDetlev Casanova			pins = "gpio_pwrctrl3";
329*40f742b0SDetlev Casanova			function = "pin_fun5";
330*40f742b0SDetlev Casanova		};
331*40f742b0SDetlev Casanova
332*40f742b0SDetlev Casanova		regulators {
333*40f742b0SDetlev Casanova			vdd_cpu_big_s0: dcdc-reg1 {
334*40f742b0SDetlev Casanova				regulator-always-on;
335*40f742b0SDetlev Casanova				regulator-boot-on;
336*40f742b0SDetlev Casanova				regulator-min-microvolt = <550000>;
337*40f742b0SDetlev Casanova				regulator-max-microvolt = <950000>;
338*40f742b0SDetlev Casanova				regulator-ramp-delay = <12500>;
339*40f742b0SDetlev Casanova				regulator-name = "vdd_cpu_big_s0";
340*40f742b0SDetlev Casanova				regulator-enable-ramp-delay = <400>;
341*40f742b0SDetlev Casanova				regulator-state-mem {
342*40f742b0SDetlev Casanova					regulator-off-in-suspend;
343*40f742b0SDetlev Casanova				};
344*40f742b0SDetlev Casanova			};
345*40f742b0SDetlev Casanova
346*40f742b0SDetlev Casanova			vdd_npu_s0: dcdc-reg2 {
347*40f742b0SDetlev Casanova				regulator-boot-on;
348*40f742b0SDetlev Casanova				regulator-min-microvolt = <550000>;
349*40f742b0SDetlev Casanova				regulator-max-microvolt = <950000>;
350*40f742b0SDetlev Casanova				regulator-ramp-delay = <12500>;
351*40f742b0SDetlev Casanova				regulator-name = "vdd_npu_s0";
352*40f742b0SDetlev Casanova				regulator-enable-ramp-delay = <400>;
353*40f742b0SDetlev Casanova				regulator-state-mem {
354*40f742b0SDetlev Casanova					regulator-off-in-suspend;
355*40f742b0SDetlev Casanova				};
356*40f742b0SDetlev Casanova			};
357*40f742b0SDetlev Casanova
358*40f742b0SDetlev Casanova			vdd_cpu_lit_s0: dcdc-reg3 {
359*40f742b0SDetlev Casanova				regulator-always-on;
360*40f742b0SDetlev Casanova				regulator-boot-on;
361*40f742b0SDetlev Casanova				regulator-min-microvolt = <550000>;
362*40f742b0SDetlev Casanova				regulator-max-microvolt = <950000>;
363*40f742b0SDetlev Casanova				regulator-ramp-delay = <12500>;
364*40f742b0SDetlev Casanova				regulator-name = "vdd_cpu_lit_s0";
365*40f742b0SDetlev Casanova				regulator-state-mem {
366*40f742b0SDetlev Casanova					regulator-off-in-suspend;
367*40f742b0SDetlev Casanova					regulator-suspend-microvolt = <750000>;
368*40f742b0SDetlev Casanova				};
369*40f742b0SDetlev Casanova			};
370*40f742b0SDetlev Casanova
371*40f742b0SDetlev Casanova			vcc_3v3_s3: dcdc-reg4 {
372*40f742b0SDetlev Casanova				regulator-always-on;
373*40f742b0SDetlev Casanova				regulator-boot-on;
374*40f742b0SDetlev Casanova				regulator-min-microvolt = <3300000>;
375*40f742b0SDetlev Casanova				regulator-max-microvolt = <3300000>;
376*40f742b0SDetlev Casanova				regulator-name = "vcc_3v3_s3";
377*40f742b0SDetlev Casanova				regulator-state-mem {
378*40f742b0SDetlev Casanova					regulator-on-in-suspend;
379*40f742b0SDetlev Casanova					regulator-suspend-microvolt = <3300000>;
380*40f742b0SDetlev Casanova				};
381*40f742b0SDetlev Casanova			};
382*40f742b0SDetlev Casanova
383*40f742b0SDetlev Casanova			vdd_gpu_s0: dcdc-reg5 {
384*40f742b0SDetlev Casanova				regulator-boot-on;
385*40f742b0SDetlev Casanova				regulator-min-microvolt = <550000>;
386*40f742b0SDetlev Casanova				regulator-max-microvolt = <900000>;
387*40f742b0SDetlev Casanova				regulator-ramp-delay = <12500>;
388*40f742b0SDetlev Casanova				regulator-name = "vdd_gpu_s0";
389*40f742b0SDetlev Casanova				regulator-enable-ramp-delay = <400>;
390*40f742b0SDetlev Casanova				regulator-state-mem {
391*40f742b0SDetlev Casanova					regulator-off-in-suspend;
392*40f742b0SDetlev Casanova					regulator-suspend-microvolt = <850000>;
393*40f742b0SDetlev Casanova				};
394*40f742b0SDetlev Casanova			};
395*40f742b0SDetlev Casanova
396*40f742b0SDetlev Casanova			vddq_ddr_s0: dcdc-reg6 {
397*40f742b0SDetlev Casanova				regulator-always-on;
398*40f742b0SDetlev Casanova				regulator-boot-on;
399*40f742b0SDetlev Casanova				regulator-name = "vddq_ddr_s0";
400*40f742b0SDetlev Casanova				regulator-state-mem {
401*40f742b0SDetlev Casanova					regulator-off-in-suspend;
402*40f742b0SDetlev Casanova				};
403*40f742b0SDetlev Casanova			};
404*40f742b0SDetlev Casanova
405*40f742b0SDetlev Casanova			vdd_logic_s0: dcdc-reg7 {
406*40f742b0SDetlev Casanova				regulator-always-on;
407*40f742b0SDetlev Casanova				regulator-boot-on;
408*40f742b0SDetlev Casanova				regulator-min-microvolt = <550000>;
409*40f742b0SDetlev Casanova				regulator-max-microvolt = <800000>;
410*40f742b0SDetlev Casanova				regulator-name = "vdd_logic_s0";
411*40f742b0SDetlev Casanova				regulator-state-mem {
412*40f742b0SDetlev Casanova					regulator-off-in-suspend;
413*40f742b0SDetlev Casanova				};
414*40f742b0SDetlev Casanova			};
415*40f742b0SDetlev Casanova
416*40f742b0SDetlev Casanova			vcc_1v8_s3: dcdc-reg8 {
417*40f742b0SDetlev Casanova				regulator-always-on;
418*40f742b0SDetlev Casanova				regulator-boot-on;
419*40f742b0SDetlev Casanova				regulator-min-microvolt = <1800000>;
420*40f742b0SDetlev Casanova				regulator-max-microvolt = <1800000>;
421*40f742b0SDetlev Casanova				regulator-name = "vcc_1v8_s3";
422*40f742b0SDetlev Casanova				regulator-state-mem {
423*40f742b0SDetlev Casanova					regulator-on-in-suspend;
424*40f742b0SDetlev Casanova					regulator-suspend-microvolt = <1800000>;
425*40f742b0SDetlev Casanova				};
426*40f742b0SDetlev Casanova			};
427*40f742b0SDetlev Casanova
428*40f742b0SDetlev Casanova			vdd2_ddr_s3: dcdc-reg9 {
429*40f742b0SDetlev Casanova				regulator-always-on;
430*40f742b0SDetlev Casanova				regulator-boot-on;
431*40f742b0SDetlev Casanova				regulator-name = "vdd2_ddr_s3";
432*40f742b0SDetlev Casanova				regulator-state-mem {
433*40f742b0SDetlev Casanova					regulator-on-in-suspend;
434*40f742b0SDetlev Casanova				};
435*40f742b0SDetlev Casanova			};
436*40f742b0SDetlev Casanova
437*40f742b0SDetlev Casanova			vdd_ddr_s0: dcdc-reg10 {
438*40f742b0SDetlev Casanova				regulator-always-on;
439*40f742b0SDetlev Casanova				regulator-boot-on;
440*40f742b0SDetlev Casanova				regulator-min-microvolt = <550000>;
441*40f742b0SDetlev Casanova				regulator-max-microvolt = <1200000>;
442*40f742b0SDetlev Casanova				regulator-name = "vdd_ddr_s0";
443*40f742b0SDetlev Casanova				regulator-state-mem {
444*40f742b0SDetlev Casanova					regulator-off-in-suspend;
445*40f742b0SDetlev Casanova				};
446*40f742b0SDetlev Casanova			};
447*40f742b0SDetlev Casanova
448*40f742b0SDetlev Casanova			vcca_1v8_s0: pldo-reg1 {
449*40f742b0SDetlev Casanova				regulator-always-on;
450*40f742b0SDetlev Casanova				regulator-boot-on;
451*40f742b0SDetlev Casanova				regulator-min-microvolt = <1800000>;
452*40f742b0SDetlev Casanova				regulator-max-microvolt = <1800000>;
453*40f742b0SDetlev Casanova				regulator-name = "vcca_1v8_s0";
454*40f742b0SDetlev Casanova				regulator-state-mem {
455*40f742b0SDetlev Casanova					regulator-off-in-suspend;
456*40f742b0SDetlev Casanova				};
457*40f742b0SDetlev Casanova			};
458*40f742b0SDetlev Casanova
459*40f742b0SDetlev Casanova			vcca1v8_pldo2_s0: pldo-reg2 {
460*40f742b0SDetlev Casanova				regulator-always-on;
461*40f742b0SDetlev Casanova				regulator-boot-on;
462*40f742b0SDetlev Casanova				regulator-min-microvolt = <1800000>;
463*40f742b0SDetlev Casanova				regulator-max-microvolt = <1800000>;
464*40f742b0SDetlev Casanova				regulator-name = "vcca1v8_pldo2_s0";
465*40f742b0SDetlev Casanova				regulator-state-mem {
466*40f742b0SDetlev Casanova					regulator-off-in-suspend;
467*40f742b0SDetlev Casanova				};
468*40f742b0SDetlev Casanova			};
469*40f742b0SDetlev Casanova
470*40f742b0SDetlev Casanova			vdda_1v2_s0: pldo-reg3 {
471*40f742b0SDetlev Casanova				regulator-always-on;
472*40f742b0SDetlev Casanova				regulator-boot-on;
473*40f742b0SDetlev Casanova				regulator-min-microvolt = <1200000>;
474*40f742b0SDetlev Casanova				regulator-max-microvolt = <1200000>;
475*40f742b0SDetlev Casanova				regulator-name = "vdda_1v2_s0";
476*40f742b0SDetlev Casanova				regulator-state-mem {
477*40f742b0SDetlev Casanova					regulator-off-in-suspend;
478*40f742b0SDetlev Casanova				};
479*40f742b0SDetlev Casanova			};
480*40f742b0SDetlev Casanova
481*40f742b0SDetlev Casanova			vcca_3v3_s0: pldo-reg4 {
482*40f742b0SDetlev Casanova				regulator-always-on;
483*40f742b0SDetlev Casanova				regulator-boot-on;
484*40f742b0SDetlev Casanova				regulator-min-microvolt = <3300000>;
485*40f742b0SDetlev Casanova				regulator-max-microvolt = <3300000>;
486*40f742b0SDetlev Casanova				regulator-name = "vcca_3v3_s0";
487*40f742b0SDetlev Casanova				regulator-state-mem {
488*40f742b0SDetlev Casanova					regulator-off-in-suspend;
489*40f742b0SDetlev Casanova				};
490*40f742b0SDetlev Casanova			};
491*40f742b0SDetlev Casanova
492*40f742b0SDetlev Casanova			vccio_sd_s0: pldo-reg5 {
493*40f742b0SDetlev Casanova				regulator-always-on;
494*40f742b0SDetlev Casanova				regulator-boot-on;
495*40f742b0SDetlev Casanova				regulator-min-microvolt = <1800000>;
496*40f742b0SDetlev Casanova				regulator-max-microvolt = <3300000>;
497*40f742b0SDetlev Casanova				regulator-name = "vccio_sd_s0";
498*40f742b0SDetlev Casanova				regulator-state-mem {
499*40f742b0SDetlev Casanova					regulator-off-in-suspend;
500*40f742b0SDetlev Casanova				};
501*40f742b0SDetlev Casanova			};
502*40f742b0SDetlev Casanova
503*40f742b0SDetlev Casanova			vcca1v8_pldo6_s3: pldo-reg6 {
504*40f742b0SDetlev Casanova				regulator-always-on;
505*40f742b0SDetlev Casanova				regulator-boot-on;
506*40f742b0SDetlev Casanova				regulator-min-microvolt = <1800000>;
507*40f742b0SDetlev Casanova				regulator-max-microvolt = <1800000>;
508*40f742b0SDetlev Casanova				regulator-name = "vcca1v8_pldo6_s3";
509*40f742b0SDetlev Casanova				regulator-state-mem {
510*40f742b0SDetlev Casanova					regulator-on-in-suspend;
511*40f742b0SDetlev Casanova					regulator-suspend-microvolt = <1800000>;
512*40f742b0SDetlev Casanova				};
513*40f742b0SDetlev Casanova			};
514*40f742b0SDetlev Casanova
515*40f742b0SDetlev Casanova			vdd_0v75_s3: nldo-reg1 {
516*40f742b0SDetlev Casanova				regulator-always-on;
517*40f742b0SDetlev Casanova				regulator-boot-on;
518*40f742b0SDetlev Casanova				regulator-min-microvolt = <750000>;
519*40f742b0SDetlev Casanova				regulator-max-microvolt = <750000>;
520*40f742b0SDetlev Casanova				regulator-name = "vdd_0v75_s3";
521*40f742b0SDetlev Casanova				regulator-state-mem {
522*40f742b0SDetlev Casanova					regulator-on-in-suspend;
523*40f742b0SDetlev Casanova					regulator-suspend-microvolt = <750000>;
524*40f742b0SDetlev Casanova				};
525*40f742b0SDetlev Casanova			};
526*40f742b0SDetlev Casanova
527*40f742b0SDetlev Casanova			vdda_ddr_pll_s0: nldo-reg2 {
528*40f742b0SDetlev Casanova				regulator-always-on;
529*40f742b0SDetlev Casanova				regulator-boot-on;
530*40f742b0SDetlev Casanova				regulator-min-microvolt = <850000>;
531*40f742b0SDetlev Casanova				regulator-max-microvolt = <850000>;
532*40f742b0SDetlev Casanova				regulator-name = "vdda_ddr_pll_s0";
533*40f742b0SDetlev Casanova				regulator-state-mem {
534*40f742b0SDetlev Casanova					regulator-off-in-suspend;
535*40f742b0SDetlev Casanova				};
536*40f742b0SDetlev Casanova			};
537*40f742b0SDetlev Casanova
538*40f742b0SDetlev Casanova			vdda0v75_hdmi_s0: nldo-reg3 {
539*40f742b0SDetlev Casanova				regulator-always-on;
540*40f742b0SDetlev Casanova				regulator-boot-on;
541*40f742b0SDetlev Casanova				regulator-min-microvolt = <837500>;
542*40f742b0SDetlev Casanova				regulator-max-microvolt = <837500>;
543*40f742b0SDetlev Casanova				regulator-name = "vdda0v75_hdmi_s0";
544*40f742b0SDetlev Casanova				regulator-state-mem {
545*40f742b0SDetlev Casanova					regulator-off-in-suspend;
546*40f742b0SDetlev Casanova				};
547*40f742b0SDetlev Casanova			};
548*40f742b0SDetlev Casanova
549*40f742b0SDetlev Casanova			vdda_0v85_s0: nldo-reg4 {
550*40f742b0SDetlev Casanova				regulator-always-on;
551*40f742b0SDetlev Casanova				regulator-boot-on;
552*40f742b0SDetlev Casanova				regulator-min-microvolt = <850000>;
553*40f742b0SDetlev Casanova				regulator-max-microvolt = <850000>;
554*40f742b0SDetlev Casanova				regulator-name = "vdda_0v85_s0";
555*40f742b0SDetlev Casanova				regulator-state-mem {
556*40f742b0SDetlev Casanova					regulator-off-in-suspend;
557*40f742b0SDetlev Casanova				};
558*40f742b0SDetlev Casanova			};
559*40f742b0SDetlev Casanova
560*40f742b0SDetlev Casanova			vdda_0v75_s0: nldo-reg5 {
561*40f742b0SDetlev Casanova				regulator-always-on;
562*40f742b0SDetlev Casanova				regulator-boot-on;
563*40f742b0SDetlev Casanova				regulator-min-microvolt = <750000>;
564*40f742b0SDetlev Casanova				regulator-max-microvolt = <750000>;
565*40f742b0SDetlev Casanova				regulator-name = "vdda_0v75_s0";
566*40f742b0SDetlev Casanova				regulator-state-mem {
567*40f742b0SDetlev Casanova					regulator-off-in-suspend;
568*40f742b0SDetlev Casanova				};
569*40f742b0SDetlev Casanova			};
570*40f742b0SDetlev Casanova		};
571*40f742b0SDetlev Casanova	};
572*40f742b0SDetlev Casanova};
573*40f742b0SDetlev Casanova
574*40f742b0SDetlev Casanova&i2c2 {
575*40f742b0SDetlev Casanova	status = "okay";
576*40f742b0SDetlev Casanova
577*40f742b0SDetlev Casanova	hym8563: rtc@51 {
578*40f742b0SDetlev Casanova		compatible = "haoyu,hym8563";
579*40f742b0SDetlev Casanova		reg = <0x51>;
580*40f742b0SDetlev Casanova		clock-output-names = "hym8563";
581*40f742b0SDetlev Casanova		interrupt-parent = <&gpio0>;
582*40f742b0SDetlev Casanova		interrupts = <RK_PB0 IRQ_TYPE_LEVEL_LOW>;
583*40f742b0SDetlev Casanova		pinctrl-names = "default";
584*40f742b0SDetlev Casanova		pinctrl-0 = <&hym8563_int>;
585*40f742b0SDetlev Casanova		wakeup-source;
586*40f742b0SDetlev Casanova		#clock-cells = <0>;
587*40f742b0SDetlev Casanova	};
588*40f742b0SDetlev Casanova};
589*40f742b0SDetlev Casanova
590*40f742b0SDetlev Casanova&mdio0 {
591*40f742b0SDetlev Casanova	rgmii_phy0: phy@1 {
592*40f742b0SDetlev Casanova		compatible = "ethernet-phy-ieee802.3-c22";
593*40f742b0SDetlev Casanova		reg = <0x1>;
594*40f742b0SDetlev Casanova		clocks = <&cru REFCLKO25M_GMAC0_OUT>;
595*40f742b0SDetlev Casanova	};
596*40f742b0SDetlev Casanova};
597*40f742b0SDetlev Casanova
598*40f742b0SDetlev Casanova&mdio1 {
599*40f742b0SDetlev Casanova	rgmii_phy1: phy@1 {
600*40f742b0SDetlev Casanova		compatible = "ethernet-phy-ieee802.3-c22";
601*40f742b0SDetlev Casanova		reg = <0x1>;
602*40f742b0SDetlev Casanova		clocks = <&cru REFCLKO25M_GMAC1_OUT>;
603*40f742b0SDetlev Casanova	};
604*40f742b0SDetlev Casanova};
605*40f742b0SDetlev Casanova
606*40f742b0SDetlev Casanova&pinctrl {
607*40f742b0SDetlev Casanova	headphone {
608*40f742b0SDetlev Casanova		hp_det: hp-det {
609*40f742b0SDetlev Casanova			rockchip,pins = <0 RK_PD3 RK_FUNC_GPIO &pcfg_pull_up>;
610*40f742b0SDetlev Casanova		};
611*40f742b0SDetlev Casanova	};
612*40f742b0SDetlev Casanova
613*40f742b0SDetlev Casanova	hym8563 {
614*40f742b0SDetlev Casanova		hym8563_int: hym8563-int {
615*40f742b0SDetlev Casanova			rockchip,pins = <0 RK_PA0 RK_FUNC_GPIO &pcfg_pull_up>;
616*40f742b0SDetlev Casanova		};
617*40f742b0SDetlev Casanova	};
618*40f742b0SDetlev Casanova
619*40f742b0SDetlev Casanova	leds {
620*40f742b0SDetlev Casanova		led_rgb_r: led-red-en {
621*40f742b0SDetlev Casanova			rockchip,pins = <4 RK_PB1 RK_FUNC_GPIO &pcfg_pull_none>;
622*40f742b0SDetlev Casanova		};
623*40f742b0SDetlev Casanova		led_rgb_g: led-green-en {
624*40f742b0SDetlev Casanova			rockchip,pins = <4 RK_PB2 RK_FUNC_GPIO &pcfg_pull_none>;
625*40f742b0SDetlev Casanova		};
626*40f742b0SDetlev Casanova	};
627*40f742b0SDetlev Casanova};
628*40f742b0SDetlev Casanova
629*40f742b0SDetlev Casanova&sdhci {
630*40f742b0SDetlev Casanova	bus-width = <8>;
631*40f742b0SDetlev Casanova	full-pwr-cycle-in-suspend;
632*40f742b0SDetlev Casanova	max-frequency = <200000000>;
633*40f742b0SDetlev Casanova	mmc-hs400-1_8v;
634*40f742b0SDetlev Casanova	mmc-hs400-enhanced-strobe;
635*40f742b0SDetlev Casanova	no-sdio;
636*40f742b0SDetlev Casanova	no-sd;
637*40f742b0SDetlev Casanova	non-removable;
638*40f742b0SDetlev Casanova	status = "okay";
639*40f742b0SDetlev Casanova};
640*40f742b0SDetlev Casanova
641*40f742b0SDetlev Casanova&sdmmc {
642*40f742b0SDetlev Casanova	bus-width = <4>;
643*40f742b0SDetlev Casanova	cap-mmc-highspeed;
644*40f742b0SDetlev Casanova	cap-sd-highspeed;
645*40f742b0SDetlev Casanova	disable-wp;
646*40f742b0SDetlev Casanova	max-frequency = <200000000>;
647*40f742b0SDetlev Casanova	no-sdio;
648*40f742b0SDetlev Casanova	no-mmc;
649*40f742b0SDetlev Casanova	sd-uhs-sdr104;
650*40f742b0SDetlev Casanova	vmmc-supply = <&vcc_3v3_s3>;
651*40f742b0SDetlev Casanova	vqmmc-supply = <&vccio_sd_s0>;
652*40f742b0SDetlev Casanova	status = "okay";
653*40f742b0SDetlev Casanova};
654*40f742b0SDetlev Casanova
655*40f742b0SDetlev Casanova&uart0 {
656*40f742b0SDetlev Casanova	pinctrl-0 = <&uart0m0_xfer>;
657*40f742b0SDetlev Casanova	status = "okay";
658*40f742b0SDetlev Casanova};
659