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/soc/rockchip,vop2.h>
10#include "rk3566.dtsi"
11
12/ {
13	chosen: chosen {
14		stdout-path = "serial2:1500000n8";
15	};
16
17	adc-joystick {
18		compatible = "adc-joystick";
19		io-channels = <&adc_mux 0>,
20			      <&adc_mux 1>,
21			      <&adc_mux 2>,
22			      <&adc_mux 3>;
23		pinctrl-0 = <&joy_mux_en>;
24		pinctrl-names = "default";
25		poll-interval = <60>;
26		#address-cells = <1>;
27		#size-cells = <0>;
28
29		axis@0 {
30			reg = <0>;
31			abs-flat = <32>;
32			abs-fuzz = <32>;
33			abs-range = <1023 15>;
34			linux,code = <ABS_X>;
35		};
36
37		axis@1 {
38			reg = <1>;
39			abs-flat = <32>;
40			abs-fuzz = <32>;
41			abs-range = <15 1023>;
42			linux,code = <ABS_RX>;
43		};
44
45		axis@2 {
46			reg = <2>;
47			abs-flat = <32>;
48			abs-fuzz = <32>;
49			abs-range = <15 1023>;
50			linux,code = <ABS_Y>;
51		};
52
53		axis@3 {
54			reg = <3>;
55			abs-flat = <32>;
56			abs-fuzz = <32>;
57			abs-range = <1023 15>;
58			linux,code = <ABS_RY>;
59		};
60	};
61
62	adc_keys: adc-keys {
63		compatible = "adc-keys";
64		io-channels = <&saradc 0>;
65		io-channel-names = "buttons";
66		keyup-threshold-microvolt = <1800000>;
67		poll-interval = <60>;
68
69		/*
70		 * Button is mapped to F key in BSP kernel, but
71		 * according to input guidelines it should be mode.
72		 */
73		button-mode {
74			label = "MODE";
75			linux,code = <BTN_MODE>;
76			press-threshold-microvolt = <1750>;
77		};
78	};
79
80	adc_mux: adc-mux {
81		compatible = "io-channel-mux";
82		channels = "left_x", "right_x", "left_y", "right_y";
83		#io-channel-cells = <1>;
84		io-channels = <&saradc 3>;
85		io-channel-names = "parent";
86		mux-controls = <&gpio_mux>;
87		settle-time-us = <100>;
88	};
89
90	gpio_keys_control: gpio-keys-control {
91		compatible = "gpio-keys";
92		pinctrl-0 = <&btn_pins_ctrl>;
93		pinctrl-names = "default";
94
95		button-b {
96			gpios = <&gpio3 RK_PC3 GPIO_ACTIVE_LOW>;
97			label = "SOUTH";
98			linux,code = <BTN_SOUTH>;
99		};
100
101		button-down {
102			gpios = <&gpio3 RK_PA4 GPIO_ACTIVE_LOW>;
103			label = "DPAD-DOWN";
104			linux,code = <BTN_DPAD_DOWN>;
105		};
106
107		button-l1 {
108			gpios = <&gpio3 RK_PB1 GPIO_ACTIVE_LOW>;
109			label = "TL";
110			linux,code = <BTN_TL>;
111		};
112
113		button-l2 {
114			gpios = <&gpio3 RK_PB2 GPIO_ACTIVE_LOW>;
115			label = "TL2";
116			linux,code = <BTN_TL2>;
117		};
118
119		button-select {
120			gpios = <&gpio3 RK_PB6 GPIO_ACTIVE_LOW>;
121			label = "SELECT";
122			linux,code = <BTN_SELECT>;
123		};
124
125		button-start {
126			gpios = <&gpio3 RK_PB5 GPIO_ACTIVE_LOW>;
127			label = "START";
128			linux,code = <BTN_START>;
129		};
130
131		button-thumbl {
132			gpios = <&gpio3 RK_PA1 GPIO_ACTIVE_LOW>;
133			label = "THUMBL";
134			linux,code = <BTN_THUMBL>;
135		};
136
137		button-thumbr {
138			gpios = <&gpio3 RK_PA2 GPIO_ACTIVE_LOW>;
139			label = "THUMBR";
140			linux,code = <BTN_THUMBR>;
141		};
142
143		button-up {
144			gpios = <&gpio3 RK_PA3 GPIO_ACTIVE_LOW>;
145			label = "DPAD-UP";
146			linux,code = <BTN_DPAD_UP>;
147		};
148
149		button-x {
150			gpios = <&gpio3 RK_PC0 GPIO_ACTIVE_LOW>;
151			label = "NORTH";
152			linux,code = <BTN_NORTH>;
153		};
154	};
155
156	gpio_keys_vol: gpio-keys-vol {
157		compatible = "gpio-keys";
158		autorepeat;
159		pinctrl-0 = <&btn_pins_vol>;
160		pinctrl-names = "default";
161
162		button-vol-down {
163			gpios = <&gpio3 RK_PB0 GPIO_ACTIVE_LOW>;
164			label = "VOLUMEDOWN";
165			linux,code = <KEY_VOLUMEDOWN>;
166		};
167
168		button-vol-up {
169			gpios = <&gpio3 RK_PA7 GPIO_ACTIVE_LOW>;
170			label = "VOLUMEUP";
171			linux,code = <KEY_VOLUMEUP>;
172		};
173	};
174
175	gpio_mux: mux-controller {
176		compatible = "gpio-mux";
177		mux-gpios = <&gpio0 RK_PB6 GPIO_ACTIVE_LOW>,
178			    <&gpio0 RK_PB7 GPIO_ACTIVE_LOW>;
179		#mux-control-cells = <0>;
180	};
181
182	hdmi-con {
183		compatible = "hdmi-connector";
184		ddc-i2c-bus = <&i2c5>;
185		type = "c";
186
187		port {
188			hdmi_con_in: endpoint {
189				remote-endpoint = <&hdmi_out_con>;
190			};
191		};
192	};
193
194	leds: gpio-leds {
195		compatible = "gpio-leds";
196		pinctrl-0 = <&led_pins>;
197		pinctrl-names = "default";
198
199		green_led: led-0 {
200			color = <LED_COLOR_ID_GREEN>;
201			default-state = "on";
202			function = LED_FUNCTION_POWER;
203			gpios = <&gpio0 RK_PC5 GPIO_ACTIVE_HIGH>;
204		};
205
206		amber_led: led-1 {
207			color = <LED_COLOR_ID_AMBER>;
208			function = LED_FUNCTION_CHARGING;
209			gpios = <&gpio0 RK_PC6 GPIO_ACTIVE_HIGH>;
210			retain-state-suspended;
211		};
212
213		red_led: led-2 {
214			color = <LED_COLOR_ID_RED>;
215			default-state = "off";
216			function = LED_FUNCTION_STATUS;
217			gpios = <&gpio0 RK_PC7 GPIO_ACTIVE_HIGH>;
218		};
219	};
220
221	sdio_pwrseq: sdio-pwrseq {
222		compatible = "mmc-pwrseq-simple";
223		clocks = <&rk817 1>;
224		clock-names = "ext_clock";
225		pinctrl-0 = <&wifi_enable_h>;
226		pinctrl-names = "default";
227		post-power-on-delay-ms = <200>;
228		reset-gpios = <&gpio4 RK_PA2 GPIO_ACTIVE_LOW>;
229	};
230
231	vcc3v3_lcd0_n: regulator-vcc3v3-lcd0 {
232		compatible = "regulator-fixed";
233		gpio = <&gpio0 RK_PC2 GPIO_ACTIVE_HIGH>;
234		enable-active-high;
235		pinctrl-0 = <&vcc_lcd_h>;
236		pinctrl-names = "default";
237		regulator-boot-on;
238		regulator-min-microvolt = <3300000>;
239		regulator-max-microvolt = <3300000>;
240		regulator-name = "vcc3v3_lcd0_n";
241		vin-supply = <&vcc_3v3>;
242		regulator-state-mem {
243			regulator-off-in-suspend;
244		};
245	};
246
247	vcc_sys: regulator-vcc-sys {
248		compatible = "regulator-fixed";
249		regulator-always-on;
250		regulator-boot-on;
251		regulator-min-microvolt = <3800000>;
252		regulator-max-microvolt = <3800000>;
253		regulator-name = "vcc_sys";
254	};
255
256	vcc_wifi: regulator-vcc-wifi {
257		compatible = "regulator-fixed";
258		enable-active-high;
259		gpio = <&gpio0 RK_PA0 GPIO_ACTIVE_HIGH>;
260		pinctrl-0 = <&vcc_wifi_h>;
261		pinctrl-names = "default";
262		regulator-always-on;
263		regulator-boot-on;
264		regulator-min-microvolt = <3300000>;
265		regulator-max-microvolt = <3300000>;
266		regulator-name = "vcc_wifi";
267	};
268
269	vibrator: pwm-vibrator {
270		compatible = "pwm-vibrator";
271		pwm-names = "enable";
272		pwms = <&pwm5 0 1000000000 0>;
273	};
274};
275
276&combphy1 {
277	status = "okay";
278};
279
280&cpu0 {
281	cpu-supply = <&vdd_cpu>;
282};
283
284&cpu1 {
285	cpu-supply = <&vdd_cpu>;
286};
287
288&cpu2 {
289	cpu-supply = <&vdd_cpu>;
290};
291
292&cpu3 {
293	cpu-supply = <&vdd_cpu>;
294};
295
296&gpu {
297	mali-supply = <&vdd_gpu>;
298	status = "okay";
299};
300
301&hdmi {
302	ddc-i2c-bus = <&i2c5>;
303	pinctrl-0 = <&hdmitxm0_cec>;
304	pinctrl-names = "default";
305	status = "okay";
306};
307
308&hdmi_in {
309	hdmi_in_vp0: endpoint {
310		remote-endpoint = <&vp0_out_hdmi>;
311	};
312};
313
314&hdmi_out {
315	hdmi_out_con: endpoint {
316		remote-endpoint = <&hdmi_con_in>;
317	};
318};
319
320&hdmi_sound {
321	status = "okay";
322};
323
324&i2c0 {
325	status = "okay";
326
327	rk817: pmic@20 {
328		compatible = "rockchip,rk817";
329		reg = <0x20>;
330		interrupt-parent = <&gpio0>;
331		interrupts = <RK_PA3 IRQ_TYPE_LEVEL_LOW>;
332		clock-output-names = "rk808-clkout1", "rk808-clkout2";
333		clock-names = "mclk";
334		clocks = <&cru I2S1_MCLKOUT_TX>;
335		assigned-clocks = <&cru I2S1_MCLKOUT_TX>;
336		assigned-clock-parents = <&cru CLK_I2S1_8CH_TX>;
337		#clock-cells = <1>;
338		#sound-dai-cells = <0>;
339		pinctrl-names = "default";
340		pinctrl-0 = <&i2s1m0_mclk>, <&pmic_int_l>;
341		wakeup-source;
342
343		vcc1-supply = <&vcc_sys>;
344		vcc2-supply = <&vcc_sys>;
345		vcc3-supply = <&vcc_sys>;
346		vcc4-supply = <&vcc_sys>;
347		vcc5-supply = <&vcc_sys>;
348		vcc6-supply = <&vcc_sys>;
349		vcc7-supply = <&vcc_sys>;
350		vcc8-supply = <&vcc_sys>;
351		vcc9-supply = <&dcdc_boost>;
352
353		regulators {
354			vdd_logic: DCDC_REG1 {
355				regulator-always-on;
356				regulator-boot-on;
357				regulator-min-microvolt = <500000>;
358				regulator-max-microvolt = <1350000>;
359				regulator-init-microvolt = <900000>;
360				regulator-ramp-delay = <6001>;
361				regulator-initial-mode = <0x2>;
362				regulator-name = "vdd_logic";
363				regulator-state-mem {
364					regulator-off-in-suspend;
365					regulator-suspend-microvolt = <900000>;
366				};
367			};
368
369			vdd_gpu: DCDC_REG2 {
370				regulator-always-on;
371				regulator-boot-on;
372				regulator-min-microvolt = <500000>;
373				regulator-max-microvolt = <1350000>;
374				regulator-init-microvolt = <900000>;
375				regulator-ramp-delay = <6001>;
376				regulator-initial-mode = <0x2>;
377				regulator-name = "vdd_gpu";
378				regulator-state-mem {
379					regulator-off-in-suspend;
380				};
381			};
382
383			vcc_ddr: DCDC_REG3 {
384				regulator-always-on;
385				regulator-boot-on;
386				regulator-initial-mode = <0x2>;
387				regulator-name = "vcc_ddr";
388				regulator-state-mem {
389					regulator-on-in-suspend;
390				};
391			};
392
393			vcc_3v3: DCDC_REG4 {
394				regulator-always-on;
395				regulator-boot-on;
396				regulator-min-microvolt = <3300000>;
397				regulator-max-microvolt = <3300000>;
398				regulator-initial-mode = <0x2>;
399				regulator-name = "vcc_3v3";
400				regulator-state-mem {
401					regulator-on-in-suspend;
402					regulator-suspend-microvolt = <3300000>;
403				};
404			};
405
406			vcca1v8_pmu: LDO_REG1 {
407				regulator-always-on;
408				regulator-boot-on;
409				regulator-min-microvolt = <1800000>;
410				regulator-max-microvolt = <1800000>;
411				regulator-name = "vcca1v8_pmu";
412				regulator-state-mem {
413					regulator-on-in-suspend;
414					regulator-suspend-microvolt = <1800000>;
415				};
416			};
417
418			vdda_0v9: LDO_REG2 {
419				regulator-always-on;
420				regulator-boot-on;
421				regulator-min-microvolt = <900000>;
422				regulator-max-microvolt = <900000>;
423				regulator-name = "vdda_0v9";
424				regulator-state-mem {
425					regulator-off-in-suspend;
426				};
427			};
428
429			vdda0v9_pmu: LDO_REG3 {
430				regulator-always-on;
431				regulator-boot-on;
432				regulator-min-microvolt = <900000>;
433				regulator-max-microvolt = <900000>;
434				regulator-name = "vdda0v9_pmu";
435				regulator-state-mem {
436					regulator-on-in-suspend;
437					regulator-suspend-microvolt = <900000>;
438				};
439			};
440
441			vccio_acodec: LDO_REG4 {
442				regulator-always-on;
443				regulator-boot-on;
444				regulator-min-microvolt = <3300000>;
445				regulator-max-microvolt = <3300000>;
446				regulator-name = "vccio_acodec";
447				regulator-state-mem {
448					regulator-off-in-suspend;
449				};
450			};
451
452			vccio_sd: LDO_REG5 {
453				regulator-always-on;
454				regulator-boot-on;
455				regulator-min-microvolt = <1800000>;
456				regulator-max-microvolt = <3300000>;
457				regulator-name = "vccio_sd";
458				regulator-state-mem {
459					regulator-off-in-suspend;
460				};
461			};
462
463			vcc3v3_pmu: LDO_REG6 {
464				regulator-always-on;
465				regulator-boot-on;
466				regulator-min-microvolt = <3300000>;
467				regulator-max-microvolt = <3300000>;
468				regulator-name = "vcc3v3_pmu";
469				regulator-state-mem {
470					regulator-on-in-suspend;
471					regulator-suspend-microvolt = <3300000>;
472				};
473			};
474
475			vcc_1v8: LDO_REG7 {
476				regulator-always-on;
477				regulator-boot-on;
478				regulator-min-microvolt = <1800000>;
479				regulator-max-microvolt = <1800000>;
480				regulator-name = "vcc_1v8";
481				regulator-state-mem {
482					regulator-off-in-suspend;
483				};
484			};
485
486			vcc1v8_dvp: LDO_REG8 {
487				regulator-always-on;
488				regulator-boot-on;
489				regulator-min-microvolt = <1800000>;
490				regulator-max-microvolt = <3300000>;
491				regulator-name = "vcc1v8_dvp";
492				regulator-state-mem {
493					regulator-off-in-suspend;
494				};
495			};
496
497			vcc2v8_dvp: LDO_REG9 {
498				regulator-always-on;
499				regulator-boot-on;
500				regulator-min-microvolt = <2800000>;
501				regulator-max-microvolt = <2800000>;
502				regulator-name = "vcc2v8_dvp";
503				regulator-state-mem {
504					regulator-off-in-suspend;
505				};
506			};
507
508			dcdc_boost: BOOST {
509				regulator-always-on;
510				regulator-boot-on;
511				regulator-min-microvolt = <4700000>;
512				regulator-max-microvolt = <5400000>;
513				regulator-name = "boost";
514				regulator-state-mem {
515					regulator-off-in-suspend;
516				};
517			};
518
519			otg_switch: OTG_SWITCH {
520				regulator-name = "otg_switch";
521				regulator-state-mem {
522					regulator-off-in-suspend;
523				};
524			};
525		};
526	};
527
528	vdd_cpu: regulator@40 {
529		compatible = "fcs,fan53555";
530		reg = <0x40>;
531		fcs,suspend-voltage-selector = <1>;
532		regulator-always-on;
533		regulator-boot-on;
534		regulator-min-microvolt = <712500>;
535		regulator-max-microvolt = <1390000>;
536		regulator-init-microvolt = <900000>;
537		regulator-name = "vdd_cpu";
538		regulator-ramp-delay = <2300>;
539		vin-supply = <&vcc_sys>;
540		regulator-state-mem {
541			regulator-off-in-suspend;
542		};
543	};
544};
545
546&i2c1 {
547	/* Unknown/unused device at 0x3c */
548	status = "disabled";
549};
550
551&i2c5 {
552	pinctrl-0 = <&i2c5m1_xfer>;
553	pinctrl-names = "default";
554	status = "okay";
555};
556
557&i2s0_8ch {
558	status = "okay";
559};
560
561&i2s1_8ch {
562	pinctrl-0 = <&i2s1m0_sclktx
563		     &i2s1m0_lrcktx
564		     &i2s1m0_sdi0
565		     &i2s1m0_sdo0>;
566	pinctrl-names = "default";
567	rockchip,trcm-sync-tx-only;
568	status = "okay";
569};
570
571&pinctrl {
572	gpio-btns {
573		btn_pins_ctrl: btn-pins-ctrl {
574			rockchip,pins =
575				<3 RK_PA1 RK_FUNC_GPIO &pcfg_pull_up>,
576				<3 RK_PA2 RK_FUNC_GPIO &pcfg_pull_up>,
577				<3 RK_PA3 RK_FUNC_GPIO &pcfg_pull_up>,
578				<3 RK_PA4 RK_FUNC_GPIO &pcfg_pull_up>,
579				<3 RK_PA5 RK_FUNC_GPIO &pcfg_pull_up>,
580				<3 RK_PA6 RK_FUNC_GPIO &pcfg_pull_up>,
581				<3 RK_PB1 RK_FUNC_GPIO &pcfg_pull_up>,
582				<3 RK_PB2 RK_FUNC_GPIO &pcfg_pull_up>,
583				<3 RK_PB3 RK_FUNC_GPIO &pcfg_pull_up>,
584				<3 RK_PB4 RK_FUNC_GPIO &pcfg_pull_up>,
585				<3 RK_PB5 RK_FUNC_GPIO &pcfg_pull_up>,
586				<3 RK_PB6 RK_FUNC_GPIO &pcfg_pull_up>,
587				<3 RK_PC0 RK_FUNC_GPIO &pcfg_pull_up>,
588				<3 RK_PC1 RK_FUNC_GPIO &pcfg_pull_up>,
589				<3 RK_PC2 RK_FUNC_GPIO &pcfg_pull_up>,
590				<3 RK_PC3 RK_FUNC_GPIO &pcfg_pull_up>;
591		};
592
593		btn_pins_vol: btn-pins-vol {
594			rockchip,pins =
595			<3 RK_PA7 RK_FUNC_GPIO &pcfg_pull_up>,
596			<3 RK_PB0 RK_FUNC_GPIO &pcfg_pull_up>;
597		};
598	};
599
600	gpio-led {
601		led_pins: led-pins {
602			rockchip,pins =
603				<0 RK_PC5 RK_FUNC_GPIO &pcfg_pull_none>,
604				<0 RK_PC6 RK_FUNC_GPIO &pcfg_pull_none>,
605				<0 RK_PC7 RK_FUNC_GPIO &pcfg_pull_none>;
606		};
607	};
608
609	joy-mux {
610		joy_mux_en: joy-mux-en {
611			rockchip,pins =
612				<0 RK_PB5 RK_FUNC_GPIO &pcfg_output_low>;
613		};
614	};
615
616	pmic {
617		pmic_int_l: pmic-int-l {
618			rockchip,pins =
619				<0 RK_PA3 RK_FUNC_GPIO &pcfg_pull_up>;
620		};
621	};
622
623	sdio-pwrseq {
624		wifi_enable_h: wifi-enable-h {
625			rockchip,pins =
626				<4 RK_PA2 RK_FUNC_GPIO &pcfg_pull_none>;
627		};
628	};
629
630	vcc3v3-lcd {
631		vcc_lcd_h: vcc-lcd-h {
632			rockchip,pins =
633				<0 RK_PC2 RK_FUNC_GPIO &pcfg_pull_none>;
634		};
635	};
636
637	vcc-wifi {
638		vcc_wifi_h: vcc-wifi-h {
639			rockchip,pins =
640				<0 RK_PA0 RK_FUNC_GPIO &pcfg_pull_none>;
641		};
642	};
643};
644
645&pmu_io_domains {
646	status = "okay";
647	pmuio1-supply = <&vcc3v3_pmu>;
648	pmuio2-supply = <&vcc3v3_pmu>;
649	vccio1-supply = <&vccio_acodec>;
650	vccio3-supply = <&vccio_sd>;
651	vccio4-supply = <&vcc_1v8>;
652	vccio5-supply = <&vcc_3v3>;
653	vccio6-supply = <&vcc1v8_dvp>;
654	vccio7-supply = <&vcc_3v3>;
655};
656
657&pwm5 {
658	status = "okay";
659};
660
661&saradc {
662	vref-supply = <&vcc_1v8>;
663	status = "okay";
664};
665
666&sdmmc0 {
667	bus-width = <4>;
668	cap-sd-highspeed;
669	cd-gpios = <&gpio0 RK_PA4 GPIO_ACTIVE_LOW>;
670	disable-wp;
671	pinctrl-0 = <&sdmmc0_bus4 &sdmmc0_clk &sdmmc0_cmd &sdmmc0_det>;
672	pinctrl-names = "default";
673	sd-uhs-sdr104;
674	vmmc-supply = <&vcc_3v3>;
675	vqmmc-supply = <&vccio_sd>;
676	status = "okay";
677};
678
679&sdmmc1 {
680	bus-width = <4>;
681	cap-sd-highspeed;
682	cd-gpios = <&gpio2 RK_PB2 GPIO_ACTIVE_LOW>;
683	disable-wp;
684	pinctrl-0 = <&sdmmc1_bus4 &sdmmc1_cmd &sdmmc1_clk &sdmmc1_det>;
685	pinctrl-names = "default";
686	sd-uhs-sdr104;
687	vmmc-supply = <&vcc_3v3>;
688	vqmmc-supply = <&vcc1v8_dvp>;
689	status = "okay";
690};
691
692&sdmmc2 {
693	bus-width = <4>;
694	cap-sd-highspeed;
695	cap-sdio-irq;
696	keep-power-in-suspend;
697	mmc-pwrseq = <&sdio_pwrseq>;
698	non-removable;
699	pinctrl-0 = <&sdmmc2m0_bus4 &sdmmc2m0_cmd &sdmmc2m0_clk>;
700	pinctrl-names = "default";
701	vmmc-supply = <&vcc_wifi>;
702	vqmmc-supply = <&vcca1v8_pmu>;
703	status = "okay";
704};
705
706&tsadc {
707	rockchip,hw-tshut-mode = <1>;
708	rockchip,hw-tshut-polarity = <0>;
709	status = "okay";
710};
711
712&uart1 {
713	pinctrl-0 = <&uart1m1_xfer &uart1m1_ctsn &uart1m1_rtsn>;
714	pinctrl-names = "default";
715	uart-has-rtscts;
716	status = "okay";
717
718	bluetooth {
719		compatible = "realtek,rtl8821cs-bt";
720		device-wake-gpios = <&gpio4 4 GPIO_ACTIVE_HIGH>;
721		enable-gpios = <&gpio4 3 GPIO_ACTIVE_HIGH>;
722		host-wake-gpios = <&gpio4 5 GPIO_ACTIVE_HIGH>;
723	};
724};
725
726&uart2 {
727	status = "okay";
728};
729
730/*
731 * Lack the schematics to verify, but port works as a peripheral
732 * (and not a host or OTG port).
733 */
734&usb_host0_xhci {
735	dr_mode = "peripheral";
736	phys = <&usb2phy0_otg>;
737	phy-names = "usb2-phy";
738	status = "okay";
739};
740
741&usb_host1_ehci {
742	status = "okay";
743};
744
745&usb_host1_ohci {
746	status = "okay";
747};
748
749&usb_host1_xhci {
750	phy-names = "usb2-phy", "usb3-phy";
751	phys = <&usb2phy1_host>, <&combphy1 PHY_TYPE_USB3>;
752	status = "okay";
753};
754
755&usb2phy0 {
756	status = "okay";
757};
758
759&usb2phy0_otg {
760	status = "okay";
761};
762
763&usb2phy1 {
764	status = "okay";
765};
766
767&usb2phy1_host {
768	status = "okay";
769};
770
771&vop {
772	assigned-clocks = <&cru DCLK_VOP0>, <&cru DCLK_VOP1>;
773	assigned-clock-parents = <&pmucru PLL_HPLL>, <&cru PLL_VPLL>;
774	status = "okay";
775};
776
777&vop_mmu {
778	status = "okay";
779};
780
781&vp0 {
782	vp0_out_hdmi: endpoint@ROCKCHIP_VOP2_EP_HDMI0 {
783		reg = <ROCKCHIP_VOP2_EP_HDMI0>;
784		remote-endpoint = <&hdmi_in_vp0>;
785	};
786};
787