xref: /freebsd/sys/contrib/device-tree/src/arm64/rockchip/rk3588-turing-rk1.dtsi (revision 8d13bc63c0e1d50bc9e47ac1f26329c999bfecf0)
1*84943d6fSEmmanuel Vadot// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2*84943d6fSEmmanuel Vadot/*
3*84943d6fSEmmanuel Vadot * Device tree definitions for the Turing RK1 SoM.
4*84943d6fSEmmanuel Vadot *
5*84943d6fSEmmanuel Vadot * Copyright (c) 2023 Sam Edwards <CFSworks@gmail.com>
6*84943d6fSEmmanuel Vadot *
7*84943d6fSEmmanuel Vadot * Based on RK3588-EVB1 devicetree
8*84943d6fSEmmanuel Vadot * Copyright (c) 2021 Rockchip Electronics Co., Ltd.
9*84943d6fSEmmanuel Vadot */
10*84943d6fSEmmanuel Vadot
11*84943d6fSEmmanuel Vadot/dts-v1/;
12*84943d6fSEmmanuel Vadot#include <dt-bindings/gpio/gpio.h>
13*84943d6fSEmmanuel Vadot#include <dt-bindings/pinctrl/rockchip.h>
14*84943d6fSEmmanuel Vadot#include "rk3588.dtsi"
15*84943d6fSEmmanuel Vadot
16*84943d6fSEmmanuel Vadot/ {
17*84943d6fSEmmanuel Vadot	compatible = "turing,rk1", "rockchip,rk3588";
18*84943d6fSEmmanuel Vadot
19*84943d6fSEmmanuel Vadot	aliases {
20*84943d6fSEmmanuel Vadot		ethernet0 = &gmac1;
21*84943d6fSEmmanuel Vadot		mmc0 = &sdhci;
22*84943d6fSEmmanuel Vadot	};
23*84943d6fSEmmanuel Vadot
24*84943d6fSEmmanuel Vadot	fan: pwm-fan {
25*84943d6fSEmmanuel Vadot		compatible = "pwm-fan";
26*84943d6fSEmmanuel Vadot		cooling-levels = <0 25 95 145 195 255>;
27*84943d6fSEmmanuel Vadot		fan-supply = <&vcc5v0_sys>;
28*84943d6fSEmmanuel Vadot		pinctrl-names = "default";
29*84943d6fSEmmanuel Vadot		pinctrl-0 = <&pwm0m2_pins &fan_int>;
30*84943d6fSEmmanuel Vadot		interrupt-parent = <&gpio0>;
31*84943d6fSEmmanuel Vadot		interrupts = <RK_PA4 IRQ_TYPE_EDGE_FALLING>;
32*84943d6fSEmmanuel Vadot		pwms = <&pwm0 0 50000 0>;
33*84943d6fSEmmanuel Vadot		#cooling-cells = <2>;
34*84943d6fSEmmanuel Vadot	};
35*84943d6fSEmmanuel Vadot
36*84943d6fSEmmanuel Vadot	vcc3v3_pcie30: vcc3v3-pcie30-regulator {
37*84943d6fSEmmanuel Vadot		compatible = "regulator-fixed";
38*84943d6fSEmmanuel Vadot		regulator-name = "vcc3v3_pcie30";
39*84943d6fSEmmanuel Vadot		regulator-min-microvolt = <3300000>;
40*84943d6fSEmmanuel Vadot		regulator-max-microvolt = <3300000>;
41*84943d6fSEmmanuel Vadot		enable-active-high;
42*84943d6fSEmmanuel Vadot		gpios = <&gpio2 RK_PC5 GPIO_ACTIVE_HIGH>;
43*84943d6fSEmmanuel Vadot		pinctrl-names = "default";
44*84943d6fSEmmanuel Vadot		pinctrl-0 = <&vcc3v3_pcie30_en>;
45*84943d6fSEmmanuel Vadot		startup-delay-us = <5000>;
46*84943d6fSEmmanuel Vadot	};
47*84943d6fSEmmanuel Vadot
48*84943d6fSEmmanuel Vadot	vcc5v0_sys: vcc5v0-sys-regulator {
49*84943d6fSEmmanuel Vadot		compatible = "regulator-fixed";
50*84943d6fSEmmanuel Vadot		regulator-name = "vcc5v0_sys";
51*84943d6fSEmmanuel Vadot		regulator-always-on;
52*84943d6fSEmmanuel Vadot		regulator-boot-on;
53*84943d6fSEmmanuel Vadot		regulator-min-microvolt = <5000000>;
54*84943d6fSEmmanuel Vadot		regulator-max-microvolt = <5000000>;
55*84943d6fSEmmanuel Vadot	};
56*84943d6fSEmmanuel Vadot
57*84943d6fSEmmanuel Vadot	vcc_1v1_nldo_s3: vcc-1v1-nldo-s3-regulator {
58*84943d6fSEmmanuel Vadot		compatible = "regulator-fixed";
59*84943d6fSEmmanuel Vadot		regulator-name = "vcc_1v1_nldo_s3";
60*84943d6fSEmmanuel Vadot		regulator-always-on;
61*84943d6fSEmmanuel Vadot		regulator-boot-on;
62*84943d6fSEmmanuel Vadot		regulator-min-microvolt = <1100000>;
63*84943d6fSEmmanuel Vadot		regulator-max-microvolt = <1100000>;
64*84943d6fSEmmanuel Vadot		vin-supply = <&vcc5v0_sys>;
65*84943d6fSEmmanuel Vadot	};
66*84943d6fSEmmanuel Vadot};
67*84943d6fSEmmanuel Vadot
68*84943d6fSEmmanuel Vadot&combphy2_psu {
69*84943d6fSEmmanuel Vadot	status = "okay";
70*84943d6fSEmmanuel Vadot};
71*84943d6fSEmmanuel Vadot
72*84943d6fSEmmanuel Vadot&cpu_b0 {
73*84943d6fSEmmanuel Vadot	cpu-supply = <&vdd_cpu_big0_s0>;
74*84943d6fSEmmanuel Vadot};
75*84943d6fSEmmanuel Vadot
76*84943d6fSEmmanuel Vadot&cpu_b1 {
77*84943d6fSEmmanuel Vadot	cpu-supply = <&vdd_cpu_big0_s0>;
78*84943d6fSEmmanuel Vadot};
79*84943d6fSEmmanuel Vadot
80*84943d6fSEmmanuel Vadot&cpu_b2 {
81*84943d6fSEmmanuel Vadot	cpu-supply = <&vdd_cpu_big1_s0>;
82*84943d6fSEmmanuel Vadot};
83*84943d6fSEmmanuel Vadot
84*84943d6fSEmmanuel Vadot&cpu_b3 {
85*84943d6fSEmmanuel Vadot	cpu-supply = <&vdd_cpu_big1_s0>;
86*84943d6fSEmmanuel Vadot};
87*84943d6fSEmmanuel Vadot
88*84943d6fSEmmanuel Vadot&cpu_l0 {
89*84943d6fSEmmanuel Vadot	cpu-supply = <&vdd_cpu_lit_s0>;
90*84943d6fSEmmanuel Vadot};
91*84943d6fSEmmanuel Vadot
92*84943d6fSEmmanuel Vadot&cpu_l1 {
93*84943d6fSEmmanuel Vadot	cpu-supply = <&vdd_cpu_lit_s0>;
94*84943d6fSEmmanuel Vadot};
95*84943d6fSEmmanuel Vadot
96*84943d6fSEmmanuel Vadot&cpu_l2 {
97*84943d6fSEmmanuel Vadot	cpu-supply = <&vdd_cpu_lit_s0>;
98*84943d6fSEmmanuel Vadot};
99*84943d6fSEmmanuel Vadot
100*84943d6fSEmmanuel Vadot&cpu_l3 {
101*84943d6fSEmmanuel Vadot	cpu-supply = <&vdd_cpu_lit_s0>;
102*84943d6fSEmmanuel Vadot};
103*84943d6fSEmmanuel Vadot
104*84943d6fSEmmanuel Vadot&gmac1 {
105*84943d6fSEmmanuel Vadot	clock_in_out = "output";
106*84943d6fSEmmanuel Vadot	phy-handle = <&rgmii_phy>;
107*84943d6fSEmmanuel Vadot	phy-mode = "rgmii-rxid";
108*84943d6fSEmmanuel Vadot	pinctrl-0 = <&gmac1_miim
109*84943d6fSEmmanuel Vadot		     &gmac1_tx_bus2
110*84943d6fSEmmanuel Vadot		     &gmac1_rx_bus2
111*84943d6fSEmmanuel Vadot		     &gmac1_rgmii_clk
112*84943d6fSEmmanuel Vadot		     &gmac1_rgmii_bus>;
113*84943d6fSEmmanuel Vadot	pinctrl-names = "default";
114*84943d6fSEmmanuel Vadot	rx_delay = <0x00>;
115*84943d6fSEmmanuel Vadot	tx_delay = <0x43>;
116*84943d6fSEmmanuel Vadot	status = "okay";
117*84943d6fSEmmanuel Vadot};
118*84943d6fSEmmanuel Vadot
119*84943d6fSEmmanuel Vadot&i2c0 {
120*84943d6fSEmmanuel Vadot	pinctrl-names = "default";
121*84943d6fSEmmanuel Vadot	pinctrl-0 = <&i2c0m2_xfer>;
122*84943d6fSEmmanuel Vadot	status = "okay";
123*84943d6fSEmmanuel Vadot
124*84943d6fSEmmanuel Vadot	vdd_cpu_big0_s0: regulator@42 {
125*84943d6fSEmmanuel Vadot		compatible = "rockchip,rk8602";
126*84943d6fSEmmanuel Vadot		reg = <0x42>;
127*84943d6fSEmmanuel Vadot		fcs,suspend-voltage-selector = <1>;
128*84943d6fSEmmanuel Vadot		regulator-name = "vdd_cpu_big0_s0";
129*84943d6fSEmmanuel Vadot		regulator-always-on;
130*84943d6fSEmmanuel Vadot		regulator-boot-on;
131*84943d6fSEmmanuel Vadot		regulator-min-microvolt = <550000>;
132*84943d6fSEmmanuel Vadot		regulator-max-microvolt = <1050000>;
133*84943d6fSEmmanuel Vadot		regulator-ramp-delay = <2300>;
134*84943d6fSEmmanuel Vadot		vin-supply = <&vcc5v0_sys>;
135*84943d6fSEmmanuel Vadot
136*84943d6fSEmmanuel Vadot		regulator-state-mem {
137*84943d6fSEmmanuel Vadot			regulator-off-in-suspend;
138*84943d6fSEmmanuel Vadot		};
139*84943d6fSEmmanuel Vadot	};
140*84943d6fSEmmanuel Vadot
141*84943d6fSEmmanuel Vadot	vdd_cpu_big1_s0: regulator@43 {
142*84943d6fSEmmanuel Vadot		compatible = "rockchip,rk8603", "rockchip,rk8602";
143*84943d6fSEmmanuel Vadot		reg = <0x43>;
144*84943d6fSEmmanuel Vadot		fcs,suspend-voltage-selector = <1>;
145*84943d6fSEmmanuel Vadot		regulator-name = "vdd_cpu_big1_s0";
146*84943d6fSEmmanuel Vadot		regulator-always-on;
147*84943d6fSEmmanuel Vadot		regulator-boot-on;
148*84943d6fSEmmanuel Vadot		regulator-min-microvolt = <550000>;
149*84943d6fSEmmanuel Vadot		regulator-max-microvolt = <1050000>;
150*84943d6fSEmmanuel Vadot		regulator-ramp-delay = <2300>;
151*84943d6fSEmmanuel Vadot		vin-supply = <&vcc5v0_sys>;
152*84943d6fSEmmanuel Vadot
153*84943d6fSEmmanuel Vadot		regulator-state-mem {
154*84943d6fSEmmanuel Vadot			regulator-off-in-suspend;
155*84943d6fSEmmanuel Vadot		};
156*84943d6fSEmmanuel Vadot	};
157*84943d6fSEmmanuel Vadot};
158*84943d6fSEmmanuel Vadot
159*84943d6fSEmmanuel Vadot&i2c1 {
160*84943d6fSEmmanuel Vadot	pinctrl-names = "default";
161*84943d6fSEmmanuel Vadot	pinctrl-0 = <&i2c1m2_xfer>;
162*84943d6fSEmmanuel Vadot	status = "okay";
163*84943d6fSEmmanuel Vadot
164*84943d6fSEmmanuel Vadot	vdd_npu_s0: regulator@42 {
165*84943d6fSEmmanuel Vadot		compatible = "rockchip,rk8602";
166*84943d6fSEmmanuel Vadot		reg = <0x42>;
167*84943d6fSEmmanuel Vadot		fcs,suspend-voltage-selector = <1>;
168*84943d6fSEmmanuel Vadot		regulator-name = "vdd_npu_s0";
169*84943d6fSEmmanuel Vadot		regulator-always-on;
170*84943d6fSEmmanuel Vadot		regulator-boot-on;
171*84943d6fSEmmanuel Vadot		regulator-min-microvolt = <550000>;
172*84943d6fSEmmanuel Vadot		regulator-max-microvolt = <950000>;
173*84943d6fSEmmanuel Vadot		regulator-ramp-delay = <2300>;
174*84943d6fSEmmanuel Vadot		vin-supply = <&vcc5v0_sys>;
175*84943d6fSEmmanuel Vadot
176*84943d6fSEmmanuel Vadot		regulator-state-mem {
177*84943d6fSEmmanuel Vadot			regulator-off-in-suspend;
178*84943d6fSEmmanuel Vadot		};
179*84943d6fSEmmanuel Vadot	};
180*84943d6fSEmmanuel Vadot};
181*84943d6fSEmmanuel Vadot
182*84943d6fSEmmanuel Vadot&i2c6 {
183*84943d6fSEmmanuel Vadot	status = "okay";
184*84943d6fSEmmanuel Vadot
185*84943d6fSEmmanuel Vadot	hym8563: rtc@51 {
186*84943d6fSEmmanuel Vadot		compatible = "haoyu,hym8563";
187*84943d6fSEmmanuel Vadot		reg = <0x51>;
188*84943d6fSEmmanuel Vadot		#clock-cells = <0>;
189*84943d6fSEmmanuel Vadot		clock-output-names = "hym8563";
190*84943d6fSEmmanuel Vadot		pinctrl-names = "default";
191*84943d6fSEmmanuel Vadot		pinctrl-0 = <&hym8563_int>;
192*84943d6fSEmmanuel Vadot		interrupt-parent = <&gpio0>;
193*84943d6fSEmmanuel Vadot		interrupts = <RK_PB0 IRQ_TYPE_LEVEL_LOW>;
194*84943d6fSEmmanuel Vadot		wakeup-source;
195*84943d6fSEmmanuel Vadot	};
196*84943d6fSEmmanuel Vadot};
197*84943d6fSEmmanuel Vadot
198*84943d6fSEmmanuel Vadot&mdio1 {
199*84943d6fSEmmanuel Vadot	rgmii_phy: ethernet-phy@1 {
200*84943d6fSEmmanuel Vadot		/* RTL8211F */
201*84943d6fSEmmanuel Vadot		compatible = "ethernet-phy-id001c.c916",
202*84943d6fSEmmanuel Vadot			     "ethernet-phy-ieee802.3-c22";
203*84943d6fSEmmanuel Vadot		reg = <0x1>;
204*84943d6fSEmmanuel Vadot		pinctrl-names = "default";
205*84943d6fSEmmanuel Vadot		pinctrl-0 = <&rtl8211f_rst>;
206*84943d6fSEmmanuel Vadot		reset-assert-us = <15000>;
207*84943d6fSEmmanuel Vadot		reset-deassert-us = <50000>;
208*84943d6fSEmmanuel Vadot		reset-gpios = <&gpio3 RK_PB7 GPIO_ACTIVE_LOW>;
209*84943d6fSEmmanuel Vadot	};
210*84943d6fSEmmanuel Vadot};
211*84943d6fSEmmanuel Vadot
212*84943d6fSEmmanuel Vadot&pcie2x1l1 {
213*84943d6fSEmmanuel Vadot	linux,pci-domain = <1>;
214*84943d6fSEmmanuel Vadot	pinctrl-names = "default";
215*84943d6fSEmmanuel Vadot	pinctrl-0 = <&pcie2_reset>;
216*84943d6fSEmmanuel Vadot	reset-gpios = <&gpio4 RK_PA2 GPIO_ACTIVE_HIGH>;
217*84943d6fSEmmanuel Vadot	status = "okay";
218*84943d6fSEmmanuel Vadot};
219*84943d6fSEmmanuel Vadot
220*84943d6fSEmmanuel Vadot&pcie30phy {
221*84943d6fSEmmanuel Vadot	status = "okay";
222*84943d6fSEmmanuel Vadot};
223*84943d6fSEmmanuel Vadot
224*84943d6fSEmmanuel Vadot&pcie3x4 {
225*84943d6fSEmmanuel Vadot	linux,pci-domain = <0>;
226*84943d6fSEmmanuel Vadot	pinctrl-names = "default";
227*84943d6fSEmmanuel Vadot	pinctrl-0 = <&pcie3_reset>;
228*84943d6fSEmmanuel Vadot	reset-gpios = <&gpio4 RK_PB6 GPIO_ACTIVE_HIGH>;
229*84943d6fSEmmanuel Vadot	vpcie3v3-supply = <&vcc3v3_pcie30>;
230*84943d6fSEmmanuel Vadot	status = "okay";
231*84943d6fSEmmanuel Vadot};
232*84943d6fSEmmanuel Vadot
233*84943d6fSEmmanuel Vadot&pinctrl {
234*84943d6fSEmmanuel Vadot	fan {
235*84943d6fSEmmanuel Vadot		fan_int: fan-int {
236*84943d6fSEmmanuel Vadot			rockchip,pins = <0 RK_PA4 RK_FUNC_GPIO &pcfg_pull_up>;
237*84943d6fSEmmanuel Vadot		};
238*84943d6fSEmmanuel Vadot	};
239*84943d6fSEmmanuel Vadot
240*84943d6fSEmmanuel Vadot	hym8563 {
241*84943d6fSEmmanuel Vadot		hym8563_int: hym8563-int {
242*84943d6fSEmmanuel Vadot			rockchip,pins = <0 RK_PB0 RK_FUNC_GPIO &pcfg_pull_up>;
243*84943d6fSEmmanuel Vadot		};
244*84943d6fSEmmanuel Vadot	};
245*84943d6fSEmmanuel Vadot
246*84943d6fSEmmanuel Vadot	pcie2 {
247*84943d6fSEmmanuel Vadot		pcie2_reset: pcie2-reset {
248*84943d6fSEmmanuel Vadot			rockchip,pins = <4 RK_PA2 RK_FUNC_GPIO &pcfg_pull_none>;
249*84943d6fSEmmanuel Vadot		};
250*84943d6fSEmmanuel Vadot	};
251*84943d6fSEmmanuel Vadot
252*84943d6fSEmmanuel Vadot	pcie3 {
253*84943d6fSEmmanuel Vadot		pcie3_reset: pcie3-reset {
254*84943d6fSEmmanuel Vadot			rockchip,pins = <4 RK_PB6 RK_FUNC_GPIO &pcfg_pull_none>;
255*84943d6fSEmmanuel Vadot		};
256*84943d6fSEmmanuel Vadot
257*84943d6fSEmmanuel Vadot		vcc3v3_pcie30_en: pcie3-reg {
258*84943d6fSEmmanuel Vadot			rockchip,pins = <2 RK_PC5 RK_FUNC_GPIO &pcfg_pull_none>;
259*84943d6fSEmmanuel Vadot		};
260*84943d6fSEmmanuel Vadot	};
261*84943d6fSEmmanuel Vadot
262*84943d6fSEmmanuel Vadot	rtl8211f {
263*84943d6fSEmmanuel Vadot		rtl8211f_rst: rtl8211f-rst {
264*84943d6fSEmmanuel Vadot			rockchip,pins = <3 RK_PB7 RK_FUNC_GPIO &pcfg_pull_none>;
265*84943d6fSEmmanuel Vadot		};
266*84943d6fSEmmanuel Vadot	};
267*84943d6fSEmmanuel Vadot};
268*84943d6fSEmmanuel Vadot
269*84943d6fSEmmanuel Vadot&pwm0 {
270*84943d6fSEmmanuel Vadot	status = "okay";
271*84943d6fSEmmanuel Vadot};
272*84943d6fSEmmanuel Vadot
273*84943d6fSEmmanuel Vadot&sdhci {
274*84943d6fSEmmanuel Vadot	bus-width = <8>;
275*84943d6fSEmmanuel Vadot	no-sdio;
276*84943d6fSEmmanuel Vadot	no-sd;
277*84943d6fSEmmanuel Vadot	non-removable;
278*84943d6fSEmmanuel Vadot	mmc-hs400-1_8v;
279*84943d6fSEmmanuel Vadot	mmc-hs400-enhanced-strobe;
280*84943d6fSEmmanuel Vadot	status = "okay";
281*84943d6fSEmmanuel Vadot};
282*84943d6fSEmmanuel Vadot
283*84943d6fSEmmanuel Vadot&spi2 {
284*84943d6fSEmmanuel Vadot	status = "okay";
285*84943d6fSEmmanuel Vadot	pinctrl-names = "default";
286*84943d6fSEmmanuel Vadot	pinctrl-0 = <&spi2m2_cs0 &spi2m2_pins>;
287*84943d6fSEmmanuel Vadot	num-cs = <1>;
288*84943d6fSEmmanuel Vadot
289*84943d6fSEmmanuel Vadot	pmic@0 {
290*84943d6fSEmmanuel Vadot		compatible = "rockchip,rk806";
291*84943d6fSEmmanuel Vadot		spi-max-frequency = <1000000>;
292*84943d6fSEmmanuel Vadot		reg = <0x0>;
293*84943d6fSEmmanuel Vadot
294*84943d6fSEmmanuel Vadot		interrupt-parent = <&gpio0>;
295*84943d6fSEmmanuel Vadot		interrupts = <7 IRQ_TYPE_LEVEL_LOW>;
296*84943d6fSEmmanuel Vadot
297*84943d6fSEmmanuel Vadot		pinctrl-names = "default";
298*84943d6fSEmmanuel Vadot		pinctrl-0 = <&pmic_pins>, <&rk806_dvs1_null>,
299*84943d6fSEmmanuel Vadot			    <&rk806_dvs2_null>, <&rk806_dvs3_null>;
300*84943d6fSEmmanuel Vadot
301*84943d6fSEmmanuel Vadot		vcc1-supply = <&vcc5v0_sys>;
302*84943d6fSEmmanuel Vadot		vcc2-supply = <&vcc5v0_sys>;
303*84943d6fSEmmanuel Vadot		vcc3-supply = <&vcc5v0_sys>;
304*84943d6fSEmmanuel Vadot		vcc4-supply = <&vcc5v0_sys>;
305*84943d6fSEmmanuel Vadot		vcc5-supply = <&vcc5v0_sys>;
306*84943d6fSEmmanuel Vadot		vcc6-supply = <&vcc5v0_sys>;
307*84943d6fSEmmanuel Vadot		vcc7-supply = <&vcc5v0_sys>;
308*84943d6fSEmmanuel Vadot		vcc8-supply = <&vcc5v0_sys>;
309*84943d6fSEmmanuel Vadot		vcc9-supply = <&vcc5v0_sys>;
310*84943d6fSEmmanuel Vadot		vcc10-supply = <&vcc5v0_sys>;
311*84943d6fSEmmanuel Vadot		vcc11-supply = <&vcc_2v0_pldo_s3>;
312*84943d6fSEmmanuel Vadot		vcc12-supply = <&vcc5v0_sys>;
313*84943d6fSEmmanuel Vadot		vcc13-supply = <&vcc_1v1_nldo_s3>;
314*84943d6fSEmmanuel Vadot		vcc14-supply = <&vcc_1v1_nldo_s3>;
315*84943d6fSEmmanuel Vadot		vcca-supply = <&vcc5v0_sys>;
316*84943d6fSEmmanuel Vadot
317*84943d6fSEmmanuel Vadot		gpio-controller;
318*84943d6fSEmmanuel Vadot		#gpio-cells = <2>;
319*84943d6fSEmmanuel Vadot
320*84943d6fSEmmanuel Vadot		rk806_dvs1_null: dvs1-null-pins {
321*84943d6fSEmmanuel Vadot			pins = "gpio_pwrctrl2";
322*84943d6fSEmmanuel Vadot			function = "pin_fun0";
323*84943d6fSEmmanuel Vadot		};
324*84943d6fSEmmanuel Vadot
325*84943d6fSEmmanuel Vadot		rk806_dvs2_null: dvs2-null-pins {
326*84943d6fSEmmanuel Vadot			pins = "gpio_pwrctrl2";
327*84943d6fSEmmanuel Vadot			function = "pin_fun0";
328*84943d6fSEmmanuel Vadot		};
329*84943d6fSEmmanuel Vadot
330*84943d6fSEmmanuel Vadot		rk806_dvs3_null: dvs3-null-pins {
331*84943d6fSEmmanuel Vadot			pins = "gpio_pwrctrl3";
332*84943d6fSEmmanuel Vadot			function = "pin_fun0";
333*84943d6fSEmmanuel Vadot		};
334*84943d6fSEmmanuel Vadot
335*84943d6fSEmmanuel Vadot		regulators {
336*84943d6fSEmmanuel Vadot			vdd_gpu_s0: vdd_gpu_mem_s0: dcdc-reg1 {
337*84943d6fSEmmanuel Vadot				regulator-boot-on;
338*84943d6fSEmmanuel Vadot				regulator-min-microvolt = <550000>;
339*84943d6fSEmmanuel Vadot				regulator-max-microvolt = <950000>;
340*84943d6fSEmmanuel Vadot				regulator-ramp-delay = <12500>;
341*84943d6fSEmmanuel Vadot				regulator-name = "vdd_gpu_s0";
342*84943d6fSEmmanuel Vadot				regulator-enable-ramp-delay = <400>;
343*84943d6fSEmmanuel Vadot
344*84943d6fSEmmanuel Vadot				regulator-state-mem {
345*84943d6fSEmmanuel Vadot					regulator-off-in-suspend;
346*84943d6fSEmmanuel Vadot				};
347*84943d6fSEmmanuel Vadot			};
348*84943d6fSEmmanuel Vadot
349*84943d6fSEmmanuel Vadot			vdd_cpu_lit_s0: vdd_cpu_lit_mem_s0: dcdc-reg2 {
350*84943d6fSEmmanuel Vadot				regulator-always-on;
351*84943d6fSEmmanuel Vadot				regulator-boot-on;
352*84943d6fSEmmanuel Vadot				regulator-min-microvolt = <550000>;
353*84943d6fSEmmanuel Vadot				regulator-max-microvolt = <950000>;
354*84943d6fSEmmanuel Vadot				regulator-ramp-delay = <12500>;
355*84943d6fSEmmanuel Vadot				regulator-name = "vdd_cpu_lit_s0";
356*84943d6fSEmmanuel Vadot
357*84943d6fSEmmanuel Vadot				regulator-state-mem {
358*84943d6fSEmmanuel Vadot					regulator-off-in-suspend;
359*84943d6fSEmmanuel Vadot				};
360*84943d6fSEmmanuel Vadot			};
361*84943d6fSEmmanuel Vadot
362*84943d6fSEmmanuel Vadot			vdd_log_s0: dcdc-reg3 {
363*84943d6fSEmmanuel Vadot				regulator-always-on;
364*84943d6fSEmmanuel Vadot				regulator-boot-on;
365*84943d6fSEmmanuel Vadot				regulator-min-microvolt = <675000>;
366*84943d6fSEmmanuel Vadot				regulator-max-microvolt = <750000>;
367*84943d6fSEmmanuel Vadot				regulator-ramp-delay = <12500>;
368*84943d6fSEmmanuel Vadot				regulator-name = "vdd_log_s0";
369*84943d6fSEmmanuel Vadot
370*84943d6fSEmmanuel Vadot				regulator-state-mem {
371*84943d6fSEmmanuel Vadot					regulator-off-in-suspend;
372*84943d6fSEmmanuel Vadot					regulator-suspend-microvolt = <750000>;
373*84943d6fSEmmanuel Vadot				};
374*84943d6fSEmmanuel Vadot			};
375*84943d6fSEmmanuel Vadot
376*84943d6fSEmmanuel Vadot			vdd_vdenc_s0: vdd_vdenc_mem_s0: dcdc-reg4 {
377*84943d6fSEmmanuel Vadot				regulator-always-on;
378*84943d6fSEmmanuel Vadot				regulator-boot-on;
379*84943d6fSEmmanuel Vadot				regulator-min-microvolt = <550000>;
380*84943d6fSEmmanuel Vadot				regulator-max-microvolt = <950000>;
381*84943d6fSEmmanuel Vadot				regulator-ramp-delay = <12500>;
382*84943d6fSEmmanuel Vadot				regulator-name = "vdd_vdenc_s0";
383*84943d6fSEmmanuel Vadot
384*84943d6fSEmmanuel Vadot				regulator-state-mem {
385*84943d6fSEmmanuel Vadot					regulator-off-in-suspend;
386*84943d6fSEmmanuel Vadot				};
387*84943d6fSEmmanuel Vadot			};
388*84943d6fSEmmanuel Vadot
389*84943d6fSEmmanuel Vadot			vdd_ddr_s0: dcdc-reg5 {
390*84943d6fSEmmanuel Vadot				regulator-always-on;
391*84943d6fSEmmanuel Vadot				regulator-boot-on;
392*84943d6fSEmmanuel Vadot				regulator-min-microvolt = <675000>;
393*84943d6fSEmmanuel Vadot				regulator-max-microvolt = <900000>;
394*84943d6fSEmmanuel Vadot				regulator-ramp-delay = <12500>;
395*84943d6fSEmmanuel Vadot				regulator-name = "vdd_ddr_s0";
396*84943d6fSEmmanuel Vadot
397*84943d6fSEmmanuel Vadot				regulator-state-mem {
398*84943d6fSEmmanuel Vadot					regulator-off-in-suspend;
399*84943d6fSEmmanuel Vadot					regulator-suspend-microvolt = <850000>;
400*84943d6fSEmmanuel Vadot				};
401*84943d6fSEmmanuel Vadot			};
402*84943d6fSEmmanuel Vadot
403*84943d6fSEmmanuel Vadot			vdd2_ddr_s3: dcdc-reg6 {
404*84943d6fSEmmanuel Vadot				regulator-always-on;
405*84943d6fSEmmanuel Vadot				regulator-boot-on;
406*84943d6fSEmmanuel Vadot				regulator-name = "vdd2_ddr_s3";
407*84943d6fSEmmanuel Vadot
408*84943d6fSEmmanuel Vadot				regulator-state-mem {
409*84943d6fSEmmanuel Vadot					regulator-on-in-suspend;
410*84943d6fSEmmanuel Vadot				};
411*84943d6fSEmmanuel Vadot			};
412*84943d6fSEmmanuel Vadot
413*84943d6fSEmmanuel Vadot			vcc_2v0_pldo_s3: dcdc-reg7 {
414*84943d6fSEmmanuel Vadot				regulator-always-on;
415*84943d6fSEmmanuel Vadot				regulator-boot-on;
416*84943d6fSEmmanuel Vadot				regulator-min-microvolt = <2000000>;
417*84943d6fSEmmanuel Vadot				regulator-max-microvolt = <2000000>;
418*84943d6fSEmmanuel Vadot				regulator-ramp-delay = <12500>;
419*84943d6fSEmmanuel Vadot				regulator-name = "vdd_2v0_pldo_s3";
420*84943d6fSEmmanuel Vadot
421*84943d6fSEmmanuel Vadot				regulator-state-mem {
422*84943d6fSEmmanuel Vadot					regulator-on-in-suspend;
423*84943d6fSEmmanuel Vadot					regulator-suspend-microvolt = <2000000>;
424*84943d6fSEmmanuel Vadot				};
425*84943d6fSEmmanuel Vadot			};
426*84943d6fSEmmanuel Vadot
427*84943d6fSEmmanuel Vadot			vcc_3v3_s3: dcdc-reg8 {
428*84943d6fSEmmanuel Vadot				regulator-always-on;
429*84943d6fSEmmanuel Vadot				regulator-boot-on;
430*84943d6fSEmmanuel Vadot				regulator-min-microvolt = <3300000>;
431*84943d6fSEmmanuel Vadot				regulator-max-microvolt = <3300000>;
432*84943d6fSEmmanuel Vadot				regulator-name = "vcc_3v3_s3";
433*84943d6fSEmmanuel Vadot
434*84943d6fSEmmanuel Vadot				regulator-state-mem {
435*84943d6fSEmmanuel Vadot					regulator-on-in-suspend;
436*84943d6fSEmmanuel Vadot					regulator-suspend-microvolt = <3300000>;
437*84943d6fSEmmanuel Vadot				};
438*84943d6fSEmmanuel Vadot			};
439*84943d6fSEmmanuel Vadot
440*84943d6fSEmmanuel Vadot			vddq_ddr_s0: dcdc-reg9 {
441*84943d6fSEmmanuel Vadot				regulator-always-on;
442*84943d6fSEmmanuel Vadot				regulator-boot-on;
443*84943d6fSEmmanuel Vadot				regulator-name = "vddq_ddr_s0";
444*84943d6fSEmmanuel Vadot
445*84943d6fSEmmanuel Vadot				regulator-state-mem {
446*84943d6fSEmmanuel Vadot					regulator-off-in-suspend;
447*84943d6fSEmmanuel Vadot				};
448*84943d6fSEmmanuel Vadot			};
449*84943d6fSEmmanuel Vadot
450*84943d6fSEmmanuel Vadot			vcc_1v8_s3: dcdc-reg10 {
451*84943d6fSEmmanuel Vadot				regulator-always-on;
452*84943d6fSEmmanuel Vadot				regulator-boot-on;
453*84943d6fSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
454*84943d6fSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
455*84943d6fSEmmanuel Vadot				regulator-name = "vcc_1v8_s3";
456*84943d6fSEmmanuel Vadot
457*84943d6fSEmmanuel Vadot				regulator-state-mem {
458*84943d6fSEmmanuel Vadot					regulator-on-in-suspend;
459*84943d6fSEmmanuel Vadot					regulator-suspend-microvolt = <1800000>;
460*84943d6fSEmmanuel Vadot				};
461*84943d6fSEmmanuel Vadot			};
462*84943d6fSEmmanuel Vadot
463*84943d6fSEmmanuel Vadot			avcc_1v8_s0: pldo-reg1 {
464*84943d6fSEmmanuel Vadot				regulator-always-on;
465*84943d6fSEmmanuel Vadot				regulator-boot-on;
466*84943d6fSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
467*84943d6fSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
468*84943d6fSEmmanuel Vadot				regulator-name = "avcc_1v8_s0";
469*84943d6fSEmmanuel Vadot
470*84943d6fSEmmanuel Vadot				regulator-state-mem {
471*84943d6fSEmmanuel Vadot					regulator-off-in-suspend;
472*84943d6fSEmmanuel Vadot				};
473*84943d6fSEmmanuel Vadot			};
474*84943d6fSEmmanuel Vadot
475*84943d6fSEmmanuel Vadot			vcc_1v8_s0: pldo-reg2 {
476*84943d6fSEmmanuel Vadot				regulator-always-on;
477*84943d6fSEmmanuel Vadot				regulator-boot-on;
478*84943d6fSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
479*84943d6fSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
480*84943d6fSEmmanuel Vadot				regulator-name = "vcc_1v8_s0";
481*84943d6fSEmmanuel Vadot
482*84943d6fSEmmanuel Vadot				regulator-state-mem {
483*84943d6fSEmmanuel Vadot					regulator-off-in-suspend;
484*84943d6fSEmmanuel Vadot					regulator-suspend-microvolt = <1800000>;
485*84943d6fSEmmanuel Vadot				};
486*84943d6fSEmmanuel Vadot			};
487*84943d6fSEmmanuel Vadot
488*84943d6fSEmmanuel Vadot			avdd_1v2_s0: pldo-reg3 {
489*84943d6fSEmmanuel Vadot				regulator-always-on;
490*84943d6fSEmmanuel Vadot				regulator-boot-on;
491*84943d6fSEmmanuel Vadot				regulator-min-microvolt = <1200000>;
492*84943d6fSEmmanuel Vadot				regulator-max-microvolt = <1200000>;
493*84943d6fSEmmanuel Vadot				regulator-name = "avdd_1v2_s0";
494*84943d6fSEmmanuel Vadot
495*84943d6fSEmmanuel Vadot				regulator-state-mem {
496*84943d6fSEmmanuel Vadot					regulator-off-in-suspend;
497*84943d6fSEmmanuel Vadot				};
498*84943d6fSEmmanuel Vadot			};
499*84943d6fSEmmanuel Vadot
500*84943d6fSEmmanuel Vadot			vcc_3v3_s0: pldo-reg4 {
501*84943d6fSEmmanuel Vadot				regulator-always-on;
502*84943d6fSEmmanuel Vadot				regulator-boot-on;
503*84943d6fSEmmanuel Vadot				regulator-min-microvolt = <3300000>;
504*84943d6fSEmmanuel Vadot				regulator-max-microvolt = <3300000>;
505*84943d6fSEmmanuel Vadot				regulator-ramp-delay = <12500>;
506*84943d6fSEmmanuel Vadot				regulator-name = "vcc_3v3_s0";
507*84943d6fSEmmanuel Vadot
508*84943d6fSEmmanuel Vadot				regulator-state-mem {
509*84943d6fSEmmanuel Vadot					regulator-off-in-suspend;
510*84943d6fSEmmanuel Vadot				};
511*84943d6fSEmmanuel Vadot			};
512*84943d6fSEmmanuel Vadot
513*84943d6fSEmmanuel Vadot			vccio_sd_s0: pldo-reg5 {
514*84943d6fSEmmanuel Vadot				regulator-always-on;
515*84943d6fSEmmanuel Vadot				regulator-boot-on;
516*84943d6fSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
517*84943d6fSEmmanuel Vadot				regulator-max-microvolt = <3300000>;
518*84943d6fSEmmanuel Vadot				regulator-ramp-delay = <12500>;
519*84943d6fSEmmanuel Vadot				regulator-name = "vccio_sd_s0";
520*84943d6fSEmmanuel Vadot
521*84943d6fSEmmanuel Vadot				regulator-state-mem {
522*84943d6fSEmmanuel Vadot					regulator-off-in-suspend;
523*84943d6fSEmmanuel Vadot				};
524*84943d6fSEmmanuel Vadot			};
525*84943d6fSEmmanuel Vadot
526*84943d6fSEmmanuel Vadot			pldo6_s3: pldo-reg6 {
527*84943d6fSEmmanuel Vadot				regulator-always-on;
528*84943d6fSEmmanuel Vadot				regulator-boot-on;
529*84943d6fSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
530*84943d6fSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
531*84943d6fSEmmanuel Vadot				regulator-name = "pldo6_s3";
532*84943d6fSEmmanuel Vadot
533*84943d6fSEmmanuel Vadot				regulator-state-mem {
534*84943d6fSEmmanuel Vadot					regulator-on-in-suspend;
535*84943d6fSEmmanuel Vadot					regulator-suspend-microvolt = <1800000>;
536*84943d6fSEmmanuel Vadot				};
537*84943d6fSEmmanuel Vadot			};
538*84943d6fSEmmanuel Vadot
539*84943d6fSEmmanuel Vadot			vdd_0v75_s3: nldo-reg1 {
540*84943d6fSEmmanuel Vadot				regulator-always-on;
541*84943d6fSEmmanuel Vadot				regulator-boot-on;
542*84943d6fSEmmanuel Vadot				regulator-min-microvolt = <750000>;
543*84943d6fSEmmanuel Vadot				regulator-max-microvolt = <750000>;
544*84943d6fSEmmanuel Vadot				regulator-name = "vdd_0v75_s3";
545*84943d6fSEmmanuel Vadot
546*84943d6fSEmmanuel Vadot				regulator-state-mem {
547*84943d6fSEmmanuel Vadot					regulator-on-in-suspend;
548*84943d6fSEmmanuel Vadot					regulator-suspend-microvolt = <750000>;
549*84943d6fSEmmanuel Vadot				};
550*84943d6fSEmmanuel Vadot			};
551*84943d6fSEmmanuel Vadot
552*84943d6fSEmmanuel Vadot			vdd_ddr_pll_s0: nldo-reg2 {
553*84943d6fSEmmanuel Vadot				regulator-always-on;
554*84943d6fSEmmanuel Vadot				regulator-boot-on;
555*84943d6fSEmmanuel Vadot				regulator-min-microvolt = <850000>;
556*84943d6fSEmmanuel Vadot				regulator-max-microvolt = <850000>;
557*84943d6fSEmmanuel Vadot				regulator-name = "vdd_ddr_pll_s0";
558*84943d6fSEmmanuel Vadot
559*84943d6fSEmmanuel Vadot				regulator-state-mem {
560*84943d6fSEmmanuel Vadot					regulator-off-in-suspend;
561*84943d6fSEmmanuel Vadot					regulator-suspend-microvolt = <850000>;
562*84943d6fSEmmanuel Vadot				};
563*84943d6fSEmmanuel Vadot			};
564*84943d6fSEmmanuel Vadot
565*84943d6fSEmmanuel Vadot			avdd_0v75_s0: nldo-reg3 {
566*84943d6fSEmmanuel Vadot				regulator-always-on;
567*84943d6fSEmmanuel Vadot				regulator-boot-on;
568*84943d6fSEmmanuel Vadot				regulator-min-microvolt = <750000>;
569*84943d6fSEmmanuel Vadot				regulator-max-microvolt = <750000>;
570*84943d6fSEmmanuel Vadot				regulator-name = "avdd_0v75_s0";
571*84943d6fSEmmanuel Vadot
572*84943d6fSEmmanuel Vadot				regulator-state-mem {
573*84943d6fSEmmanuel Vadot					regulator-off-in-suspend;
574*84943d6fSEmmanuel Vadot				};
575*84943d6fSEmmanuel Vadot			};
576*84943d6fSEmmanuel Vadot
577*84943d6fSEmmanuel Vadot			vdd_0v85_s0: nldo-reg4 {
578*84943d6fSEmmanuel Vadot				regulator-always-on;
579*84943d6fSEmmanuel Vadot				regulator-boot-on;
580*84943d6fSEmmanuel Vadot				regulator-min-microvolt = <850000>;
581*84943d6fSEmmanuel Vadot				regulator-max-microvolt = <850000>;
582*84943d6fSEmmanuel Vadot				regulator-name = "vdd_0v85_s0";
583*84943d6fSEmmanuel Vadot
584*84943d6fSEmmanuel Vadot				regulator-state-mem {
585*84943d6fSEmmanuel Vadot					regulator-off-in-suspend;
586*84943d6fSEmmanuel Vadot				};
587*84943d6fSEmmanuel Vadot			};
588*84943d6fSEmmanuel Vadot
589*84943d6fSEmmanuel Vadot			vdd_0v75_s0: nldo-reg5 {
590*84943d6fSEmmanuel Vadot				regulator-always-on;
591*84943d6fSEmmanuel Vadot				regulator-boot-on;
592*84943d6fSEmmanuel Vadot				regulator-min-microvolt = <750000>;
593*84943d6fSEmmanuel Vadot				regulator-max-microvolt = <750000>;
594*84943d6fSEmmanuel Vadot				regulator-name = "vdd_0v75_s0";
595*84943d6fSEmmanuel Vadot
596*84943d6fSEmmanuel Vadot				regulator-state-mem {
597*84943d6fSEmmanuel Vadot					regulator-off-in-suspend;
598*84943d6fSEmmanuel Vadot				};
599*84943d6fSEmmanuel Vadot			};
600*84943d6fSEmmanuel Vadot		};
601*84943d6fSEmmanuel Vadot	};
602*84943d6fSEmmanuel Vadot};
603*84943d6fSEmmanuel Vadot
604*84943d6fSEmmanuel Vadot&uart2 {
605*84943d6fSEmmanuel Vadot	pinctrl-0 = <&uart2m0_xfer>;
606*84943d6fSEmmanuel Vadot	status = "okay";
607*84943d6fSEmmanuel Vadot};
608*84943d6fSEmmanuel Vadot
609*84943d6fSEmmanuel Vadot&uart9 {
610*84943d6fSEmmanuel Vadot	pinctrl-0 = <&uart9m0_xfer>;
611*84943d6fSEmmanuel Vadot	status = "okay";
612*84943d6fSEmmanuel Vadot};
613