xref: /freebsd/sys/contrib/device-tree/src/arm64/rockchip/rk3588s-odroid-m2.dts (revision b2d2a78ad80ec68d4a17f5aef97d21686cb1e29b)
1*b2d2a78aSEmmanuel Vadot// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2*b2d2a78aSEmmanuel Vadot
3*b2d2a78aSEmmanuel Vadot/dts-v1/;
4*b2d2a78aSEmmanuel Vadot
5*b2d2a78aSEmmanuel Vadot#include <dt-bindings/gpio/gpio.h>
6*b2d2a78aSEmmanuel Vadot#include <dt-bindings/leds/common.h>
7*b2d2a78aSEmmanuel Vadot#include <dt-bindings/pinctrl/rockchip.h>
8*b2d2a78aSEmmanuel Vadot#include <dt-bindings/usb/pd.h>
9*b2d2a78aSEmmanuel Vadot#include "rk3588s.dtsi"
10*b2d2a78aSEmmanuel Vadot
11*b2d2a78aSEmmanuel Vadot/ {
12*b2d2a78aSEmmanuel Vadot	model = "Hardkernel ODROID-M2";
13*b2d2a78aSEmmanuel Vadot	compatible = "hardkernel,odroid-m2", "rockchip,rk3588s";
14*b2d2a78aSEmmanuel Vadot
15*b2d2a78aSEmmanuel Vadot	aliases {
16*b2d2a78aSEmmanuel Vadot		ethernet0 = &gmac1;
17*b2d2a78aSEmmanuel Vadot		mmc0 = &sdhci;
18*b2d2a78aSEmmanuel Vadot		mmc1 = &sdmmc;
19*b2d2a78aSEmmanuel Vadot	};
20*b2d2a78aSEmmanuel Vadot
21*b2d2a78aSEmmanuel Vadot	chosen {
22*b2d2a78aSEmmanuel Vadot		stdout-path = "serial2:1500000n8";
23*b2d2a78aSEmmanuel Vadot	};
24*b2d2a78aSEmmanuel Vadot
25*b2d2a78aSEmmanuel Vadot	leds {
26*b2d2a78aSEmmanuel Vadot		compatible = "gpio-leds";
27*b2d2a78aSEmmanuel Vadot		pinctrl-names = "default";
28*b2d2a78aSEmmanuel Vadot		pinctrl-0 = <&pwr_led>, <&sys_led>;
29*b2d2a78aSEmmanuel Vadot
30*b2d2a78aSEmmanuel Vadot		led_pwr: led-0 {
31*b2d2a78aSEmmanuel Vadot			color = <LED_COLOR_ID_RED>;
32*b2d2a78aSEmmanuel Vadot			default-state = "on";
33*b2d2a78aSEmmanuel Vadot			function = LED_FUNCTION_POWER;
34*b2d2a78aSEmmanuel Vadot			gpios = <&gpio1 RK_PB5 GPIO_ACTIVE_HIGH>;
35*b2d2a78aSEmmanuel Vadot			linux,default-trigger = "default-on";
36*b2d2a78aSEmmanuel Vadot		};
37*b2d2a78aSEmmanuel Vadot
38*b2d2a78aSEmmanuel Vadot		led_sys: led-1 {
39*b2d2a78aSEmmanuel Vadot			color = <LED_COLOR_ID_BLUE>;
40*b2d2a78aSEmmanuel Vadot			default-state = "on";
41*b2d2a78aSEmmanuel Vadot			function = LED_FUNCTION_HEARTBEAT;
42*b2d2a78aSEmmanuel Vadot			gpios = <&gpio1 RK_PB1 GPIO_ACTIVE_HIGH>;
43*b2d2a78aSEmmanuel Vadot			linux,default-trigger = "heartbeat";
44*b2d2a78aSEmmanuel Vadot		};
45*b2d2a78aSEmmanuel Vadot	};
46*b2d2a78aSEmmanuel Vadot
47*b2d2a78aSEmmanuel Vadot	fan: pwm-fan {
48*b2d2a78aSEmmanuel Vadot		compatible = "pwm-fan";
49*b2d2a78aSEmmanuel Vadot		#cooling-cells = <2>;
50*b2d2a78aSEmmanuel Vadot		cooling-levels = <0 192 224 255>;
51*b2d2a78aSEmmanuel Vadot		fan-supply = <&vcc5v0_sys>;
52*b2d2a78aSEmmanuel Vadot		pwms = <&pwm0 0 22222 0>;
53*b2d2a78aSEmmanuel Vadot	};
54*b2d2a78aSEmmanuel Vadot
55*b2d2a78aSEmmanuel Vadot	vcc_1v1_nldo_s3: regulator-1v1-vcc-nldo-s3 {
56*b2d2a78aSEmmanuel Vadot		compatible = "regulator-fixed";
57*b2d2a78aSEmmanuel Vadot		regulator-name = "vcc_1v1_nldo_s3";
58*b2d2a78aSEmmanuel Vadot		regulator-always-on;
59*b2d2a78aSEmmanuel Vadot		regulator-boot-on;
60*b2d2a78aSEmmanuel Vadot		regulator-min-microvolt = <1100000>;
61*b2d2a78aSEmmanuel Vadot		regulator-max-microvolt = <1100000>;
62*b2d2a78aSEmmanuel Vadot		vin-supply = <&vcc4v0_sys>;
63*b2d2a78aSEmmanuel Vadot	};
64*b2d2a78aSEmmanuel Vadot
65*b2d2a78aSEmmanuel Vadot	vcc3v3_lcd: regulator-3v3-vcc-lcd {
66*b2d2a78aSEmmanuel Vadot		compatible = "regulator-fixed";
67*b2d2a78aSEmmanuel Vadot		enable-active-high;
68*b2d2a78aSEmmanuel Vadot		gpios = <&gpio4 RK_PA3 GPIO_ACTIVE_HIGH>;
69*b2d2a78aSEmmanuel Vadot		pinctrl-names = "default";
70*b2d2a78aSEmmanuel Vadot		pinctrl-0 = <&lcd_pwren>;
71*b2d2a78aSEmmanuel Vadot		regulator-name = "vcc3v3_lcd";
72*b2d2a78aSEmmanuel Vadot		regulator-min-microvolt = <3300000>;
73*b2d2a78aSEmmanuel Vadot		regulator-max-microvolt = <3300000>;
74*b2d2a78aSEmmanuel Vadot		vin-supply = <&vcc_3v3_s3>;
75*b2d2a78aSEmmanuel Vadot	};
76*b2d2a78aSEmmanuel Vadot
77*b2d2a78aSEmmanuel Vadot	vcc3v3_pcie: regulator-3v3-vcc-pcie {
78*b2d2a78aSEmmanuel Vadot		compatible = "regulator-fixed";
79*b2d2a78aSEmmanuel Vadot		enable-active-high;
80*b2d2a78aSEmmanuel Vadot		gpios = <&gpio0 RK_PC6 GPIO_ACTIVE_HIGH>;
81*b2d2a78aSEmmanuel Vadot		pinctrl-names = "default";
82*b2d2a78aSEmmanuel Vadot		pinctrl-0 = <&pcie_pwren>;
83*b2d2a78aSEmmanuel Vadot		regulator-name = "vcc3v3_pcie";
84*b2d2a78aSEmmanuel Vadot		regulator-min-microvolt = <3300000>;
85*b2d2a78aSEmmanuel Vadot		regulator-max-microvolt = <3300000>;
86*b2d2a78aSEmmanuel Vadot		vin-supply = <&vcc_3v3_s3>;
87*b2d2a78aSEmmanuel Vadot	};
88*b2d2a78aSEmmanuel Vadot
89*b2d2a78aSEmmanuel Vadot	vcc_3v3_s0: regulator-3v3-vcc-s0 {
90*b2d2a78aSEmmanuel Vadot		compatible = "regulator-fixed";
91*b2d2a78aSEmmanuel Vadot		regulator-name = "vcc_3v3_s0";
92*b2d2a78aSEmmanuel Vadot		regulator-always-on;
93*b2d2a78aSEmmanuel Vadot		regulator-boot-on;
94*b2d2a78aSEmmanuel Vadot		regulator-min-microvolt = <3300000>;
95*b2d2a78aSEmmanuel Vadot		regulator-max-microvolt = <3300000>;
96*b2d2a78aSEmmanuel Vadot		vin-supply = <&vcc_3v3_s3>;
97*b2d2a78aSEmmanuel Vadot	};
98*b2d2a78aSEmmanuel Vadot
99*b2d2a78aSEmmanuel Vadot	vcc4v0_sys: regulator-4v0-vcc-sys {
100*b2d2a78aSEmmanuel Vadot		compatible = "regulator-fixed";
101*b2d2a78aSEmmanuel Vadot		regulator-name = "vcc4v0_sys";
102*b2d2a78aSEmmanuel Vadot		regulator-always-on;
103*b2d2a78aSEmmanuel Vadot		regulator-boot-on;
104*b2d2a78aSEmmanuel Vadot		regulator-min-microvolt = <4800000>;
105*b2d2a78aSEmmanuel Vadot		regulator-max-microvolt = <4800000>;
106*b2d2a78aSEmmanuel Vadot		vin-supply = <&vcc12v_dcin>;
107*b2d2a78aSEmmanuel Vadot	};
108*b2d2a78aSEmmanuel Vadot
109*b2d2a78aSEmmanuel Vadot	vcc5v0_sys: regulator-5v0-vcc-sys {
110*b2d2a78aSEmmanuel Vadot		compatible = "regulator-fixed";
111*b2d2a78aSEmmanuel Vadot		enable-active-high;
112*b2d2a78aSEmmanuel Vadot		gpios = <&gpio0 RK_PD3 GPIO_ACTIVE_HIGH>;
113*b2d2a78aSEmmanuel Vadot		pinctrl-names = "default";
114*b2d2a78aSEmmanuel Vadot		pinctrl-0 = <&vcc5v0_pwren>;
115*b2d2a78aSEmmanuel Vadot		regulator-name = "vcc5v0_sys";
116*b2d2a78aSEmmanuel Vadot		regulator-always-on;
117*b2d2a78aSEmmanuel Vadot		regulator-boot-on;
118*b2d2a78aSEmmanuel Vadot		regulator-min-microvolt = <5000000>;
119*b2d2a78aSEmmanuel Vadot		regulator-max-microvolt = <5000000>;
120*b2d2a78aSEmmanuel Vadot		vin-supply = <&vcc12v_dcin>;
121*b2d2a78aSEmmanuel Vadot	};
122*b2d2a78aSEmmanuel Vadot
123*b2d2a78aSEmmanuel Vadot	vcc5v0_usb2_host: regulator-5v0-vcc-usb2-host {
124*b2d2a78aSEmmanuel Vadot		compatible = "regulator-fixed";
125*b2d2a78aSEmmanuel Vadot		enable-active-high;
126*b2d2a78aSEmmanuel Vadot		gpios = <&gpio1 RK_PC6 GPIO_ACTIVE_HIGH>;
127*b2d2a78aSEmmanuel Vadot		pinctrl-names = "default";
128*b2d2a78aSEmmanuel Vadot		pinctrl-0 = <&usb2_host_pwren>;
129*b2d2a78aSEmmanuel Vadot		regulator-name = "vcc5v0_usb2_host";
130*b2d2a78aSEmmanuel Vadot		regulator-min-microvolt = <5000000>;
131*b2d2a78aSEmmanuel Vadot		regulator-max-microvolt = <5000000>;
132*b2d2a78aSEmmanuel Vadot		vin-supply = <&vcc5v0_sys>;
133*b2d2a78aSEmmanuel Vadot	};
134*b2d2a78aSEmmanuel Vadot
135*b2d2a78aSEmmanuel Vadot	vcc5v0_usb3_host: regulator-5v0-vcc-usb3-host {
136*b2d2a78aSEmmanuel Vadot		compatible = "regulator-fixed";
137*b2d2a78aSEmmanuel Vadot		enable-active-high;
138*b2d2a78aSEmmanuel Vadot		gpios = <&gpio1 RK_PA6 GPIO_ACTIVE_HIGH>;
139*b2d2a78aSEmmanuel Vadot		pinctrl-names = "default";
140*b2d2a78aSEmmanuel Vadot		pinctrl-0 = <&usb3_host_pwren>;
141*b2d2a78aSEmmanuel Vadot		regulator-name = "vcc5v0_usb3_host";
142*b2d2a78aSEmmanuel Vadot		regulator-min-microvolt = <5000000>;
143*b2d2a78aSEmmanuel Vadot		regulator-max-microvolt = <5000000>;
144*b2d2a78aSEmmanuel Vadot		vin-supply = <&vcc5v0_sys>;
145*b2d2a78aSEmmanuel Vadot	};
146*b2d2a78aSEmmanuel Vadot
147*b2d2a78aSEmmanuel Vadot	vcc5v0_usb3_typec: regulator-5v0-vcc-usb3-typec {
148*b2d2a78aSEmmanuel Vadot		compatible = "regulator-fixed";
149*b2d2a78aSEmmanuel Vadot		enable-active-high;
150*b2d2a78aSEmmanuel Vadot		gpios = <&gpio0 RK_PA0 GPIO_ACTIVE_HIGH>;
151*b2d2a78aSEmmanuel Vadot		pinctrl-names = "default";
152*b2d2a78aSEmmanuel Vadot		pinctrl-0 = <&usb3_typec_pwren>;
153*b2d2a78aSEmmanuel Vadot		regulator-name = "vcc5v0_usb3_typec";
154*b2d2a78aSEmmanuel Vadot		regulator-min-microvolt = <5000000>;
155*b2d2a78aSEmmanuel Vadot		regulator-max-microvolt = <5000000>;
156*b2d2a78aSEmmanuel Vadot		vin-supply = <&vcc5v0_sys>;
157*b2d2a78aSEmmanuel Vadot	};
158*b2d2a78aSEmmanuel Vadot
159*b2d2a78aSEmmanuel Vadot	vcca: regulator-5v0-vcca {
160*b2d2a78aSEmmanuel Vadot		compatible = "regulator-fixed";
161*b2d2a78aSEmmanuel Vadot		regulator-name = "vcca";
162*b2d2a78aSEmmanuel Vadot		regulator-always-on;
163*b2d2a78aSEmmanuel Vadot		regulator-boot-on;
164*b2d2a78aSEmmanuel Vadot		regulator-min-microvolt = <5000000>;
165*b2d2a78aSEmmanuel Vadot		regulator-max-microvolt = <5000000>;
166*b2d2a78aSEmmanuel Vadot		vin-supply = <&vcc12v_dcin>;
167*b2d2a78aSEmmanuel Vadot	};
168*b2d2a78aSEmmanuel Vadot
169*b2d2a78aSEmmanuel Vadot	vcc12v_dcin: regulator-12v0-vcc-dcin {
170*b2d2a78aSEmmanuel Vadot		compatible = "regulator-fixed";
171*b2d2a78aSEmmanuel Vadot		regulator-name = "vcc12v_dcin";
172*b2d2a78aSEmmanuel Vadot		regulator-always-on;
173*b2d2a78aSEmmanuel Vadot		regulator-boot-on;
174*b2d2a78aSEmmanuel Vadot		regulator-min-microvolt = <12000000>;
175*b2d2a78aSEmmanuel Vadot		regulator-max-microvolt = <12000000>;
176*b2d2a78aSEmmanuel Vadot	};
177*b2d2a78aSEmmanuel Vadot};
178*b2d2a78aSEmmanuel Vadot
179*b2d2a78aSEmmanuel Vadot&combphy0_ps {
180*b2d2a78aSEmmanuel Vadot	status = "okay";
181*b2d2a78aSEmmanuel Vadot};
182*b2d2a78aSEmmanuel Vadot
183*b2d2a78aSEmmanuel Vadot&combphy2_psu {
184*b2d2a78aSEmmanuel Vadot	status = "okay";
185*b2d2a78aSEmmanuel Vadot};
186*b2d2a78aSEmmanuel Vadot
187*b2d2a78aSEmmanuel Vadot&cpu_b0 {
188*b2d2a78aSEmmanuel Vadot	cpu-supply = <&vdd_cpu_big0_s0>;
189*b2d2a78aSEmmanuel Vadot};
190*b2d2a78aSEmmanuel Vadot
191*b2d2a78aSEmmanuel Vadot&cpu_b1 {
192*b2d2a78aSEmmanuel Vadot	cpu-supply = <&vdd_cpu_big0_s0>;
193*b2d2a78aSEmmanuel Vadot};
194*b2d2a78aSEmmanuel Vadot
195*b2d2a78aSEmmanuel Vadot&cpu_b2 {
196*b2d2a78aSEmmanuel Vadot	cpu-supply = <&vdd_cpu_big1_s0>;
197*b2d2a78aSEmmanuel Vadot};
198*b2d2a78aSEmmanuel Vadot
199*b2d2a78aSEmmanuel Vadot&cpu_b3 {
200*b2d2a78aSEmmanuel Vadot	cpu-supply = <&vdd_cpu_big1_s0>;
201*b2d2a78aSEmmanuel Vadot};
202*b2d2a78aSEmmanuel Vadot
203*b2d2a78aSEmmanuel Vadot&cpu_l0 {
204*b2d2a78aSEmmanuel Vadot	cpu-supply = <&vdd_cpu_lit_s0>;
205*b2d2a78aSEmmanuel Vadot};
206*b2d2a78aSEmmanuel Vadot
207*b2d2a78aSEmmanuel Vadot&cpu_l1 {
208*b2d2a78aSEmmanuel Vadot	cpu-supply = <&vdd_cpu_lit_s0>;
209*b2d2a78aSEmmanuel Vadot};
210*b2d2a78aSEmmanuel Vadot
211*b2d2a78aSEmmanuel Vadot&cpu_l2 {
212*b2d2a78aSEmmanuel Vadot	cpu-supply = <&vdd_cpu_lit_s0>;
213*b2d2a78aSEmmanuel Vadot};
214*b2d2a78aSEmmanuel Vadot
215*b2d2a78aSEmmanuel Vadot&cpu_l3 {
216*b2d2a78aSEmmanuel Vadot	cpu-supply = <&vdd_cpu_lit_s0>;
217*b2d2a78aSEmmanuel Vadot};
218*b2d2a78aSEmmanuel Vadot
219*b2d2a78aSEmmanuel Vadot&gmac1 {
220*b2d2a78aSEmmanuel Vadot	clock_in_out = "output";
221*b2d2a78aSEmmanuel Vadot	phy-handle = <&rgmii_phy1>;
222*b2d2a78aSEmmanuel Vadot	phy-mode = "rgmii-id";
223*b2d2a78aSEmmanuel Vadot	phy-supply = <&vcc_3v3_s0>;
224*b2d2a78aSEmmanuel Vadot	pinctrl-names = "default";
225*b2d2a78aSEmmanuel Vadot	pinctrl-0 = <&gmac1_miim
226*b2d2a78aSEmmanuel Vadot		     &gmac1_tx_bus2
227*b2d2a78aSEmmanuel Vadot		     &gmac1_rx_bus2
228*b2d2a78aSEmmanuel Vadot		     &gmac1_rgmii_clk
229*b2d2a78aSEmmanuel Vadot		     &gmac1_rgmii_bus
230*b2d2a78aSEmmanuel Vadot		     &gmac1_clkinout>;
231*b2d2a78aSEmmanuel Vadot	status = "okay";
232*b2d2a78aSEmmanuel Vadot};
233*b2d2a78aSEmmanuel Vadot
234*b2d2a78aSEmmanuel Vadot&gpu {
235*b2d2a78aSEmmanuel Vadot	mali-supply = <&vdd_gpu_s0>;
236*b2d2a78aSEmmanuel Vadot	status = "okay";
237*b2d2a78aSEmmanuel Vadot};
238*b2d2a78aSEmmanuel Vadot
239*b2d2a78aSEmmanuel Vadot&i2c0 {
240*b2d2a78aSEmmanuel Vadot	pinctrl-names = "default";
241*b2d2a78aSEmmanuel Vadot	pinctrl-0 = <&i2c0m2_xfer>;
242*b2d2a78aSEmmanuel Vadot	status = "okay";
243*b2d2a78aSEmmanuel Vadot
244*b2d2a78aSEmmanuel Vadot	vdd_cpu_big0_s0: regulator@42 {
245*b2d2a78aSEmmanuel Vadot		compatible = "rockchip,rk8602";
246*b2d2a78aSEmmanuel Vadot		reg = <0x42>;
247*b2d2a78aSEmmanuel Vadot		fcs,suspend-voltage-selector = <1>;
248*b2d2a78aSEmmanuel Vadot		regulator-name = "vdd_cpu_big0_s0";
249*b2d2a78aSEmmanuel Vadot		regulator-always-on;
250*b2d2a78aSEmmanuel Vadot		regulator-boot-on;
251*b2d2a78aSEmmanuel Vadot		regulator-min-microvolt = <550000>;
252*b2d2a78aSEmmanuel Vadot		regulator-max-microvolt = <1050000>;
253*b2d2a78aSEmmanuel Vadot		regulator-ramp-delay = <2300>;
254*b2d2a78aSEmmanuel Vadot		vin-supply = <&vcc4v0_sys>;
255*b2d2a78aSEmmanuel Vadot
256*b2d2a78aSEmmanuel Vadot		regulator-state-mem {
257*b2d2a78aSEmmanuel Vadot			regulator-off-in-suspend;
258*b2d2a78aSEmmanuel Vadot		};
259*b2d2a78aSEmmanuel Vadot	};
260*b2d2a78aSEmmanuel Vadot
261*b2d2a78aSEmmanuel Vadot	vdd_cpu_big1_s0: regulator@43 {
262*b2d2a78aSEmmanuel Vadot		compatible = "rockchip,rk8603", "rockchip,rk8602";
263*b2d2a78aSEmmanuel Vadot		reg = <0x43>;
264*b2d2a78aSEmmanuel Vadot		fcs,suspend-voltage-selector = <1>;
265*b2d2a78aSEmmanuel Vadot		regulator-name = "vdd_cpu_big1_s0";
266*b2d2a78aSEmmanuel Vadot		regulator-always-on;
267*b2d2a78aSEmmanuel Vadot		regulator-boot-on;
268*b2d2a78aSEmmanuel Vadot		regulator-min-microvolt = <550000>;
269*b2d2a78aSEmmanuel Vadot		regulator-max-microvolt = <1050000>;
270*b2d2a78aSEmmanuel Vadot		regulator-ramp-delay = <2300>;
271*b2d2a78aSEmmanuel Vadot		vin-supply = <&vcc4v0_sys>;
272*b2d2a78aSEmmanuel Vadot
273*b2d2a78aSEmmanuel Vadot		regulator-state-mem {
274*b2d2a78aSEmmanuel Vadot			regulator-off-in-suspend;
275*b2d2a78aSEmmanuel Vadot		};
276*b2d2a78aSEmmanuel Vadot	};
277*b2d2a78aSEmmanuel Vadot};
278*b2d2a78aSEmmanuel Vadot
279*b2d2a78aSEmmanuel Vadot&i2c2 {
280*b2d2a78aSEmmanuel Vadot	status = "okay";
281*b2d2a78aSEmmanuel Vadot
282*b2d2a78aSEmmanuel Vadot	vdd_npu_s0: regulator@42 {
283*b2d2a78aSEmmanuel Vadot		compatible = "rockchip,rk8602";
284*b2d2a78aSEmmanuel Vadot		reg = <0x42>;
285*b2d2a78aSEmmanuel Vadot		fcs,suspend-voltage-selector = <1>;
286*b2d2a78aSEmmanuel Vadot		regulator-name = "vdd_npu_s0";
287*b2d2a78aSEmmanuel Vadot		regulator-always-on;
288*b2d2a78aSEmmanuel Vadot		regulator-boot-on;
289*b2d2a78aSEmmanuel Vadot		regulator-min-microvolt = <550000>;
290*b2d2a78aSEmmanuel Vadot		regulator-max-microvolt = <950000>;
291*b2d2a78aSEmmanuel Vadot		regulator-ramp-delay = <2300>;
292*b2d2a78aSEmmanuel Vadot		vin-supply = <&vcc4v0_sys>;
293*b2d2a78aSEmmanuel Vadot
294*b2d2a78aSEmmanuel Vadot		regulator-state-mem {
295*b2d2a78aSEmmanuel Vadot			regulator-off-in-suspend;
296*b2d2a78aSEmmanuel Vadot		};
297*b2d2a78aSEmmanuel Vadot	};
298*b2d2a78aSEmmanuel Vadot};
299*b2d2a78aSEmmanuel Vadot
300*b2d2a78aSEmmanuel Vadot&i2c8 {
301*b2d2a78aSEmmanuel Vadot	clock-frequency = <400000>;
302*b2d2a78aSEmmanuel Vadot	pinctrl-names = "default";
303*b2d2a78aSEmmanuel Vadot	pinctrl-0 = <&i2c8m2_xfer>;
304*b2d2a78aSEmmanuel Vadot	status = "okay";
305*b2d2a78aSEmmanuel Vadot
306*b2d2a78aSEmmanuel Vadot	usbc0: usb-typec@22 {
307*b2d2a78aSEmmanuel Vadot		compatible = "fcs,fusb302";
308*b2d2a78aSEmmanuel Vadot		reg = <0x22>;
309*b2d2a78aSEmmanuel Vadot		interrupt-parent = <&gpio4>;
310*b2d2a78aSEmmanuel Vadot		interrupts = <RK_PA5 IRQ_TYPE_LEVEL_LOW>;
311*b2d2a78aSEmmanuel Vadot		pinctrl-names = "default";
312*b2d2a78aSEmmanuel Vadot		pinctrl-0 = <&usbc0_int>;
313*b2d2a78aSEmmanuel Vadot		vbus-supply = <&vcc5v0_usb3_typec>;
314*b2d2a78aSEmmanuel Vadot
315*b2d2a78aSEmmanuel Vadot		connector {
316*b2d2a78aSEmmanuel Vadot			compatible = "usb-c-connector";
317*b2d2a78aSEmmanuel Vadot			data-role = "dual";
318*b2d2a78aSEmmanuel Vadot			label = "USB-C";
319*b2d2a78aSEmmanuel Vadot			op-sink-microwatt = <1000000>;
320*b2d2a78aSEmmanuel Vadot			power-role = "dual";
321*b2d2a78aSEmmanuel Vadot			sink-pdos = <PDO_FIXED(5000, 1000, PDO_FIXED_USB_COMM)>;
322*b2d2a78aSEmmanuel Vadot			source-pdos = <PDO_FIXED(5000, 3000, PDO_FIXED_USB_COMM)>;
323*b2d2a78aSEmmanuel Vadot			try-power-role = "source";
324*b2d2a78aSEmmanuel Vadot
325*b2d2a78aSEmmanuel Vadot			ports {
326*b2d2a78aSEmmanuel Vadot				#address-cells = <1>;
327*b2d2a78aSEmmanuel Vadot				#size-cells = <0>;
328*b2d2a78aSEmmanuel Vadot
329*b2d2a78aSEmmanuel Vadot				port@0 {
330*b2d2a78aSEmmanuel Vadot					reg = <0>;
331*b2d2a78aSEmmanuel Vadot
332*b2d2a78aSEmmanuel Vadot					usbc0_role_switch: endpoint {
333*b2d2a78aSEmmanuel Vadot						remote-endpoint = <&usb_host0_xhci_role_switch>;
334*b2d2a78aSEmmanuel Vadot					};
335*b2d2a78aSEmmanuel Vadot				};
336*b2d2a78aSEmmanuel Vadot
337*b2d2a78aSEmmanuel Vadot				port@1 {
338*b2d2a78aSEmmanuel Vadot					reg = <1>;
339*b2d2a78aSEmmanuel Vadot
340*b2d2a78aSEmmanuel Vadot					usbc0_orientation_switch: endpoint {
341*b2d2a78aSEmmanuel Vadot						remote-endpoint = <&usbdp_phy0_orientation_switch>;
342*b2d2a78aSEmmanuel Vadot					};
343*b2d2a78aSEmmanuel Vadot				};
344*b2d2a78aSEmmanuel Vadot
345*b2d2a78aSEmmanuel Vadot				port@2 {
346*b2d2a78aSEmmanuel Vadot					reg = <2>;
347*b2d2a78aSEmmanuel Vadot
348*b2d2a78aSEmmanuel Vadot					usbc0_dp_altmode_mux: endpoint {
349*b2d2a78aSEmmanuel Vadot						remote-endpoint = <&usbdp_phy0_dp_altmode_mux>;
350*b2d2a78aSEmmanuel Vadot					};
351*b2d2a78aSEmmanuel Vadot				};
352*b2d2a78aSEmmanuel Vadot			};
353*b2d2a78aSEmmanuel Vadot		};
354*b2d2a78aSEmmanuel Vadot	};
355*b2d2a78aSEmmanuel Vadot
356*b2d2a78aSEmmanuel Vadot	pcf8563: rtc@51 {
357*b2d2a78aSEmmanuel Vadot		compatible = "nxp,pcf8563";
358*b2d2a78aSEmmanuel Vadot		reg = <0x51>;
359*b2d2a78aSEmmanuel Vadot		interrupt-parent = <&gpio0>;
360*b2d2a78aSEmmanuel Vadot		interrupts = <RK_PB0 IRQ_TYPE_LEVEL_LOW>;
361*b2d2a78aSEmmanuel Vadot		pinctrl-names = "default";
362*b2d2a78aSEmmanuel Vadot		pinctrl-0 = <&pcf8563_int>;
363*b2d2a78aSEmmanuel Vadot		wakeup-source;
364*b2d2a78aSEmmanuel Vadot	};
365*b2d2a78aSEmmanuel Vadot};
366*b2d2a78aSEmmanuel Vadot
367*b2d2a78aSEmmanuel Vadot&mdio1 {
368*b2d2a78aSEmmanuel Vadot	rgmii_phy1: ethernet-phy@1 {
369*b2d2a78aSEmmanuel Vadot		compatible = "ethernet-phy-id001c.c916";
370*b2d2a78aSEmmanuel Vadot		reg = <1>;
371*b2d2a78aSEmmanuel Vadot		reset-assert-us = <20000>;
372*b2d2a78aSEmmanuel Vadot		reset-deassert-us = <100000>;
373*b2d2a78aSEmmanuel Vadot		reset-gpios = <&gpio3 RK_PB7 GPIO_ACTIVE_LOW>;
374*b2d2a78aSEmmanuel Vadot	};
375*b2d2a78aSEmmanuel Vadot};
376*b2d2a78aSEmmanuel Vadot
377*b2d2a78aSEmmanuel Vadot&package_thermal {
378*b2d2a78aSEmmanuel Vadot	polling-delay = <1000>;
379*b2d2a78aSEmmanuel Vadot
380*b2d2a78aSEmmanuel Vadot	trips {
381*b2d2a78aSEmmanuel Vadot		package_fan0: package-fan0 {
382*b2d2a78aSEmmanuel Vadot			hysteresis = <2000>;
383*b2d2a78aSEmmanuel Vadot			temperature = <60000>;
384*b2d2a78aSEmmanuel Vadot			type = "active";
385*b2d2a78aSEmmanuel Vadot		};
386*b2d2a78aSEmmanuel Vadot	};
387*b2d2a78aSEmmanuel Vadot
388*b2d2a78aSEmmanuel Vadot	cooling-maps {
389*b2d2a78aSEmmanuel Vadot		map0 {
390*b2d2a78aSEmmanuel Vadot			cooling-device = <&fan 1 THERMAL_NO_LIMIT>;
391*b2d2a78aSEmmanuel Vadot			trip = <&package_fan0>;
392*b2d2a78aSEmmanuel Vadot		};
393*b2d2a78aSEmmanuel Vadot	};
394*b2d2a78aSEmmanuel Vadot};
395*b2d2a78aSEmmanuel Vadot
396*b2d2a78aSEmmanuel Vadot&pcie2x1l2 {
397*b2d2a78aSEmmanuel Vadot	pinctrl-names = "default";
398*b2d2a78aSEmmanuel Vadot	pinctrl-0 = <&pcie20x1_pins>;
399*b2d2a78aSEmmanuel Vadot	reset-gpios = <&gpio1 RK_PA7 GPIO_ACTIVE_HIGH>;
400*b2d2a78aSEmmanuel Vadot	vpcie3v3-supply = <&vcc3v3_pcie>;
401*b2d2a78aSEmmanuel Vadot	status = "okay";
402*b2d2a78aSEmmanuel Vadot};
403*b2d2a78aSEmmanuel Vadot
404*b2d2a78aSEmmanuel Vadot&pinctrl {
405*b2d2a78aSEmmanuel Vadot	lcd {
406*b2d2a78aSEmmanuel Vadot		lcd_pwren: lcd-pwren {
407*b2d2a78aSEmmanuel Vadot			rockchip,pins = <4 RK_PA3 RK_FUNC_GPIO &pcfg_pull_none>;
408*b2d2a78aSEmmanuel Vadot		};
409*b2d2a78aSEmmanuel Vadot	};
410*b2d2a78aSEmmanuel Vadot
411*b2d2a78aSEmmanuel Vadot	leds {
412*b2d2a78aSEmmanuel Vadot		pwr_led: pwr-led {
413*b2d2a78aSEmmanuel Vadot			rockchip,pins = <1 RK_PB5 RK_FUNC_GPIO &pcfg_pull_none>;
414*b2d2a78aSEmmanuel Vadot		};
415*b2d2a78aSEmmanuel Vadot
416*b2d2a78aSEmmanuel Vadot		sys_led: sys-led {
417*b2d2a78aSEmmanuel Vadot			rockchip,pins = <1 RK_PB1 RK_FUNC_GPIO &pcfg_pull_none>;
418*b2d2a78aSEmmanuel Vadot		};
419*b2d2a78aSEmmanuel Vadot	};
420*b2d2a78aSEmmanuel Vadot
421*b2d2a78aSEmmanuel Vadot	pcie {
422*b2d2a78aSEmmanuel Vadot		pcie20x1_pins: pcie20x1-pins {
423*b2d2a78aSEmmanuel Vadot			rockchip,pins =
424*b2d2a78aSEmmanuel Vadot				<1 RK_PA0 4 &pcfg_pull_none>,
425*b2d2a78aSEmmanuel Vadot				<1 RK_PA7 RK_FUNC_GPIO &pcfg_pull_none>,
426*b2d2a78aSEmmanuel Vadot				<1 RK_PA1 4 &pcfg_pull_none>;
427*b2d2a78aSEmmanuel Vadot		};
428*b2d2a78aSEmmanuel Vadot
429*b2d2a78aSEmmanuel Vadot		pcie_pwren: pcie-pwren {
430*b2d2a78aSEmmanuel Vadot			rockchip,pins = <0 RK_PC6 RK_FUNC_GPIO &pcfg_pull_none>;
431*b2d2a78aSEmmanuel Vadot		};
432*b2d2a78aSEmmanuel Vadot	};
433*b2d2a78aSEmmanuel Vadot
434*b2d2a78aSEmmanuel Vadot	regulator {
435*b2d2a78aSEmmanuel Vadot		vcc5v0_pwren: vcc5v0-pwren {
436*b2d2a78aSEmmanuel Vadot			rockchip,pins = <0 RK_PD3 RK_FUNC_GPIO &pcfg_pull_none>;
437*b2d2a78aSEmmanuel Vadot		};
438*b2d2a78aSEmmanuel Vadot	};
439*b2d2a78aSEmmanuel Vadot
440*b2d2a78aSEmmanuel Vadot	rtc {
441*b2d2a78aSEmmanuel Vadot		pcf8563_int: pcf8563-int {
442*b2d2a78aSEmmanuel Vadot			rockchip,pins = <0 RK_PB0 RK_FUNC_GPIO &pcfg_pull_none>;
443*b2d2a78aSEmmanuel Vadot		};
444*b2d2a78aSEmmanuel Vadot	};
445*b2d2a78aSEmmanuel Vadot
446*b2d2a78aSEmmanuel Vadot	usb {
447*b2d2a78aSEmmanuel Vadot		usb2_host_pwren: usb2-host-pwren {
448*b2d2a78aSEmmanuel Vadot			rockchip,pins = <1 RK_PC6 RK_FUNC_GPIO &pcfg_pull_none>;
449*b2d2a78aSEmmanuel Vadot		};
450*b2d2a78aSEmmanuel Vadot
451*b2d2a78aSEmmanuel Vadot		usb3_host_pwren: usb3-host-pwren {
452*b2d2a78aSEmmanuel Vadot			rockchip,pins = <1 RK_PA6 RK_FUNC_GPIO &pcfg_pull_none>;
453*b2d2a78aSEmmanuel Vadot		};
454*b2d2a78aSEmmanuel Vadot
455*b2d2a78aSEmmanuel Vadot		usb3_typec_pwren: usb3-typec-pwren {
456*b2d2a78aSEmmanuel Vadot			rockchip,pins = <0 RK_PA0 RK_FUNC_GPIO &pcfg_pull_none>;
457*b2d2a78aSEmmanuel Vadot		};
458*b2d2a78aSEmmanuel Vadot
459*b2d2a78aSEmmanuel Vadot		usbc0_int: usbc0-int {
460*b2d2a78aSEmmanuel Vadot			rockchip,pins = <4 RK_PA5 RK_FUNC_GPIO &pcfg_pull_none>;
461*b2d2a78aSEmmanuel Vadot		};
462*b2d2a78aSEmmanuel Vadot	};
463*b2d2a78aSEmmanuel Vadot};
464*b2d2a78aSEmmanuel Vadot
465*b2d2a78aSEmmanuel Vadot&pwm0 {
466*b2d2a78aSEmmanuel Vadot	pinctrl-names = "default";
467*b2d2a78aSEmmanuel Vadot	pinctrl-0 = <&pwm0m2_pins>;
468*b2d2a78aSEmmanuel Vadot	status = "okay";
469*b2d2a78aSEmmanuel Vadot};
470*b2d2a78aSEmmanuel Vadot
471*b2d2a78aSEmmanuel Vadot&saradc {
472*b2d2a78aSEmmanuel Vadot	vref-supply = <&vcca_1v8_s0>;
473*b2d2a78aSEmmanuel Vadot	status = "okay";
474*b2d2a78aSEmmanuel Vadot};
475*b2d2a78aSEmmanuel Vadot
476*b2d2a78aSEmmanuel Vadot&sdhci {
477*b2d2a78aSEmmanuel Vadot	bus-width = <8>;
478*b2d2a78aSEmmanuel Vadot	mmc-hs400-1_8v;
479*b2d2a78aSEmmanuel Vadot	mmc-hs400-enhanced-strobe;
480*b2d2a78aSEmmanuel Vadot	no-sd;
481*b2d2a78aSEmmanuel Vadot	no-sdio;
482*b2d2a78aSEmmanuel Vadot	non-removable;
483*b2d2a78aSEmmanuel Vadot	vmmc-supply = <&vcc_3v3_s0>;
484*b2d2a78aSEmmanuel Vadot	vqmmc-supply = <&vcc_1v8_s0>;
485*b2d2a78aSEmmanuel Vadot	status = "okay";
486*b2d2a78aSEmmanuel Vadot};
487*b2d2a78aSEmmanuel Vadot
488*b2d2a78aSEmmanuel Vadot&sdmmc {
489*b2d2a78aSEmmanuel Vadot	bus-width = <4>;
490*b2d2a78aSEmmanuel Vadot	cap-sd-highspeed;
491*b2d2a78aSEmmanuel Vadot	cd-gpios = <&gpio0 RK_PA4 GPIO_ACTIVE_LOW>;
492*b2d2a78aSEmmanuel Vadot	disable-wp;
493*b2d2a78aSEmmanuel Vadot	max-frequency = <150000000>;
494*b2d2a78aSEmmanuel Vadot	no-mmc;
495*b2d2a78aSEmmanuel Vadot	no-sdio;
496*b2d2a78aSEmmanuel Vadot	sd-uhs-sdr104;
497*b2d2a78aSEmmanuel Vadot	vmmc-supply = <&vcc_3v3_s3>;
498*b2d2a78aSEmmanuel Vadot	vqmmc-supply = <&vccio_sd_s0>;
499*b2d2a78aSEmmanuel Vadot	status = "okay";
500*b2d2a78aSEmmanuel Vadot};
501*b2d2a78aSEmmanuel Vadot
502*b2d2a78aSEmmanuel Vadot&spi2 {
503*b2d2a78aSEmmanuel Vadot	assigned-clocks = <&cru CLK_SPI2>;
504*b2d2a78aSEmmanuel Vadot	assigned-clock-rates = <200000000>;
505*b2d2a78aSEmmanuel Vadot	num-cs = <1>;
506*b2d2a78aSEmmanuel Vadot	pinctrl-names = "default";
507*b2d2a78aSEmmanuel Vadot	pinctrl-0 = <&spi2m2_cs0>, <&spi2m2_pins>;
508*b2d2a78aSEmmanuel Vadot	status = "okay";
509*b2d2a78aSEmmanuel Vadot
510*b2d2a78aSEmmanuel Vadot	pmic@0 {
511*b2d2a78aSEmmanuel Vadot		compatible = "rockchip,rk806";
512*b2d2a78aSEmmanuel Vadot		reg = <0x0>;
513*b2d2a78aSEmmanuel Vadot		#gpio-cells = <2>;
514*b2d2a78aSEmmanuel Vadot		gpio-controller;
515*b2d2a78aSEmmanuel Vadot		interrupt-parent = <&gpio0>;
516*b2d2a78aSEmmanuel Vadot		interrupts = <RK_PA7 IRQ_TYPE_LEVEL_LOW>;
517*b2d2a78aSEmmanuel Vadot		pinctrl-names = "default";
518*b2d2a78aSEmmanuel Vadot		pinctrl-0 = <&pmic_pins>, <&rk806_dvs1_null>,
519*b2d2a78aSEmmanuel Vadot			    <&rk806_dvs2_null>, <&rk806_dvs3_null>;
520*b2d2a78aSEmmanuel Vadot		spi-max-frequency = <1000000>;
521*b2d2a78aSEmmanuel Vadot		system-power-controller;
522*b2d2a78aSEmmanuel Vadot
523*b2d2a78aSEmmanuel Vadot		vcc1-supply = <&vcc4v0_sys>;
524*b2d2a78aSEmmanuel Vadot		vcc2-supply = <&vcc4v0_sys>;
525*b2d2a78aSEmmanuel Vadot		vcc3-supply = <&vcc4v0_sys>;
526*b2d2a78aSEmmanuel Vadot		vcc4-supply = <&vcc4v0_sys>;
527*b2d2a78aSEmmanuel Vadot		vcc5-supply = <&vcc4v0_sys>;
528*b2d2a78aSEmmanuel Vadot		vcc6-supply = <&vcc4v0_sys>;
529*b2d2a78aSEmmanuel Vadot		vcc7-supply = <&vcc4v0_sys>;
530*b2d2a78aSEmmanuel Vadot		vcc8-supply = <&vcc4v0_sys>;
531*b2d2a78aSEmmanuel Vadot		vcc9-supply = <&vcc4v0_sys>;
532*b2d2a78aSEmmanuel Vadot		vcc10-supply = <&vcc4v0_sys>;
533*b2d2a78aSEmmanuel Vadot		vcc11-supply = <&vcc_2v0_pldo_s3>;
534*b2d2a78aSEmmanuel Vadot		vcc12-supply = <&vcc4v0_sys>;
535*b2d2a78aSEmmanuel Vadot		vcc13-supply = <&vcc_1v1_nldo_s3>;
536*b2d2a78aSEmmanuel Vadot		vcc14-supply = <&vcc_1v1_nldo_s3>;
537*b2d2a78aSEmmanuel Vadot		vcca-supply = <&vcca>;
538*b2d2a78aSEmmanuel Vadot
539*b2d2a78aSEmmanuel Vadot		rk806_dvs1_null: dvs1-null-pins {
540*b2d2a78aSEmmanuel Vadot			pins = "gpio_pwrctrl1";
541*b2d2a78aSEmmanuel Vadot			function = "pin_fun0";
542*b2d2a78aSEmmanuel Vadot		};
543*b2d2a78aSEmmanuel Vadot
544*b2d2a78aSEmmanuel Vadot		rk806_dvs2_null: dvs2-null-pins {
545*b2d2a78aSEmmanuel Vadot			pins = "gpio_pwrctrl2";
546*b2d2a78aSEmmanuel Vadot			function = "pin_fun0";
547*b2d2a78aSEmmanuel Vadot		};
548*b2d2a78aSEmmanuel Vadot
549*b2d2a78aSEmmanuel Vadot		rk806_dvs3_null: dvs3-null-pins {
550*b2d2a78aSEmmanuel Vadot			pins = "gpio_pwrctrl3";
551*b2d2a78aSEmmanuel Vadot			function = "pin_fun0";
552*b2d2a78aSEmmanuel Vadot		};
553*b2d2a78aSEmmanuel Vadot
554*b2d2a78aSEmmanuel Vadot		regulators {
555*b2d2a78aSEmmanuel Vadot			vdd_gpu_s0: dcdc-reg1 {
556*b2d2a78aSEmmanuel Vadot				regulator-name = "vdd_gpu_s0";
557*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
558*b2d2a78aSEmmanuel Vadot				regulator-min-microvolt = <550000>;
559*b2d2a78aSEmmanuel Vadot				regulator-max-microvolt = <950000>;
560*b2d2a78aSEmmanuel Vadot				regulator-ramp-delay = <12500>;
561*b2d2a78aSEmmanuel Vadot				regulator-enable-ramp-delay = <400>;
562*b2d2a78aSEmmanuel Vadot
563*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
564*b2d2a78aSEmmanuel Vadot					regulator-off-in-suspend;
565*b2d2a78aSEmmanuel Vadot				};
566*b2d2a78aSEmmanuel Vadot			};
567*b2d2a78aSEmmanuel Vadot
568*b2d2a78aSEmmanuel Vadot			vdd_cpu_lit_s0: dcdc-reg2 {
569*b2d2a78aSEmmanuel Vadot				regulator-name = "vdd_cpu_lit_s0";
570*b2d2a78aSEmmanuel Vadot				regulator-always-on;
571*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
572*b2d2a78aSEmmanuel Vadot				regulator-min-microvolt = <550000>;
573*b2d2a78aSEmmanuel Vadot				regulator-max-microvolt = <950000>;
574*b2d2a78aSEmmanuel Vadot				regulator-ramp-delay = <12500>;
575*b2d2a78aSEmmanuel Vadot
576*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
577*b2d2a78aSEmmanuel Vadot					regulator-off-in-suspend;
578*b2d2a78aSEmmanuel Vadot				};
579*b2d2a78aSEmmanuel Vadot			};
580*b2d2a78aSEmmanuel Vadot
581*b2d2a78aSEmmanuel Vadot			vdd_logic_s0: dcdc-reg3 {
582*b2d2a78aSEmmanuel Vadot				regulator-name = "vdd_logic_s0";
583*b2d2a78aSEmmanuel Vadot				regulator-always-on;
584*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
585*b2d2a78aSEmmanuel Vadot				regulator-min-microvolt = <675000>;
586*b2d2a78aSEmmanuel Vadot				regulator-max-microvolt = <750000>;
587*b2d2a78aSEmmanuel Vadot				regulator-ramp-delay = <12500>;
588*b2d2a78aSEmmanuel Vadot
589*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
590*b2d2a78aSEmmanuel Vadot					regulator-off-in-suspend;
591*b2d2a78aSEmmanuel Vadot					regulator-suspend-microvolt = <750000>;
592*b2d2a78aSEmmanuel Vadot				};
593*b2d2a78aSEmmanuel Vadot			};
594*b2d2a78aSEmmanuel Vadot
595*b2d2a78aSEmmanuel Vadot			vdd_vdenc_s0: dcdc-reg4 {
596*b2d2a78aSEmmanuel Vadot				regulator-name = "vdd_vdenc_s0";
597*b2d2a78aSEmmanuel Vadot				regulator-always-on;
598*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
599*b2d2a78aSEmmanuel Vadot				regulator-min-microvolt = <550000>;
600*b2d2a78aSEmmanuel Vadot				regulator-max-microvolt = <950000>;
601*b2d2a78aSEmmanuel Vadot				regulator-ramp-delay = <12500>;
602*b2d2a78aSEmmanuel Vadot
603*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
604*b2d2a78aSEmmanuel Vadot					regulator-off-in-suspend;
605*b2d2a78aSEmmanuel Vadot				};
606*b2d2a78aSEmmanuel Vadot			};
607*b2d2a78aSEmmanuel Vadot
608*b2d2a78aSEmmanuel Vadot			vdd_ddr_s0: dcdc-reg5 {
609*b2d2a78aSEmmanuel Vadot				regulator-name = "vdd_ddr_s0";
610*b2d2a78aSEmmanuel Vadot				regulator-always-on;
611*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
612*b2d2a78aSEmmanuel Vadot				regulator-min-microvolt = <675000>;
613*b2d2a78aSEmmanuel Vadot				regulator-max-microvolt = <900000>;
614*b2d2a78aSEmmanuel Vadot				regulator-ramp-delay = <12500>;
615*b2d2a78aSEmmanuel Vadot
616*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
617*b2d2a78aSEmmanuel Vadot					regulator-off-in-suspend;
618*b2d2a78aSEmmanuel Vadot					regulator-suspend-microvolt = <850000>;
619*b2d2a78aSEmmanuel Vadot				};
620*b2d2a78aSEmmanuel Vadot			};
621*b2d2a78aSEmmanuel Vadot
622*b2d2a78aSEmmanuel Vadot			vdd2_ddr_s3: dcdc-reg6 {
623*b2d2a78aSEmmanuel Vadot				regulator-name = "vdd2_ddr_s3";
624*b2d2a78aSEmmanuel Vadot				regulator-always-on;
625*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
626*b2d2a78aSEmmanuel Vadot
627*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
628*b2d2a78aSEmmanuel Vadot					regulator-on-in-suspend;
629*b2d2a78aSEmmanuel Vadot				};
630*b2d2a78aSEmmanuel Vadot			};
631*b2d2a78aSEmmanuel Vadot
632*b2d2a78aSEmmanuel Vadot			vcc_2v0_pldo_s3: dcdc-reg7 {
633*b2d2a78aSEmmanuel Vadot				regulator-name = "vdd_2v0_pldo_s3";
634*b2d2a78aSEmmanuel Vadot				regulator-always-on;
635*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
636*b2d2a78aSEmmanuel Vadot				regulator-min-microvolt = <2000000>;
637*b2d2a78aSEmmanuel Vadot				regulator-max-microvolt = <2000000>;
638*b2d2a78aSEmmanuel Vadot				regulator-ramp-delay = <12500>;
639*b2d2a78aSEmmanuel Vadot
640*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
641*b2d2a78aSEmmanuel Vadot					regulator-on-in-suspend;
642*b2d2a78aSEmmanuel Vadot					regulator-suspend-microvolt = <2000000>;
643*b2d2a78aSEmmanuel Vadot				};
644*b2d2a78aSEmmanuel Vadot			};
645*b2d2a78aSEmmanuel Vadot
646*b2d2a78aSEmmanuel Vadot			vcc_3v3_s3: dcdc-reg8 {
647*b2d2a78aSEmmanuel Vadot				regulator-name = "vcc_3v3_s3";
648*b2d2a78aSEmmanuel Vadot				regulator-always-on;
649*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
650*b2d2a78aSEmmanuel Vadot				regulator-min-microvolt = <3300000>;
651*b2d2a78aSEmmanuel Vadot				regulator-max-microvolt = <3300000>;
652*b2d2a78aSEmmanuel Vadot
653*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
654*b2d2a78aSEmmanuel Vadot					regulator-on-in-suspend;
655*b2d2a78aSEmmanuel Vadot					regulator-suspend-microvolt = <3300000>;
656*b2d2a78aSEmmanuel Vadot				};
657*b2d2a78aSEmmanuel Vadot			};
658*b2d2a78aSEmmanuel Vadot
659*b2d2a78aSEmmanuel Vadot			vddq_ddr_s0: dcdc-reg9 {
660*b2d2a78aSEmmanuel Vadot				regulator-name = "vddq_ddr_s0";
661*b2d2a78aSEmmanuel Vadot				regulator-always-on;
662*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
663*b2d2a78aSEmmanuel Vadot
664*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
665*b2d2a78aSEmmanuel Vadot					regulator-off-in-suspend;
666*b2d2a78aSEmmanuel Vadot				};
667*b2d2a78aSEmmanuel Vadot			};
668*b2d2a78aSEmmanuel Vadot
669*b2d2a78aSEmmanuel Vadot			vcc_1v8_s3: dcdc-reg10 {
670*b2d2a78aSEmmanuel Vadot				regulator-name = "vcc_1v8_s3";
671*b2d2a78aSEmmanuel Vadot				regulator-always-on;
672*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
673*b2d2a78aSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
674*b2d2a78aSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
675*b2d2a78aSEmmanuel Vadot
676*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
677*b2d2a78aSEmmanuel Vadot					regulator-on-in-suspend;
678*b2d2a78aSEmmanuel Vadot					regulator-suspend-microvolt = <1800000>;
679*b2d2a78aSEmmanuel Vadot				};
680*b2d2a78aSEmmanuel Vadot			};
681*b2d2a78aSEmmanuel Vadot
682*b2d2a78aSEmmanuel Vadot			vcc_1v8_s0: pldo-reg1 {
683*b2d2a78aSEmmanuel Vadot				regulator-name = "vcc_1v8_s0";
684*b2d2a78aSEmmanuel Vadot				regulator-always-on;
685*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
686*b2d2a78aSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
687*b2d2a78aSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
688*b2d2a78aSEmmanuel Vadot
689*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
690*b2d2a78aSEmmanuel Vadot					regulator-off-in-suspend;
691*b2d2a78aSEmmanuel Vadot				};
692*b2d2a78aSEmmanuel Vadot			};
693*b2d2a78aSEmmanuel Vadot
694*b2d2a78aSEmmanuel Vadot			vcca_1v8_s0: pldo-reg2 {
695*b2d2a78aSEmmanuel Vadot				regulator-name = "vcca_1v8_s0";
696*b2d2a78aSEmmanuel Vadot				regulator-always-on;
697*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
698*b2d2a78aSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
699*b2d2a78aSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
700*b2d2a78aSEmmanuel Vadot
701*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
702*b2d2a78aSEmmanuel Vadot					regulator-off-in-suspend;
703*b2d2a78aSEmmanuel Vadot					regulator-suspend-microvolt = <1800000>;
704*b2d2a78aSEmmanuel Vadot				};
705*b2d2a78aSEmmanuel Vadot			};
706*b2d2a78aSEmmanuel Vadot
707*b2d2a78aSEmmanuel Vadot			vdda_1v2_s0: pldo-reg3 {
708*b2d2a78aSEmmanuel Vadot				regulator-name = "vdda_1v2_s0";
709*b2d2a78aSEmmanuel Vadot				regulator-always-on;
710*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
711*b2d2a78aSEmmanuel Vadot				regulator-min-microvolt = <1200000>;
712*b2d2a78aSEmmanuel Vadot				regulator-max-microvolt = <1200000>;
713*b2d2a78aSEmmanuel Vadot
714*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
715*b2d2a78aSEmmanuel Vadot					regulator-off-in-suspend;
716*b2d2a78aSEmmanuel Vadot				};
717*b2d2a78aSEmmanuel Vadot			};
718*b2d2a78aSEmmanuel Vadot
719*b2d2a78aSEmmanuel Vadot			vcca_3v3_s0: pldo-reg4 {
720*b2d2a78aSEmmanuel Vadot				regulator-name = "vcca_3v3_s0";
721*b2d2a78aSEmmanuel Vadot				regulator-always-on;
722*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
723*b2d2a78aSEmmanuel Vadot				regulator-min-microvolt = <3300000>;
724*b2d2a78aSEmmanuel Vadot				regulator-max-microvolt = <3300000>;
725*b2d2a78aSEmmanuel Vadot				regulator-ramp-delay = <12500>;
726*b2d2a78aSEmmanuel Vadot
727*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
728*b2d2a78aSEmmanuel Vadot					regulator-off-in-suspend;
729*b2d2a78aSEmmanuel Vadot				};
730*b2d2a78aSEmmanuel Vadot			};
731*b2d2a78aSEmmanuel Vadot
732*b2d2a78aSEmmanuel Vadot			vccio_sd_s0: pldo-reg5 {
733*b2d2a78aSEmmanuel Vadot				regulator-name = "vccio_sd_s0";
734*b2d2a78aSEmmanuel Vadot				regulator-always-on;
735*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
736*b2d2a78aSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
737*b2d2a78aSEmmanuel Vadot				regulator-max-microvolt = <3300000>;
738*b2d2a78aSEmmanuel Vadot				regulator-ramp-delay = <12500>;
739*b2d2a78aSEmmanuel Vadot
740*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
741*b2d2a78aSEmmanuel Vadot					regulator-off-in-suspend;
742*b2d2a78aSEmmanuel Vadot				};
743*b2d2a78aSEmmanuel Vadot			};
744*b2d2a78aSEmmanuel Vadot
745*b2d2a78aSEmmanuel Vadot			vcc_1v8_s3_pldo6: pldo-reg6 {
746*b2d2a78aSEmmanuel Vadot				regulator-name = "vcc_1v8_s3_pldo6";
747*b2d2a78aSEmmanuel Vadot				regulator-always-on;
748*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
749*b2d2a78aSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
750*b2d2a78aSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
751*b2d2a78aSEmmanuel Vadot
752*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
753*b2d2a78aSEmmanuel Vadot					regulator-on-in-suspend;
754*b2d2a78aSEmmanuel Vadot					regulator-suspend-microvolt = <1800000>;
755*b2d2a78aSEmmanuel Vadot				};
756*b2d2a78aSEmmanuel Vadot			};
757*b2d2a78aSEmmanuel Vadot
758*b2d2a78aSEmmanuel Vadot			vdd_0v75_s3: nldo-reg1 {
759*b2d2a78aSEmmanuel Vadot				regulator-name = "vdd_0v75_s3";
760*b2d2a78aSEmmanuel Vadot				regulator-always-on;
761*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
762*b2d2a78aSEmmanuel Vadot				regulator-min-microvolt = <750000>;
763*b2d2a78aSEmmanuel Vadot				regulator-max-microvolt = <750000>;
764*b2d2a78aSEmmanuel Vadot
765*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
766*b2d2a78aSEmmanuel Vadot					regulator-on-in-suspend;
767*b2d2a78aSEmmanuel Vadot					regulator-suspend-microvolt = <750000>;
768*b2d2a78aSEmmanuel Vadot				};
769*b2d2a78aSEmmanuel Vadot			};
770*b2d2a78aSEmmanuel Vadot
771*b2d2a78aSEmmanuel Vadot			vdda_ddr_pll_s0: nldo-reg2 {
772*b2d2a78aSEmmanuel Vadot				regulator-name = "vdda_ddr_pll_s0";
773*b2d2a78aSEmmanuel Vadot				regulator-always-on;
774*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
775*b2d2a78aSEmmanuel Vadot				regulator-min-microvolt = <900000>;
776*b2d2a78aSEmmanuel Vadot				regulator-max-microvolt = <900000>;
777*b2d2a78aSEmmanuel Vadot
778*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
779*b2d2a78aSEmmanuel Vadot					regulator-off-in-suspend;
780*b2d2a78aSEmmanuel Vadot					regulator-suspend-microvolt = <850000>;
781*b2d2a78aSEmmanuel Vadot				};
782*b2d2a78aSEmmanuel Vadot			};
783*b2d2a78aSEmmanuel Vadot
784*b2d2a78aSEmmanuel Vadot			vdda_0v75_s0: nldo-reg3 {
785*b2d2a78aSEmmanuel Vadot				regulator-name = "vdda_0v75_s0";
786*b2d2a78aSEmmanuel Vadot				regulator-always-on;
787*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
788*b2d2a78aSEmmanuel Vadot				regulator-min-microvolt = <837500>;
789*b2d2a78aSEmmanuel Vadot				regulator-max-microvolt = <837500>;
790*b2d2a78aSEmmanuel Vadot
791*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
792*b2d2a78aSEmmanuel Vadot					regulator-off-in-suspend;
793*b2d2a78aSEmmanuel Vadot				};
794*b2d2a78aSEmmanuel Vadot			};
795*b2d2a78aSEmmanuel Vadot
796*b2d2a78aSEmmanuel Vadot			vdda_0v85_s0: nldo-reg4 {
797*b2d2a78aSEmmanuel Vadot				regulator-name = "vdda_0v85_s0";
798*b2d2a78aSEmmanuel Vadot				regulator-always-on;
799*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
800*b2d2a78aSEmmanuel Vadot				regulator-min-microvolt = <850000>;
801*b2d2a78aSEmmanuel Vadot				regulator-max-microvolt = <850000>;
802*b2d2a78aSEmmanuel Vadot
803*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
804*b2d2a78aSEmmanuel Vadot					regulator-off-in-suspend;
805*b2d2a78aSEmmanuel Vadot				};
806*b2d2a78aSEmmanuel Vadot			};
807*b2d2a78aSEmmanuel Vadot
808*b2d2a78aSEmmanuel Vadot			/* Schematics show not in use */
809*b2d2a78aSEmmanuel Vadot			nldo-reg5 {
810*b2d2a78aSEmmanuel Vadot			};
811*b2d2a78aSEmmanuel Vadot		};
812*b2d2a78aSEmmanuel Vadot	};
813*b2d2a78aSEmmanuel Vadot};
814*b2d2a78aSEmmanuel Vadot
815*b2d2a78aSEmmanuel Vadot&tsadc {
816*b2d2a78aSEmmanuel Vadot	status = "okay";
817*b2d2a78aSEmmanuel Vadot};
818*b2d2a78aSEmmanuel Vadot
819*b2d2a78aSEmmanuel Vadot&u2phy0 {
820*b2d2a78aSEmmanuel Vadot	status = "okay";
821*b2d2a78aSEmmanuel Vadot};
822*b2d2a78aSEmmanuel Vadot
823*b2d2a78aSEmmanuel Vadot&u2phy0_otg {
824*b2d2a78aSEmmanuel Vadot	status = "okay";
825*b2d2a78aSEmmanuel Vadot};
826*b2d2a78aSEmmanuel Vadot
827*b2d2a78aSEmmanuel Vadot&u2phy2 {
828*b2d2a78aSEmmanuel Vadot	status = "okay";
829*b2d2a78aSEmmanuel Vadot};
830*b2d2a78aSEmmanuel Vadot
831*b2d2a78aSEmmanuel Vadot&u2phy2_host {
832*b2d2a78aSEmmanuel Vadot	phy-supply = <&vcc5v0_usb2_host>;
833*b2d2a78aSEmmanuel Vadot	status = "okay";
834*b2d2a78aSEmmanuel Vadot};
835*b2d2a78aSEmmanuel Vadot
836*b2d2a78aSEmmanuel Vadot&u2phy3 {
837*b2d2a78aSEmmanuel Vadot	status = "okay";
838*b2d2a78aSEmmanuel Vadot};
839*b2d2a78aSEmmanuel Vadot
840*b2d2a78aSEmmanuel Vadot&u2phy3_host {
841*b2d2a78aSEmmanuel Vadot	phy-supply = <&vcc5v0_usb3_host>;
842*b2d2a78aSEmmanuel Vadot	status = "okay";
843*b2d2a78aSEmmanuel Vadot};
844*b2d2a78aSEmmanuel Vadot
845*b2d2a78aSEmmanuel Vadot&uart2 {
846*b2d2a78aSEmmanuel Vadot	pinctrl-names = "default";
847*b2d2a78aSEmmanuel Vadot	pinctrl-0 = <&uart2m0_xfer>;
848*b2d2a78aSEmmanuel Vadot	status = "okay";
849*b2d2a78aSEmmanuel Vadot};
850*b2d2a78aSEmmanuel Vadot
851*b2d2a78aSEmmanuel Vadot&usb_host0_ehci {
852*b2d2a78aSEmmanuel Vadot	status = "okay";
853*b2d2a78aSEmmanuel Vadot};
854*b2d2a78aSEmmanuel Vadot
855*b2d2a78aSEmmanuel Vadot&usb_host0_ohci {
856*b2d2a78aSEmmanuel Vadot	status = "okay";
857*b2d2a78aSEmmanuel Vadot};
858*b2d2a78aSEmmanuel Vadot
859*b2d2a78aSEmmanuel Vadot&usb_host0_xhci {
860*b2d2a78aSEmmanuel Vadot	usb-role-switch;
861*b2d2a78aSEmmanuel Vadot	status = "okay";
862*b2d2a78aSEmmanuel Vadot
863*b2d2a78aSEmmanuel Vadot	port {
864*b2d2a78aSEmmanuel Vadot		usb_host0_xhci_role_switch: endpoint {
865*b2d2a78aSEmmanuel Vadot			remote-endpoint = <&usbc0_role_switch>;
866*b2d2a78aSEmmanuel Vadot		};
867*b2d2a78aSEmmanuel Vadot	};
868*b2d2a78aSEmmanuel Vadot};
869*b2d2a78aSEmmanuel Vadot
870*b2d2a78aSEmmanuel Vadot&usb_host1_ehci {
871*b2d2a78aSEmmanuel Vadot	status = "okay";
872*b2d2a78aSEmmanuel Vadot};
873*b2d2a78aSEmmanuel Vadot
874*b2d2a78aSEmmanuel Vadot&usb_host1_ohci {
875*b2d2a78aSEmmanuel Vadot	status = "okay";
876*b2d2a78aSEmmanuel Vadot};
877*b2d2a78aSEmmanuel Vadot
878*b2d2a78aSEmmanuel Vadot&usb_host2_xhci {
879*b2d2a78aSEmmanuel Vadot	status = "okay";
880*b2d2a78aSEmmanuel Vadot};
881*b2d2a78aSEmmanuel Vadot
882*b2d2a78aSEmmanuel Vadot&usbdp_phy0 {
883*b2d2a78aSEmmanuel Vadot	mode-switch;
884*b2d2a78aSEmmanuel Vadot	orientation-switch;
885*b2d2a78aSEmmanuel Vadot	sbu1-dc-gpios = <&gpio4 RK_PA0 GPIO_ACTIVE_HIGH>;
886*b2d2a78aSEmmanuel Vadot	sbu2-dc-gpios = <&gpio4 RK_PA1 GPIO_ACTIVE_HIGH>;
887*b2d2a78aSEmmanuel Vadot	status = "okay";
888*b2d2a78aSEmmanuel Vadot
889*b2d2a78aSEmmanuel Vadot	port {
890*b2d2a78aSEmmanuel Vadot		#address-cells = <1>;
891*b2d2a78aSEmmanuel Vadot		#size-cells = <0>;
892*b2d2a78aSEmmanuel Vadot
893*b2d2a78aSEmmanuel Vadot		usbdp_phy0_orientation_switch: endpoint@0 {
894*b2d2a78aSEmmanuel Vadot			reg = <0>;
895*b2d2a78aSEmmanuel Vadot			remote-endpoint = <&usbc0_orientation_switch>;
896*b2d2a78aSEmmanuel Vadot		};
897*b2d2a78aSEmmanuel Vadot
898*b2d2a78aSEmmanuel Vadot		usbdp_phy0_dp_altmode_mux: endpoint@1 {
899*b2d2a78aSEmmanuel Vadot			reg = <1>;
900*b2d2a78aSEmmanuel Vadot			remote-endpoint = <&usbc0_dp_altmode_mux>;
901*b2d2a78aSEmmanuel Vadot		};
902*b2d2a78aSEmmanuel Vadot	};
903*b2d2a78aSEmmanuel Vadot};
904