xref: /OK3568_Linux_fs/kernel/arch/arm64/boot/dts/rockchip/rk3562-evb.dtsi (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2/*
3 * Copyright (c) 2022 Rockchip Electronics Co., Ltd.
4 *
5 */
6
7#include <dt-bindings/display/drm_mipi_dsi.h>
8#include <dt-bindings/gpio/gpio.h>
9#include <dt-bindings/input/input.h>
10#include <dt-bindings/pinctrl/rockchip.h>
11
12/ {
13	adc_keys: adc-keys {
14		compatible = "adc-keys";
15		io-channels = <&saradc0 1>;
16		io-channel-names = "buttons";
17		keyup-threshold-microvolt = <1800000>;
18		poll-interval = <100>;
19
20		vol-up-key {
21			linux,code = <KEY_VOLUMEUP>;
22			label = "volume up";
23			press-threshold-microvolt = <17000>;
24		};
25
26		vol-down-key {
27			linux,code = <KEY_VOLUMEDOWN>;
28			label = "volume down";
29			press-threshold-microvolt = <414000>;
30		};
31
32		menu-key {
33			linux,code = <KEY_MENU>;
34			label = "menu";
35			press-threshold-microvolt = <800000>;
36		};
37
38		back-key {
39			linux,code = <KEY_BACK>;
40			label = "back";
41			press-threshold-microvolt = <1200000>;
42		};
43	};
44
45	backlight: backlight {
46		compatible = "pwm-backlight";
47		pwms = <&pwm5 0 25000 0>;
48		brightness-levels = <
49			  0  20  20  21  21  22  22  23
50			 23  24  24  25  25  26  26  27
51			 27  28  28  29  29  30  30  31
52			 31  32  32  33  33  34  34  35
53			 35  36  36  37  37  38  38  39
54			 40  41  42  43  44  45  46  47
55			 48  49  50  51  52  53  54  55
56			 56  57  58  59  60  61  62  63
57			 64  65  66  67  68  69  70  71
58			 72  73  74  75  76  77  78  79
59			 80  81  82  83  84  85  86  87
60			 88  89  90  91  92  93  94  95
61			 96  97  98  99 100 101 102 103
62			104 105 106 107 108 109 110 111
63			112 113 114 115 116 117 118 119
64			120 121 122 123 124 125 126 127
65			128 129 130 131 132 133 134 135
66			136 137 138 139 140 141 142 143
67			144 145 146 147 148 149 150 151
68			152 153 154 155 156 157 158 159
69			160 161 162 163 164 165 166 167
70			168 169 170 171 172 173 174 175
71			176 177 178 179 180 181 182 183
72			184 185 186 187 188 189 190 191
73			192 193 194 195 196 197 198 199
74			200 201 202 203 204 205 206 207
75			208 209 210 211 212 213 214 215
76			216 217 218 219 220 221 222 223
77			224 225 226 227 228 229 230 231
78			232 233 234 235 236 237 238 239
79			240 241 242 243 244 245 246 247
80			248 249 250 251 252 253 254 255
81		>;
82		default-brightness-level = <200>;
83	};
84
85	pdm_codec: dummy-codec {
86		status = "okay";
87		compatible = "rockchip,dummy-codec";
88		#sound-dai-cells = <0>;
89	};
90
91	pdm_mic_array: pdm-mic-array {
92		status = "disabled";
93		compatible = "simple-audio-card";
94		simple-audio-card,name = "rockchip,pdm-mic-array";
95		simple-audio-card,cpu {
96			sound-dai = <&pdm>;
97		};
98		simple-audio-card,codec {
99			sound-dai = <&pdm_codec>;
100		};
101	};
102
103	spdif_out: spdif-out {
104		status = "okay";
105		compatible = "linux,spdif-dit";
106		#sound-dai-cells = <0>;
107	};
108
109	spdif-sound {
110		status = "okay";
111		compatible = "simple-audio-card";
112		simple-audio-card,name = "rk-spdif-sound";
113		simple-audio-card,mclk-fs = <128>;
114		simple-audio-card,cpu {
115			sound-dai = <&spdif_8ch>;
116		};
117		simple-audio-card,codec {
118			sound-dai = <&spdif_out>;
119		};
120	};
121
122	test-power {
123		status = "okay";
124	};
125
126	vcc3v3_lcd_n: vcc3v3-lcd0-n {
127		compatible = "regulator-fixed";
128		regulator-name = "vcc3v3_lcd_n";
129		regulator-boot-on;
130		regulator-state-mem {
131			regulator-off-in-suspend;
132		};
133	};
134};
135
136&cpu0 {
137	cpu-supply = <&vdd_cpu>;
138};
139
140&dfi {
141	status = "okay";
142};
143
144&display_subsystem {
145	status = "okay";
146};
147
148&dmc {
149	center-supply = <&vdd_logic>;
150	status = "okay";
151};
152
153&dsi {
154	status = "disabled";
155	//rockchip,lane-rate = <1000>;
156	dsi_panel: panel@0 {
157		status = "okay";
158		compatible = "simple-panel-dsi";
159		reg = <0>;
160		backlight = <&backlight>;
161		reset-delay-ms = <60>;
162		enable-delay-ms = <60>;
163		prepare-delay-ms = <60>;
164		unprepare-delay-ms = <60>;
165		disable-delay-ms = <60>;
166		dsi,flags = <(MIPI_DSI_MODE_VIDEO | MIPI_DSI_MODE_VIDEO_BURST |
167			MIPI_DSI_MODE_LPM | MIPI_DSI_MODE_EOT_PACKET)>;
168		dsi,format = <MIPI_DSI_FMT_RGB888>;
169		dsi,lanes  = <4>;
170		panel-init-sequence = [
171			23 00 02 FE 21
172			23 00 02 04 00
173			23 00 02 00 64
174			23 00 02 2A 00
175			23 00 02 26 64
176			23 00 02 54 00
177			23 00 02 50 64
178			23 00 02 7B 00
179			23 00 02 77 64
180			23 00 02 A2 00
181			23 00 02 9D 64
182			23 00 02 C9 00
183			23 00 02 C5 64
184			23 00 02 01 71
185			23 00 02 27 71
186			23 00 02 51 71
187			23 00 02 78 71
188			23 00 02 9E 71
189			23 00 02 C6 71
190			23 00 02 02 89
191			23 00 02 28 89
192			23 00 02 52 89
193			23 00 02 79 89
194			23 00 02 9F 89
195			23 00 02 C7 89
196			23 00 02 03 9E
197			23 00 02 29 9E
198			23 00 02 53 9E
199			23 00 02 7A 9E
200			23 00 02 A0 9E
201			23 00 02 C8 9E
202			23 00 02 09 00
203			23 00 02 05 B0
204			23 00 02 31 00
205			23 00 02 2B B0
206			23 00 02 5A 00
207			23 00 02 55 B0
208			23 00 02 80 00
209			23 00 02 7C B0
210			23 00 02 A7 00
211			23 00 02 A3 B0
212			23 00 02 CE 00
213			23 00 02 CA B0
214			23 00 02 06 C0
215			23 00 02 2D C0
216			23 00 02 56 C0
217			23 00 02 7D C0
218			23 00 02 A4 C0
219			23 00 02 CB C0
220			23 00 02 07 CF
221			23 00 02 2F CF
222			23 00 02 58 CF
223			23 00 02 7E CF
224			23 00 02 A5 CF
225			23 00 02 CC CF
226			23 00 02 08 DD
227			23 00 02 30 DD
228			23 00 02 59 DD
229			23 00 02 7F DD
230			23 00 02 A6 DD
231			23 00 02 CD DD
232			23 00 02 0E 15
233			23 00 02 0A E9
234			23 00 02 36 15
235			23 00 02 32 E9
236			23 00 02 5F 15
237			23 00 02 5B E9
238			23 00 02 85 15
239			23 00 02 81 E9
240			23 00 02 AD 15
241			23 00 02 A9 E9
242			23 00 02 D3 15
243			23 00 02 CF E9
244			23 00 02 0B 14
245			23 00 02 33 14
246			23 00 02 5C 14
247			23 00 02 82 14
248			23 00 02 AA 14
249			23 00 02 D0 14
250			23 00 02 0C 36
251			23 00 02 34 36
252			23 00 02 5D 36
253			23 00 02 83 36
254			23 00 02 AB 36
255			23 00 02 D1 36
256			23 00 02 0D 6B
257			23 00 02 35 6B
258			23 00 02 5E 6B
259			23 00 02 84 6B
260			23 00 02 AC 6B
261			23 00 02 D2 6B
262			23 00 02 13 5A
263			23 00 02 0F 94
264			23 00 02 3B 5A
265			23 00 02 37 94
266			23 00 02 64 5A
267			23 00 02 60 94
268			23 00 02 8A 5A
269			23 00 02 86 94
270			23 00 02 B2 5A
271			23 00 02 AE 94
272			23 00 02 D8 5A
273			23 00 02 D4 94
274			23 00 02 10 D1
275			23 00 02 38 D1
276			23 00 02 61 D1
277			23 00 02 87 D1
278			23 00 02 AF D1
279			23 00 02 D5 D1
280			23 00 02 11 04
281			23 00 02 39 04
282			23 00 02 62 04
283			23 00 02 88 04
284			23 00 02 B0 04
285			23 00 02 D6 04
286			23 00 02 12 05
287			23 00 02 3A 05
288			23 00 02 63 05
289			23 00 02 89 05
290			23 00 02 B1 05
291			23 00 02 D7 05
292			23 00 02 18 AA
293			23 00 02 14 36
294			23 00 02 42 AA
295			23 00 02 3D 36
296			23 00 02 69 AA
297			23 00 02 65 36
298			23 00 02 8F AA
299			23 00 02 8B 36
300			23 00 02 B7 AA
301			23 00 02 B3 36
302			23 00 02 DD AA
303			23 00 02 D9 36
304			23 00 02 15 74
305			23 00 02 3F 74
306			23 00 02 66 74
307			23 00 02 8C 74
308			23 00 02 B4 74
309			23 00 02 DA 74
310			23 00 02 16 9F
311			23 00 02 40 9F
312			23 00 02 67 9F
313			23 00 02 8D 9F
314			23 00 02 B5 9F
315			23 00 02 DB 9F
316			23 00 02 17 DC
317			23 00 02 41 DC
318			23 00 02 68 DC
319			23 00 02 8E DC
320			23 00 02 B6 DC
321			23 00 02 DC DC
322			23 00 02 1D FF
323			23 00 02 19 03
324			23 00 02 47 FF
325			23 00 02 43 03
326			23 00 02 6E FF
327			23 00 02 6A 03
328			23 00 02 94 FF
329			23 00 02 90 03
330			23 00 02 BC FF
331			23 00 02 B8 03
332			23 00 02 E2 FF
333			23 00 02 DE 03
334			23 00 02 1A 35
335			23 00 02 44 35
336			23 00 02 6B 35
337			23 00 02 91 35
338			23 00 02 B9 35
339			23 00 02 DF 35
340			23 00 02 1B 45
341			23 00 02 45 45
342			23 00 02 6C 45
343			23 00 02 92 45
344			23 00 02 BA 45
345			23 00 02 E0 45
346			23 00 02 1C 55
347			23 00 02 46 55
348			23 00 02 6D 55
349			23 00 02 93 55
350			23 00 02 BB 55
351			23 00 02 E1 55
352			23 00 02 22 FF
353			23 00 02 1E 68
354			23 00 02 4C FF
355			23 00 02 48 68
356			23 00 02 73 FF
357			23 00 02 6F 68
358			23 00 02 99 FF
359			23 00 02 95 68
360			23 00 02 C1 FF
361			23 00 02 BD 68
362			23 00 02 E7 FF
363			23 00 02 E3 68
364			23 00 02 1F 7E
365			23 00 02 49 7E
366			23 00 02 70 7E
367			23 00 02 96 7E
368			23 00 02 BE 7E
369			23 00 02 E4 7E
370			23 00 02 20 97
371			23 00 02 4A 97
372			23 00 02 71 97
373			23 00 02 97 97
374			23 00 02 BF 97
375			23 00 02 E5 97
376			23 00 02 21 B5
377			23 00 02 4B B5
378			23 00 02 72 B5
379			23 00 02 98 B5
380			23 00 02 C0 B5
381			23 00 02 E6 B5
382			23 00 02 25 F0
383			23 00 02 23 E8
384			23 00 02 4F F0
385			23 00 02 4D E8
386			23 00 02 76 F0
387			23 00 02 74 E8
388			23 00 02 9C F0
389			23 00 02 9A E8
390			23 00 02 C4 F0
391			23 00 02 C2 E8
392			23 00 02 EA F0
393			23 00 02 E8 E8
394			23 00 02 24 FF
395			23 00 02 4E FF
396			23 00 02 75 FF
397			23 00 02 9B FF
398			23 00 02 C3 FF
399			23 00 02 E9 FF
400			23 00 02 FE 3D
401			23 00 02 00 04
402			23 00 02 FE 23
403			23 00 02 08 82
404			23 00 02 0A 00
405			23 00 02 0B 00
406			23 00 02 0C 01
407			23 00 02 16 00
408			23 00 02 18 02
409			23 00 02 1B 04
410			23 00 02 19 04
411			23 00 02 1C 81
412			23 00 02 1F 00
413			23 00 02 20 03
414			23 00 02 23 04
415			23 00 02 21 01
416			23 00 02 54 63
417			23 00 02 55 54
418			23 00 02 6E 45
419			23 00 02 6D 36
420			23 00 02 FE 3D
421			23 00 02 55 78
422			23 00 02 FE 20
423			23 00 02 26 30
424			23 00 02 FE 3D
425			23 00 02 20 71
426			23 00 02 50 8F
427			23 00 02 51 8F
428			23 00 02 FE 00
429			23 00 02 35 00
430			05 78 01 11
431			05 1E 01 29
432		];
433
434		panel-exit-sequence = [
435			05 00 01 28
436			05 00 01 10
437		];
438
439		disp_timings0: display-timings {
440			native-mode = <&dsi_timing0>;
441			dsi_timing0: timing0 {
442				clock-frequency = <132000000>;
443				hactive = <1080>;
444				vactive = <1920>;
445				hfront-porch = <15>;
446				hsync-len = <2>;
447				hback-porch = <30>;
448				vfront-porch = <15>;
449				vsync-len = <2>;
450				vback-porch = <15>;
451				hsync-active = <0>;
452				vsync-active = <0>;
453				de-active = <0>;
454				pixelclk-active = <1>;
455			};
456		};
457
458		ports {
459			#address-cells = <1>;
460			#size-cells = <0>;
461
462			port@0 {
463				reg = <0>;
464				panel_in_dsi: endpoint {
465					remote-endpoint = <&dsi_out_panel>;
466				};
467			};
468		};
469	};
470
471	ports {
472		#address-cells = <1>;
473		#size-cells = <0>;
474
475		port@1 {
476			reg = <1>;
477			dsi_out_panel: endpoint {
478				remote-endpoint = <&panel_in_dsi>;
479			};
480		};
481	};
482
483};
484
485&gpu {
486	status = "okay";
487	mali-supply = <&vdd_gpu>;
488};
489
490&i2c2 {
491	status = "okay";
492
493	gt1x: gt1x@14 {
494		compatible = "goodix,gt1x";
495		reg = <0x14>;
496		pinctrl-names = "default";
497		pinctrl-0 = <&touch_gpio>;
498		goodix,rst-gpio = <&gpio0 RK_PA0 GPIO_ACTIVE_HIGH>;
499		goodix,irq-gpio = <&gpio0 RK_PB0 GPIO_ACTIVE_LOW>;
500		/*
501		 * power-supply should switche to vcc3v3_lcd1_n
502		 * when mipi panel is connected to dsi1.
503		 */
504		power-supply = <&vcc3v3_lcd_n>;
505	};
506};
507
508&jpegd {
509	status = "okay";
510};
511
512&jpegd_mmu {
513	status = "okay";
514};
515
516&mpp_srv {
517	status = "okay";
518};
519
520&pinctrl {
521	touch {
522		touch_gpio: touch-gpio {
523			rockchip,pins =
524				<0 RK_PB0 RK_FUNC_GPIO &pcfg_pull_up>,
525				<0 RK_PA0 RK_FUNC_GPIO &pcfg_pull_none>;
526		};
527	};
528};
529
530&pwm5 {
531	status = "okay";
532};
533
534&rga2 {
535	status = "okay";
536};
537
538&rga2_mmu {
539	status = "okay";
540};
541
542&rknpu {
543	rknpu-supply = <&vdd_npu>;
544	status = "okay";
545};
546
547&rknpu_mmu {
548	status = "okay";
549};
550
551&rkvdec {
552	status = "okay";
553};
554
555&rkvdec_mmu {
556	status = "okay";
557};
558
559&rkvenc {
560	status = "okay";
561};
562
563&rkvenc_mmu {
564	status = "okay";
565};
566
567&saradc0 {
568	status = "okay";
569	vref-supply = <&vcc_1v8>;
570};
571
572&sdhci {
573	bus-width = <8>;
574	no-sdio;
575	no-sd;
576	non-removable;
577	max-frequency = <200000000>;
578	mmc-hs400-1_8v;
579	mmc-hs400-enhanced-strobe;
580	full-pwr-cycle-in-suspend;
581	status = "okay";
582};
583
584&tsadc {
585	status = "okay";
586};
587
588&vop {
589	status = "okay";
590};
591
592&vop_mmu {
593	status = "okay";
594};
595