xref: /OK3568_Linux_fs/kernel/arch/arm64/boot/dts/rockchip/rk3588s-evb8-lp4x.dtsi (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2/*
3 * Copyright (c) 2021 Rockchip Electronics Co., Ltd.
4 *
5 */
6
7#include "dt-bindings/usb/pd.h"
8#include "rk3588s.dtsi"
9#include "rk3588s-evb.dtsi"
10#include "rk3588-rk806-single.dtsi"
11
12/ {
13	combophy_avdd0v85: combophy-avdd0v85 {
14		compatible = "regulator-fixed";
15		regulator-name = "combophy_avdd0v85";
16		regulator-boot-on;
17		regulator-always-on;
18		regulator-min-microvolt = <850000>;
19		regulator-max-microvolt = <850000>;
20		vin-supply = <&vdd_0v85_s0>;
21	};
22
23	combophy_avdd1v8: combophy-avdd1v8 {
24		compatible = "regulator-fixed";
25		regulator-name = "combophy_avdd1v8";
26		regulator-boot-on;
27		regulator-always-on;
28		regulator-min-microvolt = <1800000>;
29		regulator-max-microvolt = <1800000>;
30		vin-supply = <&avcc_1v8_s0>;
31	};
32
33	es7202_sound_micarray: es7202-sound-micarray {
34		status = "okay";
35		compatible = "simple-audio-card";
36		simple-audio-card,format = "i2s";
37		simple-audio-card,name = "rockchip,sound-micarray";
38		simple-audio-card,mclk-fs = <256>;
39		simple-audio-card,dai-link@0 {
40			format = "pdm";
41			cpu {
42				sound-dai = <&pdm0>;
43			};
44			codec {
45				sound-dai = <&es7202>;
46			};
47		};
48	};
49
50	es8388_sound: es8388-sound {
51		status = "okay";
52		compatible = "rockchip,multicodecs-card";
53		rockchip,card-name = "rockchip-es8388";
54		hp-det-gpio = <&gpio1 RK_PD0 GPIO_ACTIVE_LOW>;
55		io-channels = <&saradc 3>;
56		io-channel-names = "adc-detect";
57		keyup-threshold-microvolt = <1800000>;
58		poll-interval = <100>;
59		spk-con-gpio = <&gpio4 RK_PA5 GPIO_ACTIVE_HIGH>;
60		hp-con-gpio = <&gpio4 RK_PA4 GPIO_ACTIVE_HIGH>;
61		rockchip,format = "i2s";
62		rockchip,mclk-fs = <256>;
63		rockchip,cpu = <&i2s0_8ch>;
64		rockchip,codec = <&es8388>;
65		rockchip,audio-routing =
66			"Headphone", "LOUT1",
67			"Headphone", "ROUT1",
68			"Speaker", "LOUT2",
69			"Speaker", "ROUT2",
70			"Headphone", "Headphone Power",
71			"Headphone", "Headphone Power",
72			"Speaker", "Speaker Power",
73			"Speaker", "Speaker Power",
74			"LINPUT1", "Main Mic",
75			"LINPUT2", "Main Mic",
76			"RINPUT1", "Headset Mic",
77			"RINPUT2", "Headset Mic";
78		pinctrl-names = "default";
79		pinctrl-0 = <&hp_det>;
80		play-pause-key {
81			label = "playpause";
82			linux,code = <KEY_PLAYPAUSE>;
83			press-threshold-microvolt = <2000>;
84		};
85	};
86
87	fan: pwm-fan {
88		compatible = "pwm-fan";
89		#cooling-cells = <2>;
90		pwms = <&pwm11 0 50000 0>;
91		cooling-levels = <0 50 100 150 200 255>;
92		rockchip,temp-trips = <
93			50000	1
94			55000	2
95			60000	3
96			65000	4
97			70000	5
98		>;
99	};
100
101	panel-edp {
102		compatible = "simple-panel";
103		backlight = <&backlight>;
104		power-supply = <&vcc3v3_lcd_edp>;
105		prepare-delay-ms = <120>;
106		enable-delay-ms = <120>;
107		unprepare-delay-ms = <120>;
108		disable-delay-ms = <120>;
109		width-mm = <129>;
110		height-mm = <171>;
111
112		panel-timing {
113			clock-frequency = <200000000>;
114			hactive = <1536>;
115			vactive = <2048>;
116			hfront-porch = <12>;
117			hsync-len = <16>;
118			hback-porch = <48>;
119			vfront-porch = <8>;
120			vsync-len = <4>;
121			vback-porch = <8>;
122			hsync-active = <0>;
123			vsync-active = <0>;
124			de-active = <0>;
125			pixelclk-active = <0>;
126		};
127
128		port {
129			panel_in_edp: endpoint {
130				remote-endpoint = <&edp_out_panel>;
131			};
132		};
133	};
134
135	vbus5v0_typec: vbus5v0-typec {
136		compatible = "regulator-fixed";
137		regulator-name = "vbus5v0_typec";
138		regulator-min-microvolt = <5000000>;
139		regulator-max-microvolt = <5000000>;
140		enable-active-high;
141		gpio = <&gpio1 RK_PA1 GPIO_ACTIVE_HIGH>;
142		vin-supply = <&vcc5v0_usb>;
143		pinctrl-names = "default";
144		pinctrl-0 = <&typec5v_pwren>;
145	};
146
147	vcc_1v1_nldo_s3: vcc-1v1-nldo-s3 {
148		compatible = "regulator-fixed";
149		regulator-name = "vcc_1v1_nldo_s3";
150		regulator-always-on;
151		regulator-boot-on;
152		regulator-min-microvolt = <1100000>;
153		regulator-max-microvolt = <1100000>;
154		vin-supply = <&vcc5v0_sys>;
155	};
156
157	vcc3v3_lcd_edp: vcc3v3-lcd-edp {
158		compatible = "regulator-fixed";
159		regulator-name = "vcc3v3_lcd_edp";
160		gpio = <&gpio1 RK_PA5 GPIO_ACTIVE_HIGH>;
161		enable-active-high;
162		regulator-boot-on;
163		vin-supply = <&vcc_3v3_s3>;
164	};
165
166	vcc3v3_pcie20: vcc3v3-pcie20 {
167		compatible = "regulator-fixed";
168		regulator-name = "vcc3v3_pcie20";
169		regulator-min-microvolt = <3300000>;
170		regulator-max-microvolt = <3300000>;
171		enable-active-high;
172		gpios = <&gpio4 RK_PB1 GPIO_ACTIVE_HIGH>;
173		startup-delay-us = <5000>;
174		vin-supply = <&vcc12v_dcin>;
175	};
176
177	vcc_3v3_sd_s0: vcc-3v3-sd-s0-regulator {
178		compatible = "regulator-fixed";
179		gpio = <&gpio0 RK_PC4 GPIO_ACTIVE_HIGH>;
180		pinctrl-names = "default";
181		pinctrl-0 = <&sd_s0_pwr>;
182		regulator-name = "vcc_3v3_sd_s0";
183		enable-active-high;
184	};
185
186	vcc5v0_host: vcc5v0-host {
187		compatible = "regulator-fixed";
188		regulator-name = "vcc5v0_host";
189		regulator-boot-on;
190		regulator-always-on;
191		regulator-min-microvolt = <5000000>;
192		regulator-max-microvolt = <5000000>;
193		enable-active-high;
194		gpio = <&gpio1 RK_PB1 GPIO_ACTIVE_HIGH>;
195		vin-supply = <&vcc5v0_usb>;
196		pinctrl-names = "default";
197		pinctrl-0 = <&vcc5v0_host_en>;
198	};
199
200	wireless_bluetooth: wireless-bluetooth {
201		compatible = "bluetooth-platdata";
202		clocks = <&hym8563>;
203		clock-names = "ext_clock";
204		uart_rts_gpios = <&gpio3 RK_PA4 GPIO_ACTIVE_LOW>;
205		pinctrl-names = "default", "rts_gpio";
206		pinctrl-0 = <&uart8m1_rtsn>, <&bt_gpio>;
207		pinctrl-1 = <&uart8_gpios>;
208		BT,reset_gpio    = <&gpio3 RK_PB7 GPIO_ACTIVE_HIGH>;
209		BT,wake_gpio     = <&gpio3 RK_PC1 GPIO_ACTIVE_HIGH>;
210		BT,wake_host_irq = <&gpio3 RK_PC0 GPIO_ACTIVE_HIGH>;
211		status = "okay";
212	};
213
214	wireless_wlan: wireless-wlan {
215		compatible = "wlan-platdata";
216		wifi_chip_type = "ap6275p";
217		pinctrl-names = "default";
218		pinctrl-0 = <&wifi_host_wake_irq>, <&wifi_poweren_gpio>;
219		WIFI,host_wake_irq = <&gpio0 RK_PA0 GPIO_ACTIVE_HIGH>;
220		WIFI,poweren_gpio = <&gpio0 RK_PC7 GPIO_ACTIVE_HIGH>;
221		status = "okay";
222	};
223};
224
225&backlight {
226	pwms = <&pwm12 0 25000 0>;
227	power-supply = <&vcc3v3_lcd_edp>;
228	status = "okay";
229};
230
231&combphy0_ps {
232	status = "okay";
233};
234
235&dp0 {
236	status = "okay";
237};
238
239&dp0_in_vp1 {
240	status = "okay";
241};
242
243&dp0_sound{
244	status = "okay";
245};
246
247&edp0 {
248	force-hpd;
249	status = "okay";
250
251	ports {
252		port@1 {
253			reg = <1>;
254
255			edp_out_panel: endpoint {
256				remote-endpoint = <&panel_in_edp>;
257			};
258		};
259	};
260};
261
262&edp0_in_vp2 {
263	status = "okay";
264};
265
266&hdptxphy0 {
267	/* Single Vdiff Training Table for power reduction (optional) */
268	training-table = /bits/ 8 <
269		/* voltage swing 0, pre-emphasis 0->3 */
270		0x0d 0x00 0x00 0x00 0x00 0x00
271		0x0d 0x00 0x00 0x00 0x00 0x00
272		0x0d 0x00 0x00 0x00 0x00 0x00
273		0x0d 0x00 0x00 0x00 0x00 0x00
274		/* voltage swing 1, pre-emphasis 0->2 */
275		0x0d 0x00 0x00 0x00 0x00 0x00
276		0x0d 0x00 0x00 0x00 0x00 0x00
277		0x0d 0x00 0x00 0x00 0x00 0x00
278		/* voltage swing 2, pre-emphasis 0->1 */
279		0x0d 0x00 0x00 0x00 0x00 0x00
280		0x0d 0x00 0x00 0x00 0x00 0x00
281		/* voltage swing 3, pre-emphasis 0 */
282		0x0d 0x00 0x00 0x00 0x00 0x00
283	>;
284	status = "okay";
285};
286
287&i2c0 {
288	status = "okay";
289	pinctrl-names = "default";
290	pinctrl-0 = <&i2c0m2_xfer>;
291
292	vdd_cpu_big0_s0: vdd_cpu_big0_mem_s0: rk8602@42 {
293		compatible = "rockchip,rk8602";
294		reg = <0x42>;
295		vin-supply = <&vcc5v0_sys>;
296		regulator-compatible = "rk860x-reg";
297		regulator-name = "vdd_cpu_big0_s0";
298		regulator-min-microvolt = <550000>;
299		regulator-max-microvolt = <1050000>;
300		regulator-ramp-delay = <2300>;
301		rockchip,suspend-voltage-selector = <1>;
302		regulator-boot-on;
303		regulator-always-on;
304		regulator-state-mem {
305			regulator-off-in-suspend;
306		};
307	};
308
309	vdd_cpu_big1_s0: vdd_cpu_big1_mem_s0: rk8603@43 {
310		compatible = "rockchip,rk8603";
311		reg = <0x43>;
312		vin-supply = <&vcc5v0_sys>;
313		regulator-compatible = "rk860x-reg";
314		regulator-name = "vdd_cpu_big1_s0";
315		regulator-min-microvolt = <550000>;
316		regulator-max-microvolt = <1050000>;
317		regulator-ramp-delay = <2300>;
318		rockchip,suspend-voltage-selector = <1>;
319		regulator-boot-on;
320		regulator-always-on;
321		regulator-state-mem {
322			regulator-off-in-suspend;
323		};
324	};
325};
326
327&i2c2 {
328	status = "okay";
329
330	vdd_npu_s0: vdd_npu_mem_s0: rk8602@42 {
331		compatible = "rockchip,rk8602";
332		reg = <0x42>;
333		vin-supply = <&vcc5v0_sys>;
334		regulator-compatible = "rk860x-reg";
335		regulator-name = "vdd_npu_s0";
336		regulator-min-microvolt = <550000>;
337		regulator-max-microvolt = <950000>;
338		regulator-ramp-delay = <2300>;
339		rockchip,suspend-voltage-selector = <1>;
340		regulator-boot-on;
341		regulator-always-on;
342		regulator-state-mem {
343			regulator-off-in-suspend;
344		};
345	};
346};
347
348&i2c3 {
349	status = "okay";
350
351	es8388: es8388@11 {
352		status = "okay";
353		#sound-dai-cells = <0>;
354		compatible = "everest,es8388", "everest,es8323";
355		reg = <0x11>;
356		clocks = <&mclkout_i2s0>;
357		clock-names = "mclk";
358		assigned-clocks = <&mclkout_i2s0>;
359		assigned-clock-rates = <12288000>;
360		pinctrl-names = "default";
361		pinctrl-0 = <&i2s0_mclk>;
362	};
363
364	es7202: es7202@32 {
365		status = "okay";
366		#sound-dai-cells = <0>;
367		compatible = "ES7202_PDM_ADC_1";
368		power-supply = <&vcc_1v8_s0>;	/* only 1v8 or 3v3, default is 3v3 */
369		reg = <0x32>;
370	};
371};
372
373&i2c4 {
374	pinctrl-names = "default";
375	pinctrl-0 = <&i2c4m3_xfer>;
376	status = "okay";
377
378	gsl3673@40 {
379		compatible = "GSL,GSL3673";
380		reg = <0x40>;
381		screen_max_x = <1536>;
382		screen_max_y = <2048>;
383		irq_gpio_number = <&gpio1 RK_PB5 IRQ_TYPE_LEVEL_LOW>;
384		rst_gpio_number = <&gpio1 RK_PB4 GPIO_ACTIVE_HIGH>;
385	};
386};
387
388&i2c5 {
389	status = "okay";
390
391	ls_stk3332: light@47 {
392		compatible = "ls_stk3332";
393		status = "disabled";
394		reg = <0x47>;
395		type = <SENSOR_TYPE_LIGHT>;
396		irq_enable = <0>;
397		als_threshold_high = <100>;
398		als_threshold_low = <10>;
399		als_ctrl_gain = <2>; /* 0:x1 1:x4 2:x16 3:x64 */
400		poll_delay_ms = <100>;
401	};
402
403	ps_stk3332: proximity@47 {
404		compatible = "ps_stk3332";
405		status = "disabled";
406		reg = <0x47>;
407		type = <SENSOR_TYPE_PROXIMITY>;
408		//pinctrl-names = "default";
409		//pinctrl-0 = <&gpio3_c6>;
410		//irq-gpio = <&gpio3 RK_PC6 IRQ_TYPE_LEVEL_LOW>;
411		//irq_enable = <1>;
412		ps_threshold_high = <0x200>;
413		ps_threshold_low = <0x100>;
414		ps_ctrl_gain = <3>; /* 0:x1 1:x2 2:x5 3:x8 */
415		ps_led_current = <4>; /* 0:3.125mA 1:6.25mA 2:12.5mA 3:25mA 4:50mA 5:100mA*/
416		poll_delay_ms = <100>;
417	};
418
419	mpu6500_acc: mpu_acc@68 {
420		compatible = "mpu6500_acc";
421		reg = <0x68>;
422		irq-gpio = <&gpio3 RK_PB4 IRQ_TYPE_EDGE_RISING>;
423		irq_enable = <0>;
424		poll_delay_ms = <30>;
425		type = <SENSOR_TYPE_ACCEL>;
426		layout = <5>;
427	};
428
429	mpu6500_gyro: mpu_gyro@68 {
430		compatible = "mpu6500_gyro";
431		reg = <0x68>;
432		poll_delay_ms = <30>;
433		type = <SENSOR_TYPE_GYROSCOPE>;
434		layout = <5>;
435	};
436};
437
438&i2c8 {
439	status = "okay";
440	pinctrl-names = "default";
441	pinctrl-0 = <&i2c8m2_xfer>;
442
443	usbc0: fusb302@22 {
444		compatible = "fcs,fusb302";
445		reg = <0x22>;
446		interrupt-parent = <&gpio0>;
447		interrupts = <RK_PC5 IRQ_TYPE_LEVEL_LOW>;
448		pinctrl-names = "default";
449		pinctrl-0 = <&usbc0_int>;
450		vbus-supply = <&vbus5v0_typec>;
451		status = "okay";
452
453		ports {
454			#address-cells = <1>;
455			#size-cells = <0>;
456
457			port@0 {
458				reg = <0>;
459				usbc0_role_sw: endpoint@0 {
460					remote-endpoint = <&dwc3_0_role_switch>;
461				};
462			};
463		};
464
465		usb_con: connector {
466			compatible = "usb-c-connector";
467			label = "USB-C";
468			data-role = "dual";
469			power-role = "dual";
470			try-power-role = "sink";
471			op-sink-microwatt = <1000000>;
472			sink-pdos =
473				<PDO_FIXED(5000, 1000, PDO_FIXED_USB_COMM)>;
474			source-pdos =
475				<PDO_FIXED(5000, 3000, PDO_FIXED_USB_COMM)>;
476
477			altmodes {
478				#address-cells = <1>;
479				#size-cells = <0>;
480
481				altmode@0 {
482					reg = <0>;
483					svid = <0xff01>;
484					vdo = <0xffffffff>;
485				};
486			};
487
488			ports {
489				#address-cells = <1>;
490				#size-cells = <0>;
491
492				port@0 {
493					reg = <0>;
494					usbc0_orien_sw: endpoint {
495						remote-endpoint = <&usbdp_phy0_orientation_switch>;
496					};
497				};
498
499				port@1 {
500					reg = <1>;
501					dp_altmode_mux: endpoint {
502						remote-endpoint = <&usbdp_phy0_dp_altmode_mux>;
503					};
504				};
505			};
506		};
507	};
508
509	hym8563: hym8563@51 {
510		compatible = "haoyu,hym8563";
511		reg = <0x51>;
512		#clock-cells = <0>;
513		clock-frequency = <32768>;
514		clock-output-names = "hym8563";
515		pinctrl-names = "default";
516		pinctrl-0 = <&hym8563_int>;
517		interrupt-parent = <&gpio0>;
518		interrupts = <RK_PB0 IRQ_TYPE_LEVEL_LOW>;
519		wakeup-source;
520	};
521};
522
523&pcie2x1l1 {
524	reset-gpios = <&gpio4 RK_PA2 GPIO_ACTIVE_HIGH>;
525	vpcie3v3-supply = <&vcc3v3_pcie20>;
526	status = "okay";
527};
528
529&pcie2x1l2 {
530	reset-gpios = <&gpio4 RK_PC1 GPIO_ACTIVE_HIGH>;
531	rockchip,skip-scan-in-resume;
532	status = "okay";
533};
534
535&pdm0 {
536	status = "okay";
537};
538
539&pinctrl {
540	headphone {
541		hp_det: hp-det {
542			rockchip,pins = <1 RK_PD0 RK_FUNC_GPIO &pcfg_pull_none>;
543		};
544	};
545
546	hym8563 {
547		hym8563_int: hym8563-int {
548			rockchip,pins = <0 RK_PB0 RK_FUNC_GPIO &pcfg_pull_up>;
549		};
550	};
551
552	lcd {
553		lcd_rst_gpio: lcd-rst-gpio {
554			rockchip,pins = <1 RK_PA4 RK_FUNC_GPIO &pcfg_pull_none>;
555		};
556	};
557
558	sdmmc {
559		sd_s0_pwr: sd-s0-pwr {
560			rockchip,pins = <0 RK_PC4 RK_FUNC_GPIO &pcfg_pull_up>;
561		};
562	};
563
564	sensor {
565		mpu6500_irq_gpio: mpu6500_irq_gpio {
566			rockchip,pins = <3 RK_PB4 RK_FUNC_GPIO &pcfg_pull_none>;
567		};
568	};
569
570	usb {
571		vcc5v0_host_en: vcc5v0-host-en {
572			rockchip,pins = <1 RK_PB1 RK_FUNC_GPIO &pcfg_pull_none>;
573		};
574	};
575
576	usb-typec {
577		usbc0_int: usbc0-int {
578			rockchip,pins = <0 RK_PC5 RK_FUNC_GPIO &pcfg_pull_up>;
579		};
580
581		typec5v_pwren: typec5v-pwren {
582			rockchip,pins = <1 RK_PA1 RK_FUNC_GPIO &pcfg_pull_none>;
583		};
584	};
585
586	wireless-bluetooth {
587		uart8_gpios: uart8-gpios {
588			rockchip,pins = <3 RK_PA4 RK_FUNC_GPIO &pcfg_pull_none>;
589		};
590
591		bt_gpio: bt-gpio {
592			rockchip,pins =
593				<3 RK_PB7 RK_FUNC_GPIO &pcfg_pull_none>,
594				<3 RK_PC1 RK_FUNC_GPIO &pcfg_pull_up>,
595				<3 RK_PC0 RK_FUNC_GPIO &pcfg_pull_down>;
596		};
597	};
598
599	wireless-wlan {
600		wifi_host_wake_irq: wifi-host-wake-irq {
601			rockchip,pins = <0 RK_PA0 RK_FUNC_GPIO &pcfg_pull_down>;
602		};
603
604		wifi_poweren_gpio: wifi-poweren-gpio {
605			rockchip,pins = <0 RK_PC7 RK_FUNC_GPIO &pcfg_pull_up>;
606		};
607	};
608};
609
610&pwm3 {
611	compatible = "rockchip,remotectl-pwm";
612	remote_pwm_id = <3>;
613	handle_cpu_id = <1>;
614	remote_support_psci = <0>;
615	status = "okay";
616
617	ir_key1 {
618		rockchip,usercode = <0x4040>;
619		rockchip,key_table =
620			<0xf2   KEY_REPLY>,
621			<0xba   KEY_BACK>,
622			<0xf4   KEY_UP>,
623			<0xf1   KEY_DOWN>,
624			<0xef   KEY_LEFT>,
625			<0xee   KEY_RIGHT>,
626			<0xbd   KEY_HOME>,
627			<0xea   KEY_VOLUMEUP>,
628			<0xe3   KEY_VOLUMEDOWN>,
629			<0xe2   KEY_SEARCH>,
630			<0xb2   KEY_POWER>,
631			<0xbc   KEY_MUTE>,
632			<0xec   KEY_MENU>,
633			<0xbf   0x190>,
634			<0xe0   0x191>,
635			<0xe1   0x192>,
636			<0xe9   183>,
637			<0xe6   248>,
638			<0xe8   185>,
639			<0xe7   186>,
640			<0xf0   388>,
641			<0xbe   0x175>;
642	};
643
644	ir_key2 {
645		rockchip,usercode = <0xff00>;
646		rockchip,key_table =
647			<0xf9   KEY_HOME>,
648			<0xbf   KEY_BACK>,
649			<0xfb   KEY_MENU>,
650			<0xaa   KEY_REPLY>,
651			<0xb9   KEY_UP>,
652			<0xe9   KEY_DOWN>,
653			<0xb8   KEY_LEFT>,
654			<0xea   KEY_RIGHT>,
655			<0xeb   KEY_VOLUMEDOWN>,
656			<0xef   KEY_VOLUMEUP>,
657			<0xf7   KEY_MUTE>,
658			<0xe7   KEY_POWER>,
659			<0xfc   KEY_POWER>,
660			<0xa9   KEY_VOLUMEDOWN>,
661			<0xa8   KEY_PLAYPAUSE>,
662			<0xe0   KEY_VOLUMEDOWN>,
663			<0xa5   KEY_VOLUMEDOWN>,
664			<0xab   183>,
665			<0xb7   388>,
666			<0xe8   388>,
667			<0xf8   184>,
668			<0xaf   185>,
669			<0xed   KEY_VOLUMEDOWN>,
670			<0xee   186>,
671			<0xb3   KEY_VOLUMEDOWN>,
672			<0xf1   KEY_VOLUMEDOWN>,
673			<0xf2   KEY_VOLUMEDOWN>,
674			<0xf3   KEY_SEARCH>,
675			<0xb4   KEY_VOLUMEDOWN>,
676			<0xa4   KEY_SETUP>,
677			<0xbe   KEY_SEARCH>;
678	};
679
680	ir_key3 {
681		rockchip,usercode = <0x1dcc>;
682		rockchip,key_table =
683			<0xee   KEY_REPLY>,
684			<0xf0   KEY_BACK>,
685			<0xf8   KEY_UP>,
686			<0xbb   KEY_DOWN>,
687			<0xef   KEY_LEFT>,
688			<0xed   KEY_RIGHT>,
689			<0xfc   KEY_HOME>,
690			<0xf1   KEY_VOLUMEUP>,
691			<0xfd   KEY_VOLUMEDOWN>,
692			<0xb7   KEY_SEARCH>,
693			<0xff   KEY_POWER>,
694			<0xf3   KEY_MUTE>,
695			<0xbf   KEY_MENU>,
696			<0xf9   0x191>,
697			<0xf5   0x192>,
698			<0xb3   388>,
699			<0xbe   KEY_1>,
700			<0xba   KEY_2>,
701			<0xb2   KEY_3>,
702			<0xbd   KEY_4>,
703			<0xf9   KEY_5>,
704			<0xb1   KEY_6>,
705			<0xfc   KEY_7>,
706			<0xf8   KEY_8>,
707			<0xb0   KEY_9>,
708			<0xb6   KEY_0>,
709			<0xb5   KEY_BACKSPACE>;
710	};
711};
712
713&pwm11 {
714	pinctrl-0 = <&pwm11m1_pins>;
715	status = "okay";
716};
717
718&pwm12 {
719	pinctrl-0 = <&pwm12m1_pins>;
720	status = "okay";
721};
722
723&route_edp0 {
724	connect = <&vp2_out_edp0>;
725	status = "okay";
726};
727
728&sdmmc {
729	status = "okay";
730	vmmc-supply = <&vcc_3v3_sd_s0>;
731};
732
733&spdif_tx1 {
734	status = "disabled";
735	pinctrl-names = "default";
736	pinctrl-0 = <&spdif1m1_tx>;
737};
738
739&spdif_tx1_dc {
740	status = "okay";
741};
742
743&spdif_tx1_sound {
744	status = "okay";
745};
746
747&spdif_tx2 {
748	status = "okay";
749};
750
751&u2phy0_otg {
752	rockchip,typec-vbus-det;
753};
754
755&u2phy2_host {
756	phy-supply = <&vcc5v0_host>;
757};
758
759&u2phy3_host {
760	phy-supply = <&vcc5v0_host>;
761};
762
763&uart8 {
764	status = "okay";
765	pinctrl-names = "default";
766	pinctrl-0 = <&uart8m1_xfer &uart8m1_ctsn>;
767};
768
769&usbdp_phy0 {
770	orientation-switch;
771	svid = <0xff01>;
772	sbu1-dc-gpios = <&gpio1 RK_PB6 GPIO_ACTIVE_HIGH>;
773	sbu2-dc-gpios = <&gpio1 RK_PB7 GPIO_ACTIVE_HIGH>;
774
775	port {
776		#address-cells = <1>;
777		#size-cells = <0>;
778		usbdp_phy0_orientation_switch: endpoint@0 {
779			reg = <0>;
780			remote-endpoint = <&usbc0_orien_sw>;
781		};
782
783		usbdp_phy0_dp_altmode_mux: endpoint@1 {
784			reg = <1>;
785			remote-endpoint = <&dp_altmode_mux>;
786		};
787	};
788};
789
790&usbdrd_dwc3_0 {
791	usb-role-switch;
792	port {
793		#address-cells = <1>;
794		#size-cells = <0>;
795		dwc3_0_role_switch: endpoint@0 {
796			reg = <0>;
797			remote-endpoint = <&usbc0_role_sw>;
798		};
799	};
800};
801
802&usbhost3_0 {
803	status = "disabled";
804};
805
806&usbhost_dwc3_0 {
807	status = "disabled";
808};
809
810/* vp0 & vp3 are not used on this board */
811&vp0 {
812	/delete-property/ rockchip,plane-mask;
813	/delete-property/ rockchip,primary-plane;
814};
815
816&vp1 {
817	rockchip,plane-mask = <(1 << ROCKCHIP_VOP2_CLUSTER0 | 1 << ROCKCHIP_VOP2_ESMART0 |
818				1 << ROCKCHIP_VOP2_CLUSTER1 | 1 << ROCKCHIP_VOP2_ESMART1)>;
819	rockchip,primary-plane = <ROCKCHIP_VOP2_ESMART1>;
820};
821
822&vp2 {
823	rockchip,plane-mask = <(1 << ROCKCHIP_VOP2_CLUSTER2 | 1 << ROCKCHIP_VOP2_ESMART2 |
824				1 << ROCKCHIP_VOP2_CLUSTER3 | 1 << ROCKCHIP_VOP2_ESMART3)>;
825	rockchip,primary-plane = <ROCKCHIP_VOP2_ESMART2>;
826};
827
828&vp3 {
829	/delete-property/ rockchip,plane-mask;
830	/delete-property/ rockchip,primary-plane;
831};
832