xref: /linux/arch/arm64/boot/dts/rockchip/rk3588-jaguar.dts (revision d1b8b36a2cc5f4ef14774e37e09ebbe3bd702dbd)
1*d1b8b36aSHeiko Stuebner// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2*d1b8b36aSHeiko Stuebner/*
3*d1b8b36aSHeiko Stuebner * Copyright (c) 2023 Theobroma Systems Design und Consulting GmbH
4*d1b8b36aSHeiko Stuebner */
5*d1b8b36aSHeiko Stuebner
6*d1b8b36aSHeiko Stuebner/dts-v1/;
7*d1b8b36aSHeiko Stuebner#include <dt-bindings/gpio/gpio.h>
8*d1b8b36aSHeiko Stuebner#include <dt-bindings/input/input.h>
9*d1b8b36aSHeiko Stuebner#include <dt-bindings/leds/common.h>
10*d1b8b36aSHeiko Stuebner#include <dt-bindings/pinctrl/rockchip.h>
11*d1b8b36aSHeiko Stuebner#include <dt-bindings/usb/pd.h>
12*d1b8b36aSHeiko Stuebner#include "rk3588.dtsi"
13*d1b8b36aSHeiko Stuebner
14*d1b8b36aSHeiko Stuebner/ {
15*d1b8b36aSHeiko Stuebner	model = "Theobroma Systems RK3588-SBC Jaguar";
16*d1b8b36aSHeiko Stuebner	compatible = "tsd,rk3588-jaguar", "rockchip,rk3588";
17*d1b8b36aSHeiko Stuebner
18*d1b8b36aSHeiko Stuebner	adc-keys {
19*d1b8b36aSHeiko Stuebner		compatible = "adc-keys";
20*d1b8b36aSHeiko Stuebner		io-channels = <&saradc 0>;
21*d1b8b36aSHeiko Stuebner		io-channel-names = "buttons";
22*d1b8b36aSHeiko Stuebner		keyup-threshold-microvolt = <1800000>;
23*d1b8b36aSHeiko Stuebner		poll-interval = <100>;
24*d1b8b36aSHeiko Stuebner
25*d1b8b36aSHeiko Stuebner		/* Can be controlled through SW2 but also GPIO1 on CP2102 on P20 */
26*d1b8b36aSHeiko Stuebner		button-bios-disable {
27*d1b8b36aSHeiko Stuebner			label = "BIOS_DISABLE";
28*d1b8b36aSHeiko Stuebner			linux,code = <KEY_VENDOR>;
29*d1b8b36aSHeiko Stuebner			press-threshold-microvolt = <0>;
30*d1b8b36aSHeiko Stuebner		};
31*d1b8b36aSHeiko Stuebner	};
32*d1b8b36aSHeiko Stuebner
33*d1b8b36aSHeiko Stuebner	aliases {
34*d1b8b36aSHeiko Stuebner		ethernet0 = &gmac0;
35*d1b8b36aSHeiko Stuebner		mmc0 = &sdhci;
36*d1b8b36aSHeiko Stuebner		mmc1 = &sdmmc;
37*d1b8b36aSHeiko Stuebner		rtc0 = &rtc_twi;
38*d1b8b36aSHeiko Stuebner	};
39*d1b8b36aSHeiko Stuebner
40*d1b8b36aSHeiko Stuebner	chosen {
41*d1b8b36aSHeiko Stuebner		stdout-path = "serial2:115200n8";
42*d1b8b36aSHeiko Stuebner	};
43*d1b8b36aSHeiko Stuebner
44*d1b8b36aSHeiko Stuebner	/* DCIN is 12-24V but standard is 12V */
45*d1b8b36aSHeiko Stuebner	dc_12v: dc-12v-regulator {
46*d1b8b36aSHeiko Stuebner		compatible = "regulator-fixed";
47*d1b8b36aSHeiko Stuebner		regulator-name = "dc_12v";
48*d1b8b36aSHeiko Stuebner		regulator-always-on;
49*d1b8b36aSHeiko Stuebner		regulator-boot-on;
50*d1b8b36aSHeiko Stuebner		regulator-min-microvolt = <12000000>;
51*d1b8b36aSHeiko Stuebner		regulator-max-microvolt = <12000000>;
52*d1b8b36aSHeiko Stuebner	};
53*d1b8b36aSHeiko Stuebner
54*d1b8b36aSHeiko Stuebner	emmc_pwrseq: emmc-pwrseq {
55*d1b8b36aSHeiko Stuebner		compatible = "mmc-pwrseq-emmc";
56*d1b8b36aSHeiko Stuebner		pinctrl-0 = <&emmc_reset>;
57*d1b8b36aSHeiko Stuebner		pinctrl-names = "default";
58*d1b8b36aSHeiko Stuebner		reset-gpios = <&gpio2 RK_PA3 GPIO_ACTIVE_HIGH>;
59*d1b8b36aSHeiko Stuebner	};
60*d1b8b36aSHeiko Stuebner
61*d1b8b36aSHeiko Stuebner	leds {
62*d1b8b36aSHeiko Stuebner		compatible = "gpio-leds";
63*d1b8b36aSHeiko Stuebner		pinctrl-names = "default";
64*d1b8b36aSHeiko Stuebner		pinctrl-0 = <&led1_pin>;
65*d1b8b36aSHeiko Stuebner		status = "okay";
66*d1b8b36aSHeiko Stuebner
67*d1b8b36aSHeiko Stuebner		/* LED1 on PCB */
68*d1b8b36aSHeiko Stuebner		led-1 {
69*d1b8b36aSHeiko Stuebner			gpios = <&gpio1 RK_PD4 GPIO_ACTIVE_HIGH>;
70*d1b8b36aSHeiko Stuebner			function = LED_FUNCTION_HEARTBEAT;
71*d1b8b36aSHeiko Stuebner			linux,default-trigger = "heartbeat";
72*d1b8b36aSHeiko Stuebner			color = <LED_COLOR_ID_AMBER>;
73*d1b8b36aSHeiko Stuebner		};
74*d1b8b36aSHeiko Stuebner	};
75*d1b8b36aSHeiko Stuebner
76*d1b8b36aSHeiko Stuebner	pps {
77*d1b8b36aSHeiko Stuebner		compatible = "pps-gpio";
78*d1b8b36aSHeiko Stuebner		gpios = <&gpio0 RK_PD5 GPIO_ACTIVE_HIGH>;
79*d1b8b36aSHeiko Stuebner	};
80*d1b8b36aSHeiko Stuebner
81*d1b8b36aSHeiko Stuebner	vcc_1v1_nldo_s3: vcc-1v1-nldo-s3-regulator {
82*d1b8b36aSHeiko Stuebner		compatible = "regulator-fixed";
83*d1b8b36aSHeiko Stuebner		regulator-name = "vcc_1v1_nldo_s3";
84*d1b8b36aSHeiko Stuebner		regulator-always-on;
85*d1b8b36aSHeiko Stuebner		regulator-boot-on;
86*d1b8b36aSHeiko Stuebner		regulator-min-microvolt = <1100000>;
87*d1b8b36aSHeiko Stuebner		regulator-max-microvolt = <1100000>;
88*d1b8b36aSHeiko Stuebner		vin-supply = <&vcc5v0_sys>;
89*d1b8b36aSHeiko Stuebner	};
90*d1b8b36aSHeiko Stuebner
91*d1b8b36aSHeiko Stuebner	vcc_1v2_s3: vcc-1v2-s3-regulator {
92*d1b8b36aSHeiko Stuebner		compatible = "regulator-fixed";
93*d1b8b36aSHeiko Stuebner		regulator-name = "vcc_1v2_s3";
94*d1b8b36aSHeiko Stuebner		regulator-always-on;
95*d1b8b36aSHeiko Stuebner		regulator-boot-on;
96*d1b8b36aSHeiko Stuebner		regulator-min-microvolt = <1200000>;
97*d1b8b36aSHeiko Stuebner		regulator-max-microvolt = <1200000>;
98*d1b8b36aSHeiko Stuebner		vin-supply = <&vcc5v0_sys>;
99*d1b8b36aSHeiko Stuebner	};
100*d1b8b36aSHeiko Stuebner
101*d1b8b36aSHeiko Stuebner	/* Exposed on P14 and P15 */
102*d1b8b36aSHeiko Stuebner	vcc_2v8_s3: vcc-2v8-s3-regulator {
103*d1b8b36aSHeiko Stuebner		compatible = "regulator-fixed";
104*d1b8b36aSHeiko Stuebner		regulator-name = "vcc_2v8_s3";
105*d1b8b36aSHeiko Stuebner		regulator-always-on;
106*d1b8b36aSHeiko Stuebner		regulator-boot-on;
107*d1b8b36aSHeiko Stuebner		regulator-min-microvolt = <2800000>;
108*d1b8b36aSHeiko Stuebner		regulator-max-microvolt = <2800000>;
109*d1b8b36aSHeiko Stuebner		vin-supply = <&vcc_3v3_s3>;
110*d1b8b36aSHeiko Stuebner	};
111*d1b8b36aSHeiko Stuebner
112*d1b8b36aSHeiko Stuebner	vcc_5v0_usb_a: vcc-5v0-usb-a-regulator {
113*d1b8b36aSHeiko Stuebner		compatible = "regulator-fixed";
114*d1b8b36aSHeiko Stuebner		regulator-name = "usb_a_vcc";
115*d1b8b36aSHeiko Stuebner		regulator-min-microvolt = <5000000>;
116*d1b8b36aSHeiko Stuebner		regulator-max-microvolt = <5000000>;
117*d1b8b36aSHeiko Stuebner		vin-supply = <&vcc5v0_sys>;
118*d1b8b36aSHeiko Stuebner		gpio = <&gpio1 RK_PB4 GPIO_ACTIVE_HIGH>;
119*d1b8b36aSHeiko Stuebner		enable-active-high;
120*d1b8b36aSHeiko Stuebner	};
121*d1b8b36aSHeiko Stuebner
122*d1b8b36aSHeiko Stuebner	vcc_5v0_usb_c1: vcc-5v0-usb-c1-regulator {
123*d1b8b36aSHeiko Stuebner		compatible = "regulator-fixed";
124*d1b8b36aSHeiko Stuebner		regulator-name = "5v_usbc1";
125*d1b8b36aSHeiko Stuebner		regulator-min-microvolt = <5000000>;
126*d1b8b36aSHeiko Stuebner		regulator-max-microvolt = <5000000>;
127*d1b8b36aSHeiko Stuebner		vin-supply = <&vcc5v0_usb>;
128*d1b8b36aSHeiko Stuebner		gpio = <&gpio4 RK_PB5 GPIO_ACTIVE_HIGH>;
129*d1b8b36aSHeiko Stuebner		enable-active-high;
130*d1b8b36aSHeiko Stuebner	};
131*d1b8b36aSHeiko Stuebner
132*d1b8b36aSHeiko Stuebner	vcc_5v0_usb_c2: vcc-5v0-usb-c2-regulator {
133*d1b8b36aSHeiko Stuebner		compatible = "regulator-fixed";
134*d1b8b36aSHeiko Stuebner		regulator-name = "5v_usbc2";
135*d1b8b36aSHeiko Stuebner		regulator-min-microvolt = <5000000>;
136*d1b8b36aSHeiko Stuebner		regulator-max-microvolt = <5000000>;
137*d1b8b36aSHeiko Stuebner		vin-supply = <&vcc5v0_usb>;
138*d1b8b36aSHeiko Stuebner		gpio = <&gpio4 RK_PB6 GPIO_ACTIVE_HIGH>;
139*d1b8b36aSHeiko Stuebner		enable-active-high;
140*d1b8b36aSHeiko Stuebner	};
141*d1b8b36aSHeiko Stuebner
142*d1b8b36aSHeiko Stuebner	vcc3v3_mdot2: vcc3v3-mdot2-regulator {
143*d1b8b36aSHeiko Stuebner		compatible = "regulator-fixed";
144*d1b8b36aSHeiko Stuebner		regulator-name = "vcc3v3_mdot2";
145*d1b8b36aSHeiko Stuebner		regulator-always-on;
146*d1b8b36aSHeiko Stuebner		regulator-boot-on;
147*d1b8b36aSHeiko Stuebner		regulator-min-microvolt = <3300000>;
148*d1b8b36aSHeiko Stuebner		regulator-max-microvolt = <3300000>;
149*d1b8b36aSHeiko Stuebner		vin-supply = <&dc_12v>;
150*d1b8b36aSHeiko Stuebner	};
151*d1b8b36aSHeiko Stuebner
152*d1b8b36aSHeiko Stuebner	vcc5v0_sys: vcc5v0-sys-regulator {
153*d1b8b36aSHeiko Stuebner		compatible = "regulator-fixed";
154*d1b8b36aSHeiko Stuebner		regulator-name = "vcc5v0_sys";
155*d1b8b36aSHeiko Stuebner		regulator-always-on;
156*d1b8b36aSHeiko Stuebner		regulator-boot-on;
157*d1b8b36aSHeiko Stuebner		regulator-min-microvolt = <5000000>;
158*d1b8b36aSHeiko Stuebner		regulator-max-microvolt = <5000000>;
159*d1b8b36aSHeiko Stuebner		vin-supply = <&dc_12v>;
160*d1b8b36aSHeiko Stuebner	};
161*d1b8b36aSHeiko Stuebner
162*d1b8b36aSHeiko Stuebner	vcc5v0_usb: vcc5v0-usb-regulator {
163*d1b8b36aSHeiko Stuebner		compatible = "regulator-fixed";
164*d1b8b36aSHeiko Stuebner		regulator-name = "vcc5v0_usb";
165*d1b8b36aSHeiko Stuebner		regulator-always-on;
166*d1b8b36aSHeiko Stuebner		regulator-boot-on;
167*d1b8b36aSHeiko Stuebner		regulator-min-microvolt = <5000000>;
168*d1b8b36aSHeiko Stuebner		regulator-max-microvolt = <5000000>;
169*d1b8b36aSHeiko Stuebner		vin-supply = <&vcc5v0_sys>;
170*d1b8b36aSHeiko Stuebner	};
171*d1b8b36aSHeiko Stuebner};
172*d1b8b36aSHeiko Stuebner
173*d1b8b36aSHeiko Stuebner&combphy1_ps {
174*d1b8b36aSHeiko Stuebner	status = "okay";
175*d1b8b36aSHeiko Stuebner};
176*d1b8b36aSHeiko Stuebner
177*d1b8b36aSHeiko Stuebner&cpu_b0 {
178*d1b8b36aSHeiko Stuebner	cpu-supply = <&vdd_cpu_big0_s0>;
179*d1b8b36aSHeiko Stuebner};
180*d1b8b36aSHeiko Stuebner
181*d1b8b36aSHeiko Stuebner&cpu_b1 {
182*d1b8b36aSHeiko Stuebner	cpu-supply = <&vdd_cpu_big0_s0>;
183*d1b8b36aSHeiko Stuebner};
184*d1b8b36aSHeiko Stuebner
185*d1b8b36aSHeiko Stuebner&cpu_b2 {
186*d1b8b36aSHeiko Stuebner	cpu-supply = <&vdd_cpu_big1_s0>;
187*d1b8b36aSHeiko Stuebner};
188*d1b8b36aSHeiko Stuebner
189*d1b8b36aSHeiko Stuebner&cpu_b3 {
190*d1b8b36aSHeiko Stuebner	cpu-supply = <&vdd_cpu_big1_s0>;
191*d1b8b36aSHeiko Stuebner};
192*d1b8b36aSHeiko Stuebner
193*d1b8b36aSHeiko Stuebner&cpu_l0 {
194*d1b8b36aSHeiko Stuebner	cpu-supply = <&vdd_cpu_lit_s0>;
195*d1b8b36aSHeiko Stuebner};
196*d1b8b36aSHeiko Stuebner
197*d1b8b36aSHeiko Stuebner&cpu_l1 {
198*d1b8b36aSHeiko Stuebner	cpu-supply = <&vdd_cpu_lit_s0>;
199*d1b8b36aSHeiko Stuebner};
200*d1b8b36aSHeiko Stuebner
201*d1b8b36aSHeiko Stuebner&cpu_l2 {
202*d1b8b36aSHeiko Stuebner	cpu-supply = <&vdd_cpu_lit_s0>;
203*d1b8b36aSHeiko Stuebner};
204*d1b8b36aSHeiko Stuebner
205*d1b8b36aSHeiko Stuebner&cpu_l3 {
206*d1b8b36aSHeiko Stuebner	cpu-supply = <&vdd_cpu_lit_s0>;
207*d1b8b36aSHeiko Stuebner};
208*d1b8b36aSHeiko Stuebner
209*d1b8b36aSHeiko Stuebner&gmac0 {
210*d1b8b36aSHeiko Stuebner	clock_in_out = "output";
211*d1b8b36aSHeiko Stuebner	phy-handle = <&rgmii_phy>;
212*d1b8b36aSHeiko Stuebner	phy-mode = "rgmii";
213*d1b8b36aSHeiko Stuebner	phy-supply = <&vcc_1v2_s3>;
214*d1b8b36aSHeiko Stuebner	pinctrl-names = "default";
215*d1b8b36aSHeiko Stuebner	pinctrl-0 = <&gmac0_miim
216*d1b8b36aSHeiko Stuebner		     &gmac0_rx_bus2
217*d1b8b36aSHeiko Stuebner		     &gmac0_tx_bus2
218*d1b8b36aSHeiko Stuebner		     &gmac0_rgmii_clk
219*d1b8b36aSHeiko Stuebner		     &gmac0_rgmii_bus
220*d1b8b36aSHeiko Stuebner		     &eth0_pins
221*d1b8b36aSHeiko Stuebner		     &eth_reset>;
222*d1b8b36aSHeiko Stuebner	tx_delay = <0x10>;
223*d1b8b36aSHeiko Stuebner	rx_delay = <0x10>;
224*d1b8b36aSHeiko Stuebner	snps,reset-gpio = <&gpio4 RK_PC3 GPIO_ACTIVE_LOW>;
225*d1b8b36aSHeiko Stuebner	snps,reset-active-low;
226*d1b8b36aSHeiko Stuebner	snps,reset-delays-us = <0 10000 100000>;
227*d1b8b36aSHeiko Stuebner
228*d1b8b36aSHeiko Stuebner	status = "okay";
229*d1b8b36aSHeiko Stuebner};
230*d1b8b36aSHeiko Stuebner
231*d1b8b36aSHeiko Stuebner&gpio1 {
232*d1b8b36aSHeiko Stuebner	mdot2e-w-disable1-n-hog {
233*d1b8b36aSHeiko Stuebner		gpios = <RK_PB1 GPIO_ACTIVE_LOW>;
234*d1b8b36aSHeiko Stuebner		output-low;
235*d1b8b36aSHeiko Stuebner		line-name = "m.2 E-key W_DISABLE1#";
236*d1b8b36aSHeiko Stuebner		gpio-hog;
237*d1b8b36aSHeiko Stuebner	};
238*d1b8b36aSHeiko Stuebner};
239*d1b8b36aSHeiko Stuebner
240*d1b8b36aSHeiko Stuebner&gpio4 {
241*d1b8b36aSHeiko Stuebner	mdot2e-w-disable2-n-hog {
242*d1b8b36aSHeiko Stuebner		gpios = <RK_PC1 GPIO_ACTIVE_LOW>;
243*d1b8b36aSHeiko Stuebner		output-low;
244*d1b8b36aSHeiko Stuebner		line-name = "m.2 E-key W_DISABLE2#";
245*d1b8b36aSHeiko Stuebner		gpio-hog;
246*d1b8b36aSHeiko Stuebner	};
247*d1b8b36aSHeiko Stuebner};
248*d1b8b36aSHeiko Stuebner
249*d1b8b36aSHeiko Stuebner&i2c0 {
250*d1b8b36aSHeiko Stuebner	pinctrl-0 = <&i2c0m2_xfer>;
251*d1b8b36aSHeiko Stuebner	status = "okay";
252*d1b8b36aSHeiko Stuebner
253*d1b8b36aSHeiko Stuebner	fan@18 {
254*d1b8b36aSHeiko Stuebner		compatible = "ti,amc6821";
255*d1b8b36aSHeiko Stuebner		reg = <0x18>;
256*d1b8b36aSHeiko Stuebner	};
257*d1b8b36aSHeiko Stuebner
258*d1b8b36aSHeiko Stuebner	vdd_npu_s0: regulator@42 {
259*d1b8b36aSHeiko Stuebner		compatible = "rockchip,rk8602";
260*d1b8b36aSHeiko Stuebner		reg = <0x42>;
261*d1b8b36aSHeiko Stuebner		fcs,suspend-voltage-selector = <1>;
262*d1b8b36aSHeiko Stuebner		regulator-name = "vdd_npu_s0";
263*d1b8b36aSHeiko Stuebner		regulator-always-on;
264*d1b8b36aSHeiko Stuebner		regulator-boot-on;
265*d1b8b36aSHeiko Stuebner		regulator-min-microvolt = <550000>;
266*d1b8b36aSHeiko Stuebner		regulator-max-microvolt = <950000>;
267*d1b8b36aSHeiko Stuebner		regulator-ramp-delay = <2300>;
268*d1b8b36aSHeiko Stuebner		vin-supply = <&vcc5v0_sys>;
269*d1b8b36aSHeiko Stuebner
270*d1b8b36aSHeiko Stuebner		regulator-state-mem {
271*d1b8b36aSHeiko Stuebner			regulator-off-in-suspend;
272*d1b8b36aSHeiko Stuebner		};
273*d1b8b36aSHeiko Stuebner	};
274*d1b8b36aSHeiko Stuebner
275*d1b8b36aSHeiko Stuebner	vdd_cpu_big1_s0: regulator@43 {
276*d1b8b36aSHeiko Stuebner		compatible = "rockchip,rk8603", "rockchip,rk8602";
277*d1b8b36aSHeiko Stuebner		reg = <0x43>;
278*d1b8b36aSHeiko Stuebner		fcs,suspend-voltage-selector = <1>;
279*d1b8b36aSHeiko Stuebner		regulator-name = "vdd_cpu_big1_s0";
280*d1b8b36aSHeiko Stuebner		regulator-always-on;
281*d1b8b36aSHeiko Stuebner		regulator-boot-on;
282*d1b8b36aSHeiko Stuebner		regulator-min-microvolt = <550000>;
283*d1b8b36aSHeiko Stuebner		regulator-max-microvolt = <1050000>;
284*d1b8b36aSHeiko Stuebner		regulator-ramp-delay = <2300>;
285*d1b8b36aSHeiko Stuebner		vin-supply = <&vcc5v0_sys>;
286*d1b8b36aSHeiko Stuebner
287*d1b8b36aSHeiko Stuebner		regulator-state-mem {
288*d1b8b36aSHeiko Stuebner			regulator-off-in-suspend;
289*d1b8b36aSHeiko Stuebner		};
290*d1b8b36aSHeiko Stuebner	};
291*d1b8b36aSHeiko Stuebner
292*d1b8b36aSHeiko Stuebner	rtc_twi: rtc@6f {
293*d1b8b36aSHeiko Stuebner		compatible = "isil,isl1208";
294*d1b8b36aSHeiko Stuebner		reg = <0x6f>;
295*d1b8b36aSHeiko Stuebner	};
296*d1b8b36aSHeiko Stuebner};
297*d1b8b36aSHeiko Stuebner
298*d1b8b36aSHeiko Stuebner&i2c1 {
299*d1b8b36aSHeiko Stuebner	pinctrl-0 = <&i2c1m4_xfer>;
300*d1b8b36aSHeiko Stuebner};
301*d1b8b36aSHeiko Stuebner
302*d1b8b36aSHeiko Stuebner&i2c6 {
303*d1b8b36aSHeiko Stuebner	pinctrl-0 = <&i2c6m4_xfer>;
304*d1b8b36aSHeiko Stuebner};
305*d1b8b36aSHeiko Stuebner
306*d1b8b36aSHeiko Stuebner&i2c7 {
307*d1b8b36aSHeiko Stuebner	status = "okay";
308*d1b8b36aSHeiko Stuebner
309*d1b8b36aSHeiko Stuebner	/* SE050 Secure Element at 0x48; GPIO1_A4 for enable pin */
310*d1b8b36aSHeiko Stuebner
311*d1b8b36aSHeiko Stuebner	/* Also on 0x55 */
312*d1b8b36aSHeiko Stuebner	eeprom@54 {
313*d1b8b36aSHeiko Stuebner		compatible = "st,24c04", "atmel,24c04";
314*d1b8b36aSHeiko Stuebner		reg = <0x54>;
315*d1b8b36aSHeiko Stuebner		pagesize = <16>;
316*d1b8b36aSHeiko Stuebner		vcc-supply = <&vcc_3v3_s3>;
317*d1b8b36aSHeiko Stuebner	};
318*d1b8b36aSHeiko Stuebner};
319*d1b8b36aSHeiko Stuebner
320*d1b8b36aSHeiko Stuebner&i2c8 {
321*d1b8b36aSHeiko Stuebner	pinctrl-0 = <&i2c8m2_xfer>;
322*d1b8b36aSHeiko Stuebner	status = "okay";
323*d1b8b36aSHeiko Stuebner
324*d1b8b36aSHeiko Stuebner	vdd_cpu_big0_s0: regulator@42 {
325*d1b8b36aSHeiko Stuebner		compatible = "rockchip,rk8602";
326*d1b8b36aSHeiko Stuebner		reg = <0x42>;
327*d1b8b36aSHeiko Stuebner		fcs,suspend-voltage-selector = <1>;
328*d1b8b36aSHeiko Stuebner		regulator-name = "vdd_cpu_big0_s0";
329*d1b8b36aSHeiko Stuebner		regulator-always-on;
330*d1b8b36aSHeiko Stuebner		regulator-boot-on;
331*d1b8b36aSHeiko Stuebner		regulator-min-microvolt = <550000>;
332*d1b8b36aSHeiko Stuebner		regulator-max-microvolt = <1050000>;
333*d1b8b36aSHeiko Stuebner		regulator-ramp-delay = <2300>;
334*d1b8b36aSHeiko Stuebner		vin-supply = <&vcc5v0_sys>;
335*d1b8b36aSHeiko Stuebner
336*d1b8b36aSHeiko Stuebner		regulator-state-mem {
337*d1b8b36aSHeiko Stuebner			regulator-off-in-suspend;
338*d1b8b36aSHeiko Stuebner		};
339*d1b8b36aSHeiko Stuebner	};
340*d1b8b36aSHeiko Stuebner};
341*d1b8b36aSHeiko Stuebner
342*d1b8b36aSHeiko Stuebner&mdio0 {
343*d1b8b36aSHeiko Stuebner	rgmii_phy: ethernet-phy@6 {
344*d1b8b36aSHeiko Stuebner		/* KSZ9031 or KSZ9131 */
345*d1b8b36aSHeiko Stuebner		compatible = "ethernet-phy-ieee802.3-c22";
346*d1b8b36aSHeiko Stuebner		reg = <0x6>;
347*d1b8b36aSHeiko Stuebner		clocks = <&cru REFCLKO25M_ETH0_OUT>;
348*d1b8b36aSHeiko Stuebner	};
349*d1b8b36aSHeiko Stuebner};
350*d1b8b36aSHeiko Stuebner
351*d1b8b36aSHeiko Stuebner&pcie2x1l0 {
352*d1b8b36aSHeiko Stuebner	reset-gpios = <&gpio4 RK_PB3 GPIO_ACTIVE_HIGH>; /* WIFI_PERST0# */
353*d1b8b36aSHeiko Stuebner	vpcie3v3-supply = <&vcc3v3_mdot2>;
354*d1b8b36aSHeiko Stuebner	status = "okay";
355*d1b8b36aSHeiko Stuebner};
356*d1b8b36aSHeiko Stuebner
357*d1b8b36aSHeiko Stuebner&pinctrl {
358*d1b8b36aSHeiko Stuebner	emmc {
359*d1b8b36aSHeiko Stuebner		emmc_reset: emmc-reset {
360*d1b8b36aSHeiko Stuebner			rockchip,pins = <2 RK_PA3 RK_FUNC_GPIO &pcfg_pull_none>;
361*d1b8b36aSHeiko Stuebner		};
362*d1b8b36aSHeiko Stuebner	};
363*d1b8b36aSHeiko Stuebner
364*d1b8b36aSHeiko Stuebner	ethernet {
365*d1b8b36aSHeiko Stuebner		eth_reset: eth-reset {
366*d1b8b36aSHeiko Stuebner			rockchip,pins = <4 RK_PC3 RK_FUNC_GPIO &pcfg_pull_none>;
367*d1b8b36aSHeiko Stuebner		};
368*d1b8b36aSHeiko Stuebner	};
369*d1b8b36aSHeiko Stuebner
370*d1b8b36aSHeiko Stuebner	leds {
371*d1b8b36aSHeiko Stuebner		led1_pin: led1-pin {
372*d1b8b36aSHeiko Stuebner			rockchip,pins = <1 RK_PD4 RK_FUNC_GPIO &pcfg_pull_none>;
373*d1b8b36aSHeiko Stuebner		};
374*d1b8b36aSHeiko Stuebner	};
375*d1b8b36aSHeiko Stuebner};
376*d1b8b36aSHeiko Stuebner
377*d1b8b36aSHeiko Stuebner&saradc {
378*d1b8b36aSHeiko Stuebner	vref-supply = <&vcc_1v8_s0>;
379*d1b8b36aSHeiko Stuebner	status = "okay";
380*d1b8b36aSHeiko Stuebner};
381*d1b8b36aSHeiko Stuebner
382*d1b8b36aSHeiko Stuebner&sdhci {
383*d1b8b36aSHeiko Stuebner	bus-width = <8>;
384*d1b8b36aSHeiko Stuebner	cap-mmc-highspeed;
385*d1b8b36aSHeiko Stuebner	mmc-ddr-1_8v;
386*d1b8b36aSHeiko Stuebner	mmc-hs200-1_8v;
387*d1b8b36aSHeiko Stuebner	mmc-hs400-1_8v;
388*d1b8b36aSHeiko Stuebner	mmc-hs400-enhanced-strobe;
389*d1b8b36aSHeiko Stuebner	mmc-pwrseq = <&emmc_pwrseq>;
390*d1b8b36aSHeiko Stuebner	no-sdio;
391*d1b8b36aSHeiko Stuebner	no-sd;
392*d1b8b36aSHeiko Stuebner	non-removable;
393*d1b8b36aSHeiko Stuebner	pinctrl-names = "default";
394*d1b8b36aSHeiko Stuebner	pinctrl-0 = <&emmc_bus8 &emmc_cmd &emmc_clk &emmc_data_strobe>;
395*d1b8b36aSHeiko Stuebner	supports-cqe;
396*d1b8b36aSHeiko Stuebner	vmmc-supply = <&vcc_3v3_s3>;
397*d1b8b36aSHeiko Stuebner	vqmmc-supply = <&vcc_1v8_s3>;
398*d1b8b36aSHeiko Stuebner	status = "okay";
399*d1b8b36aSHeiko Stuebner};
400*d1b8b36aSHeiko Stuebner
401*d1b8b36aSHeiko Stuebner&sdmmc {
402*d1b8b36aSHeiko Stuebner	broken-cd;
403*d1b8b36aSHeiko Stuebner	bus-width = <4>;
404*d1b8b36aSHeiko Stuebner	cap-sd-highspeed;
405*d1b8b36aSHeiko Stuebner	disable-wp;
406*d1b8b36aSHeiko Stuebner	max-frequency = <150000000>;
407*d1b8b36aSHeiko Stuebner	pinctrl-names = "default";
408*d1b8b36aSHeiko Stuebner	pinctrl-0 = <&sdmmc_bus4 &sdmmc_cmd &sdmmc_clk>;
409*d1b8b36aSHeiko Stuebner	sd-uhs-sdr12;
410*d1b8b36aSHeiko Stuebner	sd-uhs-sdr25;
411*d1b8b36aSHeiko Stuebner	sd-uhs-sdr50;
412*d1b8b36aSHeiko Stuebner	sd-uhs-ddr50;
413*d1b8b36aSHeiko Stuebner	sd-uhs-sdr104;
414*d1b8b36aSHeiko Stuebner	vmmc-supply = <&vcc_3v3_s3>;
415*d1b8b36aSHeiko Stuebner	vqmmc-supply = <&vccio_sd_s0>;
416*d1b8b36aSHeiko Stuebner	status = "okay";
417*d1b8b36aSHeiko Stuebner};
418*d1b8b36aSHeiko Stuebner
419*d1b8b36aSHeiko Stuebner&spi2 {
420*d1b8b36aSHeiko Stuebner	assigned-clocks = <&cru CLK_SPI2>;
421*d1b8b36aSHeiko Stuebner	assigned-clock-rates = <200000000>;
422*d1b8b36aSHeiko Stuebner	num-cs = <1>;
423*d1b8b36aSHeiko Stuebner	pinctrl-names = "default";
424*d1b8b36aSHeiko Stuebner	pinctrl-0 = <&spi2m2_cs0 &spi2m2_pins>;
425*d1b8b36aSHeiko Stuebner	status = "okay";
426*d1b8b36aSHeiko Stuebner
427*d1b8b36aSHeiko Stuebner	pmic@0 {
428*d1b8b36aSHeiko Stuebner		compatible = "rockchip,rk806";
429*d1b8b36aSHeiko Stuebner		reg = <0x0>;
430*d1b8b36aSHeiko Stuebner		interrupt-parent = <&gpio0>;
431*d1b8b36aSHeiko Stuebner		interrupts = <7 IRQ_TYPE_LEVEL_LOW>;
432*d1b8b36aSHeiko Stuebner		gpio-controller;
433*d1b8b36aSHeiko Stuebner		#gpio-cells = <2>;
434*d1b8b36aSHeiko Stuebner		pinctrl-names = "default";
435*d1b8b36aSHeiko Stuebner		pinctrl-0 = <&pmic_pins>, <&rk806_dvs1_null>,
436*d1b8b36aSHeiko Stuebner			    <&rk806_dvs2_null>, <&rk806_dvs3_null>;
437*d1b8b36aSHeiko Stuebner		spi-max-frequency = <1000000>;
438*d1b8b36aSHeiko Stuebner		system-power-controller;
439*d1b8b36aSHeiko Stuebner		vcc1-supply = <&vcc5v0_sys>;
440*d1b8b36aSHeiko Stuebner		vcc2-supply = <&vcc5v0_sys>;
441*d1b8b36aSHeiko Stuebner		vcc3-supply = <&vcc5v0_sys>;
442*d1b8b36aSHeiko Stuebner		vcc4-supply = <&vcc5v0_sys>;
443*d1b8b36aSHeiko Stuebner		vcc5-supply = <&vcc5v0_sys>;
444*d1b8b36aSHeiko Stuebner		vcc6-supply = <&vcc5v0_sys>;
445*d1b8b36aSHeiko Stuebner		vcc7-supply = <&vcc5v0_sys>;
446*d1b8b36aSHeiko Stuebner		vcc8-supply = <&vcc5v0_sys>;
447*d1b8b36aSHeiko Stuebner		vcc9-supply = <&vcc5v0_sys>;
448*d1b8b36aSHeiko Stuebner		vcc10-supply = <&vcc5v0_sys>;
449*d1b8b36aSHeiko Stuebner		vcc11-supply = <&vcc_2v0_pldo_s3>;
450*d1b8b36aSHeiko Stuebner		vcc12-supply = <&vcc5v0_sys>;
451*d1b8b36aSHeiko Stuebner		vcc13-supply = <&vcc_1v1_nldo_s3>;
452*d1b8b36aSHeiko Stuebner		vcc14-supply = <&vcc_1v1_nldo_s3>;
453*d1b8b36aSHeiko Stuebner		vcca-supply = <&vcc5v0_sys>;
454*d1b8b36aSHeiko Stuebner
455*d1b8b36aSHeiko Stuebner		rk806_dvs1_null: dvs1-null-pins {
456*d1b8b36aSHeiko Stuebner			pins = "gpio_pwrctrl2";
457*d1b8b36aSHeiko Stuebner			function = "pin_fun0";
458*d1b8b36aSHeiko Stuebner		};
459*d1b8b36aSHeiko Stuebner
460*d1b8b36aSHeiko Stuebner		rk806_dvs2_null: dvs2-null-pins {
461*d1b8b36aSHeiko Stuebner			pins = "gpio_pwrctrl2";
462*d1b8b36aSHeiko Stuebner			function = "pin_fun0";
463*d1b8b36aSHeiko Stuebner		};
464*d1b8b36aSHeiko Stuebner
465*d1b8b36aSHeiko Stuebner		rk806_dvs3_null: dvs3-null-pins {
466*d1b8b36aSHeiko Stuebner			pins = "gpio_pwrctrl3";
467*d1b8b36aSHeiko Stuebner			function = "pin_fun0";
468*d1b8b36aSHeiko Stuebner		};
469*d1b8b36aSHeiko Stuebner
470*d1b8b36aSHeiko Stuebner		regulators {
471*d1b8b36aSHeiko Stuebner			vdd_gpu_s0: dcdc-reg1 {
472*d1b8b36aSHeiko Stuebner				regulator-boot-on;
473*d1b8b36aSHeiko Stuebner				regulator-min-microvolt = <550000>;
474*d1b8b36aSHeiko Stuebner				regulator-max-microvolt = <950000>;
475*d1b8b36aSHeiko Stuebner				regulator-ramp-delay = <12500>;
476*d1b8b36aSHeiko Stuebner				regulator-name = "vdd_gpu_s0";
477*d1b8b36aSHeiko Stuebner				regulator-enable-ramp-delay = <400>;
478*d1b8b36aSHeiko Stuebner
479*d1b8b36aSHeiko Stuebner				regulator-state-mem {
480*d1b8b36aSHeiko Stuebner					regulator-off-in-suspend;
481*d1b8b36aSHeiko Stuebner				};
482*d1b8b36aSHeiko Stuebner			};
483*d1b8b36aSHeiko Stuebner
484*d1b8b36aSHeiko Stuebner			vdd_cpu_lit_s0: dcdc-reg2 {
485*d1b8b36aSHeiko Stuebner				regulator-name = "vdd_cpu_lit_s0";
486*d1b8b36aSHeiko Stuebner				regulator-always-on;
487*d1b8b36aSHeiko Stuebner				regulator-boot-on;
488*d1b8b36aSHeiko Stuebner				regulator-min-microvolt = <550000>;
489*d1b8b36aSHeiko Stuebner				regulator-max-microvolt = <950000>;
490*d1b8b36aSHeiko Stuebner				regulator-ramp-delay = <12500>;
491*d1b8b36aSHeiko Stuebner
492*d1b8b36aSHeiko Stuebner				regulator-state-mem {
493*d1b8b36aSHeiko Stuebner					regulator-off-in-suspend;
494*d1b8b36aSHeiko Stuebner				};
495*d1b8b36aSHeiko Stuebner			};
496*d1b8b36aSHeiko Stuebner
497*d1b8b36aSHeiko Stuebner			vdd_log_s0: dcdc-reg3 {
498*d1b8b36aSHeiko Stuebner				regulator-name = "vdd_log_s0";
499*d1b8b36aSHeiko Stuebner				regulator-always-on;
500*d1b8b36aSHeiko Stuebner				regulator-boot-on;
501*d1b8b36aSHeiko Stuebner				regulator-min-microvolt = <675000>;
502*d1b8b36aSHeiko Stuebner				regulator-max-microvolt = <750000>;
503*d1b8b36aSHeiko Stuebner				regulator-ramp-delay = <12500>;
504*d1b8b36aSHeiko Stuebner
505*d1b8b36aSHeiko Stuebner				regulator-state-mem {
506*d1b8b36aSHeiko Stuebner					regulator-off-in-suspend;
507*d1b8b36aSHeiko Stuebner					regulator-suspend-microvolt = <750000>;
508*d1b8b36aSHeiko Stuebner				};
509*d1b8b36aSHeiko Stuebner			};
510*d1b8b36aSHeiko Stuebner
511*d1b8b36aSHeiko Stuebner			vdd_vdenc_s0: dcdc-reg4 {
512*d1b8b36aSHeiko Stuebner				regulator-name = "vdd_vdenc_s0";
513*d1b8b36aSHeiko Stuebner				regulator-always-on;
514*d1b8b36aSHeiko Stuebner				regulator-boot-on;
515*d1b8b36aSHeiko Stuebner				regulator-min-microvolt = <550000>;
516*d1b8b36aSHeiko Stuebner				regulator-max-microvolt = <950000>;
517*d1b8b36aSHeiko Stuebner				regulator-ramp-delay = <12500>;
518*d1b8b36aSHeiko Stuebner
519*d1b8b36aSHeiko Stuebner				regulator-state-mem {
520*d1b8b36aSHeiko Stuebner					regulator-off-in-suspend;
521*d1b8b36aSHeiko Stuebner				};
522*d1b8b36aSHeiko Stuebner			};
523*d1b8b36aSHeiko Stuebner
524*d1b8b36aSHeiko Stuebner			vdd_ddr_s0: dcdc-reg5 {
525*d1b8b36aSHeiko Stuebner				regulator-name = "vdd_ddr_s0";
526*d1b8b36aSHeiko Stuebner				regulator-always-on;
527*d1b8b36aSHeiko Stuebner				regulator-boot-on;
528*d1b8b36aSHeiko Stuebner				regulator-min-microvolt = <675000>;
529*d1b8b36aSHeiko Stuebner				regulator-max-microvolt = <900000>;
530*d1b8b36aSHeiko Stuebner				regulator-ramp-delay = <12500>;
531*d1b8b36aSHeiko Stuebner
532*d1b8b36aSHeiko Stuebner				regulator-state-mem {
533*d1b8b36aSHeiko Stuebner					regulator-off-in-suspend;
534*d1b8b36aSHeiko Stuebner					regulator-suspend-microvolt = <850000>;
535*d1b8b36aSHeiko Stuebner				};
536*d1b8b36aSHeiko Stuebner			};
537*d1b8b36aSHeiko Stuebner
538*d1b8b36aSHeiko Stuebner			vdd2_ddr_s3: dcdc-reg6 {
539*d1b8b36aSHeiko Stuebner				regulator-name = "vdd2_ddr_s3";
540*d1b8b36aSHeiko Stuebner				regulator-always-on;
541*d1b8b36aSHeiko Stuebner				regulator-boot-on;
542*d1b8b36aSHeiko Stuebner
543*d1b8b36aSHeiko Stuebner				regulator-state-mem {
544*d1b8b36aSHeiko Stuebner					regulator-on-in-suspend;
545*d1b8b36aSHeiko Stuebner				};
546*d1b8b36aSHeiko Stuebner			};
547*d1b8b36aSHeiko Stuebner
548*d1b8b36aSHeiko Stuebner			vcc_2v0_pldo_s3: dcdc-reg7 {
549*d1b8b36aSHeiko Stuebner				regulator-name = "vdd_2v0_pldo_s3";
550*d1b8b36aSHeiko Stuebner				regulator-always-on;
551*d1b8b36aSHeiko Stuebner				regulator-boot-on;
552*d1b8b36aSHeiko Stuebner				regulator-min-microvolt = <2000000>;
553*d1b8b36aSHeiko Stuebner				regulator-max-microvolt = <2000000>;
554*d1b8b36aSHeiko Stuebner				regulator-ramp-delay = <12500>;
555*d1b8b36aSHeiko Stuebner
556*d1b8b36aSHeiko Stuebner				regulator-state-mem {
557*d1b8b36aSHeiko Stuebner					regulator-on-in-suspend;
558*d1b8b36aSHeiko Stuebner					regulator-suspend-microvolt = <2000000>;
559*d1b8b36aSHeiko Stuebner				};
560*d1b8b36aSHeiko Stuebner			};
561*d1b8b36aSHeiko Stuebner
562*d1b8b36aSHeiko Stuebner			vcc_3v3_s3: dcdc-reg8 {
563*d1b8b36aSHeiko Stuebner				regulator-name = "vcc_3v3_s3";
564*d1b8b36aSHeiko Stuebner				regulator-always-on;
565*d1b8b36aSHeiko Stuebner				regulator-boot-on;
566*d1b8b36aSHeiko Stuebner				regulator-min-microvolt = <3300000>;
567*d1b8b36aSHeiko Stuebner				regulator-max-microvolt = <3300000>;
568*d1b8b36aSHeiko Stuebner
569*d1b8b36aSHeiko Stuebner				regulator-state-mem {
570*d1b8b36aSHeiko Stuebner					regulator-on-in-suspend;
571*d1b8b36aSHeiko Stuebner					regulator-suspend-microvolt = <3300000>;
572*d1b8b36aSHeiko Stuebner				};
573*d1b8b36aSHeiko Stuebner			};
574*d1b8b36aSHeiko Stuebner
575*d1b8b36aSHeiko Stuebner			vddq_ddr_s0: dcdc-reg9 {
576*d1b8b36aSHeiko Stuebner				regulator-name = "vddq_ddr_s0";
577*d1b8b36aSHeiko Stuebner				regulator-always-on;
578*d1b8b36aSHeiko Stuebner				regulator-boot-on;
579*d1b8b36aSHeiko Stuebner
580*d1b8b36aSHeiko Stuebner				regulator-state-mem {
581*d1b8b36aSHeiko Stuebner					regulator-off-in-suspend;
582*d1b8b36aSHeiko Stuebner				};
583*d1b8b36aSHeiko Stuebner			};
584*d1b8b36aSHeiko Stuebner
585*d1b8b36aSHeiko Stuebner			vcc_1v8_s3: dcdc-reg10 {
586*d1b8b36aSHeiko Stuebner				regulator-name = "vcc_1v8_s3";
587*d1b8b36aSHeiko Stuebner				regulator-always-on;
588*d1b8b36aSHeiko Stuebner				regulator-boot-on;
589*d1b8b36aSHeiko Stuebner				regulator-min-microvolt = <1800000>;
590*d1b8b36aSHeiko Stuebner				regulator-max-microvolt = <1800000>;
591*d1b8b36aSHeiko Stuebner
592*d1b8b36aSHeiko Stuebner				regulator-state-mem {
593*d1b8b36aSHeiko Stuebner					regulator-on-in-suspend;
594*d1b8b36aSHeiko Stuebner					regulator-suspend-microvolt = <1800000>;
595*d1b8b36aSHeiko Stuebner				};
596*d1b8b36aSHeiko Stuebner			};
597*d1b8b36aSHeiko Stuebner
598*d1b8b36aSHeiko Stuebner			vcca_1v8_s0: pldo-reg1 {
599*d1b8b36aSHeiko Stuebner				regulator-name = "vcca_1v8_s0";
600*d1b8b36aSHeiko Stuebner				regulator-always-on;
601*d1b8b36aSHeiko Stuebner				regulator-boot-on;
602*d1b8b36aSHeiko Stuebner				regulator-min-microvolt = <1800000>;
603*d1b8b36aSHeiko Stuebner				regulator-max-microvolt = <1800000>;
604*d1b8b36aSHeiko Stuebner
605*d1b8b36aSHeiko Stuebner				regulator-state-mem {
606*d1b8b36aSHeiko Stuebner					regulator-off-in-suspend;
607*d1b8b36aSHeiko Stuebner				};
608*d1b8b36aSHeiko Stuebner			};
609*d1b8b36aSHeiko Stuebner
610*d1b8b36aSHeiko Stuebner			vcc_1v8_s0: pldo-reg2 {
611*d1b8b36aSHeiko Stuebner				regulator-name = "vcc_1v8_s0";
612*d1b8b36aSHeiko Stuebner				regulator-always-on;
613*d1b8b36aSHeiko Stuebner				regulator-boot-on;
614*d1b8b36aSHeiko Stuebner				regulator-min-microvolt = <1800000>;
615*d1b8b36aSHeiko Stuebner				regulator-max-microvolt = <1800000>;
616*d1b8b36aSHeiko Stuebner
617*d1b8b36aSHeiko Stuebner				regulator-state-mem {
618*d1b8b36aSHeiko Stuebner					regulator-off-in-suspend;
619*d1b8b36aSHeiko Stuebner					regulator-suspend-microvolt = <1800000>;
620*d1b8b36aSHeiko Stuebner				};
621*d1b8b36aSHeiko Stuebner			};
622*d1b8b36aSHeiko Stuebner
623*d1b8b36aSHeiko Stuebner			vdda_1v2_s0: pldo-reg3 {
624*d1b8b36aSHeiko Stuebner				regulator-name = "vdda_1v2_s0";
625*d1b8b36aSHeiko Stuebner				regulator-always-on;
626*d1b8b36aSHeiko Stuebner				regulator-boot-on;
627*d1b8b36aSHeiko Stuebner				regulator-min-microvolt = <1200000>;
628*d1b8b36aSHeiko Stuebner				regulator-max-microvolt = <1200000>;
629*d1b8b36aSHeiko Stuebner
630*d1b8b36aSHeiko Stuebner				regulator-state-mem {
631*d1b8b36aSHeiko Stuebner					regulator-off-in-suspend;
632*d1b8b36aSHeiko Stuebner				};
633*d1b8b36aSHeiko Stuebner			};
634*d1b8b36aSHeiko Stuebner
635*d1b8b36aSHeiko Stuebner			vcca_3v3_s0: pldo-reg4 {
636*d1b8b36aSHeiko Stuebner				regulator-name = "vcca_3v3_s0";
637*d1b8b36aSHeiko Stuebner				regulator-always-on;
638*d1b8b36aSHeiko Stuebner				regulator-boot-on;
639*d1b8b36aSHeiko Stuebner				regulator-min-microvolt = <3300000>;
640*d1b8b36aSHeiko Stuebner				regulator-max-microvolt = <3300000>;
641*d1b8b36aSHeiko Stuebner				regulator-ramp-delay = <12500>;
642*d1b8b36aSHeiko Stuebner
643*d1b8b36aSHeiko Stuebner				regulator-state-mem {
644*d1b8b36aSHeiko Stuebner					regulator-off-in-suspend;
645*d1b8b36aSHeiko Stuebner				};
646*d1b8b36aSHeiko Stuebner			};
647*d1b8b36aSHeiko Stuebner
648*d1b8b36aSHeiko Stuebner			vccio_sd_s0: pldo-reg5 {
649*d1b8b36aSHeiko Stuebner				regulator-name = "vccio_sd_s0";
650*d1b8b36aSHeiko Stuebner				regulator-always-on;
651*d1b8b36aSHeiko Stuebner				regulator-boot-on;
652*d1b8b36aSHeiko Stuebner				regulator-min-microvolt = <1800000>;
653*d1b8b36aSHeiko Stuebner				regulator-max-microvolt = <3300000>;
654*d1b8b36aSHeiko Stuebner				regulator-ramp-delay = <12500>;
655*d1b8b36aSHeiko Stuebner
656*d1b8b36aSHeiko Stuebner				regulator-state-mem {
657*d1b8b36aSHeiko Stuebner					regulator-off-in-suspend;
658*d1b8b36aSHeiko Stuebner				};
659*d1b8b36aSHeiko Stuebner			};
660*d1b8b36aSHeiko Stuebner
661*d1b8b36aSHeiko Stuebner			pldo6_s3: pldo-reg6 {
662*d1b8b36aSHeiko Stuebner				regulator-name = "pldo6_s3";
663*d1b8b36aSHeiko Stuebner				regulator-always-on;
664*d1b8b36aSHeiko Stuebner				regulator-boot-on;
665*d1b8b36aSHeiko Stuebner				regulator-min-microvolt = <1800000>;
666*d1b8b36aSHeiko Stuebner				regulator-max-microvolt = <1800000>;
667*d1b8b36aSHeiko Stuebner
668*d1b8b36aSHeiko Stuebner				regulator-state-mem {
669*d1b8b36aSHeiko Stuebner					regulator-on-in-suspend;
670*d1b8b36aSHeiko Stuebner					regulator-suspend-microvolt = <1800000>;
671*d1b8b36aSHeiko Stuebner				};
672*d1b8b36aSHeiko Stuebner			};
673*d1b8b36aSHeiko Stuebner
674*d1b8b36aSHeiko Stuebner			vdd_0v75_s3: nldo-reg1 {
675*d1b8b36aSHeiko Stuebner				regulator-name = "vdd_0v75_s3";
676*d1b8b36aSHeiko Stuebner				regulator-always-on;
677*d1b8b36aSHeiko Stuebner				regulator-boot-on;
678*d1b8b36aSHeiko Stuebner				regulator-min-microvolt = <750000>;
679*d1b8b36aSHeiko Stuebner				regulator-max-microvolt = <750000>;
680*d1b8b36aSHeiko Stuebner
681*d1b8b36aSHeiko Stuebner				regulator-state-mem {
682*d1b8b36aSHeiko Stuebner					regulator-on-in-suspend;
683*d1b8b36aSHeiko Stuebner					regulator-suspend-microvolt = <750000>;
684*d1b8b36aSHeiko Stuebner				};
685*d1b8b36aSHeiko Stuebner			};
686*d1b8b36aSHeiko Stuebner
687*d1b8b36aSHeiko Stuebner			vdda_ddr_pll_s0: nldo-reg2 {
688*d1b8b36aSHeiko Stuebner				regulator-name = "vdda_ddr_pll_s0";
689*d1b8b36aSHeiko Stuebner				regulator-always-on;
690*d1b8b36aSHeiko Stuebner				regulator-boot-on;
691*d1b8b36aSHeiko Stuebner				regulator-min-microvolt = <850000>;
692*d1b8b36aSHeiko Stuebner				regulator-max-microvolt = <850000>;
693*d1b8b36aSHeiko Stuebner
694*d1b8b36aSHeiko Stuebner				regulator-state-mem {
695*d1b8b36aSHeiko Stuebner					regulator-off-in-suspend;
696*d1b8b36aSHeiko Stuebner					regulator-suspend-microvolt = <850000>;
697*d1b8b36aSHeiko Stuebner				};
698*d1b8b36aSHeiko Stuebner			};
699*d1b8b36aSHeiko Stuebner
700*d1b8b36aSHeiko Stuebner			vdda_0v75_s0: nldo-reg3 {
701*d1b8b36aSHeiko Stuebner				regulator-name = "vdda_0v75_s0";
702*d1b8b36aSHeiko Stuebner				regulator-always-on;
703*d1b8b36aSHeiko Stuebner				regulator-boot-on;
704*d1b8b36aSHeiko Stuebner				regulator-min-microvolt = <750000>;
705*d1b8b36aSHeiko Stuebner				regulator-max-microvolt = <750000>;
706*d1b8b36aSHeiko Stuebner
707*d1b8b36aSHeiko Stuebner				regulator-state-mem {
708*d1b8b36aSHeiko Stuebner					regulator-off-in-suspend;
709*d1b8b36aSHeiko Stuebner				};
710*d1b8b36aSHeiko Stuebner			};
711*d1b8b36aSHeiko Stuebner
712*d1b8b36aSHeiko Stuebner			vdda_0v85_s0: nldo-reg4 {
713*d1b8b36aSHeiko Stuebner				regulator-name = "vdda_0v85_s0";
714*d1b8b36aSHeiko Stuebner				regulator-always-on;
715*d1b8b36aSHeiko Stuebner				regulator-boot-on;
716*d1b8b36aSHeiko Stuebner				regulator-min-microvolt = <850000>;
717*d1b8b36aSHeiko Stuebner				regulator-max-microvolt = <850000>;
718*d1b8b36aSHeiko Stuebner
719*d1b8b36aSHeiko Stuebner				regulator-state-mem {
720*d1b8b36aSHeiko Stuebner					regulator-off-in-suspend;
721*d1b8b36aSHeiko Stuebner				};
722*d1b8b36aSHeiko Stuebner			};
723*d1b8b36aSHeiko Stuebner
724*d1b8b36aSHeiko Stuebner			vdd_0v75_s0: nldo-reg5 {
725*d1b8b36aSHeiko Stuebner				regulator-name = "vdd_0v75_s0";
726*d1b8b36aSHeiko Stuebner				regulator-always-on;
727*d1b8b36aSHeiko Stuebner				regulator-boot-on;
728*d1b8b36aSHeiko Stuebner				regulator-min-microvolt = <750000>;
729*d1b8b36aSHeiko Stuebner				regulator-max-microvolt = <750000>;
730*d1b8b36aSHeiko Stuebner
731*d1b8b36aSHeiko Stuebner				regulator-state-mem {
732*d1b8b36aSHeiko Stuebner					regulator-off-in-suspend;
733*d1b8b36aSHeiko Stuebner				};
734*d1b8b36aSHeiko Stuebner			};
735*d1b8b36aSHeiko Stuebner		};
736*d1b8b36aSHeiko Stuebner	};
737*d1b8b36aSHeiko Stuebner};
738*d1b8b36aSHeiko Stuebner
739*d1b8b36aSHeiko Stuebner&tsadc {
740*d1b8b36aSHeiko Stuebner	status = "okay";
741*d1b8b36aSHeiko Stuebner};
742*d1b8b36aSHeiko Stuebner
743*d1b8b36aSHeiko Stuebner&u2phy2 {
744*d1b8b36aSHeiko Stuebner	status = "okay";
745*d1b8b36aSHeiko Stuebner};
746*d1b8b36aSHeiko Stuebner
747*d1b8b36aSHeiko Stuebner&u2phy2_host {
748*d1b8b36aSHeiko Stuebner	phy-supply = <&vcc_5v0_usb_a>;
749*d1b8b36aSHeiko Stuebner	status = "okay";
750*d1b8b36aSHeiko Stuebner};
751*d1b8b36aSHeiko Stuebner
752*d1b8b36aSHeiko Stuebner&u2phy3 {
753*d1b8b36aSHeiko Stuebner	status = "okay";
754*d1b8b36aSHeiko Stuebner};
755*d1b8b36aSHeiko Stuebner
756*d1b8b36aSHeiko Stuebner&u2phy3_host {
757*d1b8b36aSHeiko Stuebner	status = "okay";
758*d1b8b36aSHeiko Stuebner};
759*d1b8b36aSHeiko Stuebner
760*d1b8b36aSHeiko Stuebner/* Mule-ATtiny debug UART; typically baudrate 9600 */
761*d1b8b36aSHeiko Stuebner&uart0 {
762*d1b8b36aSHeiko Stuebner	pinctrl-0 = <&uart0m0_xfer>;
763*d1b8b36aSHeiko Stuebner	status = "okay";
764*d1b8b36aSHeiko Stuebner};
765*d1b8b36aSHeiko Stuebner
766*d1b8b36aSHeiko Stuebner/* Main debug interface on P20 micro-USB B port and P21 header */
767*d1b8b36aSHeiko Stuebner&uart2 {
768*d1b8b36aSHeiko Stuebner	pinctrl-0 = <&uart2m0_xfer>;
769*d1b8b36aSHeiko Stuebner	status = "okay";
770*d1b8b36aSHeiko Stuebner};
771*d1b8b36aSHeiko Stuebner
772*d1b8b36aSHeiko Stuebner/* RS485 on P19 */
773*d1b8b36aSHeiko Stuebner&uart3 {
774*d1b8b36aSHeiko Stuebner	pinctrl-0 = <&uart3m2_xfer &uart3_rtsn>;
775*d1b8b36aSHeiko Stuebner	linux,rs485-enabled-at-boot-time;
776*d1b8b36aSHeiko Stuebner	status = "okay";
777*d1b8b36aSHeiko Stuebner};
778*d1b8b36aSHeiko Stuebner
779*d1b8b36aSHeiko Stuebner/* Mule-ATtiny UPDI flashing UART */
780*d1b8b36aSHeiko Stuebner&uart7 {
781*d1b8b36aSHeiko Stuebner	pinctrl-0 = <&uart7m0_xfer>;
782*d1b8b36aSHeiko Stuebner	status = "okay";
783*d1b8b36aSHeiko Stuebner};
784*d1b8b36aSHeiko Stuebner
785*d1b8b36aSHeiko Stuebner/* host0 on P10 USB-A */
786*d1b8b36aSHeiko Stuebner&usb_host0_ehci {
787*d1b8b36aSHeiko Stuebner	status = "okay";
788*d1b8b36aSHeiko Stuebner};
789*d1b8b36aSHeiko Stuebner
790*d1b8b36aSHeiko Stuebner/* host0 on P10 USB-A */
791*d1b8b36aSHeiko Stuebner&usb_host0_ohci {
792*d1b8b36aSHeiko Stuebner	status = "okay";
793*d1b8b36aSHeiko Stuebner};
794*d1b8b36aSHeiko Stuebner
795*d1b8b36aSHeiko Stuebner/* host1 on M.2 E-key */
796*d1b8b36aSHeiko Stuebner&usb_host1_ehci {
797*d1b8b36aSHeiko Stuebner	status = "okay";
798*d1b8b36aSHeiko Stuebner};
799*d1b8b36aSHeiko Stuebner
800*d1b8b36aSHeiko Stuebner/* host1 on M.2 E-key */
801*d1b8b36aSHeiko Stuebner&usb_host1_ohci {
802*d1b8b36aSHeiko Stuebner	status = "okay";
803*d1b8b36aSHeiko Stuebner};
804