xref: /OK3568_Linux_fs/kernel/scripts/dtc/include-prefixes/arm64/rockchip/rk3562-dictpen-test3-v20.dts (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2/*
3 * Copyright (c) 2023 Rockchip Electronics Co., Ltd.
4 *
5 */
6/dts-v1/;
7
8#include <dt-bindings/gpio/gpio.h>
9#include <dt-bindings/pinctrl/rockchip.h>
10#include <dt-bindings/input/rk-input.h>
11#include <dt-bindings/sensor-dev.h>
12#include <dt-bindings/display/drm_mipi_dsi.h>
13#include "dt-bindings/usb/pd.h"
14#include "rk3562.dtsi"
15#include "rk3562-linux.dtsi"
16
17/ {
18	model = "Rockchip RK3562 DICTPEN TEST3 LP4 V20 Board";
19	compatible = "rockchip,rk3562-dictpen-test3-v20", "rockchip,rk3562";
20
21	adc_keys: adc-keys {
22		compatible = "adc-keys";
23		io-channels = <&saradc0 1>;
24		io-channel-names = "buttons";
25		keyup-threshold-microvolt = <1800000>;
26		poll-interval = <100>;
27
28		vol-up-key {
29			label = "volume up";
30			linux,code = <KEY_VOLUMEUP>;
31			press-threshold-microvolt = <17000>;
32		};
33	};
34
35	backlight: backlight {
36		compatible = "pwm-backlight";
37		pwms = <&pwm12 0 25000 0>;
38		brightness-levels = <
39			  0  20  20  21  21  22  22  23
40			 23  24  24  25  25  26  26  27
41			 27  28  28  29  29  30  30  31
42			 31  32  32  33  33  34  34  35
43			 35  36  36  37  37  38  38  39
44			 40  41  42  43  44  45  46  47
45			 48  49  50  50  51  52  53  54
46			 55  55  56  57  58  59  60  61
47			 62  63  64  64  65  65  66  67
48			 68  69  70  71  71  72  73  74
49			 75  76  77  78  79  79  80  81
50			 82  83  84  85  86  86  87  88
51			 89  90  91  92  93  94  94  95
52			 96  97  98  99 100 101 101 102
53			103 104 105 106 107 107 108 109
54			110 111 112 113 114 115 115 116
55			117 118 119 120 121 122 123 123
56			124 125 126 127 128 129 130 130
57			131 132 133 134 135 136 136 137
58			138 139 140 141 142 143 143 144
59			145 146 147 147 148 149 150 151
60			152 153 154 155 156 156 157 158
61			159 157 158 159 160 161 162 162
62			163 164 165 166 167 168 169 169
63			170 171 172 173 174 175 175 176
64			177 178 179 180 181 182 182 183
65			184 185 186 187 188 189 190 190
66			191 192 193 194 195 196 197 197
67			198 199 200 201 202 203 204 204
68			205 206 207 208 209 209 210 211
69			212 213 213 214 214 215 215 216
70			216 217 217 218 218 219 219 220
71		>;
72		default-brightness-level = <60>;
73	};
74
75	charge-animation {
76		compatible = "rockchip,uboot-charge";
77		rockchip,uboot-charge-on = <0>;
78		rockchip,android-charge-on = <0>;
79		rockchip,uboot-low-power-voltage = <2800>;
80		rockchip,screen-on-voltage = <3000>;
81		status = "okay";
82	};
83
84	gpio-keys {
85		compatible = "gpio-keys";
86		autorepeat;
87		pinctrl-names = "default";
88		pinctrl-0 = <&scan_key>;
89
90		button@0 {
91			label = "home";
92			linux,code = <KEY_HOME>;
93			gpios = <&gpio0 RK_PA7 GPIO_ACTIVE_LOW>;
94			debounce-interval = <50>;
95		};
96	};
97
98	rk817-sound {
99		compatible = "rockchip,multicodecs-card";
100		rockchip,card-name = "rockchip-rk817";
101		rockchip,format = "i2s";
102		rockchip,mclk-fs = <256>;
103		rockchip,cpu = <&sai0>;
104		rockchip,codec = <&rk817_codec>;
105	};
106
107	vcc_sys: vcc-sys {
108		compatible = "regulator-fixed";
109		regulator-name = "vcc_sys";
110		regulator-always-on;
111		regulator-boot-on;
112		regulator-min-microvolt = <3800000>;
113		regulator-max-microvolt = <3800000>;
114	};
115
116	vccsys_lcd: vccsys-lcd {
117		compatible = "regulator-fixed";
118		regulator-name = "vccsys_lcd";
119		regulator-boot-on;
120		enable-active-high;
121		gpio = <&gpio3 RK_PB6 GPIO_ACTIVE_HIGH>;
122		vin-supply = <&vcc3v3_lcd>;
123	};
124
125	sdio_pwrseq: sdio-pwrseq {
126		compatible = "mmc-pwrseq-simple";
127		pinctrl-names = "default";
128		pinctrl-0 = <&wifi_enable_l>;
129
130		/*
131		 * On the module itself this is one of these (depending
132		 * on the actual card populated):
133		 * - SDIO_RESET_L_WL_REG_ON
134		 * - PDN (power down when low)
135		 */
136		post-power-on-delay-ms = <200>;
137		reset-gpios = <&gpio2 RK_PA0 GPIO_ACTIVE_HIGH>;
138	};
139
140	wireless-wlan {
141		compatible = "wlan-platdata";
142		rockchip,grf = <&sys_grf>;
143		wifi_chip_type = "ap6203";
144		pinctrl-names = "default";
145		pinctrl-0 = <&wifi_host_wake_irq>;
146		WIFI,host_wake_irq = <&gpio1 RK_PC7 GPIO_ACTIVE_HIGH>;
147		status = "okay";
148	};
149
150	wireless-bluetooth {
151		compatible = "bluetooth-platdata";
152		clocks = <&rk817 1>;
153		clock-names = "ext_clock";
154		uart_rts_gpios = <&gpio1 RK_PD3 GPIO_ACTIVE_LOW>;
155		pinctrl-names = "default", "rts_gpio";
156		pinctrl-0 = <&uart1m0_rtsn>;
157		pinctrl-1 = <&uart1_gpios>;
158		BT,power_gpio    = <&gpio1 RK_PD7 GPIO_ACTIVE_LOW>;
159		//BT,wake_gpio     = <&gpio1 RK_PD5 GPIO_ACTIVE_HIGH>;
160		//BT,wake_host_irq = <&gpio1 RK_PD6 GPIO_ACTIVE_HIGH>;
161		status = "okay";
162	};
163};
164
165&cpu0 {
166	cpu-supply = <&vdd_cpu>;
167};
168
169&cpu0_opp_table {
170	opp-408000000 {
171	/delete-property/ opp-suspend;
172	};
173
174	opp-1200000000 {
175		opp-suspend;
176	};
177	/delete-node/ opp-1608000000;
178	/delete-node/ opp-1800000000;
179	/delete-node/ opp-2016000000;
180};
181
182&csi2_dphy0 {
183	status = "okay";
184
185	ports {
186		#address-cells = <1>;
187		#size-cells = <0>;
188		port@0 {
189			reg = <0>;
190			#address-cells = <1>;
191			#size-cells = <0>;
192
193			mipi_in_ucam0: endpoint@1 {
194				reg = <1>;
195				remote-endpoint = <&sc031gs_out>;
196				data-lanes = <1>;
197			};
198
199		};
200		port@1 {
201			reg = <1>;
202			#address-cells = <1>;
203			#size-cells = <0>;
204
205			csidcphy0_out: endpoint@0 {
206				reg = <0>;
207				remote-endpoint = <&mipi0_csi2_input>;
208			};
209		};
210	};
211};
212
213&csi2_dphy0_hw {
214	status = "okay";
215};
216
217&dfi {
218	status = "okay";
219};
220
221&display_subsystem {
222	status = "okay";
223};
224
225&dmc {
226	center-supply = <&vdd_logic>;
227	status = "okay";
228};
229
230&dsi {
231	status = "okay";
232
233	panel@0 {
234		status = "okay";
235		compatible = "simple-panel-dsi";
236		reg = <0>;
237		backlight = <&backlight>;
238		power-supply=<&vccsys_lcd>;
239		reset-gpios = <&gpio3 RK_PB7 GPIO_ACTIVE_LOW>;
240		enable-gpios = <&gpio3 RK_PB5 GPIO_ACTIVE_HIGH>;
241
242		reset-delay-ms = <60>;
243		enable-delay-ms = <60>;
244		prepare-delay-ms = <60>;
245		unprepare-delay-ms = <60>;
246		disable-delay-ms = <60>;
247		dsi,flags = <(MIPI_DSI_MODE_VIDEO | MIPI_DSI_MODE_VIDEO_BURST |
248			MIPI_DSI_MODE_LPM | MIPI_DSI_MODE_EOT_PACKET)>;
249		dsi,format = <MIPI_DSI_FMT_RGB888>;
250		dsi,lanes  = <4>;
251		panel-init-sequence = [
252			23 00 02 FE 21
253			23 00 02 04 00
254			23 00 02 00 64
255			23 00 02 2A 00
256			23 00 02 26 64
257			23 00 02 54 00
258			23 00 02 50 64
259			23 00 02 7B 00
260			23 00 02 77 64
261			23 00 02 A2 00
262			23 00 02 9D 64
263			23 00 02 C9 00
264			23 00 02 C5 64
265			23 00 02 01 71
266			23 00 02 27 71
267			23 00 02 51 71
268			23 00 02 78 71
269			23 00 02 9E 71
270			23 00 02 C6 71
271			23 00 02 02 89
272			23 00 02 28 89
273			23 00 02 52 89
274			23 00 02 79 89
275			23 00 02 9F 89
276			23 00 02 C7 89
277			23 00 02 03 9E
278			23 00 02 29 9E
279			23 00 02 53 9E
280			23 00 02 7A 9E
281			23 00 02 A0 9E
282			23 00 02 C8 9E
283			23 00 02 09 00
284			23 00 02 05 B0
285			23 00 02 31 00
286			23 00 02 2B B0
287			23 00 02 5A 00
288			23 00 02 55 B0
289			23 00 02 80 00
290			23 00 02 7C B0
291			23 00 02 A7 00
292			23 00 02 A3 B0
293			23 00 02 CE 00
294			23 00 02 CA B0
295			23 00 02 06 C0
296			23 00 02 2D C0
297			23 00 02 56 C0
298			23 00 02 7D C0
299			23 00 02 A4 C0
300			23 00 02 CB C0
301			23 00 02 07 CF
302			23 00 02 2F CF
303			23 00 02 58 CF
304			23 00 02 7E CF
305			23 00 02 A5 CF
306			23 00 02 CC CF
307			23 00 02 08 DD
308			23 00 02 30 DD
309			23 00 02 59 DD
310			23 00 02 7F DD
311			23 00 02 A6 DD
312			23 00 02 CD DD
313			23 00 02 0E 15
314			23 00 02 0A E9
315			23 00 02 36 15
316			23 00 02 32 E9
317			23 00 02 5F 15
318			23 00 02 5B E9
319			23 00 02 85 15
320			23 00 02 81 E9
321			23 00 02 AD 15
322			23 00 02 A9 E9
323			23 00 02 D3 15
324			23 00 02 CF E9
325			23 00 02 0B 14
326			23 00 02 33 14
327			23 00 02 5C 14
328			23 00 02 82 14
329			23 00 02 AA 14
330			23 00 02 D0 14
331			23 00 02 0C 36
332			23 00 02 34 36
333			23 00 02 5D 36
334			23 00 02 83 36
335			23 00 02 AB 36
336			23 00 02 D1 36
337			23 00 02 0D 6B
338			23 00 02 35 6B
339			23 00 02 5E 6B
340			23 00 02 84 6B
341			23 00 02 AC 6B
342			23 00 02 D2 6B
343			23 00 02 13 5A
344			23 00 02 0F 94
345			23 00 02 3B 5A
346			23 00 02 37 94
347			23 00 02 64 5A
348			23 00 02 60 94
349			23 00 02 8A 5A
350			23 00 02 86 94
351			23 00 02 B2 5A
352			23 00 02 AE 94
353			23 00 02 D8 5A
354			23 00 02 D4 94
355			23 00 02 10 D1
356			23 00 02 38 D1
357			23 00 02 61 D1
358			23 00 02 87 D1
359			23 00 02 AF D1
360			23 00 02 D5 D1
361			23 00 02 11 04
362			23 00 02 39 04
363			23 00 02 62 04
364			23 00 02 88 04
365			23 00 02 B0 04
366			23 00 02 D6 04
367			23 00 02 12 05
368			23 00 02 3A 05
369			23 00 02 63 05
370			23 00 02 89 05
371			23 00 02 B1 05
372			23 00 02 D7 05
373			23 00 02 18 AA
374			23 00 02 14 36
375			23 00 02 42 AA
376			23 00 02 3D 36
377			23 00 02 69 AA
378			23 00 02 65 36
379			23 00 02 8F AA
380			23 00 02 8B 36
381			23 00 02 B7 AA
382			23 00 02 B3 36
383			23 00 02 DD AA
384			23 00 02 D9 36
385			23 00 02 15 74
386			23 00 02 3F 74
387			23 00 02 66 74
388			23 00 02 8C 74
389			23 00 02 B4 74
390			23 00 02 DA 74
391			23 00 02 16 9F
392			23 00 02 40 9F
393			23 00 02 67 9F
394			23 00 02 8D 9F
395			23 00 02 B5 9F
396			23 00 02 DB 9F
397			23 00 02 17 DC
398			23 00 02 41 DC
399			23 00 02 68 DC
400			23 00 02 8E DC
401			23 00 02 B6 DC
402			23 00 02 DC DC
403			23 00 02 1D FF
404			23 00 02 19 03
405			23 00 02 47 FF
406			23 00 02 43 03
407			23 00 02 6E FF
408			23 00 02 6A 03
409			23 00 02 94 FF
410			23 00 02 90 03
411			23 00 02 BC FF
412			23 00 02 B8 03
413			23 00 02 E2 FF
414			23 00 02 DE 03
415			23 00 02 1A 35
416			23 00 02 44 35
417			23 00 02 6B 35
418			23 00 02 91 35
419			23 00 02 B9 35
420			23 00 02 DF 35
421			23 00 02 1B 45
422			23 00 02 45 45
423			23 00 02 6C 45
424			23 00 02 92 45
425			23 00 02 BA 45
426			23 00 02 E0 45
427			23 00 02 1C 55
428			23 00 02 46 55
429			23 00 02 6D 55
430			23 00 02 93 55
431			23 00 02 BB 55
432			23 00 02 E1 55
433			23 00 02 22 FF
434			23 00 02 1E 68
435			23 00 02 4C FF
436			23 00 02 48 68
437			23 00 02 73 FF
438			23 00 02 6F 68
439			23 00 02 99 FF
440			23 00 02 95 68
441			23 00 02 C1 FF
442			23 00 02 BD 68
443			23 00 02 E7 FF
444			23 00 02 E3 68
445			23 00 02 1F 7E
446			23 00 02 49 7E
447			23 00 02 70 7E
448			23 00 02 96 7E
449			23 00 02 BE 7E
450			23 00 02 E4 7E
451			23 00 02 20 97
452			23 00 02 4A 97
453			23 00 02 71 97
454			23 00 02 97 97
455			23 00 02 BF 97
456			23 00 02 E5 97
457			23 00 02 21 B5
458			23 00 02 4B B5
459			23 00 02 72 B5
460			23 00 02 98 B5
461			23 00 02 C0 B5
462			23 00 02 E6 B5
463			23 00 02 25 F0
464			23 00 02 23 E8
465			23 00 02 4F F0
466			23 00 02 4D E8
467			23 00 02 76 F0
468			23 00 02 74 E8
469			23 00 02 9C F0
470			23 00 02 9A E8
471			23 00 02 C4 F0
472			23 00 02 C2 E8
473			23 00 02 EA F0
474			23 00 02 E8 E8
475			23 00 02 24 FF
476			23 00 02 4E FF
477			23 00 02 75 FF
478			23 00 02 9B FF
479			23 00 02 C3 FF
480			23 00 02 E9 FF
481			23 00 02 FE 3D
482			23 00 02 00 04
483			23 00 02 FE 23
484			23 00 02 08 82
485			23 00 02 0A 00
486			23 00 02 0B 00
487			23 00 02 0C 01
488			23 00 02 16 00
489			23 00 02 18 02
490			23 00 02 1B 04
491			23 00 02 19 04
492			23 00 02 1C 81
493			23 00 02 1F 00
494			23 00 02 20 03
495			23 00 02 23 04
496			23 00 02 21 01
497			23 00 02 54 63
498			23 00 02 55 54
499			23 00 02 6E 45
500			23 00 02 6D 36
501			23 00 02 FE 3D
502			23 00 02 55 78
503			23 00 02 FE 20
504			23 00 02 26 30
505			23 00 02 FE 3D
506			23 00 02 20 71
507			23 00 02 50 8F
508			23 00 02 51 8F
509			23 00 02 FE 00
510			23 00 02 35 00
511			05 78 01 11
512			05 1E 01 29
513		];
514
515		panel-exit-sequence = [
516			05 00 01 28
517			05 00 01 10
518		];
519
520		disp_timings0: display-timings {
521			native-mode = <&dsi_timing0>;
522
523			dsi_timing0: timing0 {
524				clock-frequency = <132000000>;
525				hactive = <1080>;
526				vactive = <1920>;
527				hfront-porch = <15>;
528				hsync-len = <2>;
529				hback-porch = <30>;
530				vfront-porch = <15>;
531				vsync-len = <2>;
532				vback-porch = <15>;
533				hsync-active = <0>;
534				vsync-active = <0>;
535				de-active = <0>;
536				pixelclk-active = <1>;
537			};
538		};
539
540		ports {
541			#address-cells = <1>;
542			#size-cells = <0>;
543
544			port@0 {
545				reg = <0>;
546				panel_in_dsi: endpoint {
547					remote-endpoint = <&dsi_out_panel>;
548				};
549			};
550		};
551	};
552
553	ports {
554		#address-cells = <1>;
555		#size-cells = <0>;
556
557		port@1 {
558			reg = <1>;
559			dsi_out_panel: endpoint {
560				remote-endpoint = <&panel_in_dsi>;
561			};
562		};
563	};
564};
565
566&dsi_in_vp0 {
567	status = "okay";
568};
569
570&gpu {
571	mali-supply = <&vdd_gpu>;
572	status = "okay";
573};
574
575&gpu_opp_table {
576	/delete-node/ opp-800000000;
577	/delete-node/ opp-900000000;
578};
579
580&i2c0 {
581	status = "okay";
582	clock-frequency = <400000>;
583
584	usbc0: fusb302@22 {
585		compatible = "fcs,fusb302";
586		reg = <0x22>;
587		interrupt-parent = <&gpio3>;
588		interrupts = <RK_PA1 IRQ_TYPE_LEVEL_LOW>;
589		pinctrl-names = "default";
590		pinctrl-0 = <&usbc0_int>;
591		vbus-supply = <&otg_switch>;
592		status = "okay";
593
594		ports {
595			#address-cells = <1>;
596			#size-cells = <0>;
597
598			port@0 {
599				reg = <0>;
600				usbc0_role_sw: endpoint@0 {
601					remote-endpoint = <&dwc3_role_switch>;
602				};
603			};
604		};
605
606		usb_con: connector {
607			compatible = "usb-c-connector";
608			label = "USB-C";
609			data-role = "dual";
610			power-role = "dual";
611			try-power-role = "sink";
612			op-sink-microwatt = <1000000>;
613			sink-pdos =
614				<PDO_FIXED(5000, 2000, PDO_FIXED_USB_COMM)>;
615			source-pdos =
616				<PDO_FIXED(5000, 2000, PDO_FIXED_USB_COMM)>;
617		};
618	};
619
620	rk817: pmic@20 {
621		compatible = "rockchip,rk817";
622		reg = <0x20>;
623		interrupt-parent = <&gpio0>;
624		interrupts = <3 IRQ_TYPE_LEVEL_LOW>;
625
626		pinctrl-names = "default", "pmic-sleep",
627			"pmic-power-off", "pmic-reset";
628		pinctrl-0 = <&pmic_int>;
629		pinctrl-1 = <&soc_slppin_slp>, <&rk817_slppin_slp>;
630		pinctrl-2 = <&soc_slppin_gpio>, <&rk817_slppin_pwrdn>;
631		pinctrl-3 = <&soc_slppin_gpio>, <&rk817_slppin_rst>;
632		rockchip,system-power-controller;
633		wakeup-source;
634		#clock-cells = <1>;
635		clock-output-names = "rk808-clkout1", "rk808-clkout2";
636		/* 1: rst regs (default in codes), 0: rst the pmic */
637		pmic-reset-func = <0>;
638		not-save-power-en = <1>;
639		vcc1-supply = <&vcc_sys>;
640		vcc2-supply = <&vcc_sys>;
641		vcc3-supply = <&vcc_sys>;
642		vcc4-supply = <&vcc_sys>;
643		vcc5-supply = <&vcc_sys>;
644		vcc6-supply = <&vcc_sys>;
645		vcc7-supply = <&vcc_sys>;
646		vcc8-supply = <&vcc_sys>;
647		vcc9-supply = <&dcdc_boost>;
648		pwrkey {
649			status = "okay";
650		};
651
652		pinctrl_rk8xx: pinctrl_rk8xx {
653			gpio-controller;
654			#gpio-cells = <2>;
655
656			rk817_slppin_null: rk817_slppin_null {
657				pins = "gpio_slp";
658				function = "pin_fun0";
659			};
660
661			rk817_slppin_slp: rk817_slppin_slp {
662				pins = "gpio_slp";
663				function = "pin_fun1";
664			};
665
666			rk817_slppin_pwrdn: rk817_slppin_pwrdn {
667				pins = "gpio_slp";
668				function = "pin_fun2";
669			};
670
671			rk817_slppin_rst: rk817_slppin_rst {
672				pins = "gpio_slp";
673				function = "pin_fun3";
674			};
675		};
676
677		regulators {
678			vdda_0v9: vdd_logic: DCDC_REG1 {
679				regulator-always-on;
680				regulator-boot-on;
681				regulator-min-microvolt = <800000>;
682				regulator-max-microvolt = <1350000>;
683				regulator-init-microvolt = <900000>;
684				regulator-ramp-delay = <6001>;
685				regulator-initial-mode = <0x2>;
686				regulator-name = "vdd_logic";
687				regulator-state-mem {
688					regulator-off-in-suspend;
689					regulator-suspend-microvolt = <900000>;
690				};
691			};
692
693			vdd_npu: vdd_gpu: vdd_cpu: DCDC_REG2 {
694				regulator-always-on;
695				regulator-boot-on;
696				regulator-min-microvolt = <825000>;
697				regulator-max-microvolt = <1350000>;
698				regulator-init-microvolt = <900000>;
699				regulator-ramp-delay = <6001>;
700				regulator-initial-mode = <0x2>;
701				regulator-name = "vdd_cpu";
702				regulator-state-mem {
703					regulator-off-in-suspend;
704				};
705			};
706
707			vcc_1v8: DCDC_REG3 {
708				regulator-always-on;
709				regulator-boot-on;
710				regulator-initial-mode = <0x2>;
711				regulator-name = "vcc_1v8";
712				regulator-min-microvolt = <1800000>;
713				regulator-max-microvolt = <1800000>;
714				regulator-state-mem {
715					regulator-off-in-suspend;
716				};
717			};
718
719			vcc3v3_sys: DCDC_REG4 {
720				regulator-always-on;
721				regulator-boot-on;
722				regulator-min-microvolt = <3300000>;
723				regulator-max-microvolt = <3300000>;
724				regulator-initial-mode = <0x2>;
725				regulator-name = "vcc3v3_sys";
726				regulator-state-mem {
727					regulator-on-in-suspend;
728				};
729			};
730
731			vcc_ldo1: LDO_REG1 {
732				regulator-min-microvolt = <3300000>;
733				regulator-max-microvolt = <3300000>;
734				regulator-name = "vcc_ldo1";
735				regulator-state-mem {
736					regulator-off-in-suspend;
737				};
738			};
739
740			vcc1v5_dvp: LDO_REG2 {
741				regulator-min-microvolt = <1500000>;
742				regulator-max-microvolt = <1500000>;
743				regulator-name = "vcc1v5_dvp";
744				regulator-state-mem {
745					regulator-off-in-suspend;
746				};
747			};
748
749			vdda0v9_pmu: LDO_REG3 {
750				regulator-always-on;
751				regulator-boot-on;
752				regulator-min-microvolt = <900000>;
753				regulator-max-microvolt = <900000>;
754				regulator-name = "vdda0v9_pmu";
755				regulator-state-mem {
756					regulator-on-in-suspend;
757					regulator-suspend-microvolt = <900000>;
758				};
759			};
760
761			vccio_acodec: LDO_REG4 {
762				regulator-always-on;
763				regulator-boot-on;
764				regulator-min-microvolt = <3000000>;
765				regulator-max-microvolt = <3300000>;
766				regulator-name = "vccio_acodec";
767				regulator-state-mem {
768					regulator-off-in-suspend;
769				};
770			};
771
772			vcc3v3_lcd: LDO_REG5 {
773				regulator-min-microvolt = <3000000>;
774				regulator-max-microvolt = <3300000>;
775				regulator-name = "vcc3v3_lcd";
776				regulator-state-mem {
777					regulator-off-in-suspend;
778				};
779			};
780
781			vcc3v3_pmu: LDO_REG6 {
782				regulator-always-on;
783				regulator-boot-on;
784				regulator-min-microvolt = <3300000>;
785				regulator-max-microvolt = <3300000>;
786				regulator-name = "vcc3v3_pmu";
787				regulator-state-mem {
788					regulator-on-in-suspend;
789					regulator-suspend-microvolt = <3000000>;
790				};
791			};
792
793			vcc_ldo7: LDO_REG7 {
794				regulator-min-microvolt = <1800000>;
795				regulator-max-microvolt = <1800000>;
796				regulator-name = "vcc_ldo7";
797				regulator-state-mem {
798					regulator-off-in-suspend;
799				};
800			};
801
802			vcc1v8_dvp: LDO_REG8 {
803				regulator-min-microvolt = <1800000>;
804				regulator-max-microvolt = <1800000>;
805				regulator-name = "vcc1v8_dvp";
806				regulator-state-mem {
807					regulator-off-in-suspend;
808				};
809			};
810
811			vcc2v8_dvp: LDO_REG9 {
812				regulator-min-microvolt = <2800000>;
813				regulator-max-microvolt = <2800000>;
814				regulator-name = "vcc2v8_dvp";
815				regulator-state-mem {
816					regulator-off-in-suspend;
817				};
818			};
819
820			dcdc_boost: BOOST {
821				regulator-always-on;
822				regulator-boot-on;
823				regulator-min-microvolt = <5000000>;
824				regulator-max-microvolt = <5000000>;
825				regulator-name = "boost";
826				regulator-state-mem {
827					regulator-off-in-suspend;
828				};
829			};
830
831			otg_switch: OTG_SWITCH {
832				regulator-name = "otg_switch";
833				regulator-state-mem {
834					regulator-off-in-suspend;
835				};
836			};
837		};
838
839		battery {
840			compatible = "rk817,battery";
841			ntc_table = <42450 40570 38780 37080 35460 33930
842				     32460 31070 29750 28490 27280 26140
843				     25050 24010 23020 22070 21170 20310
844				     19490 18710 17960 17250 16570 15910
845				     15290 14700 14130 13590 13070 12570
846				     12090 11640 11200 10780 10380 10000
847				     9633 9282 8945 8622 8312 8015 7730
848				     7456 7194 6942 6700 6468 6245 6031
849				     5826 5628 5438 5255 5080 4911 4749
850				     4592 4442 4297 4158 4024 3895 3771
851				     3651 3536 3425 3318 3215 3115 3019
852				     2927 2837 2751 2668 2588>;
853				ntc_degree_from = <1 10>;
854				ocv_table = <3400 3653 3679 3704 3731 3750
855				     3771 3788 3806 3828 3855 3890
856				     3943 3993 4043 4095 4149 4206
857				     4264 4321 4377>;
858				design_capacity = <1000>;
859				design_qmax = <1010>;
860				bat_res = <110>;
861				sleep_enter_current = <30>;
862				sleep_exit_current = <30>;
863				sleep_filter_current = <20>;
864				power_off_thresd = <3400>;
865				zero_algorithm_vol = <3000>;
866				max_soc_offset = <60>;
867				monitor_sec = <5>;
868				sample_res = <26>;
869				virtual_power = <0>;
870				chrg_finish_cur = <50>;
871		};
872
873		charger {
874			compatible = "rk817,charger";
875			min_input_voltage = <4500>;
876			max_input_current = <2000>;
877			max_chrg_current = <500>;
878			max_chrg_voltage = <4400>;
879			otg5v_suspend_enable = <0>;
880			chrg_term_mode = <0>;
881			chrg_finish_cur = <50>;
882			virtual_power = <0>;
883			dc_det_adc = <0>;
884			sample_res = <26>;
885			extcon = <&u2phy>;
886			gate_function_disable = <1>;
887		};
888
889		rk817_codec: codec {
890			#sound-dai-cells = <0>;
891			compatible = "rockchip,rk817-codec";
892			clocks = <&mclkout_sai0>;
893			clock-names = "mclk";
894			assigned-clocks = <&mclkout_sai0>;
895			assigned-clock-rates = <12288000>;
896			pinctrl-names = "default";
897			pinctrl-0 = <&i2s0m0_mclk>;
898			hp-volume = <20>;
899			spk-volume = <3>;
900			mic-in-differential;
901			status = "okay";
902		};
903	};
904};
905
906&i2c2 {
907	status = "okay";
908	clock-frequency = <400000>;
909
910	gt1x: gt1x@14 {
911		compatible = "goodix,gt1x";
912		reg = <0x14>;
913		pinctrl-names = "default";
914		pinctrl-0 = <&touch_gpio>;
915		goodix,rst-gpio = <&gpio0 RK_PB4 GPIO_ACTIVE_HIGH>;
916		goodix,irq-gpio = <&gpio0 RK_PB3 GPIO_ACTIVE_LOW>;
917
918		power-supply = <&vcc3v3_lcd>;
919	};
920};
921
922&i2c5 {
923	status = "okay";
924	clock-frequency = <400000>;
925
926	sc031gs: sc031gs@30 {
927		status = "okay";
928		compatible = "smartsens,sc031gs";
929		reg = <0x30>;
930		clocks = <&cru CLK_CAM0_OUT2IO>;
931		clock-names = "xvclk";
932		pinctrl-names = "default";
933		pinctrl-0 = <&camm0_clk0_out>;
934		pwdn-gpios = <&gpio3 RK_PC0 GPIO_ACTIVE_HIGH>;
935		avdd-supply = <&vcc2v8_dvp>;
936		dovdd-supply = <&vcc1v8_dvp>;
937		dvdd-supply = <&vcc1v5_dvp>;
938		rockchip,camera-module-index = <0>;
939		rockchip,camera-module-facing = "back";
940		rockchip,camera-module-name = "default";
941		rockchip,camera-module-lens-name = "default";
942
943		port {
944			sc031gs_out: endpoint {
945				remote-endpoint = <&mipi_in_ucam0>;
946				data-lanes = <1>;
947			};
948		};
949	};
950};
951
952&jpegd {
953	status = "okay";
954};
955
956&jpegd_mmu {
957	status = "okay";
958};
959
960&mipi0_csi2 {
961	status = "okay";
962
963	ports {
964		#address-cells = <1>;
965		#size-cells = <0>;
966
967		port@0 {
968			reg = <0>;
969			#address-cells = <1>;
970			#size-cells = <0>;
971
972			mipi0_csi2_input: endpoint@1 {
973				reg = <1>;
974				remote-endpoint = <&csidcphy0_out>;
975			};
976		};
977
978		port@1 {
979			reg = <1>;
980			#address-cells = <1>;
981			#size-cells = <0>;
982
983			mipi0_csi2_output: endpoint@0 {
984				reg = <0>;
985				remote-endpoint = <&cif_mipi_in0>;
986			};
987		};
988	};
989};
990
991&mpp_srv {
992	status = "okay";
993};
994
995&npu_opp_table {
996	/delete-node/ opp-900000000;
997	/delete-node/ opp-1000000000;
998};
999
1000&pinctrl {
1001	led_control {
1002		scan_key: scan-key {
1003			rockchip,pins = <0 RK_PA7 RK_FUNC_GPIO &pcfg_pull_up>;
1004		};
1005	};
1006
1007	touch {
1008		touch_gpio: touch-gpio {
1009			rockchip,pins =
1010				<0 RK_PB3 RK_FUNC_GPIO &pcfg_pull_up>,
1011				<0 RK_PB4 RK_FUNC_GPIO &pcfg_pull_none>;
1012		};
1013	};
1014
1015	sdio-pwrseq {
1016		wifi_enable_l: wifi-enable-l {
1017			rockchip,pins = <2 RK_PA0 RK_FUNC_GPIO &pcfg_pull_none>;
1018		};
1019	};
1020
1021	usb {
1022		usbc0_int: usbc0-int {
1023			rockchip,pins = <3 RK_PA1 RK_FUNC_GPIO &pcfg_pull_up>;
1024		};
1025	};
1026
1027	wireless-wlan {
1028		wifi_host_wake_irq: wifi-host-wake-irq {
1029			rockchip,pins = <1 RK_PC7 RK_FUNC_GPIO &pcfg_pull_down>;
1030		};
1031	};
1032
1033	wireless-bluetooth {
1034		uart1_gpios: uart1-gpios {
1035			rockchip,pins = <1 RK_PD3 RK_FUNC_GPIO &pcfg_pull_none>;
1036		};
1037	};
1038};
1039
1040&pwm12 {
1041	status = "okay";
1042	pinctrl-0 = <&pwm12m1_pins>;
1043};
1044
1045&rga2 {
1046	status = "okay";
1047};
1048
1049&rga2_mmu {
1050	status = "okay";
1051};
1052
1053&rkcif {
1054	status = "okay";
1055};
1056
1057&rkcif_mipi_lvds {
1058	status = "okay";
1059
1060	port {
1061		cif_mipi_in0: endpoint {
1062			remote-endpoint = <&mipi0_csi2_output>;
1063		};
1064	};
1065};
1066
1067&rkcif_mipi_lvds_sditf {
1068	status = "okay";
1069
1070	port {
1071		mipi_lvds_sditf: endpoint {
1072			remote-endpoint = <&isp_vir0>;
1073		};
1074	};
1075};
1076
1077&rkcif_mmu {
1078	status = "okay";
1079};
1080
1081&rkisp {
1082	status = "okay";
1083};
1084
1085&rkisp_mmu {
1086	status = "okay";
1087};
1088
1089&rkisp_vir0 {
1090	status = "okay";
1091
1092	port {
1093		#address-cells = <1>;
1094		#size-cells = <0>;
1095
1096		isp_vir0: endpoint@0 {
1097			reg = <0>;
1098			remote-endpoint = <&mipi_lvds_sditf>;
1099		};
1100	};
1101};
1102
1103&rknpu {
1104	rknpu-supply = <&vdd_npu>;
1105	status = "okay";
1106};
1107
1108&rknpu_mmu {
1109	status = "okay";
1110};
1111
1112&rkvdec {
1113	status = "okay";
1114};
1115
1116&rkvdec_mmu {
1117	status = "okay";
1118};
1119
1120&rockchip_suspend {
1121	status = "okay";
1122
1123	rockchip,sleep-mode-config = <
1124		(0
1125		| RKPM_SLP_ULTRA_MODE
1126		| RKPM_SLP_PMIC_LP
1127		| RKPM_SLP_HW_PLLS_OFF
1128		| RKPM_SLP_PMUALIVE_32K
1129		| RKPM_SLP_OSC_DIS
1130		| RKPM_SLP_32K_PVTM
1131		)
1132	>;
1133};
1134
1135&route_dsi {
1136	status = "okay";
1137};
1138
1139&sai0 {
1140	status = "okay";
1141	pinctrl-names = "default";
1142	pinctrl-0 = <&i2s0m0_lrck
1143		     &i2s0m0_sclk
1144		     &i2s0m0_sdi0
1145		     &i2s0m0_sdo0>;
1146};
1147
1148&saradc0 {
1149	status = "okay";
1150	vref-supply = <&vcc_1v8>;
1151};
1152
1153&sdhci {
1154	bus-width = <8>;
1155	no-sdio;
1156	no-sd;
1157	non-removable;
1158	max-frequency = <200000000>;
1159	mmc-hs400-1_8v;
1160	mmc-hs400-enhanced-strobe;
1161	status = "okay";
1162};
1163
1164&sdmmc1 {
1165	no-sd;
1166	no-mmc;
1167	bus-width = <4>;
1168	disable-wp;
1169	cap-sd-highspeed;
1170	cap-sdio-irq;
1171	mmc-pwrseq = <&sdio_pwrseq>;
1172	non-removable;
1173	keep-power-in-suspend;
1174	pinctrl-names = "default";
1175	pinctrl-0 = <&sdmmc1_bus4 &sdmmc1_cmd &sdmmc1_clk>;
1176	sd-uhs-sdr104;
1177	status = "disabled";
1178};
1179
1180&tsadc {
1181	status = "okay";
1182};
1183
1184&u2phy {
1185	status = "okay";
1186};
1187
1188/* for inno usb2 phy driver probe and set to phy_sus status */
1189&u2phy_host {
1190	/delete-property/ phy-supply;
1191	status = "okay";
1192};
1193
1194&u2phy_otg {
1195	status = "okay";
1196	vbus-supply = <&otg_switch>;
1197};
1198
1199&uart1 {
1200	status = "okay";
1201	pinctrl-names = "default";
1202	pinctrl-0 = <&uart1m0_xfer &uart1m0_ctsn>;
1203};
1204
1205&usbdrd30 {
1206	status = "okay";
1207};
1208
1209&usbdrd_dwc3 {
1210	status = "okay";
1211	dr_mode = "otg";
1212	maximum-speed = "high-speed";
1213	phys = <&u2phy_otg>;
1214	phy-names = "usb2-phy";
1215	snps,dis_u2_susphy_quirk;
1216	snps,usb2-lpm-disable;
1217
1218	usb-role-switch;
1219	port {
1220		#address-cells = <1>;
1221		#size-cells = <0>;
1222		dwc3_role_switch: endpoint@0 {
1223			reg = <0>;
1224			remote-endpoint = <&usbc0_role_sw>;
1225		};
1226	};
1227};
1228
1229&video_phy {
1230	status = "okay";
1231};
1232
1233&vop {
1234	status = "okay";
1235};
1236
1237&vop_mmu {
1238	status = "okay";
1239};
1240
1241&wdt {
1242	status = "okay";
1243};
1244