xref: /linux/arch/arm64/boot/dts/rockchip/rk3588-armsom-lm7.dtsi (revision 6315d93541f8a5f77c5ef5c4f25233e66d189603)
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&pd_gpu {
118	domain-supply = <&vdd_gpu_s0>;
119};
120
121&saradc {
122	vref-supply = <&avcc_1v8_s0>;
123	status = "okay";
124};
125
126&sdhci {
127	bus-width = <8>;
128	mmc-hs400-1_8v;
129	mmc-hs400-enhanced-strobe;
130	no-sdio;
131	no-sd;
132	non-removable;
133	status = "okay";
134};
135
136&spi2 {
137	assigned-clocks = <&cru CLK_SPI2>;
138	assigned-clock-rates = <200000000>;
139	num-cs = <1>;
140	pinctrl-names = "default";
141	pinctrl-0 = <&spi2m2_cs0 &spi2m2_pins>;
142	status = "okay";
143
144	pmic@0 {
145		compatible = "rockchip,rk806";
146		reg = <0x0>;
147		interrupt-parent = <&gpio0>;
148		interrupts = <7 IRQ_TYPE_LEVEL_LOW>;
149		gpio-controller;
150		#gpio-cells = <2>;
151		pinctrl-names = "default";
152		pinctrl-0 = <&pmic_pins>, <&rk806_dvs1_null>,
153			    <&rk806_dvs2_null>, <&rk806_dvs3_null>;
154		spi-max-frequency = <1000000>;
155		system-power-controller;
156
157		vcc1-supply = <&vcc5v0_sys>;
158		vcc2-supply = <&vcc5v0_sys>;
159		vcc3-supply = <&vcc5v0_sys>;
160		vcc4-supply = <&vcc5v0_sys>;
161		vcc5-supply = <&vcc5v0_sys>;
162		vcc6-supply = <&vcc5v0_sys>;
163		vcc7-supply = <&vcc5v0_sys>;
164		vcc8-supply = <&vcc5v0_sys>;
165		vcc9-supply = <&vcc5v0_sys>;
166		vcc10-supply = <&vcc5v0_sys>;
167		vcc11-supply = <&vcc_2v0_pldo_s3>;
168		vcc12-supply = <&vcc5v0_sys>;
169		vcc13-supply = <&vcc_1v1_nldo_s3>;
170		vcc14-supply = <&vcc_1v1_nldo_s3>;
171		vcca-supply = <&vcc5v0_sys>;
172
173		rk806_dvs1_null: dvs1-null-pins {
174			pins = "gpio_pwrctrl1";
175			function = "pin_fun0";
176		};
177
178		rk806_dvs2_null: dvs2-null-pins {
179			pins = "gpio_pwrctrl2";
180			function = "pin_fun0";
181		};
182
183		rk806_dvs3_null: dvs3-null-pins {
184			pins = "gpio_pwrctrl3";
185			function = "pin_fun0";
186		};
187
188		regulators {
189			vdd_gpu_s0: vdd_gpu_mem_s0: dcdc-reg1 {
190				regulator-name = "vdd_gpu_s0";
191				regulator-boot-on;
192				regulator-min-microvolt = <550000>;
193				regulator-max-microvolt = <950000>;
194				regulator-ramp-delay = <12500>;
195				regulator-enable-ramp-delay = <400>;
196
197				regulator-state-mem {
198					regulator-off-in-suspend;
199				};
200			};
201
202			vdd_cpu_lit_s0: vdd_cpu_lit_mem_s0: dcdc-reg2 {
203				regulator-name = "vdd_cpu_lit_s0";
204				regulator-always-on;
205				regulator-boot-on;
206				regulator-min-microvolt = <550000>;
207				regulator-max-microvolt = <950000>;
208				regulator-ramp-delay = <12500>;
209
210				regulator-state-mem {
211					regulator-off-in-suspend;
212				};
213			};
214
215			vdd_log_s0: dcdc-reg3 {
216				regulator-name = "vdd_log_s0";
217				regulator-always-on;
218				regulator-boot-on;
219				regulator-min-microvolt = <675000>;
220				regulator-max-microvolt = <750000>;
221				regulator-ramp-delay = <12500>;
222
223				regulator-state-mem {
224					regulator-off-in-suspend;
225					regulator-suspend-microvolt = <750000>;
226				};
227			};
228
229			vdd_vdenc_s0: vdd_vdenc_mem_s0: dcdc-reg4 {
230				regulator-name = "vdd_vdenc_s0";
231				regulator-always-on;
232				regulator-boot-on;
233				regulator-min-microvolt = <550000>;
234				regulator-max-microvolt = <950000>;
235				regulator-ramp-delay = <12500>;
236
237				regulator-state-mem {
238					regulator-off-in-suspend;
239				};
240			};
241
242			vdd_ddr_s0: dcdc-reg5 {
243				regulator-name = "vdd_ddr_s0";
244				regulator-always-on;
245				regulator-boot-on;
246				regulator-min-microvolt = <675000>;
247				regulator-max-microvolt = <900000>;
248				regulator-ramp-delay = <12500>;
249
250				regulator-state-mem {
251					regulator-off-in-suspend;
252					regulator-suspend-microvolt = <850000>;
253				};
254			};
255
256			vdd2_ddr_s3: dcdc-reg6 {
257				regulator-name = "vdd2_ddr_s3";
258				regulator-always-on;
259				regulator-boot-on;
260
261				regulator-state-mem {
262					regulator-on-in-suspend;
263				};
264			};
265
266			vcc_2v0_pldo_s3: dcdc-reg7 {
267				regulator-name = "vdd_2v0_pldo_s3";
268				regulator-always-on;
269				regulator-boot-on;
270				regulator-min-microvolt = <2000000>;
271				regulator-max-microvolt = <2000000>;
272				regulator-ramp-delay = <12500>;
273
274				regulator-state-mem {
275					regulator-on-in-suspend;
276					regulator-suspend-microvolt = <2000000>;
277				};
278			};
279
280			vcc_3v3_s3: dcdc-reg8 {
281				regulator-name = "vcc_3v3_s3";
282				regulator-always-on;
283				regulator-boot-on;
284				regulator-min-microvolt = <3300000>;
285				regulator-max-microvolt = <3300000>;
286
287				regulator-state-mem {
288					regulator-on-in-suspend;
289					regulator-suspend-microvolt = <3300000>;
290				};
291			};
292
293			vddq_ddr_s0: dcdc-reg9 {
294				regulator-name = "vddq_ddr_s0";
295				regulator-always-on;
296				regulator-boot-on;
297
298				regulator-state-mem {
299					regulator-off-in-suspend;
300				};
301			};
302
303			vcc_1v8_s3: dcdc-reg10 {
304				regulator-name = "vcc_1v8_s3";
305				regulator-always-on;
306				regulator-boot-on;
307				regulator-min-microvolt = <1800000>;
308				regulator-max-microvolt = <1800000>;
309
310				regulator-state-mem {
311					regulator-on-in-suspend;
312					regulator-suspend-microvolt = <1800000>;
313				};
314			};
315
316			avcc_1v8_s0: pldo-reg1 {
317				regulator-name = "avcc_1v8_s0";
318				regulator-always-on;
319				regulator-boot-on;
320				regulator-min-microvolt = <1800000>;
321				regulator-max-microvolt = <1800000>;
322
323				regulator-state-mem {
324					regulator-off-in-suspend;
325				};
326			};
327
328			vcc_1v8_s0: pldo-reg2 {
329				regulator-name = "vcc_1v8_s0";
330				regulator-always-on;
331				regulator-boot-on;
332				regulator-min-microvolt = <1800000>;
333				regulator-max-microvolt = <1800000>;
334
335				regulator-state-mem {
336					regulator-off-in-suspend;
337					regulator-suspend-microvolt = <1800000>;
338				};
339			};
340
341			avdd_1v2_s0: pldo-reg3 {
342				regulator-name = "avdd_1v2_s0";
343				regulator-always-on;
344				regulator-boot-on;
345				regulator-min-microvolt = <1200000>;
346				regulator-max-microvolt = <1200000>;
347
348				regulator-state-mem {
349					regulator-off-in-suspend;
350				};
351			};
352
353			vcc_3v3_s0: pldo-reg4 {
354				regulator-name = "vcc_3v3_s0";
355				regulator-always-on;
356				regulator-boot-on;
357				regulator-min-microvolt = <3300000>;
358				regulator-max-microvolt = <3300000>;
359				regulator-ramp-delay = <12500>;
360
361				regulator-state-mem {
362					regulator-off-in-suspend;
363				};
364			};
365
366			vccio_sd_s0: pldo-reg5 {
367				regulator-name = "vccio_sd_s0";
368				regulator-always-on;
369				regulator-boot-on;
370				regulator-min-microvolt = <1800000>;
371				regulator-max-microvolt = <3300000>;
372				regulator-ramp-delay = <12500>;
373
374				regulator-state-mem {
375					regulator-off-in-suspend;
376				};
377			};
378
379			pldo6_s3: pldo-reg6 {
380				regulator-name = "pldo6_s3";
381				regulator-always-on;
382				regulator-boot-on;
383				regulator-min-microvolt = <1800000>;
384				regulator-max-microvolt = <1800000>;
385
386				regulator-state-mem {
387					regulator-on-in-suspend;
388					regulator-suspend-microvolt = <1800000>;
389				};
390			};
391
392			vdd_0v75_s3: nldo-reg1 {
393				regulator-name = "vdd_0v75_s3";
394				regulator-always-on;
395				regulator-boot-on;
396				regulator-min-microvolt = <750000>;
397				regulator-max-microvolt = <750000>;
398
399				regulator-state-mem {
400					regulator-on-in-suspend;
401					regulator-suspend-microvolt = <750000>;
402				};
403			};
404
405			vdd_ddr_pll_s0: nldo-reg2 {
406				regulator-name = "vdd_ddr_pll_s0";
407				regulator-always-on;
408				regulator-boot-on;
409				regulator-min-microvolt = <850000>;
410				regulator-max-microvolt = <850000>;
411
412				regulator-state-mem {
413					regulator-off-in-suspend;
414					regulator-suspend-microvolt = <850000>;
415				};
416			};
417
418			avdd_0v75_s0: nldo-reg3 {
419				regulator-name = "avdd_0v75_s0";
420				regulator-always-on;
421				regulator-boot-on;
422				regulator-min-microvolt = <750000>;
423				regulator-max-microvolt = <750000>;
424
425				regulator-state-mem {
426					regulator-off-in-suspend;
427				};
428			};
429
430			vdd_0v85_s0: nldo-reg4 {
431				regulator-name = "vdd_0v85_s0";
432				regulator-always-on;
433				regulator-boot-on;
434				regulator-min-microvolt = <850000>;
435				regulator-max-microvolt = <850000>;
436
437				regulator-state-mem {
438					regulator-off-in-suspend;
439				};
440			};
441
442			vdd_0v75_s0: nldo-reg5 {
443				regulator-name = "vdd_0v75_s0";
444				regulator-always-on;
445				regulator-boot-on;
446				regulator-min-microvolt = <750000>;
447				regulator-max-microvolt = <750000>;
448
449				regulator-state-mem {
450					regulator-off-in-suspend;
451				};
452			};
453		};
454	};
455};
456
457&tsadc {
458	status = "okay";
459};
460