xref: /freebsd/sys/contrib/device-tree/src/arm64/rockchip/rk3566-lckfb-tspi.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/input/input.h>
7*b2d2a78aSEmmanuel Vadot#include <dt-bindings/leds/common.h>
8*b2d2a78aSEmmanuel Vadot#include <dt-bindings/pinctrl/rockchip.h>
9*b2d2a78aSEmmanuel Vadot#include <dt-bindings/soc/rockchip,vop2.h>
10*b2d2a78aSEmmanuel Vadot#include <dt-bindings/soc/rockchip,boot-mode.h>
11*b2d2a78aSEmmanuel Vadot#include "rk3566.dtsi"
12*b2d2a78aSEmmanuel Vadot
13*b2d2a78aSEmmanuel Vadot/ {
14*b2d2a78aSEmmanuel Vadot	model = "LCKFB Taishan Pi RK3566";
15*b2d2a78aSEmmanuel Vadot	compatible = "lckfb,tspi-rk3566", "rockchip,rk3566";
16*b2d2a78aSEmmanuel Vadot
17*b2d2a78aSEmmanuel Vadot	aliases {
18*b2d2a78aSEmmanuel Vadot		mmc0 = &sdmmc0;
19*b2d2a78aSEmmanuel Vadot		mmc1 = &sdhci;
20*b2d2a78aSEmmanuel Vadot		mmc2 = &sdmmc1;
21*b2d2a78aSEmmanuel Vadot	};
22*b2d2a78aSEmmanuel Vadot
23*b2d2a78aSEmmanuel Vadot	chosen: chosen {
24*b2d2a78aSEmmanuel Vadot		stdout-path = "serial2:1500000n8";
25*b2d2a78aSEmmanuel Vadot	};
26*b2d2a78aSEmmanuel Vadot
27*b2d2a78aSEmmanuel Vadot	reserved-memory {
28*b2d2a78aSEmmanuel Vadot		#address-cells = <2>;
29*b2d2a78aSEmmanuel Vadot		#size-cells = <2>;
30*b2d2a78aSEmmanuel Vadot		ranges;
31*b2d2a78aSEmmanuel Vadot
32*b2d2a78aSEmmanuel Vadot		ramoops: ramoops@110000 {
33*b2d2a78aSEmmanuel Vadot			compatible = "ramoops";
34*b2d2a78aSEmmanuel Vadot			reg = <0 0x110000 0 0xf0000>;
35*b2d2a78aSEmmanuel Vadot			console-size = <0x80000>;
36*b2d2a78aSEmmanuel Vadot			ftrace-size = <0x00000>;
37*b2d2a78aSEmmanuel Vadot			pmsg-size = <0x50000>;
38*b2d2a78aSEmmanuel Vadot			record-size = <0x20000>;
39*b2d2a78aSEmmanuel Vadot		};
40*b2d2a78aSEmmanuel Vadot	};
41*b2d2a78aSEmmanuel Vadot
42*b2d2a78aSEmmanuel Vadot	adc_keys: adc-keys {
43*b2d2a78aSEmmanuel Vadot		compatible = "adc-keys";
44*b2d2a78aSEmmanuel Vadot		io-channels = <&saradc 0>;
45*b2d2a78aSEmmanuel Vadot		io-channel-names = "buttons";
46*b2d2a78aSEmmanuel Vadot		keyup-threshold-microvolt = <1800000>;
47*b2d2a78aSEmmanuel Vadot		poll-interval = <100>;
48*b2d2a78aSEmmanuel Vadot
49*b2d2a78aSEmmanuel Vadot		button-recovery {
50*b2d2a78aSEmmanuel Vadot			label = "recovery";
51*b2d2a78aSEmmanuel Vadot			linux,code = <KEY_RESTART>;
52*b2d2a78aSEmmanuel Vadot			press-threshold-microvolt = <108>;
53*b2d2a78aSEmmanuel Vadot		};
54*b2d2a78aSEmmanuel Vadot	};
55*b2d2a78aSEmmanuel Vadot
56*b2d2a78aSEmmanuel Vadot	hdmi_con: hdmi-con {
57*b2d2a78aSEmmanuel Vadot		compatible = "hdmi-connector";
58*b2d2a78aSEmmanuel Vadot		type = "d";
59*b2d2a78aSEmmanuel Vadot
60*b2d2a78aSEmmanuel Vadot		port {
61*b2d2a78aSEmmanuel Vadot			hdmi_con_in: endpoint {
62*b2d2a78aSEmmanuel Vadot				remote-endpoint = <&hdmi_out_con>;
63*b2d2a78aSEmmanuel Vadot			};
64*b2d2a78aSEmmanuel Vadot		};
65*b2d2a78aSEmmanuel Vadot	};
66*b2d2a78aSEmmanuel Vadot
67*b2d2a78aSEmmanuel Vadot	leds: leds {
68*b2d2a78aSEmmanuel Vadot		compatible = "gpio-leds";
69*b2d2a78aSEmmanuel Vadot
70*b2d2a78aSEmmanuel Vadot		rgb_led_r: rgb-led-r {
71*b2d2a78aSEmmanuel Vadot			color = <LED_COLOR_ID_RED>;
72*b2d2a78aSEmmanuel Vadot			gpios = <&gpio1 RK_PB2 GPIO_ACTIVE_LOW>;
73*b2d2a78aSEmmanuel Vadot			label = "status-red";
74*b2d2a78aSEmmanuel Vadot		};
75*b2d2a78aSEmmanuel Vadot
76*b2d2a78aSEmmanuel Vadot		rgb_led_g: rgb-led-g {
77*b2d2a78aSEmmanuel Vadot			gpios = <&gpio1 RK_PB1 GPIO_ACTIVE_LOW>;
78*b2d2a78aSEmmanuel Vadot			color = <LED_COLOR_ID_GREEN>;
79*b2d2a78aSEmmanuel Vadot			label = "status-green";
80*b2d2a78aSEmmanuel Vadot		};
81*b2d2a78aSEmmanuel Vadot
82*b2d2a78aSEmmanuel Vadot		rgb_led_b: rgb-led-b {
83*b2d2a78aSEmmanuel Vadot			gpios = <&gpio1 RK_PB0 GPIO_ACTIVE_LOW>;
84*b2d2a78aSEmmanuel Vadot			color = <LED_COLOR_ID_BLUE>;
85*b2d2a78aSEmmanuel Vadot			label = "status-blue";
86*b2d2a78aSEmmanuel Vadot		};
87*b2d2a78aSEmmanuel Vadot	};
88*b2d2a78aSEmmanuel Vadot
89*b2d2a78aSEmmanuel Vadot	multi_leds: multi-led {
90*b2d2a78aSEmmanuel Vadot		compatible = "leds-group-multicolor";
91*b2d2a78aSEmmanuel Vadot		color = <LED_COLOR_ID_RGB>;
92*b2d2a78aSEmmanuel Vadot		label = "status-rgb";
93*b2d2a78aSEmmanuel Vadot		function = LED_FUNCTION_INDICATOR;
94*b2d2a78aSEmmanuel Vadot		leds = <&rgb_led_r>, <&rgb_led_g>, <&rgb_led_b>;
95*b2d2a78aSEmmanuel Vadot	};
96*b2d2a78aSEmmanuel Vadot
97*b2d2a78aSEmmanuel Vadot	vcc12v0_dcin: regulator-12v0-dcin {
98*b2d2a78aSEmmanuel Vadot		compatible = "regulator-fixed";
99*b2d2a78aSEmmanuel Vadot		regulator-name = "vcc12v0_dcin";
100*b2d2a78aSEmmanuel Vadot		regulator-always-on;
101*b2d2a78aSEmmanuel Vadot		regulator-boot-on;
102*b2d2a78aSEmmanuel Vadot		regulator-min-microvolt = <12000000>;
103*b2d2a78aSEmmanuel Vadot		regulator-max-microvolt = <12000000>;
104*b2d2a78aSEmmanuel Vadot	};
105*b2d2a78aSEmmanuel Vadot
106*b2d2a78aSEmmanuel Vadot	vcc3v3_sys: regulator-3v3-vcc-sys {
107*b2d2a78aSEmmanuel Vadot		compatible = "regulator-fixed";
108*b2d2a78aSEmmanuel Vadot		regulator-name = "vcc3v3_sys";
109*b2d2a78aSEmmanuel Vadot		regulator-always-on;
110*b2d2a78aSEmmanuel Vadot		regulator-boot-on;
111*b2d2a78aSEmmanuel Vadot		regulator-min-microvolt = <3300000>;
112*b2d2a78aSEmmanuel Vadot		regulator-max-microvolt = <3300000>;
113*b2d2a78aSEmmanuel Vadot		vin-supply = <&vcc5v0_sys>;
114*b2d2a78aSEmmanuel Vadot	};
115*b2d2a78aSEmmanuel Vadot
116*b2d2a78aSEmmanuel Vadot	vcc5v0_sys: regulator-5v0-vcc-sys {
117*b2d2a78aSEmmanuel Vadot		compatible = "regulator-fixed";
118*b2d2a78aSEmmanuel Vadot		regulator-name = "vcc5v0_sys";
119*b2d2a78aSEmmanuel Vadot		regulator-always-on;
120*b2d2a78aSEmmanuel Vadot		regulator-boot-on;
121*b2d2a78aSEmmanuel Vadot		regulator-min-microvolt = <5000000>;
122*b2d2a78aSEmmanuel Vadot		regulator-max-microvolt = <5000000>;
123*b2d2a78aSEmmanuel Vadot		vin-supply = <&vcc12v0_dcin>;
124*b2d2a78aSEmmanuel Vadot	};
125*b2d2a78aSEmmanuel Vadot
126*b2d2a78aSEmmanuel Vadot	vcc5v0_host: regulator-5v0-vcc-host {
127*b2d2a78aSEmmanuel Vadot		compatible = "regulator-fixed";
128*b2d2a78aSEmmanuel Vadot		enable-active-high;
129*b2d2a78aSEmmanuel Vadot		gpio = <&gpio4 RK_PC4 GPIO_ACTIVE_HIGH>;
130*b2d2a78aSEmmanuel Vadot		pinctrl-names = "default";
131*b2d2a78aSEmmanuel Vadot		pinctrl-0 = <&vcc5v0_host_en>;
132*b2d2a78aSEmmanuel Vadot		regulator-name = "vcc5v0_host";
133*b2d2a78aSEmmanuel Vadot		regulator-min-microvolt = <5000000>;
134*b2d2a78aSEmmanuel Vadot		regulator-max-microvolt = <5000000>;
135*b2d2a78aSEmmanuel Vadot		vin-supply = <&vcc5v0_sys>;
136*b2d2a78aSEmmanuel Vadot	};
137*b2d2a78aSEmmanuel Vadot
138*b2d2a78aSEmmanuel Vadot	sdio_pwrseq: sdio-pwrseq {
139*b2d2a78aSEmmanuel Vadot		compatible = "mmc-pwrseq-simple";
140*b2d2a78aSEmmanuel Vadot		clocks = <&rk809 1>;
141*b2d2a78aSEmmanuel Vadot		clock-names = "ext_clock";
142*b2d2a78aSEmmanuel Vadot		pinctrl-names = "default";
143*b2d2a78aSEmmanuel Vadot		pinctrl-0 = <&wifi_enable_h>;
144*b2d2a78aSEmmanuel Vadot		post-power-on-delay-ms = <200>;
145*b2d2a78aSEmmanuel Vadot		reset-gpios = <&gpio2 RK_PB1 GPIO_ACTIVE_LOW>;
146*b2d2a78aSEmmanuel Vadot	};
147*b2d2a78aSEmmanuel Vadot
148*b2d2a78aSEmmanuel Vadot	sound {
149*b2d2a78aSEmmanuel Vadot		compatible = "simple-audio-card";
150*b2d2a78aSEmmanuel Vadot		simple-audio-card,format = "i2s";
151*b2d2a78aSEmmanuel Vadot		simple-audio-card,name = "Analog RK809";
152*b2d2a78aSEmmanuel Vadot		simple-audio-card,mclk-fs = <256>;
153*b2d2a78aSEmmanuel Vadot
154*b2d2a78aSEmmanuel Vadot		simple-audio-card,cpu {
155*b2d2a78aSEmmanuel Vadot			sound-dai = <&i2s1_8ch>;
156*b2d2a78aSEmmanuel Vadot		};
157*b2d2a78aSEmmanuel Vadot
158*b2d2a78aSEmmanuel Vadot		simple-audio-card,codec {
159*b2d2a78aSEmmanuel Vadot			sound-dai = <&rk809>;
160*b2d2a78aSEmmanuel Vadot		};
161*b2d2a78aSEmmanuel Vadot	};
162*b2d2a78aSEmmanuel Vadot};
163*b2d2a78aSEmmanuel Vadot
164*b2d2a78aSEmmanuel Vadot&combphy1 {
165*b2d2a78aSEmmanuel Vadot	status = "okay";
166*b2d2a78aSEmmanuel Vadot};
167*b2d2a78aSEmmanuel Vadot
168*b2d2a78aSEmmanuel Vadot&combphy2 {
169*b2d2a78aSEmmanuel Vadot	status = "okay";
170*b2d2a78aSEmmanuel Vadot};
171*b2d2a78aSEmmanuel Vadot
172*b2d2a78aSEmmanuel Vadot&cpu0 {
173*b2d2a78aSEmmanuel Vadot	cpu-supply = <&vdd_cpu>;
174*b2d2a78aSEmmanuel Vadot};
175*b2d2a78aSEmmanuel Vadot
176*b2d2a78aSEmmanuel Vadot&cpu1 {
177*b2d2a78aSEmmanuel Vadot	cpu-supply = <&vdd_cpu>;
178*b2d2a78aSEmmanuel Vadot};
179*b2d2a78aSEmmanuel Vadot
180*b2d2a78aSEmmanuel Vadot&cpu2 {
181*b2d2a78aSEmmanuel Vadot	cpu-supply = <&vdd_cpu>;
182*b2d2a78aSEmmanuel Vadot};
183*b2d2a78aSEmmanuel Vadot
184*b2d2a78aSEmmanuel Vadot&cpu3 {
185*b2d2a78aSEmmanuel Vadot	cpu-supply = <&vdd_cpu>;
186*b2d2a78aSEmmanuel Vadot};
187*b2d2a78aSEmmanuel Vadot
188*b2d2a78aSEmmanuel Vadot&gpu {
189*b2d2a78aSEmmanuel Vadot	mali-supply = <&vdd_gpu>;
190*b2d2a78aSEmmanuel Vadot	status = "okay";
191*b2d2a78aSEmmanuel Vadot};
192*b2d2a78aSEmmanuel Vadot
193*b2d2a78aSEmmanuel Vadot&hdmi {
194*b2d2a78aSEmmanuel Vadot	avdd-0v9-supply = <&vdda0v9_image>;
195*b2d2a78aSEmmanuel Vadot	avdd-1v8-supply = <&vcca1v8_image>;
196*b2d2a78aSEmmanuel Vadot	status = "okay";
197*b2d2a78aSEmmanuel Vadot};
198*b2d2a78aSEmmanuel Vadot
199*b2d2a78aSEmmanuel Vadot&hdmi_in {
200*b2d2a78aSEmmanuel Vadot	hdmi_in_vp0: endpoint {
201*b2d2a78aSEmmanuel Vadot		remote-endpoint = <&vp0_out_hdmi>;
202*b2d2a78aSEmmanuel Vadot	};
203*b2d2a78aSEmmanuel Vadot};
204*b2d2a78aSEmmanuel Vadot
205*b2d2a78aSEmmanuel Vadot&hdmi_out {
206*b2d2a78aSEmmanuel Vadot	hdmi_out_con: endpoint {
207*b2d2a78aSEmmanuel Vadot		remote-endpoint = <&hdmi_con_in>;
208*b2d2a78aSEmmanuel Vadot	};
209*b2d2a78aSEmmanuel Vadot};
210*b2d2a78aSEmmanuel Vadot
211*b2d2a78aSEmmanuel Vadot&hdmi_sound {
212*b2d2a78aSEmmanuel Vadot	status = "okay";
213*b2d2a78aSEmmanuel Vadot};
214*b2d2a78aSEmmanuel Vadot
215*b2d2a78aSEmmanuel Vadot&i2c0 {
216*b2d2a78aSEmmanuel Vadot	status = "okay";
217*b2d2a78aSEmmanuel Vadot
218*b2d2a78aSEmmanuel Vadot	vdd_cpu: regulator@1c {
219*b2d2a78aSEmmanuel Vadot		compatible = "tcs,tcs4525";
220*b2d2a78aSEmmanuel Vadot		reg = <0x1c>;
221*b2d2a78aSEmmanuel Vadot		fcs,suspend-voltage-selector = <1>;
222*b2d2a78aSEmmanuel Vadot		regulator-name = "vdd_cpu";
223*b2d2a78aSEmmanuel Vadot		regulator-always-on;
224*b2d2a78aSEmmanuel Vadot		regulator-boot-on;
225*b2d2a78aSEmmanuel Vadot		regulator-min-microvolt = <800000>;
226*b2d2a78aSEmmanuel Vadot		regulator-max-microvolt = <1150000>;
227*b2d2a78aSEmmanuel Vadot		regulator-ramp-delay = <2300>;
228*b2d2a78aSEmmanuel Vadot		vin-supply = <&vcc5v0_sys>;
229*b2d2a78aSEmmanuel Vadot
230*b2d2a78aSEmmanuel Vadot		regulator-state-mem {
231*b2d2a78aSEmmanuel Vadot			regulator-off-in-suspend;
232*b2d2a78aSEmmanuel Vadot		};
233*b2d2a78aSEmmanuel Vadot	};
234*b2d2a78aSEmmanuel Vadot
235*b2d2a78aSEmmanuel Vadot	rk809: pmic@20 {
236*b2d2a78aSEmmanuel Vadot		compatible = "rockchip,rk809";
237*b2d2a78aSEmmanuel Vadot		reg = <0x20>;
238*b2d2a78aSEmmanuel Vadot		assigned-clocks = <&cru I2S1_MCLKOUT_TX>;
239*b2d2a78aSEmmanuel Vadot		assigned-clock-parents = <&cru CLK_I2S1_8CH_TX>;
240*b2d2a78aSEmmanuel Vadot		#clock-cells = <1>;
241*b2d2a78aSEmmanuel Vadot		clock-output-names = "rk808-clkout1", "rk808-clkout2";
242*b2d2a78aSEmmanuel Vadot		clock-names = "mclk";
243*b2d2a78aSEmmanuel Vadot		clocks = <&cru I2S1_MCLKOUT_TX>;
244*b2d2a78aSEmmanuel Vadot		interrupt-parent = <&gpio0>;
245*b2d2a78aSEmmanuel Vadot		interrupts = <RK_PA3 IRQ_TYPE_LEVEL_LOW>;
246*b2d2a78aSEmmanuel Vadot		pinctrl-names = "default";
247*b2d2a78aSEmmanuel Vadot		pinctrl-0 = <&pmic_int>, <&i2s1m0_mclk>;
248*b2d2a78aSEmmanuel Vadot		rockchip,system-power-controller;
249*b2d2a78aSEmmanuel Vadot		#sound-dai-cells = <0>;
250*b2d2a78aSEmmanuel Vadot		wakeup-source;
251*b2d2a78aSEmmanuel Vadot
252*b2d2a78aSEmmanuel Vadot		vcc1-supply = <&vcc3v3_sys>;
253*b2d2a78aSEmmanuel Vadot		vcc2-supply = <&vcc3v3_sys>;
254*b2d2a78aSEmmanuel Vadot		vcc3-supply = <&vcc3v3_sys>;
255*b2d2a78aSEmmanuel Vadot		vcc4-supply = <&vcc3v3_sys>;
256*b2d2a78aSEmmanuel Vadot		vcc5-supply = <&vcc3v3_sys>;
257*b2d2a78aSEmmanuel Vadot		vcc6-supply = <&vcc3v3_sys>;
258*b2d2a78aSEmmanuel Vadot		vcc7-supply = <&vcc3v3_sys>;
259*b2d2a78aSEmmanuel Vadot		vcc8-supply = <&vcc3v3_sys>;
260*b2d2a78aSEmmanuel Vadot		vcc9-supply = <&vcc3v3_sys>;
261*b2d2a78aSEmmanuel Vadot
262*b2d2a78aSEmmanuel Vadot		regulators {
263*b2d2a78aSEmmanuel Vadot			vdd_logic: DCDC_REG1 {
264*b2d2a78aSEmmanuel Vadot				regulator-name = "vdd_logic";
265*b2d2a78aSEmmanuel Vadot				regulator-always-on;
266*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
267*b2d2a78aSEmmanuel Vadot				regulator-min-microvolt = <500000>;
268*b2d2a78aSEmmanuel Vadot				regulator-max-microvolt = <1350000>;
269*b2d2a78aSEmmanuel Vadot				regulator-ramp-delay = <6001>;
270*b2d2a78aSEmmanuel Vadot				regulator-initial-mode = <0x2>;
271*b2d2a78aSEmmanuel Vadot
272*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
273*b2d2a78aSEmmanuel Vadot					regulator-off-in-suspend;
274*b2d2a78aSEmmanuel Vadot				};
275*b2d2a78aSEmmanuel Vadot			};
276*b2d2a78aSEmmanuel Vadot
277*b2d2a78aSEmmanuel Vadot			vdd_gpu: DCDC_REG2 {
278*b2d2a78aSEmmanuel Vadot				regulator-name = "vdd_gpu";
279*b2d2a78aSEmmanuel Vadot				regulator-always-on;
280*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
281*b2d2a78aSEmmanuel Vadot				regulator-min-microvolt = <500000>;
282*b2d2a78aSEmmanuel Vadot				regulator-max-microvolt = <1350000>;
283*b2d2a78aSEmmanuel Vadot				regulator-ramp-delay = <6001>;
284*b2d2a78aSEmmanuel Vadot				regulator-initial-mode = <0x2>;
285*b2d2a78aSEmmanuel Vadot
286*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
287*b2d2a78aSEmmanuel Vadot					regulator-off-in-suspend;
288*b2d2a78aSEmmanuel Vadot				};
289*b2d2a78aSEmmanuel Vadot			};
290*b2d2a78aSEmmanuel Vadot
291*b2d2a78aSEmmanuel Vadot			vcc_ddr: DCDC_REG3 {
292*b2d2a78aSEmmanuel Vadot				regulator-name = "vcc_ddr";
293*b2d2a78aSEmmanuel Vadot				regulator-always-on;
294*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
295*b2d2a78aSEmmanuel Vadot				regulator-initial-mode = <0x2>;
296*b2d2a78aSEmmanuel Vadot
297*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
298*b2d2a78aSEmmanuel Vadot					regulator-on-in-suspend;
299*b2d2a78aSEmmanuel Vadot				};
300*b2d2a78aSEmmanuel Vadot			};
301*b2d2a78aSEmmanuel Vadot
302*b2d2a78aSEmmanuel Vadot			vdd_npu: DCDC_REG4 {
303*b2d2a78aSEmmanuel Vadot				regulator-name = "vdd_npu";
304*b2d2a78aSEmmanuel Vadot				regulator-always-on;
305*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
306*b2d2a78aSEmmanuel Vadot				regulator-min-microvolt = <500000>;
307*b2d2a78aSEmmanuel Vadot				regulator-max-microvolt = <1350000>;
308*b2d2a78aSEmmanuel Vadot				regulator-ramp-delay = <6001>;
309*b2d2a78aSEmmanuel Vadot				regulator-initial-mode = <0x2>;
310*b2d2a78aSEmmanuel Vadot
311*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
312*b2d2a78aSEmmanuel Vadot					regulator-off-in-suspend;
313*b2d2a78aSEmmanuel Vadot				};
314*b2d2a78aSEmmanuel Vadot			};
315*b2d2a78aSEmmanuel Vadot
316*b2d2a78aSEmmanuel Vadot			vdda0v9_image: LDO_REG1 {
317*b2d2a78aSEmmanuel Vadot				regulator-name = "vdda0v9_image";
318*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
319*b2d2a78aSEmmanuel Vadot				regulator-always-on;
320*b2d2a78aSEmmanuel Vadot				regulator-min-microvolt = <900000>;
321*b2d2a78aSEmmanuel Vadot				regulator-max-microvolt = <900000>;
322*b2d2a78aSEmmanuel Vadot
323*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
324*b2d2a78aSEmmanuel Vadot					regulator-off-in-suspend;
325*b2d2a78aSEmmanuel Vadot				};
326*b2d2a78aSEmmanuel Vadot			};
327*b2d2a78aSEmmanuel Vadot
328*b2d2a78aSEmmanuel Vadot			vdda_0v9: LDO_REG2 {
329*b2d2a78aSEmmanuel Vadot				regulator-name = "vdda_0v9";
330*b2d2a78aSEmmanuel Vadot				regulator-always-on;
331*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
332*b2d2a78aSEmmanuel Vadot				regulator-min-microvolt = <900000>;
333*b2d2a78aSEmmanuel Vadot				regulator-max-microvolt = <900000>;
334*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
335*b2d2a78aSEmmanuel Vadot					regulator-off-in-suspend;
336*b2d2a78aSEmmanuel Vadot				};
337*b2d2a78aSEmmanuel Vadot			};
338*b2d2a78aSEmmanuel Vadot
339*b2d2a78aSEmmanuel Vadot			vdda0v9_pmu: LDO_REG3 {
340*b2d2a78aSEmmanuel Vadot				regulator-name = "vdda0v9_pmu";
341*b2d2a78aSEmmanuel Vadot				regulator-always-on;
342*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
343*b2d2a78aSEmmanuel Vadot				regulator-min-microvolt = <900000>;
344*b2d2a78aSEmmanuel Vadot				regulator-max-microvolt = <900000>;
345*b2d2a78aSEmmanuel Vadot
346*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
347*b2d2a78aSEmmanuel Vadot					regulator-on-in-suspend;
348*b2d2a78aSEmmanuel Vadot					regulator-suspend-microvolt = <900000>;
349*b2d2a78aSEmmanuel Vadot				};
350*b2d2a78aSEmmanuel Vadot			};
351*b2d2a78aSEmmanuel Vadot
352*b2d2a78aSEmmanuel Vadot			vccio_acodec: LDO_REG4 {
353*b2d2a78aSEmmanuel Vadot				regulator-name = "vccio_acodec";
354*b2d2a78aSEmmanuel Vadot				regulator-always-on;
355*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
356*b2d2a78aSEmmanuel Vadot				regulator-min-microvolt = <3300000>;
357*b2d2a78aSEmmanuel Vadot				regulator-max-microvolt = <3300000>;
358*b2d2a78aSEmmanuel Vadot
359*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
360*b2d2a78aSEmmanuel Vadot					regulator-off-in-suspend;
361*b2d2a78aSEmmanuel Vadot				};
362*b2d2a78aSEmmanuel Vadot			};
363*b2d2a78aSEmmanuel Vadot
364*b2d2a78aSEmmanuel Vadot			vccio_sd: LDO_REG5 {
365*b2d2a78aSEmmanuel Vadot				regulator-name = "vccio_sd";
366*b2d2a78aSEmmanuel Vadot				regulator-always-on;
367*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
368*b2d2a78aSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
369*b2d2a78aSEmmanuel Vadot				regulator-max-microvolt = <3300000>;
370*b2d2a78aSEmmanuel Vadot
371*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
372*b2d2a78aSEmmanuel Vadot					regulator-off-in-suspend;
373*b2d2a78aSEmmanuel Vadot				};
374*b2d2a78aSEmmanuel Vadot			};
375*b2d2a78aSEmmanuel Vadot
376*b2d2a78aSEmmanuel Vadot			vcc3v3_pmu: LDO_REG6 {
377*b2d2a78aSEmmanuel Vadot				regulator-name = "vcc3v3_pmu";
378*b2d2a78aSEmmanuel Vadot				regulator-always-on;
379*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
380*b2d2a78aSEmmanuel Vadot				regulator-min-microvolt = <3300000>;
381*b2d2a78aSEmmanuel Vadot				regulator-max-microvolt = <3300000>;
382*b2d2a78aSEmmanuel Vadot
383*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
384*b2d2a78aSEmmanuel Vadot					regulator-on-in-suspend;
385*b2d2a78aSEmmanuel Vadot					regulator-suspend-microvolt = <3300000>;
386*b2d2a78aSEmmanuel Vadot				};
387*b2d2a78aSEmmanuel Vadot			};
388*b2d2a78aSEmmanuel Vadot
389*b2d2a78aSEmmanuel Vadot			vcca_1v8: LDO_REG7 {
390*b2d2a78aSEmmanuel Vadot				regulator-name = "vcca_1v8";
391*b2d2a78aSEmmanuel Vadot				regulator-always-on;
392*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
393*b2d2a78aSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
394*b2d2a78aSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
395*b2d2a78aSEmmanuel Vadot
396*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
397*b2d2a78aSEmmanuel Vadot					regulator-off-in-suspend;
398*b2d2a78aSEmmanuel Vadot				};
399*b2d2a78aSEmmanuel Vadot			};
400*b2d2a78aSEmmanuel Vadot
401*b2d2a78aSEmmanuel Vadot			vcca1v8_pmu: LDO_REG8 {
402*b2d2a78aSEmmanuel Vadot				regulator-name = "vcca1v8_pmu";
403*b2d2a78aSEmmanuel Vadot				regulator-always-on;
404*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
405*b2d2a78aSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
406*b2d2a78aSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
407*b2d2a78aSEmmanuel Vadot
408*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
409*b2d2a78aSEmmanuel Vadot					regulator-on-in-suspend;
410*b2d2a78aSEmmanuel Vadot					regulator-suspend-microvolt = <1800000>;
411*b2d2a78aSEmmanuel Vadot				};
412*b2d2a78aSEmmanuel Vadot			};
413*b2d2a78aSEmmanuel Vadot
414*b2d2a78aSEmmanuel Vadot			vcca1v8_image: LDO_REG9 {
415*b2d2a78aSEmmanuel Vadot				regulator-name = "vcca1v8_image";
416*b2d2a78aSEmmanuel Vadot				regulator-always-on;
417*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
418*b2d2a78aSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
419*b2d2a78aSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
420*b2d2a78aSEmmanuel Vadot
421*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
422*b2d2a78aSEmmanuel Vadot					regulator-off-in-suspend;
423*b2d2a78aSEmmanuel Vadot				};
424*b2d2a78aSEmmanuel Vadot			};
425*b2d2a78aSEmmanuel Vadot
426*b2d2a78aSEmmanuel Vadot			vcc_1v8: DCDC_REG5 {
427*b2d2a78aSEmmanuel Vadot				regulator-name = "vcc_1v8";
428*b2d2a78aSEmmanuel Vadot				regulator-always-on;
429*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
430*b2d2a78aSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
431*b2d2a78aSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
432*b2d2a78aSEmmanuel Vadot
433*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
434*b2d2a78aSEmmanuel Vadot					regulator-off-in-suspend;
435*b2d2a78aSEmmanuel Vadot				};
436*b2d2a78aSEmmanuel Vadot			};
437*b2d2a78aSEmmanuel Vadot
438*b2d2a78aSEmmanuel Vadot			vcc_3v3: SWITCH_REG1 {
439*b2d2a78aSEmmanuel Vadot				regulator-name = "vcc_3v3";
440*b2d2a78aSEmmanuel Vadot				regulator-always-on;
441*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
442*b2d2a78aSEmmanuel Vadot
443*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
444*b2d2a78aSEmmanuel Vadot					regulator-off-in-suspend;
445*b2d2a78aSEmmanuel Vadot				};
446*b2d2a78aSEmmanuel Vadot			};
447*b2d2a78aSEmmanuel Vadot
448*b2d2a78aSEmmanuel Vadot			vcc3v3_sd: SWITCH_REG2 {
449*b2d2a78aSEmmanuel Vadot				regulator-name = "vcc3v3_sd";
450*b2d2a78aSEmmanuel Vadot				regulator-always-on;
451*b2d2a78aSEmmanuel Vadot				regulator-boot-on;
452*b2d2a78aSEmmanuel Vadot
453*b2d2a78aSEmmanuel Vadot				regulator-state-mem {
454*b2d2a78aSEmmanuel Vadot					regulator-off-in-suspend;
455*b2d2a78aSEmmanuel Vadot				};
456*b2d2a78aSEmmanuel Vadot			};
457*b2d2a78aSEmmanuel Vadot		};
458*b2d2a78aSEmmanuel Vadot
459*b2d2a78aSEmmanuel Vadot		codec {
460*b2d2a78aSEmmanuel Vadot			rockchip,mic-in-differential;
461*b2d2a78aSEmmanuel Vadot		};
462*b2d2a78aSEmmanuel Vadot	};
463*b2d2a78aSEmmanuel Vadot};
464*b2d2a78aSEmmanuel Vadot
465*b2d2a78aSEmmanuel Vadot&i2c1 {
466*b2d2a78aSEmmanuel Vadot	status = "okay";
467*b2d2a78aSEmmanuel Vadot	/* Touch Screen */
468*b2d2a78aSEmmanuel Vadot};
469*b2d2a78aSEmmanuel Vadot
470*b2d2a78aSEmmanuel Vadot&i2c4 {
471*b2d2a78aSEmmanuel Vadot	pinctrl-names = "default";
472*b2d2a78aSEmmanuel Vadot	pinctrl-0 = <&i2c4m0_xfer>;
473*b2d2a78aSEmmanuel Vadot	status = "okay";
474*b2d2a78aSEmmanuel Vadot	/* Camera */
475*b2d2a78aSEmmanuel Vadot};
476*b2d2a78aSEmmanuel Vadot
477*b2d2a78aSEmmanuel Vadot&i2s0_8ch {
478*b2d2a78aSEmmanuel Vadot	status = "okay";
479*b2d2a78aSEmmanuel Vadot	/* HDMI */
480*b2d2a78aSEmmanuel Vadot};
481*b2d2a78aSEmmanuel Vadot
482*b2d2a78aSEmmanuel Vadot&i2s1_8ch {
483*b2d2a78aSEmmanuel Vadot	pinctrl-names = "default";
484*b2d2a78aSEmmanuel Vadot	pinctrl-0 = <&i2s1m0_sclktx &i2s1m0_lrcktx &i2s1m0_sdi0 &i2s1m0_sdo0>;
485*b2d2a78aSEmmanuel Vadot	rockchip,trcm-sync-tx-only;
486*b2d2a78aSEmmanuel Vadot	status = "okay";
487*b2d2a78aSEmmanuel Vadot	/* PMIC */
488*b2d2a78aSEmmanuel Vadot};
489*b2d2a78aSEmmanuel Vadot
490*b2d2a78aSEmmanuel Vadot&i2s2_2ch {
491*b2d2a78aSEmmanuel Vadot	rockchip,trcm-sync-tx-only;
492*b2d2a78aSEmmanuel Vadot	status = "okay";
493*b2d2a78aSEmmanuel Vadot	/* AP6212 Bluetooth */
494*b2d2a78aSEmmanuel Vadot};
495*b2d2a78aSEmmanuel Vadot
496*b2d2a78aSEmmanuel Vadot&pinctrl {
497*b2d2a78aSEmmanuel Vadot	bt {
498*b2d2a78aSEmmanuel Vadot		bt_enable_h: bt-enable-h {
499*b2d2a78aSEmmanuel Vadot			rockchip,pins = <2 RK_PB7 RK_FUNC_GPIO &pcfg_pull_none>;
500*b2d2a78aSEmmanuel Vadot		};
501*b2d2a78aSEmmanuel Vadot
502*b2d2a78aSEmmanuel Vadot		bt_host_wake_l: bt-host-wake-l {
503*b2d2a78aSEmmanuel Vadot			rockchip,pins = <2 RK_PC0 RK_FUNC_GPIO &pcfg_pull_down>;
504*b2d2a78aSEmmanuel Vadot		};
505*b2d2a78aSEmmanuel Vadot
506*b2d2a78aSEmmanuel Vadot		bt_wake_l: bt-wake-l {
507*b2d2a78aSEmmanuel Vadot			rockchip,pins = <2 RK_PC1 RK_FUNC_GPIO &pcfg_pull_none>;
508*b2d2a78aSEmmanuel Vadot		};
509*b2d2a78aSEmmanuel Vadot	};
510*b2d2a78aSEmmanuel Vadot
511*b2d2a78aSEmmanuel Vadot	hp-detect {
512*b2d2a78aSEmmanuel Vadot		hp_det: hp-det {
513*b2d2a78aSEmmanuel Vadot			rockchip,pins = <4 RK_PC6 RK_FUNC_GPIO &pcfg_pull_up>;
514*b2d2a78aSEmmanuel Vadot		};
515*b2d2a78aSEmmanuel Vadot	};
516*b2d2a78aSEmmanuel Vadot
517*b2d2a78aSEmmanuel Vadot	pmic {
518*b2d2a78aSEmmanuel Vadot		pmic_int: pmic-int {
519*b2d2a78aSEmmanuel Vadot			rockchip,pins = <0 RK_PA3 RK_FUNC_GPIO &pcfg_pull_up>;
520*b2d2a78aSEmmanuel Vadot		};
521*b2d2a78aSEmmanuel Vadot	};
522*b2d2a78aSEmmanuel Vadot
523*b2d2a78aSEmmanuel Vadot	sdio-pwrseq {
524*b2d2a78aSEmmanuel Vadot		wifi_enable_h: wifi-enable-h {
525*b2d2a78aSEmmanuel Vadot			rockchip,pins = <2 RK_PB1 RK_FUNC_GPIO &pcfg_pull_none>;
526*b2d2a78aSEmmanuel Vadot		};
527*b2d2a78aSEmmanuel Vadot
528*b2d2a78aSEmmanuel Vadot		wifi_host_wake_h: wifi-host-wake-l {
529*b2d2a78aSEmmanuel Vadot			rockchip,pins = <2 RK_PB2 RK_FUNC_GPIO &pcfg_pull_none>;
530*b2d2a78aSEmmanuel Vadot		};
531*b2d2a78aSEmmanuel Vadot	};
532*b2d2a78aSEmmanuel Vadot
533*b2d2a78aSEmmanuel Vadot	usb2 {
534*b2d2a78aSEmmanuel Vadot		vcc5v0_host_en: vcc5v0-host-en {
535*b2d2a78aSEmmanuel Vadot			rockchip,pins = <4 RK_PC4 RK_FUNC_GPIO &pcfg_pull_none>;
536*b2d2a78aSEmmanuel Vadot		};
537*b2d2a78aSEmmanuel Vadot	};
538*b2d2a78aSEmmanuel Vadot};
539*b2d2a78aSEmmanuel Vadot
540*b2d2a78aSEmmanuel Vadot&pmu_io_domains {
541*b2d2a78aSEmmanuel Vadot	pmuio1-supply = <&vcc3v3_pmu>;
542*b2d2a78aSEmmanuel Vadot	pmuio2-supply = <&vcc3v3_pmu>;
543*b2d2a78aSEmmanuel Vadot	vccio1-supply = <&vccio_acodec>;
544*b2d2a78aSEmmanuel Vadot	vccio2-supply = <&vcc_1v8>;
545*b2d2a78aSEmmanuel Vadot	vccio3-supply = <&vccio_sd>;
546*b2d2a78aSEmmanuel Vadot	vccio4-supply = <&vcc_1v8>;
547*b2d2a78aSEmmanuel Vadot	vccio5-supply = <&vcc_3v3>;
548*b2d2a78aSEmmanuel Vadot	vccio6-supply = <&vcc_1v8>;
549*b2d2a78aSEmmanuel Vadot	vccio7-supply = <&vcc_3v3>;
550*b2d2a78aSEmmanuel Vadot	status = "okay";
551*b2d2a78aSEmmanuel Vadot};
552*b2d2a78aSEmmanuel Vadot
553*b2d2a78aSEmmanuel Vadot&pmugrf {
554*b2d2a78aSEmmanuel Vadot	reboot-mode {
555*b2d2a78aSEmmanuel Vadot		compatible = "syscon-reboot-mode";
556*b2d2a78aSEmmanuel Vadot		offset = <0x200>;
557*b2d2a78aSEmmanuel Vadot		mode-normal = <BOOT_NORMAL>;
558*b2d2a78aSEmmanuel Vadot		mode-loader = <BOOT_BL_DOWNLOAD>;
559*b2d2a78aSEmmanuel Vadot		mode-recovery = <BOOT_RECOVERY>;
560*b2d2a78aSEmmanuel Vadot		mode-bootloader = <BOOT_FASTBOOT>;
561*b2d2a78aSEmmanuel Vadot	};
562*b2d2a78aSEmmanuel Vadot};
563*b2d2a78aSEmmanuel Vadot
564*b2d2a78aSEmmanuel Vadot&saradc {
565*b2d2a78aSEmmanuel Vadot	vref-supply = <&vcca_1v8>;
566*b2d2a78aSEmmanuel Vadot	status = "okay";
567*b2d2a78aSEmmanuel Vadot	/* Channel 0: Recovery Button */
568*b2d2a78aSEmmanuel Vadot	/* Channel 1: Hardware ID */
569*b2d2a78aSEmmanuel Vadot};
570*b2d2a78aSEmmanuel Vadot
571*b2d2a78aSEmmanuel Vadot&sdhci {
572*b2d2a78aSEmmanuel Vadot	bus-width = <8>;
573*b2d2a78aSEmmanuel Vadot	max-frequency = <200000000>;
574*b2d2a78aSEmmanuel Vadot	non-removable;
575*b2d2a78aSEmmanuel Vadot	pinctrl-names = "default";
576*b2d2a78aSEmmanuel Vadot	pinctrl-0 = <&emmc_bus8 &emmc_clk &emmc_cmd &emmc_datastrobe &emmc_rstnout>;
577*b2d2a78aSEmmanuel Vadot	vmmc-supply = <&vcc_3v3>;
578*b2d2a78aSEmmanuel Vadot	vqmmc-supply = <&vcc_1v8>;
579*b2d2a78aSEmmanuel Vadot	status = "okay";
580*b2d2a78aSEmmanuel Vadot};
581*b2d2a78aSEmmanuel Vadot
582*b2d2a78aSEmmanuel Vadot&sdmmc0 {
583*b2d2a78aSEmmanuel Vadot	bus-width = <4>;
584*b2d2a78aSEmmanuel Vadot	cap-mmc-highspeed;
585*b2d2a78aSEmmanuel Vadot	cap-sd-highspeed;
586*b2d2a78aSEmmanuel Vadot	disable-wp;
587*b2d2a78aSEmmanuel Vadot	max-frequency = <150000000>;
588*b2d2a78aSEmmanuel Vadot	pinctrl-names = "default";
589*b2d2a78aSEmmanuel Vadot	pinctrl-0 = <&sdmmc0_bus4 &sdmmc0_clk &sdmmc0_cmd &sdmmc0_det>;
590*b2d2a78aSEmmanuel Vadot	sd-uhs-sdr104;
591*b2d2a78aSEmmanuel Vadot	vmmc-supply = <&vcc3v3_sd>;
592*b2d2a78aSEmmanuel Vadot	vqmmc-supply = <&vcc_1v8>;
593*b2d2a78aSEmmanuel Vadot	status = "okay";
594*b2d2a78aSEmmanuel Vadot};
595*b2d2a78aSEmmanuel Vadot
596*b2d2a78aSEmmanuel Vadot&sdmmc1 {
597*b2d2a78aSEmmanuel Vadot	bus-width = <4>;
598*b2d2a78aSEmmanuel Vadot	cap-sd-highspeed;
599*b2d2a78aSEmmanuel Vadot	cap-sdio-irq;
600*b2d2a78aSEmmanuel Vadot	disable-wp;
601*b2d2a78aSEmmanuel Vadot	keep-power-in-suspend;
602*b2d2a78aSEmmanuel Vadot	max-frequency = <150000000>;
603*b2d2a78aSEmmanuel Vadot	mmc-pwrseq = <&sdio_pwrseq>;
604*b2d2a78aSEmmanuel Vadot	non-removable;
605*b2d2a78aSEmmanuel Vadot	pinctrl-names = "default";
606*b2d2a78aSEmmanuel Vadot	pinctrl-0 = <&sdmmc1_bus4 &sdmmc1_cmd &sdmmc1_clk>;
607*b2d2a78aSEmmanuel Vadot	sd-uhs-sdr104;
608*b2d2a78aSEmmanuel Vadot	vmmc-supply = <&vcc3v3_sys>;
609*b2d2a78aSEmmanuel Vadot	vqmmc-supply = <&vcc_1v8>;
610*b2d2a78aSEmmanuel Vadot	#address-cells = <1>;
611*b2d2a78aSEmmanuel Vadot	#size-cells = <0>;
612*b2d2a78aSEmmanuel Vadot	status = "okay";
613*b2d2a78aSEmmanuel Vadot
614*b2d2a78aSEmmanuel Vadot	brcmf: wifi@1 {
615*b2d2a78aSEmmanuel Vadot		compatible = "brcm,bcm4329-fmac";
616*b2d2a78aSEmmanuel Vadot		reg = <1>;
617*b2d2a78aSEmmanuel Vadot		interrupt-parent = <&gpio2>;
618*b2d2a78aSEmmanuel Vadot		interrupts = <RK_PB2 IRQ_TYPE_LEVEL_HIGH>;
619*b2d2a78aSEmmanuel Vadot		interrupt-names = "host-wake";
620*b2d2a78aSEmmanuel Vadot		pinctrl-names = "default";
621*b2d2a78aSEmmanuel Vadot		pinctrl-0 = <&wifi_host_wake_h>;
622*b2d2a78aSEmmanuel Vadot	};
623*b2d2a78aSEmmanuel Vadot};
624*b2d2a78aSEmmanuel Vadot
625*b2d2a78aSEmmanuel Vadot&tsadc {
626*b2d2a78aSEmmanuel Vadot	rockchip,hw-tshut-mode = <1>;
627*b2d2a78aSEmmanuel Vadot	rockchip,hw-tshut-polarity = <0>;
628*b2d2a78aSEmmanuel Vadot	status = "okay";
629*b2d2a78aSEmmanuel Vadot};
630*b2d2a78aSEmmanuel Vadot
631*b2d2a78aSEmmanuel Vadot&uart1 {
632*b2d2a78aSEmmanuel Vadot	pinctrl-names = "default";
633*b2d2a78aSEmmanuel Vadot	pinctrl-0 = <&uart1m0_xfer &uart1m0_ctsn &uart1m0_rtsn>;
634*b2d2a78aSEmmanuel Vadot	uart-has-rtscts;
635*b2d2a78aSEmmanuel Vadot	status = "okay";
636*b2d2a78aSEmmanuel Vadot
637*b2d2a78aSEmmanuel Vadot	bluetooth: bluetooth {
638*b2d2a78aSEmmanuel Vadot		compatible = "brcm,bcm43438-bt";
639*b2d2a78aSEmmanuel Vadot		clocks = <&rk809 1>;
640*b2d2a78aSEmmanuel Vadot		clock-names = "lpo";
641*b2d2a78aSEmmanuel Vadot		max-speed = <3000000>;
642*b2d2a78aSEmmanuel Vadot		pinctrl-names = "default";
643*b2d2a78aSEmmanuel Vadot		pinctrl-0 = <&bt_host_wake_l &bt_wake_l &bt_enable_h>;
644*b2d2a78aSEmmanuel Vadot		shutdown-gpios = <&gpio2 RK_PB7 GPIO_ACTIVE_HIGH>;
645*b2d2a78aSEmmanuel Vadot		vbat-supply = <&vcc3v3_sys>;
646*b2d2a78aSEmmanuel Vadot		vddio-supply = <&vcc_1v8>;
647*b2d2a78aSEmmanuel Vadot	};
648*b2d2a78aSEmmanuel Vadot};
649*b2d2a78aSEmmanuel Vadot
650*b2d2a78aSEmmanuel Vadot&uart2 {
651*b2d2a78aSEmmanuel Vadot	pinctrl-names = "default";
652*b2d2a78aSEmmanuel Vadot	pinctrl-0 = <&uart2m0_xfer>;
653*b2d2a78aSEmmanuel Vadot	status = "okay";
654*b2d2a78aSEmmanuel Vadot};
655*b2d2a78aSEmmanuel Vadot
656*b2d2a78aSEmmanuel Vadot&usb_host0_ohci {
657*b2d2a78aSEmmanuel Vadot	status = "okay";
658*b2d2a78aSEmmanuel Vadot};
659*b2d2a78aSEmmanuel Vadot
660*b2d2a78aSEmmanuel Vadot&usb_host0_ehci {
661*b2d2a78aSEmmanuel Vadot	status = "okay";
662*b2d2a78aSEmmanuel Vadot};
663*b2d2a78aSEmmanuel Vadot
664*b2d2a78aSEmmanuel Vadot&usb_host0_xhci {
665*b2d2a78aSEmmanuel Vadot	dr_mode = "otg";
666*b2d2a78aSEmmanuel Vadot	status = "okay";
667*b2d2a78aSEmmanuel Vadot};
668*b2d2a78aSEmmanuel Vadot
669*b2d2a78aSEmmanuel Vadot&usb_host1_ohci {
670*b2d2a78aSEmmanuel Vadot	status = "okay";
671*b2d2a78aSEmmanuel Vadot};
672*b2d2a78aSEmmanuel Vadot
673*b2d2a78aSEmmanuel Vadot&usb_host1_ehci {
674*b2d2a78aSEmmanuel Vadot	status = "okay";
675*b2d2a78aSEmmanuel Vadot};
676*b2d2a78aSEmmanuel Vadot
677*b2d2a78aSEmmanuel Vadot&usb_host1_xhci {
678*b2d2a78aSEmmanuel Vadot	dr_mode = "host";
679*b2d2a78aSEmmanuel Vadot	status = "okay";
680*b2d2a78aSEmmanuel Vadot};
681*b2d2a78aSEmmanuel Vadot
682*b2d2a78aSEmmanuel Vadot&usb2phy0 {
683*b2d2a78aSEmmanuel Vadot	status = "okay";
684*b2d2a78aSEmmanuel Vadot};
685*b2d2a78aSEmmanuel Vadot
686*b2d2a78aSEmmanuel Vadot&usb2phy0_host {
687*b2d2a78aSEmmanuel Vadot	phy-supply = <&vcc5v0_sys>;
688*b2d2a78aSEmmanuel Vadot	status = "okay";
689*b2d2a78aSEmmanuel Vadot};
690*b2d2a78aSEmmanuel Vadot
691*b2d2a78aSEmmanuel Vadot&usb2phy0_otg {
692*b2d2a78aSEmmanuel Vadot	phy-supply = <&vcc5v0_sys>;
693*b2d2a78aSEmmanuel Vadot	status = "okay";
694*b2d2a78aSEmmanuel Vadot};
695*b2d2a78aSEmmanuel Vadot
696*b2d2a78aSEmmanuel Vadot&usb2phy1 {
697*b2d2a78aSEmmanuel Vadot	status = "okay";
698*b2d2a78aSEmmanuel Vadot};
699*b2d2a78aSEmmanuel Vadot
700*b2d2a78aSEmmanuel Vadot&usb2phy1_host {
701*b2d2a78aSEmmanuel Vadot	phy-supply = <&vcc5v0_host>;
702*b2d2a78aSEmmanuel Vadot	status = "okay";
703*b2d2a78aSEmmanuel Vadot};
704*b2d2a78aSEmmanuel Vadot
705*b2d2a78aSEmmanuel Vadot&usb2phy1_otg {
706*b2d2a78aSEmmanuel Vadot	phy-supply = <&vcc5v0_host>;
707*b2d2a78aSEmmanuel Vadot	status = "okay";
708*b2d2a78aSEmmanuel Vadot};
709*b2d2a78aSEmmanuel Vadot
710*b2d2a78aSEmmanuel Vadot&vop {
711*b2d2a78aSEmmanuel Vadot	assigned-clocks = <&cru DCLK_VOP0>, <&cru DCLK_VOP1>;
712*b2d2a78aSEmmanuel Vadot	assigned-clock-parents = <&pmucru PLL_HPLL>, <&cru PLL_VPLL>;
713*b2d2a78aSEmmanuel Vadot	status = "okay";
714*b2d2a78aSEmmanuel Vadot};
715*b2d2a78aSEmmanuel Vadot
716*b2d2a78aSEmmanuel Vadot&vop_mmu {
717*b2d2a78aSEmmanuel Vadot	status = "okay";
718*b2d2a78aSEmmanuel Vadot};
719*b2d2a78aSEmmanuel Vadot
720*b2d2a78aSEmmanuel Vadot&vp0 {
721*b2d2a78aSEmmanuel Vadot	vp0_out_hdmi: endpoint@ROCKCHIP_VOP2_EP_HDMI0 {
722*b2d2a78aSEmmanuel Vadot		reg = <ROCKCHIP_VOP2_EP_HDMI0>;
723*b2d2a78aSEmmanuel Vadot		remote-endpoint = <&hdmi_in_vp0>;
724*b2d2a78aSEmmanuel Vadot	};
725*b2d2a78aSEmmanuel Vadot};
726