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