xref: /linux/arch/arm64/boot/dts/rockchip/rk3588-armsom-lm7.dtsi (revision 7f71507851fc7764b36a3221839607d3a45c2025)
1// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2
3/dts-v1/;
4
5#include <dt-bindings/gpio/gpio.h>
6#include <dt-bindings/leds/common.h>
7#include "rk3588.dtsi"
8
9/ {
10	compatible = "armsom,lm7", "rockchip,rk3588";
11
12	aliases {
13		mmc0 = &sdhci;
14	};
15
16	chosen {
17		stdout-path = "serial2:1500000n8";
18	};
19
20	vcc5v0_sys: regulator-vcc5v0-sys {
21		compatible = "regulator-fixed";
22		regulator-name = "vcc5v0_sys";
23		regulator-always-on;
24		regulator-boot-on;
25		regulator-min-microvolt = <5000000>;
26		regulator-max-microvolt = <5000000>;
27	};
28
29	vcc_1v1_nldo_s3: regulator-vcc-1v1-nldo-s3 {
30		compatible = "regulator-fixed";
31		regulator-name = "vcc_1v1_nldo_s3";
32		regulator-always-on;
33		regulator-boot-on;
34		regulator-min-microvolt = <1100000>;
35		regulator-max-microvolt = <1100000>;
36		vin-supply = <&vcc5v0_sys>;
37	};
38};
39
40&cpu_b0 {
41	cpu-supply = <&vdd_cpu_big0_s0>;
42};
43
44&cpu_b1 {
45	cpu-supply = <&vdd_cpu_big0_s0>;
46};
47
48&cpu_b2 {
49	cpu-supply = <&vdd_cpu_big1_s0>;
50};
51
52&cpu_b3 {
53	cpu-supply = <&vdd_cpu_big1_s0>;
54};
55
56&cpu_l0 {
57	cpu-supply = <&vdd_cpu_lit_s0>;
58};
59
60&cpu_l1 {
61	cpu-supply = <&vdd_cpu_lit_s0>;
62};
63
64&cpu_l2 {
65	cpu-supply = <&vdd_cpu_lit_s0>;
66};
67
68&cpu_l3 {
69	cpu-supply = <&vdd_cpu_lit_s0>;
70};
71
72&gpu {
73	mali-supply = <&vdd_gpu_s0>;
74	status = "okay";
75};
76
77&i2c0 {
78	pinctrl-names = "default";
79	pinctrl-0 = <&i2c0m2_xfer>;
80	status = "okay";
81
82	vdd_cpu_big0_s0: regulator@42 {
83		compatible = "rockchip,rk8602";
84		reg = <0x42>;
85		fcs,suspend-voltage-selector = <1>;
86		regulator-name = "vdd_cpu_big0_s0";
87		regulator-always-on;
88		regulator-boot-on;
89		regulator-min-microvolt = <550000>;
90		regulator-max-microvolt = <1050000>;
91		regulator-ramp-delay = <2300>;
92		vin-supply = <&vcc5v0_sys>;
93
94		regulator-state-mem {
95			regulator-off-in-suspend;
96		};
97	};
98
99	vdd_cpu_big1_s0: regulator@43 {
100		compatible = "rockchip,rk8603", "rockchip,rk8602";
101		reg = <0x43>;
102		fcs,suspend-voltage-selector = <1>;
103		regulator-name = "vdd_cpu_big1_s0";
104		regulator-always-on;
105		regulator-boot-on;
106		regulator-min-microvolt = <550000>;
107		regulator-max-microvolt = <1050000>;
108		regulator-ramp-delay = <2300>;
109		vin-supply = <&vcc5v0_sys>;
110
111		regulator-state-mem {
112			regulator-off-in-suspend;
113		};
114	};
115};
116
117&saradc {
118	vref-supply = <&avcc_1v8_s0>;
119	status = "okay";
120};
121
122&sdhci {
123	bus-width = <8>;
124	mmc-hs400-1_8v;
125	mmc-hs400-enhanced-strobe;
126	no-sdio;
127	no-sd;
128	non-removable;
129	status = "okay";
130};
131
132&spi2 {
133	assigned-clocks = <&cru CLK_SPI2>;
134	assigned-clock-rates = <200000000>;
135	num-cs = <1>;
136	pinctrl-names = "default";
137	pinctrl-0 = <&spi2m2_cs0 &spi2m2_pins>;
138	status = "okay";
139
140	pmic@0 {
141		compatible = "rockchip,rk806";
142		reg = <0x0>;
143		interrupt-parent = <&gpio0>;
144		interrupts = <7 IRQ_TYPE_LEVEL_LOW>;
145		gpio-controller;
146		#gpio-cells = <2>;
147		pinctrl-names = "default";
148		pinctrl-0 = <&pmic_pins>, <&rk806_dvs1_null>,
149			    <&rk806_dvs2_null>, <&rk806_dvs3_null>;
150		spi-max-frequency = <1000000>;
151		system-power-controller;
152
153		vcc1-supply = <&vcc5v0_sys>;
154		vcc2-supply = <&vcc5v0_sys>;
155		vcc3-supply = <&vcc5v0_sys>;
156		vcc4-supply = <&vcc5v0_sys>;
157		vcc5-supply = <&vcc5v0_sys>;
158		vcc6-supply = <&vcc5v0_sys>;
159		vcc7-supply = <&vcc5v0_sys>;
160		vcc8-supply = <&vcc5v0_sys>;
161		vcc9-supply = <&vcc5v0_sys>;
162		vcc10-supply = <&vcc5v0_sys>;
163		vcc11-supply = <&vcc_2v0_pldo_s3>;
164		vcc12-supply = <&vcc5v0_sys>;
165		vcc13-supply = <&vcc_1v1_nldo_s3>;
166		vcc14-supply = <&vcc_1v1_nldo_s3>;
167		vcca-supply = <&vcc5v0_sys>;
168
169		rk806_dvs1_null: dvs1-null-pins {
170			pins = "gpio_pwrctrl1";
171			function = "pin_fun0";
172		};
173
174		rk806_dvs2_null: dvs2-null-pins {
175			pins = "gpio_pwrctrl2";
176			function = "pin_fun0";
177		};
178
179		rk806_dvs3_null: dvs3-null-pins {
180			pins = "gpio_pwrctrl3";
181			function = "pin_fun0";
182		};
183
184		regulators {
185			vdd_gpu_s0: vdd_gpu_mem_s0: dcdc-reg1 {
186				regulator-name = "vdd_gpu_s0";
187				regulator-boot-on;
188				regulator-min-microvolt = <550000>;
189				regulator-max-microvolt = <950000>;
190				regulator-ramp-delay = <12500>;
191				regulator-enable-ramp-delay = <400>;
192
193				regulator-state-mem {
194					regulator-off-in-suspend;
195				};
196			};
197
198			vdd_cpu_lit_s0: vdd_cpu_lit_mem_s0: dcdc-reg2 {
199				regulator-name = "vdd_cpu_lit_s0";
200				regulator-always-on;
201				regulator-boot-on;
202				regulator-min-microvolt = <550000>;
203				regulator-max-microvolt = <950000>;
204				regulator-ramp-delay = <12500>;
205
206				regulator-state-mem {
207					regulator-off-in-suspend;
208				};
209			};
210
211			vdd_log_s0: dcdc-reg3 {
212				regulator-name = "vdd_log_s0";
213				regulator-always-on;
214				regulator-boot-on;
215				regulator-min-microvolt = <675000>;
216				regulator-max-microvolt = <750000>;
217				regulator-ramp-delay = <12500>;
218
219				regulator-state-mem {
220					regulator-off-in-suspend;
221					regulator-suspend-microvolt = <750000>;
222				};
223			};
224
225			vdd_vdenc_s0: vdd_vdenc_mem_s0: dcdc-reg4 {
226				regulator-name = "vdd_vdenc_s0";
227				regulator-always-on;
228				regulator-boot-on;
229				regulator-min-microvolt = <550000>;
230				regulator-max-microvolt = <950000>;
231				regulator-ramp-delay = <12500>;
232
233				regulator-state-mem {
234					regulator-off-in-suspend;
235				};
236			};
237
238			vdd_ddr_s0: dcdc-reg5 {
239				regulator-name = "vdd_ddr_s0";
240				regulator-always-on;
241				regulator-boot-on;
242				regulator-min-microvolt = <675000>;
243				regulator-max-microvolt = <900000>;
244				regulator-ramp-delay = <12500>;
245
246				regulator-state-mem {
247					regulator-off-in-suspend;
248					regulator-suspend-microvolt = <850000>;
249				};
250			};
251
252			vdd2_ddr_s3: dcdc-reg6 {
253				regulator-name = "vdd2_ddr_s3";
254				regulator-always-on;
255				regulator-boot-on;
256
257				regulator-state-mem {
258					regulator-on-in-suspend;
259				};
260			};
261
262			vcc_2v0_pldo_s3: dcdc-reg7 {
263				regulator-name = "vdd_2v0_pldo_s3";
264				regulator-always-on;
265				regulator-boot-on;
266				regulator-min-microvolt = <2000000>;
267				regulator-max-microvolt = <2000000>;
268				regulator-ramp-delay = <12500>;
269
270				regulator-state-mem {
271					regulator-on-in-suspend;
272					regulator-suspend-microvolt = <2000000>;
273				};
274			};
275
276			vcc_3v3_s3: dcdc-reg8 {
277				regulator-name = "vcc_3v3_s3";
278				regulator-always-on;
279				regulator-boot-on;
280				regulator-min-microvolt = <3300000>;
281				regulator-max-microvolt = <3300000>;
282
283				regulator-state-mem {
284					regulator-on-in-suspend;
285					regulator-suspend-microvolt = <3300000>;
286				};
287			};
288
289			vddq_ddr_s0: dcdc-reg9 {
290				regulator-name = "vddq_ddr_s0";
291				regulator-always-on;
292				regulator-boot-on;
293
294				regulator-state-mem {
295					regulator-off-in-suspend;
296				};
297			};
298
299			vcc_1v8_s3: dcdc-reg10 {
300				regulator-name = "vcc_1v8_s3";
301				regulator-always-on;
302				regulator-boot-on;
303				regulator-min-microvolt = <1800000>;
304				regulator-max-microvolt = <1800000>;
305
306				regulator-state-mem {
307					regulator-on-in-suspend;
308					regulator-suspend-microvolt = <1800000>;
309				};
310			};
311
312			avcc_1v8_s0: pldo-reg1 {
313				regulator-name = "avcc_1v8_s0";
314				regulator-always-on;
315				regulator-boot-on;
316				regulator-min-microvolt = <1800000>;
317				regulator-max-microvolt = <1800000>;
318
319				regulator-state-mem {
320					regulator-off-in-suspend;
321				};
322			};
323
324			vcc_1v8_s0: pldo-reg2 {
325				regulator-name = "vcc_1v8_s0";
326				regulator-always-on;
327				regulator-boot-on;
328				regulator-min-microvolt = <1800000>;
329				regulator-max-microvolt = <1800000>;
330
331				regulator-state-mem {
332					regulator-off-in-suspend;
333					regulator-suspend-microvolt = <1800000>;
334				};
335			};
336
337			avdd_1v2_s0: pldo-reg3 {
338				regulator-name = "avdd_1v2_s0";
339				regulator-always-on;
340				regulator-boot-on;
341				regulator-min-microvolt = <1200000>;
342				regulator-max-microvolt = <1200000>;
343
344				regulator-state-mem {
345					regulator-off-in-suspend;
346				};
347			};
348
349			vcc_3v3_s0: pldo-reg4 {
350				regulator-name = "vcc_3v3_s0";
351				regulator-always-on;
352				regulator-boot-on;
353				regulator-min-microvolt = <3300000>;
354				regulator-max-microvolt = <3300000>;
355				regulator-ramp-delay = <12500>;
356
357				regulator-state-mem {
358					regulator-off-in-suspend;
359				};
360			};
361
362			vccio_sd_s0: pldo-reg5 {
363				regulator-name = "vccio_sd_s0";
364				regulator-always-on;
365				regulator-boot-on;
366				regulator-min-microvolt = <1800000>;
367				regulator-max-microvolt = <3300000>;
368				regulator-ramp-delay = <12500>;
369
370				regulator-state-mem {
371					regulator-off-in-suspend;
372				};
373			};
374
375			pldo6_s3: pldo-reg6 {
376				regulator-name = "pldo6_s3";
377				regulator-always-on;
378				regulator-boot-on;
379				regulator-min-microvolt = <1800000>;
380				regulator-max-microvolt = <1800000>;
381
382				regulator-state-mem {
383					regulator-on-in-suspend;
384					regulator-suspend-microvolt = <1800000>;
385				};
386			};
387
388			vdd_0v75_s3: nldo-reg1 {
389				regulator-name = "vdd_0v75_s3";
390				regulator-always-on;
391				regulator-boot-on;
392				regulator-min-microvolt = <750000>;
393				regulator-max-microvolt = <750000>;
394
395				regulator-state-mem {
396					regulator-on-in-suspend;
397					regulator-suspend-microvolt = <750000>;
398				};
399			};
400
401			vdd_ddr_pll_s0: nldo-reg2 {
402				regulator-name = "vdd_ddr_pll_s0";
403				regulator-always-on;
404				regulator-boot-on;
405				regulator-min-microvolt = <850000>;
406				regulator-max-microvolt = <850000>;
407
408				regulator-state-mem {
409					regulator-off-in-suspend;
410					regulator-suspend-microvolt = <850000>;
411				};
412			};
413
414			avdd_0v75_s0: nldo-reg3 {
415				regulator-name = "avdd_0v75_s0";
416				regulator-always-on;
417				regulator-boot-on;
418				regulator-min-microvolt = <750000>;
419				regulator-max-microvolt = <750000>;
420
421				regulator-state-mem {
422					regulator-off-in-suspend;
423				};
424			};
425
426			vdd_0v85_s0: nldo-reg4 {
427				regulator-name = "vdd_0v85_s0";
428				regulator-always-on;
429				regulator-boot-on;
430				regulator-min-microvolt = <850000>;
431				regulator-max-microvolt = <850000>;
432
433				regulator-state-mem {
434					regulator-off-in-suspend;
435				};
436			};
437
438			vdd_0v75_s0: nldo-reg5 {
439				regulator-name = "vdd_0v75_s0";
440				regulator-always-on;
441				regulator-boot-on;
442				regulator-min-microvolt = <750000>;
443				regulator-max-microvolt = <750000>;
444
445				regulator-state-mem {
446					regulator-off-in-suspend;
447				};
448			};
449		};
450	};
451};
452
453&tsadc {
454	status = "okay";
455};
456