xref: /OK3568_Linux_fs/kernel/arch/arm64/boot/dts/rockchip/rk3568-evb.dtsi (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2/*
3 * Copyright (c) 2020 Rockchip Electronics Co., Ltd.
4 *
5 */
6
7#include <dt-bindings/gpio/gpio.h>
8#include <dt-bindings/pwm/pwm.h>
9#include <dt-bindings/pinctrl/rockchip.h>
10#include <dt-bindings/input/rk-input.h>
11#include <dt-bindings/display/drm_mipi_dsi.h>
12#include <dt-bindings/sensor-dev.h>
13
14/ {
15
16	adc_keys: adc-keys {
17		compatible = "adc-keys";
18		io-channels = <&saradc 0>;
19		io-channel-names = "buttons";
20		keyup-threshold-microvolt = <1800000>;
21		poll-interval = <100>;
22
23		vol-up-key {
24			label = "volume up";
25			linux,code = <KEY_VOLUMEUP>;
26			press-threshold-microvolt = <1750>;
27		};
28
29		vol-down-key {
30			label = "volume down";
31			linux,code = <KEY_VOLUMEDOWN>;
32			press-threshold-microvolt = <297500>;
33		};
34
35		menu-key {
36			label = "menu";
37			linux,code = <KEY_MENU>;
38			press-threshold-microvolt = <980000>;
39		};
40
41		back-key {
42			label = "back";
43			linux,code = <KEY_BACK>;
44			press-threshold-microvolt = <1305500>;
45		};
46	};
47
48	audiopwmout_diff: audiopwmout-diff {
49		status = "disabled";
50		compatible = "simple-audio-card";
51		simple-audio-card,format = "i2s";
52		simple-audio-card,name = "rockchip,audiopwmout-diff";
53		simple-audio-card,mclk-fs = <256>;
54		simple-audio-card,bitclock-master = <&master>;
55		simple-audio-card,frame-master = <&master>;
56		simple-audio-card,cpu {
57			sound-dai = <&i2s3_2ch>;
58		};
59		master: simple-audio-card,codec {
60			sound-dai = <&dig_acodec>;
61		};
62	};
63
64	backlight: backlight {
65		compatible = "pwm-backlight";
66		pwms = <&pwm4 0 25000 0>;
67		brightness-levels = <
68			  0  20  20  21  21  22  22  23
69			 23  24  24  25  25  26  26  27
70			 27  28  28  29  29  30  30  31
71			 31  32  32  33  33  34  34  35
72			 35  36  36  37  37  38  38  39
73			 40  41  42  43  44  45  46  47
74			 48  49  50  51  52  53  54  55
75			 56  57  58  59  60  61  62  63
76			 64  65  66  67  68  69  70  71
77			 72  73  74  75  76  77  78  79
78			 80  81  82  83  84  85  86  87
79			 88  89  90  91  92  93  94  95
80			 96  97  98  99 100 101 102 103
81			104 105 106 107 108 109 110 111
82			112 113 114 115 116 117 118 119
83			120 121 122 123 124 125 126 127
84			128 129 130 131 132 133 134 135
85			136 137 138 139 140 141 142 143
86			144 145 146 147 148 149 150 151
87			152 153 154 155 156 157 158 159
88			160 161 162 163 164 165 166 167
89			168 169 170 171 172 173 174 175
90			176 177 178 179 180 181 182 183
91			184 185 186 187 188 189 190 191
92			192 193 194 195 196 197 198 199
93			200 201 202 203 204 205 206 207
94			208 209 210 211 212 213 214 215
95			216 217 218 219 220 221 222 223
96			224 225 226 227 228 229 230 231
97			232 233 234 235 236 237 238 239
98			240 241 242 243 244 245 246 247
99			248 249 250 251 252 253 254 255
100		>;
101		default-brightness-level = <200>;
102	};
103
104	backlight1: backlight1 {
105		compatible = "pwm-backlight";
106		pwms = <&pwm5 0 25000 0>;
107		brightness-levels = <
108			  0  20  20  21  21  22  22  23
109			 23  24  24  25  25  26  26  27
110			 27  28  28  29  29  30  30  31
111			 31  32  32  33  33  34  34  35
112			 35  36  36  37  37  38  38  39
113			 40  41  42  43  44  45  46  47
114			 48  49  50  51  52  53  54  55
115			 56  57  58  59  60  61  62  63
116			 64  65  66  67  68  69  70  71
117			 72  73  74  75  76  77  78  79
118			 80  81  82  83  84  85  86  87
119			 88  89  90  91  92  93  94  95
120			 96  97  98  99 100 101 102 103
121			104 105 106 107 108 109 110 111
122			112 113 114 115 116 117 118 119
123			120 121 122 123 124 125 126 127
124			128 129 130 131 132 133 134 135
125			136 137 138 139 140 141 142 143
126			144 145 146 147 148 149 150 151
127			152 153 154 155 156 157 158 159
128			160 161 162 163 164 165 166 167
129			168 169 170 171 172 173 174 175
130			176 177 178 179 180 181 182 183
131			184 185 186 187 188 189 190 191
132			192 193 194 195 196 197 198 199
133			200 201 202 203 204 205 206 207
134			208 209 210 211 212 213 214 215
135			216 217 218 219 220 221 222 223
136			224 225 226 227 228 229 230 231
137			232 233 234 235 236 237 238 239
138			240 241 242 243 244 245 246 247
139			248 249 250 251 252 253 254 255
140		>;
141		default-brightness-level = <200>;
142	};
143
144	bt_sco: bt-sco {
145		status = "disabled";
146		compatible = "delta,dfbmcs320";
147		#sound-dai-cells = <1>;
148	};
149
150	bt_sound: bt-sound {
151		status = "disabled";
152		compatible = "simple-audio-card";
153		simple-audio-card,format = "dsp_a";
154		simple-audio-card,bitclock-inversion = <0>;
155		simple-audio-card,mclk-fs = <256>;
156		simple-audio-card,name = "rockchip,bt";
157		simple-audio-card,cpu {
158			sound-dai = <&i2s3_2ch>;
159		};
160		simple-audio-card,codec {
161			sound-dai = <&bt_sco 1>;
162		};
163	};
164
165	dc_12v: dc-12v {
166		compatible = "regulator-fixed";
167		regulator-name = "dc_12v";
168		regulator-always-on;
169		regulator-boot-on;
170		regulator-min-microvolt = <12000000>;
171		regulator-max-microvolt = <12000000>;
172	};
173
174	hdmi_sound: hdmi-sound {
175		compatible = "simple-audio-card";
176		simple-audio-card,format = "i2s";
177		simple-audio-card,mclk-fs = <128>;
178		simple-audio-card,name = "rockchip,hdmi";
179		status = "disabled";
180
181		simple-audio-card,cpu {
182				sound-dai = <&i2s0_8ch>;
183		};
184		simple-audio-card,codec {
185				sound-dai = <&hdmi>;
186		};
187	};
188
189	leds: leds {
190		compatible = "gpio-leds";
191		work_led: work {
192			gpios = <&gpio0 RK_PC0 GPIO_ACTIVE_HIGH>;
193			linux,default-trigger = "heartbeat";
194		};
195	};
196
197	pdmics: dummy-codec {
198		status = "disabled";
199		compatible = "rockchip,dummy-codec";
200		#sound-dai-cells = <0>;
201	};
202
203	pdm_mic_array: pdm-mic-array {
204		status = "disabled";
205		compatible = "simple-audio-card";
206		simple-audio-card,name = "rockchip,pdm-mic-array";
207		simple-audio-card,cpu {
208			sound-dai = <&pdm>;
209		};
210		simple-audio-card,codec {
211			sound-dai = <&pdmics>;
212		};
213	};
214
215	rk809_sound: rk809-sound {
216		status = "okay";
217		compatible = "rockchip,multicodecs-card";
218		rockchip,card-name = "rockchip-rk809";
219		hp-det-gpio = <&gpio3 RK_PA1 GPIO_ACTIVE_LOW>;
220		rockchip,format = "i2s";
221		rockchip,mclk-fs = <256>;
222		rockchip,cpu = <&i2s1_8ch>;
223		rockchip,codec = <&rk809_codec>;
224		pinctrl-names = "default";
225		pinctrl-0 = <&hp_det>;
226	};
227
228	spdif-sound {
229		status = "okay";
230		compatible = "simple-audio-card";
231		simple-audio-card,name = "ROCKCHIP,SPDIF";
232		simple-audio-card,mclk-fs = <128>;
233		simple-audio-card,cpu {
234				sound-dai = <&spdif_8ch>;
235		};
236		simple-audio-card,codec {
237				sound-dai = <&spdif_out>;
238		};
239	};
240
241	spdif_out: spdif-out {
242			status = "okay";
243			compatible = "linux,spdif-dit";
244			#sound-dai-cells = <0>;
245	};
246
247	vad_sound: vad-sound {
248		status = "disabled";
249		compatible = "rockchip,multicodecs-card";
250		rockchip,card-name = "rockchip,rk3568-vad";
251		rockchip,cpu = <&i2s1_8ch>;
252		rockchip,codec = <&rk809_codec>, <&vad>;
253	};
254
255	vcc3v3_sys: vcc3v3-sys {
256		compatible = "regulator-fixed";
257		regulator-name = "vcc3v3_sys";
258		regulator-always-on;
259		regulator-boot-on;
260		regulator-min-microvolt = <3300000>;
261		regulator-max-microvolt = <3300000>;
262		vin-supply = <&dc_12v>;
263	};
264
265	vcc5v0_sys: vcc5v0-sys {
266		compatible = "regulator-fixed";
267		regulator-name = "vcc5v0_sys";
268		regulator-always-on;
269		regulator-boot-on;
270		regulator-min-microvolt = <5000000>;
271		regulator-max-microvolt = <5000000>;
272		vin-supply = <&dc_12v>;
273	};
274
275	vcc5v0_usb: vcc5v0-usb {
276		compatible = "regulator-fixed";
277		regulator-name = "vcc5v0_usb";
278		regulator-always-on;
279		regulator-boot-on;
280		regulator-min-microvolt = <5000000>;
281		regulator-max-microvolt = <5000000>;
282		vin-supply = <&dc_12v>;
283	};
284
285	vcc5v0_host: vcc5v0-host-regulator {
286		compatible = "regulator-fixed";
287		regulator-name = "vcc5v0_host";
288		regulator-boot-on;
289		regulator-always-on;
290		regulator-min-microvolt = <5000000>;
291		regulator-max-microvolt = <5000000>;
292		enable-active-high;
293		gpio = <&gpio0 RK_PA6 GPIO_ACTIVE_HIGH>;
294		vin-supply = <&vcc5v0_usb>;
295		pinctrl-names = "default";
296		pinctrl-0 = <&vcc5v0_host_en>;
297	};
298
299	vcc5v0_otg: vcc5v0-otg-regulator {
300		compatible = "regulator-fixed";
301		regulator-name = "vcc5v0_otg";
302		regulator-min-microvolt = <5000000>;
303		regulator-max-microvolt = <5000000>;
304		enable-active-high;
305		gpio = <&gpio0 RK_PA5 GPIO_ACTIVE_HIGH>;
306		vin-supply = <&vcc5v0_usb>;
307		pinctrl-names = "default";
308		pinctrl-0 = <&vcc5v0_otg_en>;
309	};
310
311	vcc3v3_lcd0_n: vcc3v3-lcd0-n {
312		compatible = "regulator-fixed";
313		regulator-name = "vcc3v3_lcd0_n";
314		regulator-boot-on;
315		regulator-state-mem {
316			regulator-off-in-suspend;
317		};
318	};
319
320	vcc3v3_lcd1_n: vcc3v3-lcd1-n {
321		compatible = "regulator-fixed";
322		regulator-name = "vcc3v3_lcd1_n";
323		regulator-boot-on;
324		regulator-state-mem {
325			regulator-off-in-suspend;
326		};
327	};
328
329	sdio_pwrseq: sdio-pwrseq {
330		compatible = "mmc-pwrseq-simple";
331		clocks = <&rk809 1>;
332		clock-names = "ext_clock";
333		pinctrl-names = "default";
334		pinctrl-0 = <&wifi_enable_h>;
335
336		/*
337		 * On the module itself this is one of these (depending
338		 * on the actual card populated):
339		 * - SDIO_RESET_L_WL_REG_ON
340		 * - PDN (power down when low)
341		 */
342		post-power-on-delay-ms = <200>;
343		reset-gpios = <&gpio3 RK_PD5 GPIO_ACTIVE_LOW>;
344	};
345
346	wireless_wlan: wireless-wlan {
347		compatible = "wlan-platdata";
348		rockchip,grf = <&grf>;
349		wifi_chip_type = "ap6398s";
350		WIFI,poweren_gpio = <&gpio3 RK_PD5 GPIO_ACTIVE_HIGH>;
351		status = "okay";
352	};
353
354	wireless_bluetooth: wireless-bluetooth {
355		compatible = "bluetooth-platdata";
356		clocks = <&rk809 1>;
357		clock-names = "ext_clock";
358		//wifi-bt-power-toggle;
359		uart_rts_gpios = <&gpio2 RK_PB1 GPIO_ACTIVE_LOW>;
360		pinctrl-names = "default", "rts_gpio";
361		pinctrl-0 = <&uart8m0_rtsn>;
362		pinctrl-1 = <&uart8_gpios>;
363		BT,reset_gpio    = <&gpio3 RK_PA0 GPIO_ACTIVE_HIGH>;
364		BT,wake_gpio     = <&gpio3 RK_PA1 GPIO_ACTIVE_HIGH>;
365		BT,wake_host_irq = <&gpio3 RK_PA2 GPIO_ACTIVE_HIGH>;
366		status = "okay";
367	};
368
369	test-power {
370		status = "okay";
371	};
372};
373
374&bus_npu {
375	bus-supply = <&vdd_logic>;
376	pvtm-supply = <&vdd_cpu>;
377	status = "okay";
378};
379
380&can0 {
381	assigned-clocks = <&cru CLK_CAN0>;
382	assigned-clock-rates = <150000000>;
383	pinctrl-names = "default";
384	pinctrl-0 = <&can0m1_pins>;
385	status = "disabled";
386};
387
388&can1 {
389	assigned-clocks = <&cru CLK_CAN1>;
390	assigned-clock-rates = <150000000>;
391	pinctrl-names = "default";
392	pinctrl-0 = <&can1m1_pins>;
393	status = "disabled";
394};
395
396&can2 {
397	assigned-clocks = <&cru CLK_CAN2>;
398	assigned-clock-rates = <150000000>;
399	pinctrl-names = "default";
400	pinctrl-0 = <&can2m1_pins>;
401	status = "disabled";
402};
403
404&cpu0 {
405	cpu-supply = <&vdd_cpu>;
406};
407
408&dfi {
409	status = "okay";
410};
411
412&dmc {
413	center-supply = <&vdd_logic>;
414	status = "okay";
415};
416
417&dsi0 {
418	status = "disabled";
419	//rockchip,lane-rate = <1000>;
420	dsi0_panel: panel@0 {
421		status = "okay";
422		compatible = "simple-panel-dsi";
423		reg = <0>;
424		backlight = <&backlight>;
425		reset-delay-ms = <60>;
426		enable-delay-ms = <60>;
427		prepare-delay-ms = <60>;
428		unprepare-delay-ms = <60>;
429		disable-delay-ms = <60>;
430		dsi,flags = <(MIPI_DSI_MODE_VIDEO | MIPI_DSI_MODE_VIDEO_BURST |
431			MIPI_DSI_MODE_LPM | MIPI_DSI_MODE_EOT_PACKET)>;
432		dsi,format = <MIPI_DSI_FMT_RGB888>;
433		dsi,lanes  = <4>;
434		panel-init-sequence = [
435			23 00 02 FE 21
436			23 00 02 04 00
437			23 00 02 00 64
438			23 00 02 2A 00
439			23 00 02 26 64
440			23 00 02 54 00
441			23 00 02 50 64
442			23 00 02 7B 00
443			23 00 02 77 64
444			23 00 02 A2 00
445			23 00 02 9D 64
446			23 00 02 C9 00
447			23 00 02 C5 64
448			23 00 02 01 71
449			23 00 02 27 71
450			23 00 02 51 71
451			23 00 02 78 71
452			23 00 02 9E 71
453			23 00 02 C6 71
454			23 00 02 02 89
455			23 00 02 28 89
456			23 00 02 52 89
457			23 00 02 79 89
458			23 00 02 9F 89
459			23 00 02 C7 89
460			23 00 02 03 9E
461			23 00 02 29 9E
462			23 00 02 53 9E
463			23 00 02 7A 9E
464			23 00 02 A0 9E
465			23 00 02 C8 9E
466			23 00 02 09 00
467			23 00 02 05 B0
468			23 00 02 31 00
469			23 00 02 2B B0
470			23 00 02 5A 00
471			23 00 02 55 B0
472			23 00 02 80 00
473			23 00 02 7C B0
474			23 00 02 A7 00
475			23 00 02 A3 B0
476			23 00 02 CE 00
477			23 00 02 CA B0
478			23 00 02 06 C0
479			23 00 02 2D C0
480			23 00 02 56 C0
481			23 00 02 7D C0
482			23 00 02 A4 C0
483			23 00 02 CB C0
484			23 00 02 07 CF
485			23 00 02 2F CF
486			23 00 02 58 CF
487			23 00 02 7E CF
488			23 00 02 A5 CF
489			23 00 02 CC CF
490			23 00 02 08 DD
491			23 00 02 30 DD
492			23 00 02 59 DD
493			23 00 02 7F DD
494			23 00 02 A6 DD
495			23 00 02 CD DD
496			23 00 02 0E 15
497			23 00 02 0A E9
498			23 00 02 36 15
499			23 00 02 32 E9
500			23 00 02 5F 15
501			23 00 02 5B E9
502			23 00 02 85 15
503			23 00 02 81 E9
504			23 00 02 AD 15
505			23 00 02 A9 E9
506			23 00 02 D3 15
507			23 00 02 CF E9
508			23 00 02 0B 14
509			23 00 02 33 14
510			23 00 02 5C 14
511			23 00 02 82 14
512			23 00 02 AA 14
513			23 00 02 D0 14
514			23 00 02 0C 36
515			23 00 02 34 36
516			23 00 02 5D 36
517			23 00 02 83 36
518			23 00 02 AB 36
519			23 00 02 D1 36
520			23 00 02 0D 6B
521			23 00 02 35 6B
522			23 00 02 5E 6B
523			23 00 02 84 6B
524			23 00 02 AC 6B
525			23 00 02 D2 6B
526			23 00 02 13 5A
527			23 00 02 0F 94
528			23 00 02 3B 5A
529			23 00 02 37 94
530			23 00 02 64 5A
531			23 00 02 60 94
532			23 00 02 8A 5A
533			23 00 02 86 94
534			23 00 02 B2 5A
535			23 00 02 AE 94
536			23 00 02 D8 5A
537			23 00 02 D4 94
538			23 00 02 10 D1
539			23 00 02 38 D1
540			23 00 02 61 D1
541			23 00 02 87 D1
542			23 00 02 AF D1
543			23 00 02 D5 D1
544			23 00 02 11 04
545			23 00 02 39 04
546			23 00 02 62 04
547			23 00 02 88 04
548			23 00 02 B0 04
549			23 00 02 D6 04
550			23 00 02 12 05
551			23 00 02 3A 05
552			23 00 02 63 05
553			23 00 02 89 05
554			23 00 02 B1 05
555			23 00 02 D7 05
556			23 00 02 18 AA
557			23 00 02 14 36
558			23 00 02 42 AA
559			23 00 02 3D 36
560			23 00 02 69 AA
561			23 00 02 65 36
562			23 00 02 8F AA
563			23 00 02 8B 36
564			23 00 02 B7 AA
565			23 00 02 B3 36
566			23 00 02 DD AA
567			23 00 02 D9 36
568			23 00 02 15 74
569			23 00 02 3F 74
570			23 00 02 66 74
571			23 00 02 8C 74
572			23 00 02 B4 74
573			23 00 02 DA 74
574			23 00 02 16 9F
575			23 00 02 40 9F
576			23 00 02 67 9F
577			23 00 02 8D 9F
578			23 00 02 B5 9F
579			23 00 02 DB 9F
580			23 00 02 17 DC
581			23 00 02 41 DC
582			23 00 02 68 DC
583			23 00 02 8E DC
584			23 00 02 B6 DC
585			23 00 02 DC DC
586			23 00 02 1D FF
587			23 00 02 19 03
588			23 00 02 47 FF
589			23 00 02 43 03
590			23 00 02 6E FF
591			23 00 02 6A 03
592			23 00 02 94 FF
593			23 00 02 90 03
594			23 00 02 BC FF
595			23 00 02 B8 03
596			23 00 02 E2 FF
597			23 00 02 DE 03
598			23 00 02 1A 35
599			23 00 02 44 35
600			23 00 02 6B 35
601			23 00 02 91 35
602			23 00 02 B9 35
603			23 00 02 DF 35
604			23 00 02 1B 45
605			23 00 02 45 45
606			23 00 02 6C 45
607			23 00 02 92 45
608			23 00 02 BA 45
609			23 00 02 E0 45
610			23 00 02 1C 55
611			23 00 02 46 55
612			23 00 02 6D 55
613			23 00 02 93 55
614			23 00 02 BB 55
615			23 00 02 E1 55
616			23 00 02 22 FF
617			23 00 02 1E 68
618			23 00 02 4C FF
619			23 00 02 48 68
620			23 00 02 73 FF
621			23 00 02 6F 68
622			23 00 02 99 FF
623			23 00 02 95 68
624			23 00 02 C1 FF
625			23 00 02 BD 68
626			23 00 02 E7 FF
627			23 00 02 E3 68
628			23 00 02 1F 7E
629			23 00 02 49 7E
630			23 00 02 70 7E
631			23 00 02 96 7E
632			23 00 02 BE 7E
633			23 00 02 E4 7E
634			23 00 02 20 97
635			23 00 02 4A 97
636			23 00 02 71 97
637			23 00 02 97 97
638			23 00 02 BF 97
639			23 00 02 E5 97
640			23 00 02 21 B5
641			23 00 02 4B B5
642			23 00 02 72 B5
643			23 00 02 98 B5
644			23 00 02 C0 B5
645			23 00 02 E6 B5
646			23 00 02 25 F0
647			23 00 02 23 E8
648			23 00 02 4F F0
649			23 00 02 4D E8
650			23 00 02 76 F0
651			23 00 02 74 E8
652			23 00 02 9C F0
653			23 00 02 9A E8
654			23 00 02 C4 F0
655			23 00 02 C2 E8
656			23 00 02 EA F0
657			23 00 02 E8 E8
658			23 00 02 24 FF
659			23 00 02 4E FF
660			23 00 02 75 FF
661			23 00 02 9B FF
662			23 00 02 C3 FF
663			23 00 02 E9 FF
664			23 00 02 FE 3D
665			23 00 02 00 04
666			23 00 02 FE 23
667			23 00 02 08 82
668			23 00 02 0A 00
669			23 00 02 0B 00
670			23 00 02 0C 01
671			23 00 02 16 00
672			23 00 02 18 02
673			23 00 02 1B 04
674			23 00 02 19 04
675			23 00 02 1C 81
676			23 00 02 1F 00
677			23 00 02 20 03
678			23 00 02 23 04
679			23 00 02 21 01
680			23 00 02 54 63
681			23 00 02 55 54
682			23 00 02 6E 45
683			23 00 02 6D 36
684			23 00 02 FE 3D
685			23 00 02 55 78
686			23 00 02 FE 20
687			23 00 02 26 30
688			23 00 02 FE 3D
689			23 00 02 20 71
690			23 00 02 50 8F
691			23 00 02 51 8F
692			23 00 02 FE 00
693			23 00 02 35 00
694			05 78 01 11
695			05 1E 01 29
696		];
697
698		panel-exit-sequence = [
699			05 00 01 28
700			05 00 01 10
701		];
702
703		disp_timings0: display-timings {
704			native-mode = <&dsi0_timing0>;
705			dsi0_timing0: timing0 {
706				clock-frequency = <132000000>;
707				hactive = <1080>;
708				vactive = <1920>;
709				hfront-porch = <15>;
710				hsync-len = <2>;
711				hback-porch = <30>;
712				vfront-porch = <15>;
713				vsync-len = <2>;
714				vback-porch = <15>;
715				hsync-active = <0>;
716				vsync-active = <0>;
717				de-active = <0>;
718				pixelclk-active = <1>;
719			};
720		};
721
722		ports {
723			#address-cells = <1>;
724			#size-cells = <0>;
725
726			port@0 {
727				reg = <0>;
728				panel_in_dsi: endpoint {
729					remote-endpoint = <&dsi_out_panel>;
730				};
731			};
732		};
733	};
734
735	ports {
736		#address-cells = <1>;
737		#size-cells = <0>;
738
739		port@1 {
740			reg = <1>;
741			dsi_out_panel: endpoint {
742				remote-endpoint = <&panel_in_dsi>;
743			};
744		};
745	};
746
747};
748
749&dsi1 {
750	status = "disabled";
751	//rockchip,lane-rate = <1000>;
752	dsi1_panel: panel@0 {
753		status = "okay";
754		compatible = "simple-panel-dsi";
755		reg = <0>;
756		backlight = <&backlight1>;
757		reset-delay-ms = <60>;
758		enable-delay-ms = <60>;
759		prepare-delay-ms = <60>;
760		unprepare-delay-ms = <60>;
761		disable-delay-ms = <60>;
762		dsi,flags = <(MIPI_DSI_MODE_VIDEO | MIPI_DSI_MODE_VIDEO_BURST |
763			MIPI_DSI_MODE_LPM | MIPI_DSI_MODE_EOT_PACKET)>;
764		dsi,format = <MIPI_DSI_FMT_RGB888>;
765		dsi,lanes  = <4>;
766		panel-init-sequence = [
767			23 00 02 FE 21
768			23 00 02 04 00
769			23 00 02 00 64
770			23 00 02 2A 00
771			23 00 02 26 64
772			23 00 02 54 00
773			23 00 02 50 64
774			23 00 02 7B 00
775			23 00 02 77 64
776			23 00 02 A2 00
777			23 00 02 9D 64
778			23 00 02 C9 00
779			23 00 02 C5 64
780			23 00 02 01 71
781			23 00 02 27 71
782			23 00 02 51 71
783			23 00 02 78 71
784			23 00 02 9E 71
785			23 00 02 C6 71
786			23 00 02 02 89
787			23 00 02 28 89
788			23 00 02 52 89
789			23 00 02 79 89
790			23 00 02 9F 89
791			23 00 02 C7 89
792			23 00 02 03 9E
793			23 00 02 29 9E
794			23 00 02 53 9E
795			23 00 02 7A 9E
796			23 00 02 A0 9E
797			23 00 02 C8 9E
798			23 00 02 09 00
799			23 00 02 05 B0
800			23 00 02 31 00
801			23 00 02 2B B0
802			23 00 02 5A 00
803			23 00 02 55 B0
804			23 00 02 80 00
805			23 00 02 7C B0
806			23 00 02 A7 00
807			23 00 02 A3 B0
808			23 00 02 CE 00
809			23 00 02 CA B0
810			23 00 02 06 C0
811			23 00 02 2D C0
812			23 00 02 56 C0
813			23 00 02 7D C0
814			23 00 02 A4 C0
815			23 00 02 CB C0
816			23 00 02 07 CF
817			23 00 02 2F CF
818			23 00 02 58 CF
819			23 00 02 7E CF
820			23 00 02 A5 CF
821			23 00 02 CC CF
822			23 00 02 08 DD
823			23 00 02 30 DD
824			23 00 02 59 DD
825			23 00 02 7F DD
826			23 00 02 A6 DD
827			23 00 02 CD DD
828			23 00 02 0E 15
829			23 00 02 0A E9
830			23 00 02 36 15
831			23 00 02 32 E9
832			23 00 02 5F 15
833			23 00 02 5B E9
834			23 00 02 85 15
835			23 00 02 81 E9
836			23 00 02 AD 15
837			23 00 02 A9 E9
838			23 00 02 D3 15
839			23 00 02 CF E9
840			23 00 02 0B 14
841			23 00 02 33 14
842			23 00 02 5C 14
843			23 00 02 82 14
844			23 00 02 AA 14
845			23 00 02 D0 14
846			23 00 02 0C 36
847			23 00 02 34 36
848			23 00 02 5D 36
849			23 00 02 83 36
850			23 00 02 AB 36
851			23 00 02 D1 36
852			23 00 02 0D 6B
853			23 00 02 35 6B
854			23 00 02 5E 6B
855			23 00 02 84 6B
856			23 00 02 AC 6B
857			23 00 02 D2 6B
858			23 00 02 13 5A
859			23 00 02 0F 94
860			23 00 02 3B 5A
861			23 00 02 37 94
862			23 00 02 64 5A
863			23 00 02 60 94
864			23 00 02 8A 5A
865			23 00 02 86 94
866			23 00 02 B2 5A
867			23 00 02 AE 94
868			23 00 02 D8 5A
869			23 00 02 D4 94
870			23 00 02 10 D1
871			23 00 02 38 D1
872			23 00 02 61 D1
873			23 00 02 87 D1
874			23 00 02 AF D1
875			23 00 02 D5 D1
876			23 00 02 11 04
877			23 00 02 39 04
878			23 00 02 62 04
879			23 00 02 88 04
880			23 00 02 B0 04
881			23 00 02 D6 04
882			23 00 02 12 05
883			23 00 02 3A 05
884			23 00 02 63 05
885			23 00 02 89 05
886			23 00 02 B1 05
887			23 00 02 D7 05
888			23 00 02 18 AA
889			23 00 02 14 36
890			23 00 02 42 AA
891			23 00 02 3D 36
892			23 00 02 69 AA
893			23 00 02 65 36
894			23 00 02 8F AA
895			23 00 02 8B 36
896			23 00 02 B7 AA
897			23 00 02 B3 36
898			23 00 02 DD AA
899			23 00 02 D9 36
900			23 00 02 15 74
901			23 00 02 3F 74
902			23 00 02 66 74
903			23 00 02 8C 74
904			23 00 02 B4 74
905			23 00 02 DA 74
906			23 00 02 16 9F
907			23 00 02 40 9F
908			23 00 02 67 9F
909			23 00 02 8D 9F
910			23 00 02 B5 9F
911			23 00 02 DB 9F
912			23 00 02 17 DC
913			23 00 02 41 DC
914			23 00 02 68 DC
915			23 00 02 8E DC
916			23 00 02 B6 DC
917			23 00 02 DC DC
918			23 00 02 1D FF
919			23 00 02 19 03
920			23 00 02 47 FF
921			23 00 02 43 03
922			23 00 02 6E FF
923			23 00 02 6A 03
924			23 00 02 94 FF
925			23 00 02 90 03
926			23 00 02 BC FF
927			23 00 02 B8 03
928			23 00 02 E2 FF
929			23 00 02 DE 03
930			23 00 02 1A 35
931			23 00 02 44 35
932			23 00 02 6B 35
933			23 00 02 91 35
934			23 00 02 B9 35
935			23 00 02 DF 35
936			23 00 02 1B 45
937			23 00 02 45 45
938			23 00 02 6C 45
939			23 00 02 92 45
940			23 00 02 BA 45
941			23 00 02 E0 45
942			23 00 02 1C 55
943			23 00 02 46 55
944			23 00 02 6D 55
945			23 00 02 93 55
946			23 00 02 BB 55
947			23 00 02 E1 55
948			23 00 02 22 FF
949			23 00 02 1E 68
950			23 00 02 4C FF
951			23 00 02 48 68
952			23 00 02 73 FF
953			23 00 02 6F 68
954			23 00 02 99 FF
955			23 00 02 95 68
956			23 00 02 C1 FF
957			23 00 02 BD 68
958			23 00 02 E7 FF
959			23 00 02 E3 68
960			23 00 02 1F 7E
961			23 00 02 49 7E
962			23 00 02 70 7E
963			23 00 02 96 7E
964			23 00 02 BE 7E
965			23 00 02 E4 7E
966			23 00 02 20 97
967			23 00 02 4A 97
968			23 00 02 71 97
969			23 00 02 97 97
970			23 00 02 BF 97
971			23 00 02 E5 97
972			23 00 02 21 B5
973			23 00 02 4B B5
974			23 00 02 72 B5
975			23 00 02 98 B5
976			23 00 02 C0 B5
977			23 00 02 E6 B5
978			23 00 02 25 F0
979			23 00 02 23 E8
980			23 00 02 4F F0
981			23 00 02 4D E8
982			23 00 02 76 F0
983			23 00 02 74 E8
984			23 00 02 9C F0
985			23 00 02 9A E8
986			23 00 02 C4 F0
987			23 00 02 C2 E8
988			23 00 02 EA F0
989			23 00 02 E8 E8
990			23 00 02 24 FF
991			23 00 02 4E FF
992			23 00 02 75 FF
993			23 00 02 9B FF
994			23 00 02 C3 FF
995			23 00 02 E9 FF
996			23 00 02 FE 3D
997			23 00 02 00 04
998			23 00 02 FE 23
999			23 00 02 08 82
1000			23 00 02 0A 00
1001			23 00 02 0B 00
1002			23 00 02 0C 01
1003			23 00 02 16 00
1004			23 00 02 18 02
1005			23 00 02 1B 04
1006			23 00 02 19 04
1007			23 00 02 1C 81
1008			23 00 02 1F 00
1009			23 00 02 20 03
1010			23 00 02 23 04
1011			23 00 02 21 01
1012			23 00 02 54 63
1013			23 00 02 55 54
1014			23 00 02 6E 45
1015			23 00 02 6D 36
1016			23 00 02 FE 3D
1017			23 00 02 55 78
1018			23 00 02 FE 20
1019			23 00 02 26 30
1020			23 00 02 FE 3D
1021			23 00 02 20 71
1022			23 00 02 50 8F
1023			23 00 02 51 8F
1024			23 00 02 FE 00
1025			23 00 02 35 00
1026			05 78 01 11
1027			05 1E 01 29
1028		];
1029
1030		panel-exit-sequence = [
1031			05 00 01 28
1032			05 00 01 10
1033		];
1034
1035		disp_timings1: display-timings {
1036			native-mode = <&dsi1_timing0>;
1037			dsi1_timing0: timing0 {
1038				clock-frequency = <132000000>;
1039				hactive = <1080>;
1040				vactive = <1920>;
1041				hfront-porch = <15>;
1042				hsync-len = <2>;
1043				hback-porch = <30>;
1044				vfront-porch = <15>;
1045				vsync-len = <2>;
1046				vback-porch = <15>;
1047				hsync-active = <0>;
1048				vsync-active = <0>;
1049				de-active = <0>;
1050				pixelclk-active = <1>;
1051			};
1052		};
1053
1054		ports {
1055			#address-cells = <1>;
1056			#size-cells = <0>;
1057
1058			port@0 {
1059				reg = <0>;
1060				panel_in_dsi1: endpoint {
1061					remote-endpoint = <&dsi1_out_panel>;
1062				};
1063			};
1064		};
1065	};
1066
1067	ports {
1068		#address-cells = <1>;
1069		#size-cells = <0>;
1070
1071		port@1 {
1072			reg = <1>;
1073			dsi1_out_panel: endpoint {
1074				remote-endpoint = <&panel_in_dsi1>;
1075			};
1076		};
1077	};
1078
1079};
1080
1081&gpu {
1082	mali-supply = <&vdd_gpu>;
1083	status = "okay";
1084};
1085
1086&hdmi {
1087	status = "okay";
1088	rockchip,phy-table =
1089		<92812500  0x8009 0x0000 0x0270>,
1090		<165000000 0x800b 0x0000 0x026d>,
1091		<185625000 0x800b 0x0000 0x01ed>,
1092		<297000000 0x800b 0x0000 0x01ad>,
1093		<594000000 0x8029 0x0000 0x0088>,
1094		<000000000 0x0000 0x0000 0x0000>;
1095};
1096
1097&hdmi_in_vp0 {
1098	status = "okay";
1099};
1100
1101&hdmi_in_vp1 {
1102	status = "disabled";
1103};
1104
1105&hdmi_sound {
1106	status = "okay";
1107};
1108
1109&i2c0 {
1110	status = "okay";
1111
1112	vdd_cpu: tcs4525@1c {
1113		compatible = "tcs,tcs4525";
1114		reg = <0x1c>;
1115		vin-supply = <&vcc5v0_sys>;
1116		regulator-compatible = "fan53555-reg";
1117		regulator-name = "vdd_cpu";
1118		regulator-min-microvolt = <712500>;
1119		regulator-max-microvolt = <1390000>;
1120		regulator-init-microvolt = <900000>;
1121		regulator-ramp-delay = <2300>;
1122		fcs,suspend-voltage-selector = <1>;
1123		regulator-boot-on;
1124		regulator-always-on;
1125		regulator-state-mem {
1126			regulator-off-in-suspend;
1127		};
1128	};
1129
1130	rk809: pmic@20 {
1131		compatible = "rockchip,rk809";
1132		reg = <0x20>;
1133		interrupt-parent = <&gpio0>;
1134		interrupts = <3 IRQ_TYPE_LEVEL_LOW>;
1135
1136		pinctrl-names = "default", "pmic-sleep",
1137				"pmic-power-off", "pmic-reset";
1138		pinctrl-0 = <&pmic_int>;
1139		pinctrl-1 = <&soc_slppin_slp>, <&rk817_slppin_slp>;
1140		pinctrl-2 = <&soc_slppin_gpio>, <&rk817_slppin_pwrdn>;
1141		pinctrl-3 = <&soc_slppin_gpio>, <&rk817_slppin_rst>;
1142
1143		rockchip,system-power-controller;
1144		wakeup-source;
1145		#clock-cells = <1>;
1146		clock-output-names = "rk808-clkout1", "rk808-clkout2";
1147		//fb-inner-reg-idxs = <2>;
1148		/* 1: rst regs (default in codes), 0: rst the pmic */
1149		pmic-reset-func = <0>;
1150		/* not save the PMIC_POWER_EN register in uboot */
1151		not-save-power-en = <1>;
1152
1153		vcc1-supply = <&vcc3v3_sys>;
1154		vcc2-supply = <&vcc3v3_sys>;
1155		vcc3-supply = <&vcc3v3_sys>;
1156		vcc4-supply = <&vcc3v3_sys>;
1157		vcc5-supply = <&vcc3v3_sys>;
1158		vcc6-supply = <&vcc3v3_sys>;
1159		vcc7-supply = <&vcc3v3_sys>;
1160		vcc8-supply = <&vcc3v3_sys>;
1161		vcc9-supply = <&vcc3v3_sys>;
1162
1163		pwrkey {
1164			status = "okay";
1165		};
1166
1167		pinctrl_rk8xx: pinctrl_rk8xx {
1168			gpio-controller;
1169			#gpio-cells = <2>;
1170
1171			rk817_slppin_null: rk817_slppin_null {
1172				pins = "gpio_slp";
1173				function = "pin_fun0";
1174			};
1175
1176			rk817_slppin_slp: rk817_slppin_slp {
1177				pins = "gpio_slp";
1178				function = "pin_fun1";
1179			};
1180
1181			rk817_slppin_pwrdn: rk817_slppin_pwrdn {
1182				pins = "gpio_slp";
1183				function = "pin_fun2";
1184			};
1185
1186			rk817_slppin_rst: rk817_slppin_rst {
1187				pins = "gpio_slp";
1188				function = "pin_fun3";
1189			};
1190		};
1191
1192		regulators {
1193			vdd_logic: DCDC_REG1 {
1194				regulator-always-on;
1195				regulator-boot-on;
1196				regulator-min-microvolt = <500000>;
1197				regulator-max-microvolt = <1350000>;
1198				regulator-init-microvolt = <900000>;
1199				regulator-ramp-delay = <6001>;
1200				regulator-initial-mode = <0x2>;
1201				regulator-name = "vdd_logic";
1202				regulator-state-mem {
1203					regulator-off-in-suspend;
1204				};
1205			};
1206
1207			vdd_gpu: DCDC_REG2 {
1208				regulator-always-on;
1209				regulator-boot-on;
1210				regulator-min-microvolt = <500000>;
1211				regulator-max-microvolt = <1350000>;
1212				regulator-init-microvolt = <900000>;
1213				regulator-ramp-delay = <6001>;
1214				regulator-initial-mode = <0x2>;
1215				regulator-name = "vdd_gpu";
1216				regulator-state-mem {
1217					regulator-off-in-suspend;
1218				};
1219			};
1220
1221			vcc_ddr: DCDC_REG3 {
1222				regulator-always-on;
1223				regulator-boot-on;
1224				regulator-initial-mode = <0x2>;
1225				regulator-name = "vcc_ddr";
1226				regulator-state-mem {
1227					regulator-on-in-suspend;
1228				};
1229			};
1230
1231			vdd_npu: DCDC_REG4 {
1232				regulator-always-on;
1233				regulator-boot-on;
1234				regulator-min-microvolt = <500000>;
1235				regulator-max-microvolt = <1350000>;
1236				regulator-init-microvolt = <900000>;
1237				regulator-ramp-delay = <6001>;
1238				regulator-initial-mode = <0x2>;
1239				regulator-name = "vdd_npu";
1240				regulator-state-mem {
1241					regulator-off-in-suspend;
1242				};
1243			};
1244
1245			vdda0v9_image: LDO_REG1 {
1246				regulator-boot-on;
1247				regulator-always-on;
1248				regulator-min-microvolt = <900000>;
1249				regulator-max-microvolt = <900000>;
1250				regulator-name = "vdda0v9_image";
1251				regulator-state-mem {
1252					regulator-off-in-suspend;
1253				};
1254			};
1255
1256			vdda_0v9: LDO_REG2 {
1257				regulator-always-on;
1258				regulator-boot-on;
1259				regulator-min-microvolt = <900000>;
1260				regulator-max-microvolt = <900000>;
1261				regulator-name = "vdda_0v9";
1262				regulator-state-mem {
1263					regulator-off-in-suspend;
1264				};
1265			};
1266
1267			vdda0v9_pmu: LDO_REG3 {
1268				regulator-always-on;
1269				regulator-boot-on;
1270				regulator-min-microvolt = <900000>;
1271				regulator-max-microvolt = <900000>;
1272				regulator-name = "vdda0v9_pmu";
1273				regulator-state-mem {
1274					regulator-on-in-suspend;
1275					regulator-suspend-microvolt = <900000>;
1276				};
1277			};
1278
1279			vccio_acodec: LDO_REG4 {
1280				regulator-always-on;
1281				regulator-boot-on;
1282				regulator-min-microvolt = <3000000>;
1283				regulator-max-microvolt = <3000000>;
1284				regulator-name = "vccio_acodec";
1285				regulator-state-mem {
1286					regulator-off-in-suspend;
1287				};
1288			};
1289
1290			vccio_sd: LDO_REG5 {
1291				regulator-always-on;
1292				regulator-boot-on;
1293				regulator-min-microvolt = <1800000>;
1294				regulator-max-microvolt = <3300000>;
1295				regulator-name = "vccio_sd";
1296				regulator-state-mem {
1297					regulator-off-in-suspend;
1298				};
1299			};
1300
1301			vcc3v3_pmu: LDO_REG6 {
1302				regulator-always-on;
1303				regulator-boot-on;
1304				regulator-min-microvolt = <3300000>;
1305				regulator-max-microvolt = <3300000>;
1306				regulator-name = "vcc3v3_pmu";
1307				regulator-state-mem {
1308					regulator-on-in-suspend;
1309					regulator-suspend-microvolt = <3300000>;
1310				};
1311			};
1312
1313			vcca_1v8: LDO_REG7 {
1314				regulator-always-on;
1315				regulator-boot-on;
1316				regulator-min-microvolt = <1800000>;
1317				regulator-max-microvolt = <1800000>;
1318				regulator-name = "vcca_1v8";
1319				regulator-state-mem {
1320					regulator-off-in-suspend;
1321				};
1322			};
1323
1324			vcca1v8_pmu: LDO_REG8 {
1325				regulator-always-on;
1326				regulator-boot-on;
1327				regulator-min-microvolt = <1800000>;
1328				regulator-max-microvolt = <1800000>;
1329				regulator-name = "vcca1v8_pmu";
1330				regulator-state-mem {
1331					regulator-on-in-suspend;
1332					regulator-suspend-microvolt = <1800000>;
1333				};
1334			};
1335
1336			vcca1v8_image: LDO_REG9 {
1337				regulator-always-on;
1338				regulator-boot-on;
1339				regulator-min-microvolt = <1800000>;
1340				regulator-max-microvolt = <1800000>;
1341				regulator-name = "vcca1v8_image";
1342				regulator-state-mem {
1343					regulator-off-in-suspend;
1344				};
1345			};
1346
1347			vcc_1v8: DCDC_REG5 {
1348				regulator-always-on;
1349				regulator-boot-on;
1350				regulator-min-microvolt = <1800000>;
1351				regulator-max-microvolt = <1800000>;
1352				regulator-name = "vcc_1v8";
1353				regulator-state-mem {
1354					regulator-off-in-suspend;
1355				};
1356			};
1357
1358			vcc_3v3: SWITCH_REG1 {
1359				regulator-always-on;
1360				regulator-boot-on;
1361				regulator-name = "vcc_3v3";
1362				regulator-state-mem {
1363					regulator-off-in-suspend;
1364				};
1365			};
1366
1367			vcc3v3_sd: SWITCH_REG2 {
1368				regulator-always-on;
1369				regulator-boot-on;
1370				regulator-name = "vcc3v3_sd";
1371				regulator-state-mem {
1372					regulator-off-in-suspend;
1373				};
1374			};
1375		};
1376
1377		rk809_codec: codec {
1378			#sound-dai-cells = <1>;
1379			compatible = "rockchip,rk809-codec", "rockchip,rk817-codec";
1380			clocks = <&cru I2S1_MCLKOUT>;
1381			clock-names = "mclk";
1382			assigned-clocks = <&cru I2S1_MCLKOUT>, <&cru I2S1_MCLK_TX_IOE>;
1383			assigned-clock-rates = <12288000>;
1384			assigned-clock-parents = <&cru I2S1_MCLKOUT_TX>, <&cru I2S1_MCLKOUT_TX>;
1385			pinctrl-names = "default";
1386			pinctrl-0 = <&i2s1m0_mclk>;
1387			hp-volume = <20>;
1388			spk-volume = <3>;
1389			mic-in-differential;
1390			status = "okay";
1391		};
1392	};
1393};
1394
1395&i2c1 {
1396	status = "okay";
1397
1398	gt1x: gt1x@14 {
1399		compatible = "goodix,gt1x";
1400		reg = <0x14>;
1401		pinctrl-names = "default";
1402		pinctrl-0 = <&touch_gpio>;
1403		goodix,rst-gpio = <&gpio0 RK_PB6 GPIO_ACTIVE_HIGH>;
1404		goodix,irq-gpio = <&gpio0 RK_PB5 IRQ_TYPE_LEVEL_LOW>;
1405	};
1406};
1407
1408&i2c5 {
1409	status = "okay";
1410
1411	mxc6655xa: mxc6655xa@15 {
1412		status = "okay";
1413		compatible = "gs_mxc6655xa";
1414		pinctrl-names = "default";
1415		pinctrl-0 = <&mxc6655xa_irq_gpio>;
1416		reg = <0x15>;
1417		irq-gpio = <&gpio3 RK_PC1 IRQ_TYPE_LEVEL_LOW>;
1418		irq_enable = <0>;
1419		poll_delay_ms = <30>;
1420		type = <SENSOR_TYPE_ACCEL>;
1421		power-off-in-suspend = <1>;
1422		layout = <1>;
1423	};
1424};
1425
1426&i2s0_8ch {
1427	status = "okay";
1428};
1429
1430&i2s1_8ch {
1431	status = "okay";
1432	rockchip,clk-trcm = <1>;
1433	pinctrl-names = "default";
1434	pinctrl-0 = <&i2s1m0_sclktx
1435		     &i2s1m0_lrcktx
1436		     &i2s1m0_sdi0
1437		     &i2s1m0_sdo0>;
1438};
1439
1440&i2s3_2ch {
1441	pinctrl-0 = <&i2s3m0_sclk &i2s3m0_lrck &i2s3m0_sdi &i2s3m0_sdo>;
1442	rockchip,bclk-fs = <32>;
1443	status = "disabled";
1444};
1445
1446&iep {
1447	status = "okay";
1448};
1449
1450&iep_mmu {
1451	status = "okay";
1452};
1453
1454&jpegd {
1455	status = "okay";
1456};
1457
1458&jpegd_mmu {
1459	status = "okay";
1460};
1461
1462&mpp_srv {
1463	status = "okay";
1464};
1465
1466&nandc0 {
1467	#address-cells = <1>;
1468	#size-cells = <0>;
1469	status = "okay";
1470
1471	nand@0 {
1472		reg = <0>;
1473		nand-bus-width = <8>;
1474		nand-ecc-mode = "hw";
1475		nand-ecc-strength = <16>;
1476		nand-ecc-step-size = <1024>;
1477	};
1478};
1479
1480&pinctrl {
1481
1482	headphone {
1483		hp_det: hp-det {
1484			rockchip,pins = <3 RK_PA1 RK_FUNC_GPIO &pcfg_pull_down>;
1485		};
1486	};
1487
1488	mxc6655xa {
1489		mxc6655xa_irq_gpio: mxc6655xa_irq_gpio {
1490			rockchip,pins = <3 RK_PC1 RK_FUNC_GPIO &pcfg_pull_none>;
1491		};
1492	};
1493
1494	pmic {
1495		pmic_int: pmic_int {
1496			rockchip,pins =
1497				<0 RK_PA3 RK_FUNC_GPIO &pcfg_pull_up>;
1498		};
1499
1500		soc_slppin_gpio: soc_slppin_gpio {
1501			rockchip,pins =
1502				<0 RK_PA2 RK_FUNC_GPIO &pcfg_output_low>;
1503		};
1504
1505		soc_slppin_slp: soc_slppin_slp {
1506			rockchip,pins =
1507				<0 RK_PA2 1 &pcfg_pull_none>;
1508		};
1509
1510		soc_slppin_rst: soc_slppin_rst {
1511			rockchip,pins =
1512				<0 RK_PA2 2 &pcfg_pull_none>;
1513		};
1514	};
1515
1516	touch {
1517		touch_gpio: touch-gpio {
1518			rockchip,pins =
1519				<0 RK_PB5 RK_FUNC_GPIO &pcfg_pull_up>,
1520				<0 RK_PB6 RK_FUNC_GPIO &pcfg_pull_none>;
1521		};
1522	};
1523
1524	sdio-pwrseq {
1525		wifi_enable_h: wifi-enable-h {
1526			rockchip,pins = <3 RK_PD5 RK_FUNC_GPIO &pcfg_pull_none>;
1527		};
1528	};
1529
1530	usb {
1531		vcc5v0_host_en: vcc5v0-host-en {
1532			rockchip,pins = <0 RK_PA6 RK_FUNC_GPIO &pcfg_pull_none>;
1533		};
1534
1535		vcc5v0_otg_en: vcc5v0-otg-en {
1536			rockchip,pins = <0 RK_PA5 RK_FUNC_GPIO &pcfg_pull_none>;
1537		};
1538	};
1539
1540	wireless-bluetooth {
1541		uart8_gpios: uart8-gpios {
1542			rockchip,pins = <2 RK_PB1 RK_FUNC_GPIO &pcfg_pull_none>;
1543		};
1544	};
1545};
1546
1547 /*
1548  * There are 10 independent IO domains in RK3566/RK3568, including PMUIO[0:2] and VCCIO[1:7].
1549  * 1/ PMUIO0 and PMUIO1 are fixed-level power domains which cannot be configured;
1550  * 2/ PMUIO2 and VCCIO1,VCCIO[3:7] domains require that their hardware power supply voltages
1551  *    must be consistent with the software configuration correspondingly
1552  *	a/ When the hardware IO level is connected to 1.8V, the software voltage configuration
1553  *	   should also be configured to 1.8V accordingly;
1554  *	b/ When the hardware IO level is connected to 3.3V, the software voltage configuration
1555  *	   should also be configured to 3.3V accordingly;
1556  * 3/ VCCIO2 voltage control selection (0xFDC20140)
1557  *	BIT[0]: 0x0: from GPIO_0A7 (default)
1558  *	BIT[0]: 0x1: from GRF
1559  *    Default is determined by Pin FLASH_VOL_SEL/GPIO0_A7:
1560  *	L:VCCIO2 must supply 3.3V
1561  *	H:VCCIO2 must supply 1.8V
1562  */
1563&pmu_io_domains {
1564	status = "okay";
1565	pmuio2-supply = <&vcc3v3_pmu>;
1566	vccio1-supply = <&vccio_acodec>;
1567	vccio3-supply = <&vccio_sd>;
1568	vccio4-supply = <&vcc_3v3>;
1569	vccio5-supply = <&vcc_3v3>;
1570	vccio6-supply = <&vcc_3v3>;
1571	vccio7-supply = <&vcc_3v3>;
1572};
1573
1574&pwm4 {
1575	status = "okay";
1576};
1577
1578&pwm5 {
1579	status = "okay";
1580};
1581
1582&pwm7 {
1583	status = "okay";
1584
1585	compatible = "rockchip,remotectl-pwm";
1586	remote_pwm_id = <3>;
1587	handle_cpu_id = <1>;
1588	remote_support_psci = <0>;
1589	pinctrl-names = "default";
1590	pinctrl-0 = <&pwm7_pins>;
1591
1592	ir_key1 {
1593		rockchip,usercode = <0x4040>;
1594		rockchip,key_table =
1595			<0xf2	KEY_REPLY>,
1596			<0xba	KEY_BACK>,
1597			<0xf4	KEY_UP>,
1598			<0xf1	KEY_DOWN>,
1599			<0xef	KEY_LEFT>,
1600			<0xee	KEY_RIGHT>,
1601			<0xbd	KEY_HOME>,
1602			<0xea	KEY_VOLUMEUP>,
1603			<0xe3	KEY_VOLUMEDOWN>,
1604			<0xe2	KEY_SEARCH>,
1605			<0xb2	KEY_POWER>,
1606			<0xbc	KEY_MUTE>,
1607			<0xec	KEY_MENU>,
1608			<0xbf	0x190>,
1609			<0xe0	0x191>,
1610			<0xe1	0x192>,
1611			<0xe9	183>,
1612			<0xe6	248>,
1613			<0xe8	185>,
1614			<0xe7	186>,
1615			<0xf0	388>,
1616			<0xbe	0x175>;
1617	};
1618
1619	ir_key2 {
1620		rockchip,usercode = <0xff00>;
1621		rockchip,key_table =
1622			<0xf9	KEY_HOME>,
1623			<0xbf	KEY_BACK>,
1624			<0xfb	KEY_MENU>,
1625			<0xaa	KEY_REPLY>,
1626			<0xb9	KEY_UP>,
1627			<0xe9	KEY_DOWN>,
1628			<0xb8	KEY_LEFT>,
1629			<0xea	KEY_RIGHT>,
1630			<0xeb	KEY_VOLUMEDOWN>,
1631			<0xef	KEY_VOLUMEUP>,
1632			<0xf7	KEY_MUTE>,
1633			<0xe7	KEY_POWER>,
1634			<0xfc	KEY_POWER>,
1635			<0xa9	KEY_VOLUMEDOWN>,
1636			<0xa8	KEY_VOLUMEDOWN>,
1637			<0xe0	KEY_VOLUMEDOWN>,
1638			<0xa5	KEY_VOLUMEDOWN>,
1639			<0xab	183>,
1640			<0xb7	388>,
1641			<0xe8	388>,
1642			<0xf8	184>,
1643			<0xaf	185>,
1644			<0xed	KEY_VOLUMEDOWN>,
1645			<0xee	186>,
1646			<0xb3	KEY_VOLUMEDOWN>,
1647			<0xf1	KEY_VOLUMEDOWN>,
1648			<0xf2	KEY_VOLUMEDOWN>,
1649			<0xf3	KEY_SEARCH>,
1650			<0xb4	KEY_VOLUMEDOWN>,
1651			<0xbe	KEY_SEARCH>;
1652	};
1653
1654	ir_key3 {
1655		rockchip,usercode = <0x1dcc>;
1656		rockchip,key_table =
1657			<0xee	KEY_REPLY>,
1658			<0xf0	KEY_BACK>,
1659			<0xf8	KEY_UP>,
1660			<0xbb	KEY_DOWN>,
1661			<0xef	KEY_LEFT>,
1662			<0xed	KEY_RIGHT>,
1663			<0xfc	KEY_HOME>,
1664			<0xf1	KEY_VOLUMEUP>,
1665			<0xfd	KEY_VOLUMEDOWN>,
1666			<0xb7	KEY_SEARCH>,
1667			<0xff	KEY_POWER>,
1668			<0xf3	KEY_MUTE>,
1669			<0xbf	KEY_MENU>,
1670			<0xf9	0x191>,
1671			<0xf5	0x192>,
1672			<0xb3	388>,
1673			<0xbe	KEY_1>,
1674			<0xba	KEY_2>,
1675			<0xb2	KEY_3>,
1676			<0xbd	KEY_4>,
1677			<0xf9	KEY_5>,
1678			<0xb1	KEY_6>,
1679			<0xfc	KEY_7>,
1680			<0xf8	KEY_8>,
1681			<0xb0	KEY_9>,
1682			<0xb6	KEY_0>,
1683			<0xb5	KEY_BACKSPACE>;
1684	};
1685};
1686
1687&rk_rga {
1688	status = "okay";
1689};
1690
1691&rkvdec {
1692	status = "okay";
1693};
1694
1695&rkvdec_mmu {
1696	status = "okay";
1697};
1698
1699&rkvenc {
1700	venc-supply = <&vdd_logic>;
1701	status = "okay";
1702};
1703
1704&rkvenc_mmu {
1705	status = "okay";
1706};
1707
1708&rknpu {
1709	rknpu-supply = <&vdd_npu>;
1710	status = "okay";
1711};
1712
1713&rknpu_mmu {
1714	status = "okay";
1715};
1716
1717&route_hdmi {
1718	status = "okay";
1719	connect = <&vp0_out_hdmi>;
1720};
1721
1722&saradc {
1723	status = "okay";
1724	vref-supply = <&vcca_1v8>;
1725};
1726
1727&sdhci {
1728	bus-width = <8>;
1729	no-sdio;
1730	no-sd;
1731	non-removable;
1732	max-frequency = <200000000>;
1733	full-pwr-cycle-in-suspend;
1734	status = "okay";
1735};
1736
1737&sdmmc0 {
1738	max-frequency = <150000000>;
1739	no-sdio;
1740	no-mmc;
1741	bus-width = <4>;
1742	cap-mmc-highspeed;
1743	cap-sd-highspeed;
1744	disable-wp;
1745	sd-uhs-sdr104;
1746	vmmc-supply = <&vcc3v3_sd>;
1747	vqmmc-supply = <&vccio_sd>;
1748	pinctrl-names = "default";
1749	pinctrl-0 = <&sdmmc0_bus4 &sdmmc0_clk &sdmmc0_cmd &sdmmc0_det>;
1750	status = "okay";
1751};
1752
1753&sfc {
1754	status = "okay";
1755
1756	flash@0 {
1757		compatible = "spi-nand";
1758		reg = <0>;
1759		spi-max-frequency = <75000000>;
1760		spi-rx-bus-width = <4>;
1761		spi-tx-bus-width = <1>;
1762	};
1763};
1764
1765&spdif_8ch {
1766	status = "okay";
1767};
1768
1769&tsadc {
1770	status = "okay";
1771};
1772
1773&u2phy0_host {
1774	phy-supply = <&vcc5v0_host>;
1775	status = "okay";
1776};
1777
1778&u2phy0_otg {
1779	vbus-supply = <&vcc5v0_otg>;
1780	status = "okay";
1781};
1782
1783&u2phy1_host {
1784	phy-supply = <&vcc5v0_host>;
1785	status = "okay";
1786};
1787
1788&u2phy1_otg {
1789	phy-supply = <&vcc5v0_host>;
1790	status = "okay";
1791};
1792
1793&usb2phy0 {
1794	status = "okay";
1795};
1796
1797&usb2phy1 {
1798	status = "okay";
1799};
1800
1801&usb_host0_ehci {
1802	status = "okay";
1803};
1804
1805&usb_host0_ohci {
1806	status = "okay";
1807};
1808
1809&usb_host1_ehci {
1810	status = "okay";
1811};
1812
1813&usb_host1_ohci {
1814	status = "okay";
1815};
1816
1817&usbdrd_dwc3 {
1818	dr_mode = "otg";
1819	extcon = <&usb2phy0>;
1820	status = "okay";
1821};
1822
1823&usbdrd30 {
1824	status = "okay";
1825};
1826
1827&usbhost_dwc3 {
1828	status = "okay";
1829};
1830
1831&usbhost30 {
1832	status = "okay";
1833};
1834
1835&vad {
1836	rockchip,audio-src = <&i2s1_8ch>;
1837	rockchip,buffer-time-ms = <128>;
1838	rockchip,det-channel = <0>;
1839	rockchip,mode = <0>;
1840};
1841
1842&vdpu {
1843	status = "okay";
1844};
1845
1846&vdpu_mmu {
1847	status = "okay";
1848};
1849
1850&vepu {
1851	status = "okay";
1852};
1853
1854&vepu_mmu {
1855	status = "okay";
1856};
1857
1858&vop {
1859	status = "okay";
1860	assigned-clocks = <&cru DCLK_VOP0>, <&cru DCLK_VOP1>;
1861	assigned-clock-parents = <&pmucru PLL_HPLL>, <&cru PLL_VPLL>;
1862};
1863
1864&vop_mmu {
1865	status = "okay";
1866};
1867