xref: /linux/arch/arm64/boot/dts/rockchip/rk3588s-gameforce-ace.dts (revision 0cac5ce06e524755b3dac1e0a060b05992076d93)
1// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2
3/dts-v1/;
4
5#include <dt-bindings/gpio/gpio.h>
6#include <dt-bindings/input/linux-event-codes.h>
7#include <dt-bindings/leds/common.h>
8#include <dt-bindings/pinctrl/rockchip.h>
9#include <dt-bindings/pwm/pwm.h>
10#include <dt-bindings/soc/rockchip,vop2.h>
11#include <dt-bindings/thermal/thermal.h>
12#include <dt-bindings/usb/pd.h>
13#include "rk3588s.dtsi"
14
15/ {
16	model = "Gameforce Ace";
17	chassis-type = "handset";
18	compatible = "gameforce,ace", "rockchip,rk3588s";
19
20	aliases {
21		mmc0 = &sdhci;
22		mmc1 = &sdmmc;
23		mmc2 = &sdio;
24	};
25
26	chosen {
27		stdout-path = "serial2:1500000n8";
28	};
29
30	adc_keys: adc-keys {
31		compatible = "adc-keys";
32		io-channels = <&saradc 1>;
33		io-channel-names = "buttons";
34		keyup-threshold-microvolt = <1800000>;
35		poll-interval = <60>;
36
37		button-vol-up {
38			label = "VOLUMEUP";
39			linux,code = <KEY_VOLUMEUP>;
40			press-threshold-microvolt = <17000>;
41		};
42
43		button-vol-down {
44			label = "VOLUMEDOWN";
45			linux,code = <KEY_VOLUMEDOWN>;
46			press-threshold-microvolt = <417000>;
47		};
48	};
49
50	/* Joystick range values based on hardware observation. */
51	adc_joystick: adc-joystick {
52		compatible = "adc-joystick";
53		io-channels = <&saradc 2>, <&saradc 3>,
54			      <&saradc 4>, <&saradc 5>;
55		poll-interval = <60>;
56		#address-cells = <1>;
57		#size-cells = <0>;
58
59		axis@0 {
60			reg = <0>;
61			abs-flat = <40>;
62			abs-fuzz = <30>;
63			abs-range = <0 4095>;
64			linux,code = <ABS_RX>;
65		};
66
67		axis@1 {
68			reg = <1>;
69			abs-flat = <40>;
70			abs-fuzz = <30>;
71			abs-range = <0 4095>;
72			linux,code = <ABS_RY>;
73		};
74
75		axis@2 {
76			reg = <2>;
77			abs-flat = <40>;
78			abs-fuzz = <30>;
79			abs-range = <0 4095>;
80			linux,code = <ABS_Y>;
81		};
82
83		axis@3 {
84			reg = <3>;
85			abs-flat = <40>;
86			abs-fuzz = <30>;
87			abs-range = <0 4095>;
88			linux,code = <ABS_X>;
89		};
90	};
91
92	/* Trigger range values based on hardware observation. */
93	adc_triggers: adc-trigger {
94		compatible = "adc-joystick";
95		io-channels = <&ti_adc 6>,
96			      <&ti_adc 7>;
97		poll-interval = <60>;
98		#address-cells = <1>;
99		#size-cells = <0>;
100
101		axis@0 {
102			reg = <0>;
103			abs-flat = <15>;
104			abs-fuzz = <15>;
105			abs-range = <890 1530>;
106			linux,code = <ABS_HAT2X>;
107		};
108
109		axis@1 {
110			reg = <1>;
111			abs-flat = <15>;
112			abs-fuzz = <15>;
113			abs-range = <1010 1550>;
114			linux,code = <ABS_HAT2Y>;
115		};
116	};
117
118	analog-sound {
119		compatible = "simple-audio-card";
120		pinctrl-0 = <&hp_detect>;
121		pinctrl-names = "default";
122		simple-audio-card,aux-devs = <&amp_headphone>, <&amp_speaker>;
123		simple-audio-card,bitclock-master = <&masterdai>;
124		simple-audio-card,format = "i2s";
125		simple-audio-card,frame-master = <&masterdai>;
126		simple-audio-card,hp-det-gpios = <&gpio3 RK_PA6 GPIO_ACTIVE_LOW>;
127		simple-audio-card,mclk-fs = <256>;
128		simple-audio-card,name = "rockchip,es8388-codec";
129		simple-audio-card,pin-switches = "Headphones", "Speaker";
130		simple-audio-card,routing =
131			"Speaker Amplifier INL", "LOUT2",
132			"Speaker Amplifier INR", "ROUT2",
133			"Speaker", "Speaker Amplifier OUTL",
134			"Speaker", "Speaker Amplifier OUTR",
135			"Headphones Amplifier INL", "LOUT1",
136			"Headphones Amplifier INR", "ROUT1",
137			"Headphones", "Headphones Amplifier OUTL",
138			"Headphones", "Headphones Amplifier OUTR",
139			"LINPUT1", "Microphone Jack",
140			"RINPUT1", "Microphone Jack",
141			"LINPUT2", "Onboard Microphone",
142			"RINPUT2", "Onboard Microphone";
143		simple-audio-card,widgets =
144			"Microphone", "Microphone Jack",
145			"Microphone", "Onboard Microphone",
146			"Headphone", "Headphones",
147			"Speaker", "Speaker";
148
149		masterdai: simple-audio-card,codec {
150			sound-dai = <&es8388>;
151			system-clock-frequency = <12288000>;
152		};
153
154		simple-audio-card,cpu {
155			sound-dai = <&i2s0_8ch>;
156		};
157	};
158
159	backlight: backlight {
160		compatible = "pwm-backlight";
161		enable-gpios = <&gpio3 RK_PC0 GPIO_ACTIVE_HIGH>;
162		pinctrl-0 = <&lcd_bl_en>;
163		pinctrl-names = "default";
164		pwms = <&pwm13 0 25000 PWM_POLARITY_INVERTED>;
165	};
166
167	battery: battery {
168		compatible = "simple-battery";
169		charge-full-design-microamp-hours = <3700000>;
170		constant-charge-current-max-microamp = <2500000>;
171		constant-charge-voltage-max-microvolt = <8750000>;
172		voltage-min-design-microvolt = <7400000>;
173	};
174
175	gpio_keys: gpio-keys {
176		compatible = "gpio-keys";
177		pinctrl-0 = <&btn_pins_ctrl>;
178		pinctrl-names = "default";
179
180		button-a {
181			gpios = <&gpio1 RK_PC6 GPIO_ACTIVE_LOW>;
182			label = "EAST";
183			linux,code = <BTN_EAST>;
184		};
185
186		button-b {
187			gpios = <&gpio1 RK_PA5 GPIO_ACTIVE_LOW>;
188			label = "SOUTH";
189			linux,code = <BTN_SOUTH>;
190		};
191
192		button-down {
193			gpios = <&gpio1 RK_PB1 GPIO_ACTIVE_LOW>;
194			label = "DPAD-DOWN";
195			linux,code = <BTN_DPAD_DOWN>;
196		};
197
198		button-home {
199			gpios = <&gpio1 RK_PA0 GPIO_ACTIVE_LOW>;
200			label = "FUNCTION";
201			linux,code = <BTN_MODE>;
202		};
203
204		button-l1 {
205			gpios = <&gpio1 RK_PB5 GPIO_ACTIVE_LOW>;
206			label = "L1";
207			linux,code = <BTN_TL>;
208		};
209
210		button-left {
211			gpios = <&gpio1 RK_PD7 GPIO_ACTIVE_LOW>;
212			label = "DPAD-LEFT";
213			linux,code = <BTN_DPAD_LEFT>;
214		};
215
216		button-menu {
217			gpios = <&gpio1 RK_PB0 GPIO_ACTIVE_LOW>;
218			label = "HOME";
219			linux,code = <KEY_HOME>;
220		};
221
222		button-r1 {
223			gpios = <&gpio1 RK_PB2 GPIO_ACTIVE_LOW>;
224			label = "R1";
225			linux,code = <BTN_TR>;
226		};
227
228		button-right {
229			gpios = <&gpio1 RK_PB7 GPIO_ACTIVE_LOW>;
230			label = "DPAD-RIGHT";
231			linux,code = <BTN_DPAD_RIGHT>;
232		};
233
234		button-select {
235			gpios = <&gpio1 RK_PA3 GPIO_ACTIVE_LOW>;
236			label = "SELECT";
237			linux,code = <BTN_SELECT>;
238		};
239
240		button-start {
241			gpios = <&gpio1 RK_PB6 GPIO_ACTIVE_LOW>;
242			label = "START";
243			linux,code = <BTN_START>;
244		};
245
246		button-thumbl {
247			gpios = <&gpio1 RK_PA4 GPIO_ACTIVE_LOW>;
248			label = "THUMBL";
249			linux,code = <BTN_THUMBL>;
250		};
251
252		button-thumbr {
253			gpios = <&gpio1 RK_PD6 GPIO_ACTIVE_LOW>;
254			label = "THUMBR";
255			linux,code = <BTN_THUMBR>;
256		};
257
258		button-up {
259			gpios = <&gpio1 RK_PA2 GPIO_ACTIVE_LOW>;
260			label = "DPAD-UP";
261			linux,code = <BTN_DPAD_UP>;
262		};
263
264		button-x {
265			gpios = <&gpio1 RK_PB4 GPIO_ACTIVE_LOW>;
266			label = "NORTH";
267			linux,code = <BTN_NORTH>;
268		};
269
270		button-y {
271			gpios = <&gpio1 RK_PB3 GPIO_ACTIVE_LOW>;
272			label = "WEST";
273			linux,code = <BTN_WEST>;
274		};
275	};
276
277	gpio_leds: gpio-leds {
278		compatible = "gpio-leds";
279		pinctrl-names = "default";
280		pinctrl-0 = <&led_pins>;
281
282		green_led: led-0 {
283			color = <LED_COLOR_ID_GREEN>;
284			gpios = <&gpio3 RK_PC1 GPIO_ACTIVE_HIGH>;
285			function = LED_FUNCTION_STATUS;
286		};
287
288		red_led: led-1 {
289			color = <LED_COLOR_ID_RED>;
290			gpios = <&gpio3 RK_PC2 GPIO_ACTIVE_HIGH>;
291			function = LED_FUNCTION_CHARGING;
292		};
293	};
294
295	amp_headphone: headphone-amplifier {
296		compatible = "simple-audio-amplifier";
297		enable-gpios = <&gpio0 RK_PD4 GPIO_ACTIVE_HIGH>;
298		pinctrl-0 = <&headphone_amplifier_en>;
299		pinctrl-names = "default";
300		sound-name-prefix = "Headphones Amplifier";
301	};
302
303	pwm_fan: pwm-fan {
304		compatible = "pwm-fan";
305		#cooling-cells = <2>;
306		cooling-levels = <0 120 150 180 210 240 255>;
307		fan-supply = <&vcc5v0_sys>;
308		interrupt-parent = <&gpio4>;
309		interrupts = <RK_PB2 IRQ_TYPE_EDGE_RISING>;
310		pulses-per-revolution = <4>;
311		pwms = <&pwm12 0 50000 PWM_POLARITY_INVERTED>;
312	};
313
314	pwm_gpio33: pwm-33 {
315		compatible = "pwm-gpio";
316		gpios = <&gpio1 RK_PA1 GPIO_ACTIVE_HIGH>;
317		pinctrl-0 = <&vib_right_h>;
318		pinctrl-names = "default";
319		#pwm-cells = <3>;
320	};
321
322	pwm_gpio132: pwm-132 {
323		compatible = "pwm-gpio";
324		gpios = <&gpio4 RK_PA4 GPIO_ACTIVE_HIGH>;
325		pinctrl-0 = <&vib_left_h>;
326		pinctrl-names = "default";
327		#pwm-cells = <3>;
328	};
329
330	sdio_pwrseq: sdio-pwrseq {
331		compatible = "mmc-pwrseq-simple";
332		clock-names = "ext_clock";
333		clocks = <&rtc_hym8563>;
334		pinctrl-0 = <&wifi_enable_h>;
335		pinctrl-names = "default";
336		post-power-on-delay-ms = <200>;
337		power-off-delay-us = <5000000>;
338		reset-gpios = <&gpio3 RK_PB4 GPIO_ACTIVE_LOW>;
339	};
340
341	amp_speaker: speaker-amplifier {
342		compatible = "simple-audio-amplifier";
343		enable-gpios = <&gpio4 RK_PA5 GPIO_ACTIVE_HIGH>;
344		pinctrl-0 = <&speaker_amplifier_en>;
345		pinctrl-names = "default";
346		sound-name-prefix = "Speaker Amplifier";
347		VCC-supply = <&vcc5v0_spk>;
348	};
349
350	vcc_1v1_nldo_s3: regulator-vcc-1v1-nldo-s3 {
351		compatible = "regulator-fixed";
352		regulator-always-on;
353		regulator-boot-on;
354		regulator-max-microvolt = <1100000>;
355		regulator-min-microvolt = <1100000>;
356		regulator-name = "vcc_1v1_nldo_s3";
357		vin-supply = <&vcc5v0_sys>;
358	};
359
360	vcc3v3_lcd0_n: regulator-vcc3v3-lcd0-n {
361		compatible = "regulator-fixed";
362		enable-active-high;
363		gpio = <&gpio4 RK_PA7 GPIO_ACTIVE_HIGH>;
364		pinctrl-0 = <&vcc_lcd_h>;
365		pinctrl-names = "default";
366		regulator-max-microvolt = <3300000>;
367		regulator-min-microvolt = <3300000>;
368		regulator-name = "vcc3v3_lcd0_n";
369		vin-supply = <&vcc_3v3_s3>;
370		regulator-state-mem {
371			regulator-off-in-suspend;
372		};
373	};
374
375	vcc_3v3_sd_s0: regulator-vcc-3v3-sd-s0 {
376		compatible = "regulator-fixed";
377		enable-active-high;
378		gpio = <&gpio4 RK_PB4 GPIO_ACTIVE_HIGH>;
379		pinctrl-0 = <&sd_s0_pwr>;
380		pinctrl-names = "default";
381		regulator-max-microvolt = <3000000>;
382		regulator-min-microvolt = <3000000>;
383		regulator-name = "vcc_3v3_sd_s0";
384		vin-supply = <&vcc_3v3_s3>;
385	};
386
387	vcc5v0_spk: regulator-vcc5v0-spk {
388		compatible = "regulator-fixed";
389		enable-active-high;
390		gpio = <&gpio4 RK_PA2 GPIO_ACTIVE_HIGH>;
391		pinctrl-0 = <&vcc5v0_spk_pwr>;
392		pinctrl-names = "default";
393		regulator-max-microvolt = <5000000>;
394		regulator-min-microvolt = <5000000>;
395		regulator-name = "vcc5v0_spk";
396		vin-supply = <&vcc5v0_sys>;
397		regulator-state-mem {
398			regulator-off-in-suspend;
399		};
400	};
401
402	vcc5v0_sys: regulator-vcc5v0-sys {
403		compatible = "regulator-fixed";
404		regulator-always-on;
405		regulator-boot-on;
406		regulator-max-microvolt = <5000000>;
407		regulator-min-microvolt = <5000000>;
408		regulator-name = "vcc5v0_sys";
409	};
410
411	vibrator_l: vibrator-l {
412		compatible = "pwm-vibrator";
413		pwm-names = "enable";
414		pwms = <&pwm_gpio132 0 20000000 0>;
415	};
416
417	vibrator_r: vibrator-r {
418		compatible = "pwm-vibrator";
419		pwm-names = "enable";
420		pwms = <&pwm_gpio33 0 20000000 0>;
421	};
422};
423
424&combphy2_psu {
425	status = "okay";
426};
427
428&cpu_l0 {
429	cpu-supply = <&vdd_cpu_lit_s0>;
430};
431
432&cpu_l1 {
433	cpu-supply = <&vdd_cpu_lit_s0>;
434};
435
436&cpu_l2 {
437	cpu-supply = <&vdd_cpu_lit_s0>;
438};
439
440&cpu_l3 {
441	cpu-supply = <&vdd_cpu_lit_s0>;
442};
443
444&cpu_b0 {
445	cpu-supply = <&vdd_cpu_big0_s0>;
446};
447
448&cpu_b1 {
449	cpu-supply = <&vdd_cpu_big0_s0>;
450};
451
452&cpu_b2 {
453	cpu-supply = <&vdd_cpu_big1_s0>;
454};
455
456&cpu_b3 {
457	cpu-supply = <&vdd_cpu_big1_s0>;
458};
459
460&dsi0 {
461	#address-cells = <1>;
462	#size-cells = <0>;
463	status = "okay";
464
465	panel@0 {
466		compatible = "huiling,hl055fhav028c", "himax,hx8399c";
467		reg = <0>;
468		backlight = <&backlight>;
469		iovcc-supply = <&vcc3v3_lcd0_n>;
470		pinctrl-0 = <&lcd_rst>;
471		pinctrl-names = "default";
472		reset-gpios = <&gpio1 RK_PD5 GPIO_ACTIVE_LOW>;
473		rotation = <90>;
474		vcc-supply = <&vcc3v3_lcd0_n>;
475
476		port {
477			mipi_panel_in: endpoint {
478				remote-endpoint = <&dsi0_out_panel>;
479			};
480		};
481	};
482};
483
484&dsi0_in {
485	dsi0_in_vp3: endpoint {
486		remote-endpoint = <&vp3_out_dsi0>;
487	};
488};
489
490&dsi0_out {
491	dsi0_out_panel: endpoint {
492		remote-endpoint = <&mipi_panel_in>;
493	};
494};
495
496&gpu {
497	mali-supply = <&vdd_gpu_s0>;
498	status = "okay";
499};
500
501&i2c0 {
502	pinctrl-0 = <&i2c0m2_xfer>;
503	pinctrl-names = "default";
504	status = "okay";
505
506	vdd_cpu_big0_s0: regulator@42 {
507		compatible = "rockchip,rk8602";
508		reg = <0x42>;
509		fcs,suspend-voltage-selector = <1>;
510		regulator-max-microvolt = <1050000>;
511		regulator-min-microvolt = <550000>;
512		regulator-name = "vdd_cpu_big0_s0";
513		regulator-ramp-delay = <2300>;
514		vin-supply = <&vcc5v0_sys>;
515
516		regulator-state-mem {
517			regulator-off-in-suspend;
518		};
519	};
520
521	vdd_cpu_big1_s0: regulator@43 {
522		compatible = "rockchip,rk8603", "rockchip,rk8602";
523		reg = <0x43>;
524		fcs,suspend-voltage-selector = <1>;
525		regulator-max-microvolt = <1050000>;
526		regulator-min-microvolt = <550000>;
527		regulator-name = "vdd_cpu_big1_s0";
528		regulator-ramp-delay = <2300>;
529		vin-supply = <&vcc5v0_sys>;
530
531		regulator-state-mem {
532			regulator-off-in-suspend;
533		};
534	};
535};
536
537&i2c2 {
538	status = "okay";
539
540	vdd_npu_s0: regulator@42 {
541		compatible = "rockchip,rk8602";
542		reg = <0x42>;
543		fcs,suspend-voltage-selector = <1>;
544		regulator-max-microvolt = <950000>;
545		regulator-min-microvolt = <550000>;
546		regulator-name = "vdd_npu_s0";
547		regulator-ramp-delay = <2300>;
548		vin-supply = <&vcc5v0_sys>;
549
550		regulator-state-mem {
551			regulator-off-in-suspend;
552		};
553	};
554};
555
556&i2c3 {
557	status = "okay";
558
559	touchscreen@14 {
560		compatible = "goodix,gt911";
561		reg = <0x14>;
562		interrupt-parent = <&gpio1>;
563		interrupts = <RK_PA6 IRQ_TYPE_LEVEL_LOW>;
564		irq-gpios = <&gpio1 RK_PA6 GPIO_ACTIVE_HIGH>;
565		pinctrl-0 = <&touch_int>, <&touch_rst>;
566		pinctrl-names = "default";
567		reset-gpios = <&gpio1 RK_PA7 GPIO_ACTIVE_HIGH>;
568		touchscreen-inverted-x;
569		touchscreen-size-x = <1080>;
570		touchscreen-size-y = <1920>;
571		touchscreen-swapped-x-y;
572	};
573};
574
575&i2c4 {
576	pinctrl-0 = <&i2c4m2_xfer>;
577	status = "okay";
578
579	ti_adc: adc@48 {
580		compatible = "ti,ads1015";
581		reg = <0x48>;
582		#address-cells = <1>;
583		#io-channel-cells = <1>;
584		#size-cells = <0>;
585
586		channel@4 {
587			reg = <4>;
588		};
589
590		channel@5 {
591			reg = <5>;
592		};
593
594		channel@6 {
595			reg = <6>;
596		};
597
598		channel@7 {
599			reg = <7>;
600		};
601	};
602
603	imu@68 {
604		compatible = "invensense,mpu6880";
605		reg = <0x68>;
606		interrupt-parent = <&gpio0>;
607		interrupts = <RK_PD3 IRQ_TYPE_EDGE_RISING>;
608	};
609};
610
611&i2c6 {
612	pinctrl-0 = <&i2c6m3_xfer>;
613	status = "okay";
614
615	fusb302: typec@22 {
616		compatible = "fcs,fusb302";
617		reg = <0x22>;
618		interrupt-parent = <&gpio0>;
619		interrupts = <RK_PC7 IRQ_TYPE_LEVEL_LOW>;
620		pinctrl-0 = <&usbc0_int>;
621		pinctrl-names = "default";
622		vbus-supply = <&usb_otg_vbus>;
623
624		connector {
625			compatible = "usb-c-connector";
626			data-role = "dual";
627			label = "USB-C";
628			op-sink-microwatt = <1000000>;
629			power-role = "dual";
630			self-powered;
631			sink-pdos = <PDO_FIXED(5000, 3000, PDO_FIXED_USB_COMM)
632				     PDO_FIXED(9000, 3000, PDO_FIXED_USB_COMM)
633				     PDO_FIXED(12000, 3000, PDO_FIXED_USB_COMM)>;
634			source-pdos = <PDO_FIXED(5000, 3000, PDO_FIXED_USB_COMM)>;
635			try-power-role = "sink";
636
637			ports {
638				#address-cells = <1>;
639				#size-cells = <0>;
640
641				port@0 {
642					reg = <0>;
643					usbc0_orien_sw: endpoint {
644						remote-endpoint = <&usbdp_phy0_orientation_switch>;
645					};
646				};
647
648				port@1 {
649					reg = <1>;
650					usbc0_role_sw: endpoint {
651						remote-endpoint = <&dwc3_0_role_switch>;
652					};
653				};
654
655				port@2 {
656					reg = <2>;
657					dp_altmode_mux: endpoint {
658						remote-endpoint = <&usbdp_phy0_dp_altmode_mux>;
659					};
660				};
661			};
662		};
663	};
664
665	rtc_hym8563: rtc@51 {
666		compatible = "haoyu,hym8563";
667		reg = <0x51>;
668		#clock-cells = <0>;
669		clock-output-names = "hym8563";
670		interrupt-parent = <&gpio0>;
671		interrupts = <RK_PB0 IRQ_TYPE_LEVEL_LOW>;
672		pinctrl-0 = <&hym8563_int>, <&clk32k_in>;
673		pinctrl-names = "default";
674		wakeup-source;
675	};
676
677	/* Battery profile from BSP device tree. */
678	battery@62 {
679		compatible = "cellwise,cw2015";
680		reg = <0x62>;
681
682		cellwise,battery-profile = /bits/ 8
683			<0x18 0x0A 0x76 0x6A 0x6A 0x6A 0x68 0x66
684			 0x62 0x5E 0x5A 0x58 0x5F 0x59 0x46 0x3D
685			 0x35 0x2D 0x28 0x21 0x29 0x38 0x44 0x50
686			 0x1A 0x85 0x07 0xAE 0x14 0x28 0x48 0x56
687			 0x66 0x66 0x66 0x6A 0x3E 0x1A 0x6C 0x3D
688			 0x09 0x38 0x1A 0x49 0x7B 0x96 0xA2 0x15
689			 0x3B 0x77 0x9A 0xB1 0x80 0x87 0xB0 0xCB
690			 0x2F 0x00 0x64 0xA5 0xB5 0x1C 0xF0 0x49>;
691		cellwise,monitor-interval-ms = <5000>;
692		monitored-battery = <&battery>;
693		power-supplies = <&bq25703>;
694		status = "okay";
695	};
696
697	bq25703: charger@6b {
698		compatible = "ti,bq25703a";
699		reg = <0x6b>;
700		input-current-limit-microamp = <5000000>;
701		interrupt-parent = <&gpio0>;
702		interrupts = <RK_PD5 IRQ_TYPE_LEVEL_LOW>;
703		monitored-battery = <&battery>;
704		pinctrl-0 = <&charger_int_h>;
705		pinctrl-names = "default";
706		power-supplies = <&fusb302>;
707
708		regulators {
709			usb_otg_vbus: vbus {
710				enable-gpios = <&gpio4 RK_PA6 GPIO_ACTIVE_HIGH>;
711				pinctrl-0 = <&boost_enable_h>;
712				pinctrl-names = "default";
713				regulator-max-microamp = <960000>;
714				regulator-max-microvolt = <5088000>;
715				regulator-min-microamp = <512000>;
716				regulator-min-microvolt = <4992000>;
717				regulator-name = "usb_otg_vbus";
718			};
719		};
720	};
721};
722
723&i2c7 {
724	status = "okay";
725
726	es8388: audio-codec@11 {
727		compatible = "everest,es8388", "everest,es8328";
728		reg = <0x11>;
729		assigned-clock-rates = <12288000>;
730		assigned-clocks = <&cru I2S0_8CH_MCLKOUT>;
731		AVDD-supply = <&vcc_3v3_s3>;
732		clocks = <&cru I2S0_8CH_MCLKOUT>;
733		DVDD-supply = <&vcc_1v8_s3>;
734		HPVDD-supply = <&vcc_3v3_s3>;
735		PVDD-supply = <&vcc_1v8_s3>;
736		#sound-dai-cells = <0>;
737	};
738};
739
740&i2s0_8ch {
741	pinctrl-0 = <&i2s0_lrck
742		     &i2s0_mclk
743		     &i2s0_sclk
744		     &i2s0_sdi0
745		     &i2s0_sdo0>;
746	status = "okay";
747};
748
749&mipidcphy0 {
750	status = "okay";
751};
752
753&package_thermal {
754	polling-delay = <1000>;
755
756	trips {
757		package_fan0: package-fan0 {
758			temperature = <55000>;
759			hysteresis = <2000>;
760			type = "active";
761		};
762
763		package_fan1: package-fan1 {
764			temperature = <65000>;
765			hysteresis = <2000>;
766			type = "active";
767		};
768	};
769
770	cooling-maps {
771		map1 {
772			trip = <&package_fan0>;
773			cooling-device = <&pwm_fan THERMAL_NO_LIMIT 1>;
774		};
775
776		map2 {
777			trip = <&package_fan1>;
778			cooling-device = <&pwm_fan 2 THERMAL_NO_LIMIT>;
779		};
780	};
781};
782
783/*
784 * Attempts to use an M.2 SATA in this slot worked intermittently
785 * with the correct nodes enabled in device-tree, but eventually
786 * resulted in a destroyed board. Advise caution.
787 */
788&pcie2x1l1 {
789	pinctrl-0 = <&pcie_rst>;
790	pinctrl-names = "default";
791	reset-gpios = <&gpio3 RK_PD1 GPIO_ACTIVE_HIGH>;
792	status = "okay";
793};
794
795&pd_gpu {
796	domain-supply = <&vdd_gpu_s0>;
797};
798
799&pd_npu {
800	domain-supply = <&vdd_npu_s0>;
801};
802
803&pinctrl {
804	audio-amplifier {
805		headphone_amplifier_en: headphone-amplifier-en {
806			rockchip,pins =
807				<0 RK_PD4 RK_FUNC_GPIO &pcfg_pull_none>;
808		};
809
810		hp_detect: headphone-detect {
811			rockchip,pins =
812				<3 RK_PA6 RK_FUNC_GPIO &pcfg_pull_none>;
813		};
814
815		speaker_amplifier_en: speaker-amplifier-en {
816			rockchip,pins =
817				<4 RK_PA5 RK_FUNC_GPIO &pcfg_pull_none>;
818		};
819	};
820
821	bt {
822		bt_enable_h: bt-enable-h {
823			rockchip,pins =
824				<3 RK_PB7 RK_FUNC_GPIO &pcfg_pull_none>;
825		};
826
827		bt_host_wake_l: bt-host-wake-l {
828			rockchip,pins =
829				<3 RK_PB0 RK_FUNC_GPIO &pcfg_pull_down>;
830		};
831
832		bt_wake_l: bt-wake-l {
833			rockchip,pins =
834				<3 RK_PB1 RK_FUNC_GPIO &pcfg_pull_up>;
835		};
836	};
837
838	charger {
839		boost_enable_h: boost-enable-h {
840			rockchip,pins =
841				<4 RK_PA6 RK_FUNC_GPIO &pcfg_pull_none>;
842		};
843		charger_int_h: charger-int-h {
844			rockchip,pins =
845				<0 RK_PD5 RK_FUNC_GPIO &pcfg_pull_up>;
846		};
847	};
848
849	hym8563 {
850		hym8563_int: hym8563-int {
851			rockchip,pins =
852				<0 RK_PB0 RK_FUNC_GPIO &pcfg_pull_up>;
853		};
854	};
855
856	gpio-btns {
857		btn_pins_ctrl: btn-pins-ctrl {
858			rockchip,pins =
859				<1 RK_PA0 RK_FUNC_GPIO &pcfg_pull_up>,
860				<1 RK_PA2 RK_FUNC_GPIO &pcfg_pull_up>,
861				<1 RK_PA3 RK_FUNC_GPIO &pcfg_pull_up>,
862				<1 RK_PA4 RK_FUNC_GPIO &pcfg_pull_up>,
863				<1 RK_PA5 RK_FUNC_GPIO &pcfg_pull_up>,
864				<1 RK_PB0 RK_FUNC_GPIO &pcfg_pull_up>,
865				<1 RK_PB1 RK_FUNC_GPIO &pcfg_pull_up>,
866				<1 RK_PB2 RK_FUNC_GPIO &pcfg_pull_up>,
867				<1 RK_PB3 RK_FUNC_GPIO &pcfg_pull_up>,
868				<1 RK_PB4 RK_FUNC_GPIO &pcfg_pull_up>,
869				<1 RK_PB5 RK_FUNC_GPIO &pcfg_pull_up>,
870				<1 RK_PB6 RK_FUNC_GPIO &pcfg_pull_up>,
871				<1 RK_PB7 RK_FUNC_GPIO &pcfg_pull_up>,
872				<1 RK_PC6 RK_FUNC_GPIO &pcfg_pull_up>,
873				<1 RK_PD6 RK_FUNC_GPIO &pcfg_pull_up>,
874				<1 RK_PD7 RK_FUNC_GPIO &pcfg_pull_up>;
875		};
876	};
877
878	gpio-leds {
879		led_pins: led-pins {
880			rockchip,pins =
881				<3 RK_PC1 RK_FUNC_GPIO &pcfg_pull_up>,
882				<3 RK_PC2 RK_FUNC_GPIO &pcfg_pull_up>;
883		};
884	};
885
886	lcd {
887		lcd_bl_en: lcd-bl-en {
888			rockchip,pins =
889				<3 RK_PC0 RK_FUNC_GPIO &pcfg_pull_none>;
890		};
891
892		lcd_rst: lcd-rst {
893			rockchip,pins =
894				<1 RK_PD5 RK_FUNC_GPIO &pcfg_pull_none>;
895		};
896	};
897
898	pcie-pins {
899		pcie_rst: pcie-rst {
900			rockchip,pins =
901				<3 RK_PD1 RK_FUNC_GPIO &pcfg_pull_up>;
902		};
903	};
904
905	sd-pwr {
906		sd_s0_pwr: sd-s0-pwr {
907			rockchip,pins =
908				<4 RK_PB4 RK_FUNC_GPIO &pcfg_pull_up>;
909		};
910	};
911
912	spk-pwr {
913		vcc5v0_spk_pwr: vcc5v0-spk-pwr {
914			rockchip,pins =
915				<4 RK_PA2 RK_FUNC_GPIO &pcfg_pull_up>;
916		};
917	};
918
919	touch {
920		touch_int: touch-int {
921			rockchip,pins =
922				<1 RK_PA6 RK_FUNC_GPIO &pcfg_pull_up>;
923		};
924
925		touch_rst: touch-rst {
926			rockchip,pins =
927				<1 RK_PA7 RK_FUNC_GPIO &pcfg_pull_up>;
928		};
929	};
930
931	usb-typec {
932		usbc0_int: usbc0-int {
933			rockchip,pins =
934				<0 RK_PC7 RK_FUNC_GPIO &pcfg_pull_up>;
935		};
936
937		usbc_sbu_dc: usbc-sbu-dc {
938			rockchip,pins =
939				<4 RK_PA0 RK_FUNC_GPIO &pcfg_pull_none>,
940				<4 RK_PA1 RK_FUNC_GPIO &pcfg_pull_none>;
941		};
942	};
943
944	vcc3v3-lcd {
945		vcc_lcd_h: vcc-lcd-h {
946			rockchip,pins =
947				<4 RK_PA7 RK_FUNC_GPIO &pcfg_pull_up>;
948		};
949	};
950
951	vibrator {
952		vib_left_h: vib-left-h {
953			rockchip,pins =
954				<4 RK_PA4 RK_FUNC_GPIO &pcfg_pull_down>;
955		};
956
957		vib_right_h: vib-right-h {
958			rockchip,pins =
959				<1 RK_PA1 RK_FUNC_GPIO &pcfg_pull_down>;
960		};
961	};
962
963	wifi {
964		wifi_enable_h: wifi-enable-h {
965			rockchip,pins =
966				<3 RK_PB4 RK_FUNC_GPIO &pcfg_pull_up>;
967		};
968
969		wifi_host_wake_irq: wifi-host-wake-irq {
970			rockchip,pins =
971				<0 RK_PA0 RK_FUNC_GPIO &pcfg_pull_down>;
972		};
973	};
974};
975
976&pwm12 {
977	pinctrl-0 = <&pwm12m1_pins>;
978	status = "okay";
979};
980
981&pwm13 {
982	pinctrl-0 = <&pwm13m1_pins>;
983	status = "okay";
984};
985
986&rknn_core_0 {
987	npu-supply = <&vdd_npu_s0>;
988	sram-supply = <&vdd_npu_s0>;
989	status = "okay";
990};
991
992&rknn_core_1 {
993	npu-supply = <&vdd_npu_s0>;
994	sram-supply = <&vdd_npu_s0>;
995	status = "okay";
996};
997
998&rknn_core_2 {
999	npu-supply = <&vdd_npu_s0>;
1000	sram-supply = <&vdd_npu_s0>;
1001	status = "okay";
1002};
1003
1004&rknn_mmu_0 {
1005	status = "okay";
1006};
1007
1008&rknn_mmu_1 {
1009	status = "okay";
1010};
1011
1012&rknn_mmu_2 {
1013	status = "okay";
1014};
1015
1016&saradc {
1017	vref-supply = <&vcc_1v8_s0>;
1018	status = "okay";
1019};
1020
1021&sdhci {
1022	bus-width = <8>;
1023	mmc-hs400-1_8v;
1024	mmc-hs400-enhanced-strobe;
1025	no-sd;
1026	no-sdio;
1027	non-removable;
1028	status = "okay";
1029};
1030
1031&sdio {
1032	#address-cells = <1>;
1033	bus-width = <4>;
1034	cap-sd-highspeed;
1035	cap-sdio-irq;
1036	disable-wp;
1037	keep-power-in-suspend;
1038	max-frequency = <150000000>;
1039	mmc-pwrseq = <&sdio_pwrseq>;
1040	no-mmc;
1041	no-sd;
1042	sd-uhs-sdr104;
1043	#size-cells = <0>;
1044	status = "okay";
1045
1046	brcmf: wifi@1 {
1047		compatible = "brcm,bcm43456-fmac", "brcm,bcm4329-fmac";
1048		reg = <1>;
1049		interrupt-parent = <&gpio0>;
1050		interrupts = <RK_PA0 IRQ_TYPE_LEVEL_HIGH>;
1051		interrupt-names = "host-wake";
1052		pinctrl-0 = <&wifi_host_wake_irq>;
1053		pinctrl-names = "default";
1054	};
1055};
1056
1057&sdmmc {
1058	bus-width = <4>;
1059	cap-mmc-highspeed;
1060	cap-sd-highspeed;
1061	disable-wp;
1062	max-frequency = <150000000>;
1063	no-sdio;
1064	no-mmc;
1065	sd-uhs-sdr104;
1066	vmmc-supply = <&vcc_3v3_sd_s0>;
1067	vqmmc-supply = <&vccio_sd_s0>;
1068	status = "okay";
1069};
1070
1071&spi2 {
1072	#address-cells = <1>;
1073	assigned-clocks = <&cru CLK_SPI2>;
1074	assigned-clock-rates = <200000000>;
1075	num-cs = <1>;
1076	pinctrl-0 = <&spi2m2_pins>, <&spi2m2_cs0>;
1077	pinctrl-names = "default";
1078	#size-cells = <0>;
1079	status = "okay";
1080
1081	pmic@0 {
1082		compatible = "rockchip,rk806";
1083		reg = <0x0>;
1084		#gpio-cells = <2>;
1085		gpio-controller;
1086		interrupt-parent = <&gpio0>;
1087		interrupts = <RK_PA7 IRQ_TYPE_LEVEL_LOW>;
1088		pinctrl-0 = <&pmic_pins>, <&rk806_dvs1_null>,
1089			    <&rk806_dvs2_null>, <&rk806_dvs3_null>;
1090		pinctrl-names = "default";
1091		spi-max-frequency = <1000000>;
1092		system-power-controller;
1093
1094		vcc1-supply = <&vcc5v0_sys>;
1095		vcc2-supply = <&vcc5v0_sys>;
1096		vcc3-supply = <&vcc5v0_sys>;
1097		vcc4-supply = <&vcc5v0_sys>;
1098		vcc5-supply = <&vcc5v0_sys>;
1099		vcc6-supply = <&vcc5v0_sys>;
1100		vcc7-supply = <&vcc5v0_sys>;
1101		vcc8-supply = <&vcc5v0_sys>;
1102		vcc9-supply = <&vcc5v0_sys>;
1103		vcc10-supply = <&vcc5v0_sys>;
1104		vcc11-supply = <&vcc_2v0_pldo_s3>;
1105		vcc12-supply = <&vcc5v0_sys>;
1106		vcc13-supply = <&vcc_1v1_nldo_s3>;
1107		vcc14-supply = <&vcc_1v1_nldo_s3>;
1108		vcca-supply = <&vcc5v0_sys>;
1109
1110		rk806_dvs1_null: dvs1-null-pins {
1111			pins = "gpio_pwrctrl1";
1112			function = "pin_fun0";
1113		};
1114
1115		rk806_dvs2_null: dvs2-null-pins {
1116			pins = "gpio_pwrctrl2";
1117			function = "pin_fun0";
1118		};
1119
1120		rk806_dvs3_null: dvs3-null-pins {
1121			pins = "gpio_pwrctrl3";
1122			function = "pin_fun0";
1123		};
1124
1125		regulators {
1126			vdd_gpu_s0: dcdc-reg1 {
1127				regulator-boot-on;
1128				regulator-enable-ramp-delay = <400>;
1129				regulator-max-microvolt = <950000>;
1130				regulator-min-microvolt = <550000>;
1131				regulator-name = "vdd_gpu_s0";
1132				regulator-ramp-delay = <12500>;
1133				regulator-state-mem {
1134					regulator-off-in-suspend;
1135				};
1136			};
1137
1138			vdd_cpu_lit_s0: dcdc-reg2 {
1139				regulator-always-on;
1140				regulator-boot-on;
1141				regulator-max-microvolt = <950000>;
1142				regulator-min-microvolt = <550000>;
1143				regulator-ramp-delay = <12500>;
1144				regulator-name = "vdd_cpu_lit_s0";
1145				regulator-state-mem {
1146					regulator-off-in-suspend;
1147				};
1148			};
1149
1150			vdd_logic_s0: dcdc-reg3 {
1151				regulator-always-on;
1152				regulator-boot-on;
1153				regulator-max-microvolt = <750000>;
1154				regulator-min-microvolt = <675000>;
1155				regulator-name = "vdd_logic_s0";
1156				regulator-ramp-delay = <12500>;
1157				regulator-state-mem {
1158					regulator-on-in-suspend;
1159					regulator-suspend-microvolt = <750000>;
1160				};
1161			};
1162
1163			vdd_vdenc_s0: dcdc-reg4 {
1164				regulator-always-on;
1165				regulator-boot-on;
1166				regulator-max-microvolt = <950000>;
1167				regulator-min-microvolt = <550000>;
1168				regulator-name = "vdd_vdenc_s0";
1169				regulator-ramp-delay = <12500>;
1170				regulator-state-mem {
1171					regulator-off-in-suspend;
1172				};
1173			};
1174
1175			vdd_ddr_s0: dcdc-reg5 {
1176				regulator-always-on;
1177				regulator-boot-on;
1178				regulator-min-microvolt = <675000>;
1179				regulator-max-microvolt = <900000>;
1180				regulator-ramp-delay = <12500>;
1181				regulator-name = "vdd_ddr_s0";
1182				regulator-state-mem {
1183					regulator-off-in-suspend;
1184					regulator-suspend-microvolt = <850000>;
1185				};
1186			};
1187
1188			vdd2_ddr_s3: dcdc-reg6 {
1189				regulator-always-on;
1190				regulator-boot-on;
1191				regulator-name = "vdd2_ddr_s3";
1192				regulator-state-mem {
1193					regulator-on-in-suspend;
1194				};
1195			};
1196
1197			vcc_2v0_pldo_s3: dcdc-reg7 {
1198				regulator-always-on;
1199				regulator-boot-on;
1200				regulator-max-microvolt = <2000000>;
1201				regulator-min-microvolt = <2000000>;
1202				regulator-name = "vdd_2v0_pldo_s3";
1203				regulator-state-mem {
1204					regulator-on-in-suspend;
1205					regulator-suspend-microvolt = <2000000>;
1206				};
1207			};
1208
1209			vcc_3v3_s3: dcdc-reg8 {
1210				regulator-always-on;
1211				regulator-boot-on;
1212				regulator-max-microvolt = <3300000>;
1213				regulator-min-microvolt = <3300000>;
1214				regulator-name = "vcc_3v3_s3";
1215				regulator-state-mem {
1216					regulator-on-in-suspend;
1217					regulator-suspend-microvolt = <3300000>;
1218				};
1219			};
1220
1221			vddq_ddr_s0: dcdc-reg9 {
1222				regulator-always-on;
1223				regulator-boot-on;
1224				regulator-name = "vddq_ddr_s0";
1225				regulator-state-mem {
1226					regulator-off-in-suspend;
1227				};
1228			};
1229
1230			vcc_1v8_s3: dcdc-reg10 {
1231				regulator-always-on;
1232				regulator-boot-on;
1233				regulator-max-microvolt = <1800000>;
1234				regulator-min-microvolt = <1800000>;
1235				regulator-name = "vcc_1v8_s3";
1236				regulator-state-mem {
1237					regulator-on-in-suspend;
1238					regulator-suspend-microvolt = <1800000>;
1239				};
1240			};
1241
1242			avcc_1v8_s0: pldo-reg1 {
1243				regulator-always-on;
1244				regulator-boot-on;
1245				regulator-max-microvolt = <1800000>;
1246				regulator-min-microvolt = <1800000>;
1247				regulator-name = "avcc_1v8_s0";
1248				regulator-state-mem {
1249					regulator-off-in-suspend;
1250				};
1251			};
1252
1253			vcc_1v8_s0: pldo-reg2 {
1254				regulator-always-on;
1255				regulator-boot-on;
1256				regulator-max-microvolt = <1800000>;
1257				regulator-min-microvolt = <1800000>;
1258				regulator-name = "vcc_1v8_s0";
1259				regulator-state-mem {
1260					regulator-off-in-suspend;
1261					regulator-suspend-microvolt = <1800000>;
1262				};
1263			};
1264
1265			avdd_1v2_s0: pldo-reg3 {
1266				regulator-always-on;
1267				regulator-boot-on;
1268				regulator-max-microvolt = <1200000>;
1269				regulator-min-microvolt = <1200000>;
1270				regulator-name = "avdd_1v2_s0";
1271				regulator-state-mem {
1272					regulator-off-in-suspend;
1273				};
1274			};
1275
1276			vcc_3v3_s0: pldo-reg4 {
1277				regulator-always-on;
1278				regulator-boot-on;
1279				regulator-max-microvolt = <3300000>;
1280				regulator-min-microvolt = <3300000>;
1281				regulator-name = "vcc_3v3_s0";
1282				regulator-state-mem {
1283					regulator-off-in-suspend;
1284				};
1285			};
1286
1287			vccio_sd_s0: pldo-reg5 {
1288				regulator-always-on;
1289				regulator-boot-on;
1290				regulator-max-microvolt = <3300000>;
1291				regulator-min-microvolt = <1800000>;
1292				regulator-name = "vccio_sd_s0";
1293				regulator-state-mem {
1294					regulator-off-in-suspend;
1295				};
1296			};
1297
1298			vcc_1v8_s3_pldo6: pldo-reg6 {
1299				regulator-always-on;
1300				regulator-boot-on;
1301				regulator-max-microvolt = <1800000>;
1302				regulator-min-microvolt = <1800000>;
1303				regulator-name = "vcc_1v8_s3_pldo6";
1304				regulator-state-mem {
1305					regulator-on-in-suspend;
1306					regulator-suspend-microvolt = <1800000>;
1307				};
1308			};
1309
1310			vdd_0v75_s3: nldo-reg1 {
1311				regulator-always-on;
1312				regulator-boot-on;
1313				regulator-max-microvolt = <750000>;
1314				regulator-min-microvolt = <750000>;
1315				regulator-name = "vdd_0v75_s3";
1316				regulator-state-mem {
1317					regulator-on-in-suspend;
1318					regulator-suspend-microvolt = <750000>;
1319				};
1320			};
1321
1322			vdd_ddr_pll_s0: nldo-reg2 {
1323				regulator-always-on;
1324				regulator-boot-on;
1325				regulator-max-microvolt = <850000>;
1326				regulator-min-microvolt = <850000>;
1327				regulator-name = "vdd_ddr_pll_s0";
1328				regulator-state-mem {
1329					regulator-off-in-suspend;
1330					regulator-suspend-microvolt = <850000>;
1331				};
1332			};
1333
1334			avdd_0v75_s0: nldo-reg3 {
1335				regulator-always-on;
1336				regulator-boot-on;
1337				regulator-max-microvolt = <837500>;
1338				regulator-min-microvolt = <837500>;
1339				regulator-name = "avdd_0v75_s0";
1340				regulator-state-mem {
1341					regulator-off-in-suspend;
1342				};
1343			};
1344
1345			vdd_0v85_s0: nldo-reg4 {
1346				regulator-always-on;
1347				regulator-boot-on;
1348				regulator-min-microvolt = <850000>;
1349				regulator-max-microvolt = <850000>;
1350				regulator-name = "vdd_0v85_s0";
1351				regulator-state-mem {
1352					regulator-off-in-suspend;
1353				};
1354			};
1355
1356			vdd_0v75_s0: nldo-reg5 {
1357				regulator-always-on;
1358				regulator-boot-on;
1359				regulator-min-microvolt = <750000>;
1360				regulator-max-microvolt = <750000>;
1361				regulator-name = "vdd_0v75_s0";
1362				regulator-state-mem {
1363					regulator-off-in-suspend;
1364				};
1365			};
1366		};
1367	};
1368};
1369
1370&tsadc {
1371	status = "okay";
1372};
1373
1374&u2phy0 {
1375	status = "okay";
1376};
1377
1378&u2phy0_otg {
1379	status = "okay";
1380};
1381
1382&uart2 {
1383	pinctrl-0 = <&uart2m0_xfer>;
1384	status = "okay";
1385};
1386
1387&uart9 {
1388	pinctrl-0 = <&uart9m2_xfer>, <&uart9m2_ctsn>, <&uart9m2_rtsn>;
1389	uart-has-rtscts;
1390	status = "okay";
1391
1392	bluetooth {
1393		compatible = "brcm,bcm4345c5";
1394		clocks = <&rtc_hym8563>;
1395		clock-names = "lpo";
1396		device-wakeup-gpios = <&gpio3 RK_PB1 GPIO_ACTIVE_HIGH>;
1397		interrupt-parent = <&gpio3>;
1398		interrupts = <RK_PB0 IRQ_TYPE_EDGE_FALLING>;
1399		pinctrl-0 = <&bt_enable_h>, <&bt_host_wake_l>, <&bt_wake_l>;
1400		pinctrl-names = "default";
1401		shutdown-gpios = <&gpio3 RK_PB7 GPIO_ACTIVE_HIGH>;
1402	};
1403};
1404
1405&usb_host0_xhci {
1406	usb-role-switch;
1407	status = "okay";
1408
1409	port {
1410		#address-cells = <1>;
1411		#size-cells = <0>;
1412		dwc3_0_role_switch: endpoint@0 {
1413			reg = <0>;
1414			remote-endpoint = <&usbc0_role_sw>;
1415		};
1416	};
1417};
1418
1419&usbdp_phy0 {
1420	mode-switch;
1421	orientation-switch;
1422	pinctrl-0 = <&usbc_sbu_dc>;
1423	pinctrl-names = "default";
1424	sbu1-dc-gpios = <&gpio4 RK_PA0 GPIO_ACTIVE_HIGH>;
1425	sbu2-dc-gpios = <&gpio4 RK_PA1 GPIO_ACTIVE_HIGH>;
1426	rockchip,dp-lane-mux = <2 3>;
1427	status = "okay";
1428
1429	port {
1430		#address-cells = <1>;
1431		#size-cells = <0>;
1432
1433		usbdp_phy0_orientation_switch: endpoint@0 {
1434			reg = <0>;
1435			remote-endpoint = <&usbc0_orien_sw>;
1436		};
1437
1438		usbdp_phy0_dp_altmode_mux: endpoint@1 {
1439			reg = <1>;
1440			remote-endpoint = <&dp_altmode_mux>;
1441		};
1442	};
1443};
1444
1445&vop {
1446	status = "okay";
1447};
1448
1449&vop_mmu {
1450	status = "okay";
1451};
1452
1453&vp3 {
1454	#address-cells = <1>;
1455	#size-cells = <0>;
1456
1457	vp3_out_dsi0: endpoint@ROCKCHIP_VOP2_EP_MIPI0 {
1458		reg = <ROCKCHIP_VOP2_EP_MIPI0>;
1459		remote-endpoint = <&dsi0_in_vp3>;
1460	};
1461};
1462