]>
Commit | Line | Data |
---|---|---|
53633a89 TR |
1 | // SPDX-License-Identifier: (GPL-2.0+ OR MIT) |
2 | /* | |
3 | * Copyright (c) 2023 Ondřej Jirman <megi@xff.cz> | |
4 | */ | |
5 | ||
6 | /dts-v1/; | |
7 | ||
8 | #include <dt-bindings/gpio/gpio.h> | |
9 | #include <dt-bindings/leds/common.h> | |
10 | #include <dt-bindings/input/input.h> | |
11 | #include <dt-bindings/pinctrl/rockchip.h> | |
12 | #include <dt-bindings/usb/pd.h> | |
13 | #include "rk3588.dtsi" | |
14 | ||
15 | / { | |
16 | model = "Xunlong Orange Pi 5 Plus"; | |
17 | compatible = "xunlong,orangepi-5-plus", "rockchip,rk3588"; | |
18 | ||
19 | aliases { | |
20 | mmc0 = &sdhci; | |
21 | mmc1 = &sdmmc; | |
53633a89 TR |
22 | }; |
23 | ||
24 | chosen { | |
25 | stdout-path = "serial2:1500000n8"; | |
26 | }; | |
27 | ||
28 | adc-keys-0 { | |
29 | compatible = "adc-keys"; | |
30 | io-channels = <&saradc 0>; | |
31 | io-channel-names = "buttons"; | |
32 | keyup-threshold-microvolt = <1800000>; | |
33 | poll-interval = <100>; | |
34 | ||
35 | button-maskrom { | |
36 | label = "Mask Rom"; | |
37 | linux,code = <KEY_SETUP>; | |
38 | press-threshold-microvolt = <2000>; | |
39 | }; | |
40 | }; | |
41 | ||
42 | adc-keys-1 { | |
43 | compatible = "adc-keys"; | |
44 | io-channels = <&saradc 1>; | |
45 | io-channel-names = "buttons"; | |
46 | keyup-threshold-microvolt = <1800000>; | |
47 | poll-interval = <100>; | |
48 | ||
49 | button-recovery { | |
50 | label = "Recovery"; | |
51 | linux,code = <KEY_VENDOR>; | |
52 | press-threshold-microvolt = <2000>; | |
53 | }; | |
54 | }; | |
55 | ||
56 | speaker_amp: speaker-audio-amplifier { | |
57 | compatible = "simple-audio-amplifier"; | |
58 | enable-gpios = <&gpio3 RK_PC0 GPIO_ACTIVE_HIGH>; | |
59 | sound-name-prefix = "Speaker Amp"; | |
60 | }; | |
61 | ||
62 | headphone_amp: headphones-audio-amplifier { | |
63 | compatible = "simple-audio-amplifier"; | |
64 | enable-gpios = <&gpio3 RK_PA7 GPIO_ACTIVE_HIGH>; | |
65 | sound-name-prefix = "Headphones Amp"; | |
66 | }; | |
67 | ||
68 | ir-receiver { | |
69 | compatible = "gpio-ir-receiver"; | |
70 | gpios = <&gpio4 RK_PB3 GPIO_ACTIVE_LOW>; | |
71 | pinctrl-names = "default"; | |
72 | pinctrl-0 = <&ir_receiver_pin>; | |
73 | }; | |
74 | ||
75 | gpio-leds { | |
76 | compatible = "gpio-leds"; | |
77 | pinctrl-names = "default"; | |
78 | pinctrl-0 = <&blue_led_pin>; | |
79 | ||
80 | led { | |
81 | color = <LED_COLOR_ID_BLUE>; | |
82 | function = LED_FUNCTION_INDICATOR; | |
83 | function-enumerator = <1>; | |
84 | gpios = <&gpio3 RK_PA6 GPIO_ACTIVE_HIGH>; | |
85 | }; | |
86 | }; | |
87 | ||
88 | fan: pwm-fan { | |
89 | compatible = "pwm-fan"; | |
90 | cooling-levels = <0 70 75 80 100>; | |
91 | fan-supply = <&vcc5v0_sys>; | |
92 | pwms = <&pwm3 0 50000 0>; | |
93 | #cooling-cells = <2>; | |
94 | }; | |
95 | ||
96 | pwm-leds { | |
97 | compatible = "pwm-leds"; | |
98 | ||
99 | led { | |
100 | color = <LED_COLOR_ID_GREEN>; | |
101 | function = LED_FUNCTION_INDICATOR; | |
102 | function-enumerator = <2>; | |
103 | max-brightness = <255>; | |
104 | pwms = <&pwm2 0 25000 0>; | |
105 | }; | |
106 | }; | |
107 | ||
108 | sound { | |
109 | compatible = "simple-audio-card"; | |
110 | pinctrl-names = "default"; | |
111 | pinctrl-0 = <&hp_detect>; | |
112 | simple-audio-card,name = "Analog"; | |
113 | simple-audio-card,aux-devs = <&speaker_amp>, <&headphone_amp>; | |
114 | simple-audio-card,format = "i2s"; | |
115 | simple-audio-card,mclk-fs = <256>; | |
116 | simple-audio-card,hp-det-gpio = <&gpio1 RK_PD3 GPIO_ACTIVE_LOW>; | |
117 | simple-audio-card,bitclock-master = <&daicpu>; | |
118 | simple-audio-card,frame-master = <&daicpu>; | |
119 | /*TODO: SARADC_IN3 is used as MIC detection / key input */ | |
120 | ||
121 | simple-audio-card,widgets = | |
122 | "Microphone", "Onboard Microphone", | |
123 | "Microphone", "Microphone Jack", | |
124 | "Speaker", "Speaker", | |
125 | "Headphone", "Headphones"; | |
126 | ||
127 | simple-audio-card,routing = | |
128 | "Headphones", "LOUT1", | |
129 | "Headphones", "ROUT1", | |
130 | "Speaker", "LOUT2", | |
131 | "Speaker", "ROUT2", | |
132 | ||
133 | "Headphones", "Headphones Amp OUTL", | |
134 | "Headphones", "Headphones Amp OUTR", | |
135 | "Headphones Amp INL", "LOUT1", | |
136 | "Headphones Amp INR", "ROUT1", | |
137 | ||
138 | "Speaker", "Speaker Amp OUTL", | |
139 | "Speaker", "Speaker Amp OUTR", | |
140 | "Speaker Amp INL", "LOUT2", | |
141 | "Speaker Amp INR", "ROUT2", | |
142 | ||
143 | /* single ended signal to LINPUT1 */ | |
144 | "LINPUT1", "Microphone Jack", | |
145 | "RINPUT1", "Microphone Jack", | |
146 | /* differential signal */ | |
147 | "LINPUT2", "Onboard Microphone", | |
148 | "RINPUT2", "Onboard Microphone"; | |
149 | ||
150 | daicpu: simple-audio-card,cpu { | |
151 | sound-dai = <&i2s0_8ch>; | |
152 | system-clock-frequency = <12288000>; | |
153 | }; | |
154 | ||
155 | daicodec: simple-audio-card,codec { | |
156 | sound-dai = <&es8388>; | |
157 | system-clock-frequency = <12288000>; | |
158 | }; | |
159 | }; | |
160 | ||
161 | vcc3v3_pcie30: vcc3v3-pcie30-regulator { | |
162 | compatible = "regulator-fixed"; | |
163 | enable-active-high; | |
164 | gpios = <&gpio2 RK_PB6 GPIO_ACTIVE_HIGH>; | |
165 | regulator-name = "vcc3v3_pcie30"; | |
166 | regulator-min-microvolt = <3300000>; | |
167 | regulator-max-microvolt = <3300000>; | |
168 | startup-delay-us = <5000>; | |
169 | vin-supply = <&vcc5v0_sys>; | |
170 | }; | |
171 | ||
172 | vcc3v3_pcie_eth: vcc3v3-pcie-eth-regulator { | |
173 | compatible = "regulator-fixed"; | |
174 | gpios = <&gpio3 RK_PB4 GPIO_ACTIVE_LOW>; | |
175 | regulator-name = "vcc3v3_pcie_eth"; | |
176 | regulator-min-microvolt = <3300000>; | |
177 | regulator-max-microvolt = <3300000>; | |
178 | startup-delay-us = <50000>; | |
179 | vin-supply = <&vcc5v0_sys>; | |
180 | }; | |
181 | ||
182 | vcc3v3_wf: vcc3v3-wf-regulator { | |
183 | compatible = "regulator-fixed"; | |
184 | enable-active-high; | |
185 | gpios = <&gpio2 RK_PC5 GPIO_ACTIVE_HIGH>; | |
186 | regulator-name = "vcc3v3_wf"; | |
187 | regulator-min-microvolt = <3300000>; | |
188 | regulator-max-microvolt = <3300000>; | |
189 | startup-delay-us = <50000>; | |
190 | vin-supply = <&vcc5v0_sys>; | |
191 | }; | |
192 | ||
193 | vcc5v0_sys: vcc5v0-sys-regulator { | |
194 | compatible = "regulator-fixed"; | |
195 | regulator-name = "vcc5v0_sys"; | |
196 | regulator-always-on; | |
197 | regulator-boot-on; | |
198 | regulator-min-microvolt = <5000000>; | |
199 | regulator-max-microvolt = <5000000>; | |
200 | }; | |
201 | ||
202 | vcc5v0_usb20: vcc5v0-usb20-regulator { | |
203 | compatible = "regulator-fixed"; | |
204 | enable-active-high; | |
205 | gpio = <&gpio3 RK_PB7 GPIO_ACTIVE_HIGH>; | |
206 | pinctrl-names = "default"; | |
207 | pinctrl-0 = <&vcc5v0_usb20_en>; | |
208 | regulator-name = "vcc5v0_usb20"; | |
209 | regulator-min-microvolt = <5000000>; | |
210 | regulator-max-microvolt = <5000000>; | |
211 | vin-supply = <&vcc5v0_sys>; | |
212 | }; | |
213 | }; | |
214 | ||
215 | &combphy0_ps { | |
216 | status = "okay"; | |
217 | }; | |
218 | ||
219 | &combphy1_ps { | |
220 | status = "okay"; | |
221 | }; | |
222 | ||
223 | &combphy2_psu { | |
224 | status = "okay"; | |
225 | }; | |
226 | ||
227 | &cpu_b0 { | |
228 | cpu-supply = <&vdd_cpu_big0_s0>; | |
229 | }; | |
230 | ||
231 | &cpu_b1 { | |
232 | cpu-supply = <&vdd_cpu_big0_s0>; | |
233 | }; | |
234 | ||
235 | &cpu_b2 { | |
236 | cpu-supply = <&vdd_cpu_big1_s0>; | |
237 | }; | |
238 | ||
239 | &cpu_b3 { | |
240 | cpu-supply = <&vdd_cpu_big1_s0>; | |
241 | }; | |
242 | ||
243 | &cpu_l0 { | |
244 | cpu-supply = <&vdd_cpu_lit_s0>; | |
245 | }; | |
246 | ||
247 | &cpu_l1 { | |
248 | cpu-supply = <&vdd_cpu_lit_s0>; | |
249 | }; | |
250 | ||
251 | &cpu_l2 { | |
252 | cpu-supply = <&vdd_cpu_lit_s0>; | |
253 | }; | |
254 | ||
255 | &cpu_l3 { | |
256 | cpu-supply = <&vdd_cpu_lit_s0>; | |
257 | }; | |
258 | ||
259 | &i2c0 { | |
260 | pinctrl-names = "default"; | |
261 | pinctrl-0 = <&i2c0m2_xfer>; | |
262 | status = "okay"; | |
263 | ||
264 | vdd_cpu_big0_s0: regulator@42 { | |
265 | compatible = "rockchip,rk8602"; | |
266 | reg = <0x42>; | |
267 | fcs,suspend-voltage-selector = <1>; | |
268 | regulator-name = "vdd_cpu_big0_s0"; | |
269 | regulator-always-on; | |
270 | regulator-boot-on; | |
271 | regulator-min-microvolt = <550000>; | |
272 | regulator-max-microvolt = <1050000>; | |
273 | regulator-ramp-delay = <2300>; | |
274 | vin-supply = <&vcc5v0_sys>; | |
275 | ||
276 | regulator-state-mem { | |
277 | regulator-off-in-suspend; | |
278 | }; | |
279 | }; | |
280 | ||
281 | vdd_cpu_big1_s0: regulator@43 { | |
282 | compatible = "rockchip,rk8603", "rockchip,rk8602"; | |
283 | reg = <0x43>; | |
284 | fcs,suspend-voltage-selector = <1>; | |
285 | regulator-name = "vdd_cpu_big1_s0"; | |
286 | regulator-always-on; | |
287 | regulator-boot-on; | |
288 | regulator-min-microvolt = <550000>; | |
289 | regulator-max-microvolt = <1050000>; | |
290 | regulator-ramp-delay = <2300>; | |
291 | vin-supply = <&vcc5v0_sys>; | |
292 | ||
293 | regulator-state-mem { | |
294 | regulator-off-in-suspend; | |
295 | }; | |
296 | }; | |
297 | }; | |
298 | ||
299 | &i2c6 { | |
300 | clock-frequency = <400000>; | |
301 | status = "okay"; | |
302 | ||
303 | hym8563: rtc@51 { | |
304 | compatible = "haoyu,hym8563"; | |
305 | reg = <0x51>; | |
306 | interrupt-parent = <&gpio0>; | |
307 | interrupts = <RK_PB0 IRQ_TYPE_LEVEL_LOW>; | |
308 | #clock-cells = <0>; | |
309 | clock-output-names = "hym8563"; | |
310 | pinctrl-names = "default"; | |
311 | pinctrl-0 = <&hym8563_int>; | |
312 | wakeup-source; | |
313 | }; | |
314 | }; | |
315 | ||
316 | &i2c7 { | |
317 | status = "okay"; | |
318 | ||
319 | /* PLDO2 vcca 1.8V, BUCK8 gated by PLDO2 being enabled */ | |
320 | es8388: audio-codec@11 { | |
321 | compatible = "everest,es8388"; | |
322 | reg = <0x11>; | |
323 | clocks = <&cru I2S0_8CH_MCLKOUT>; | |
324 | clock-names = "mclk"; | |
325 | AVDD-supply = <&vcc_1v8_s0>; | |
326 | DVDD-supply = <&vcc_1v8_s0>; | |
327 | HPVDD-supply = <&vcc_3v3_s0>; | |
328 | PVDD-supply = <&vcc_3v3_s0>; | |
329 | assigned-clocks = <&cru I2S0_8CH_MCLKOUT>; | |
330 | assigned-clock-rates = <12288000>; | |
331 | #sound-dai-cells = <0>; | |
332 | }; | |
333 | }; | |
334 | ||
335 | &i2s0_8ch { | |
336 | pinctrl-names = "default"; | |
337 | pinctrl-0 = <&i2s0_lrck | |
338 | &i2s0_mclk | |
339 | &i2s0_sclk | |
340 | &i2s0_sdi0 | |
341 | &i2s0_sdo0>; | |
342 | status = "okay"; | |
343 | }; | |
344 | ||
345 | &i2s2_2ch { | |
346 | pinctrl-names = "default"; | |
347 | pinctrl-0 = <&i2s2m0_lrck | |
348 | &i2s2m0_sclk | |
349 | &i2s2m0_sdi | |
350 | &i2s2m0_sdo>; | |
351 | status = "okay"; | |
352 | }; | |
353 | ||
354 | /* phy1 - M.KEY socket */ | |
355 | &pcie2x1l0 { | |
356 | reset-gpios = <&gpio4 RK_PA5 GPIO_ACTIVE_HIGH>; | |
357 | vpcie3v3-supply = <&vcc3v3_wf>; | |
358 | status = "okay"; | |
359 | }; | |
360 | ||
361 | /* phy2 - right ethernet port */ | |
362 | &pcie2x1l1 { | |
363 | reset-gpios = <&gpio3 RK_PB3 GPIO_ACTIVE_HIGH>; | |
364 | vpcie3v3-supply = <&vcc3v3_pcie_eth>; | |
365 | status = "okay"; | |
366 | }; | |
367 | ||
368 | /* phy0 - left ethernet port */ | |
369 | &pcie2x1l2 { | |
370 | reset-gpios = <&gpio4 RK_PA2 GPIO_ACTIVE_HIGH>; | |
371 | vpcie3v3-supply = <&vcc3v3_pcie_eth>; | |
372 | status = "okay"; | |
373 | }; | |
374 | ||
375 | &pcie30phy { | |
376 | status = "okay"; | |
377 | }; | |
378 | ||
379 | &pcie3x4 { | |
380 | reset-gpios = <&gpio4 RK_PB6 GPIO_ACTIVE_HIGH>; | |
381 | vpcie3v3-supply = <&vcc3v3_pcie30>; | |
382 | status = "okay"; | |
383 | }; | |
384 | ||
385 | &pinctrl { | |
386 | hym8563 { | |
387 | hym8563_int: hym8563-int { | |
388 | rockchip,pins = <0 RK_PB0 RK_FUNC_GPIO &pcfg_pull_none>; | |
389 | }; | |
390 | }; | |
391 | ||
392 | leds { | |
393 | blue_led_pin: blue-led { | |
394 | rockchip,pins = <3 RK_PA6 RK_FUNC_GPIO &pcfg_pull_up>; | |
395 | }; | |
396 | }; | |
397 | ||
398 | ir-receiver { | |
399 | ir_receiver_pin: ir-receiver-pin { | |
400 | rockchip,pins = <4 RK_PB3 RK_FUNC_GPIO &pcfg_pull_none>; | |
401 | }; | |
402 | }; | |
403 | ||
404 | sound { | |
405 | hp_detect: hp-detect { | |
406 | rockchip,pins = <1 RK_PD3 RK_FUNC_GPIO &pcfg_pull_none>; | |
407 | }; | |
408 | }; | |
409 | ||
410 | usb { | |
411 | vcc5v0_usb20_en: vcc5v0-usb20-en { | |
412 | rockchip,pins = <3 RK_PB7 RK_FUNC_GPIO &pcfg_pull_none>; | |
413 | }; | |
414 | }; | |
415 | }; | |
416 | ||
417 | &pwm2 { | |
418 | pinctrl-0 = <&pwm2m1_pins>; | |
419 | pinctrl-names = "default"; | |
420 | status = "okay"; | |
421 | }; | |
422 | ||
423 | &pwm3 { | |
424 | pinctrl-0 = <&pwm3m1_pins>; | |
425 | status = "okay"; | |
426 | }; | |
427 | ||
428 | &saradc { | |
429 | vref-supply = <&vcc_1v8_s0>; | |
430 | status = "okay"; | |
431 | }; | |
432 | ||
433 | &sdhci { | |
434 | bus-width = <8>; | |
435 | no-sdio; | |
436 | no-sd; | |
437 | non-removable; | |
438 | max-frequency = <200000000>; | |
439 | mmc-hs400-1_8v; | |
440 | mmc-hs400-enhanced-strobe; | |
441 | status = "okay"; | |
442 | }; | |
443 | ||
444 | &sdmmc { | |
445 | bus-width = <4>; | |
446 | cap-sd-highspeed; | |
447 | cd-gpios = <&gpio0 RK_PA4 GPIO_ACTIVE_LOW>; | |
448 | disable-wp; | |
449 | max-frequency = <150000000>; | |
450 | no-sdio; | |
451 | no-mmc; | |
452 | sd-uhs-sdr104; | |
453 | vmmc-supply = <&vcc_3v3_s3>; | |
454 | vqmmc-supply = <&vccio_sd_s0>; | |
455 | status = "okay"; | |
456 | }; | |
457 | ||
458 | &sfc { | |
459 | pinctrl-names = "default"; | |
460 | pinctrl-0 = <&fspim1_pins>; | |
461 | status = "okay"; | |
462 | ||
463 | spi_flash: flash@0 { | |
464 | compatible = "jedec,spi-nor"; | |
465 | reg = <0x0>; | |
466 | spi-max-frequency = <100000000>; | |
467 | spi-rx-bus-width = <4>; | |
468 | spi-tx-bus-width = <1>; | |
469 | }; | |
470 | }; | |
471 | ||
472 | &spi2 { | |
473 | assigned-clocks = <&cru CLK_SPI2>; | |
474 | assigned-clock-rates = <200000000>; | |
475 | num-cs = <1>; | |
476 | pinctrl-names = "default"; | |
477 | pinctrl-0 = <&spi2m2_cs0 &spi2m2_pins>; | |
478 | status = "okay"; | |
479 | ||
480 | pmic@0 { | |
481 | compatible = "rockchip,rk806"; | |
482 | reg = <0x0>; | |
483 | interrupt-parent = <&gpio0>; | |
484 | interrupts = <7 IRQ_TYPE_LEVEL_LOW>; | |
485 | pinctrl-names = "default"; | |
486 | pinctrl-0 = <&pmic_pins>, <&rk806_dvs1_null>, | |
487 | <&rk806_dvs2_null>, <&rk806_dvs3_null>; | |
488 | spi-max-frequency = <1000000>; | |
489 | ||
490 | vcc1-supply = <&vcc5v0_sys>; | |
491 | vcc2-supply = <&vcc5v0_sys>; | |
492 | vcc3-supply = <&vcc5v0_sys>; | |
493 | vcc4-supply = <&vcc5v0_sys>; | |
494 | vcc5-supply = <&vcc5v0_sys>; | |
495 | vcc6-supply = <&vcc5v0_sys>; | |
496 | vcc7-supply = <&vcc5v0_sys>; | |
497 | vcc8-supply = <&vcc5v0_sys>; | |
498 | vcc9-supply = <&vcc5v0_sys>; | |
499 | vcc10-supply = <&vcc5v0_sys>; | |
500 | vcc11-supply = <&vcc_2v0_pldo_s3>; | |
501 | vcc12-supply = <&vcc5v0_sys>; | |
502 | vcc13-supply = <&vdd2_ddr_s3>; | |
503 | vcc14-supply = <&vdd2_ddr_s3>; | |
504 | vcca-supply = <&vcc5v0_sys>; | |
505 | ||
506 | gpio-controller; | |
507 | #gpio-cells = <2>; | |
508 | ||
509 | rk806_dvs1_null: dvs1-null-pins { | |
510 | pins = "gpio_pwrctrl2"; | |
511 | function = "pin_fun0"; | |
512 | }; | |
513 | ||
514 | rk806_dvs2_null: dvs2-null-pins { | |
515 | pins = "gpio_pwrctrl2"; | |
516 | function = "pin_fun0"; | |
517 | }; | |
518 | ||
519 | rk806_dvs3_null: dvs3-null-pins { | |
520 | pins = "gpio_pwrctrl3"; | |
521 | function = "pin_fun0"; | |
522 | }; | |
523 | ||
524 | regulators { | |
525 | vdd_gpu_s0: dcdc-reg1 { | |
526 | regulator-name = "vdd_gpu_s0"; | |
527 | regulator-boot-on; | |
528 | regulator-enable-ramp-delay = <400>; | |
529 | regulator-min-microvolt = <550000>; | |
530 | regulator-max-microvolt = <950000>; | |
531 | regulator-ramp-delay = <12500>; | |
532 | ||
533 | regulator-state-mem { | |
534 | regulator-off-in-suspend; | |
535 | }; | |
536 | }; | |
537 | ||
538 | vdd_cpu_lit_s0: dcdc-reg2 { | |
539 | regulator-name = "vdd_cpu_lit_s0"; | |
540 | regulator-always-on; | |
541 | regulator-boot-on; | |
542 | regulator-min-microvolt = <550000>; | |
543 | regulator-max-microvolt = <950000>; | |
544 | regulator-ramp-delay = <12500>; | |
545 | ||
546 | regulator-state-mem { | |
547 | regulator-off-in-suspend; | |
548 | }; | |
549 | }; | |
550 | ||
551 | vdd_log_s0: dcdc-reg3 { | |
552 | regulator-name = "vdd_log_s0"; | |
553 | regulator-always-on; | |
554 | regulator-boot-on; | |
555 | regulator-min-microvolt = <675000>; | |
556 | regulator-max-microvolt = <825000>; | |
557 | regulator-ramp-delay = <12500>; | |
558 | ||
559 | regulator-state-mem { | |
560 | regulator-off-in-suspend; | |
561 | regulator-suspend-microvolt = <750000>; | |
562 | }; | |
563 | }; | |
564 | ||
565 | vdd_vdenc_s0: dcdc-reg4 { | |
566 | regulator-name = "vdd_vdenc_s0"; | |
567 | regulator-always-on; | |
568 | regulator-boot-on; | |
569 | regulator-min-microvolt = <550000>; | |
570 | regulator-max-microvolt = <825000>; | |
571 | regulator-ramp-delay = <12500>; | |
572 | ||
573 | regulator-state-mem { | |
574 | regulator-off-in-suspend; | |
575 | }; | |
576 | }; | |
577 | ||
578 | vdd_ddr_s0: dcdc-reg5 { | |
579 | regulator-name = "vdd_ddr_s0"; | |
580 | regulator-always-on; | |
581 | regulator-boot-on; | |
582 | regulator-min-microvolt = <675000>; | |
583 | regulator-max-microvolt = <900000>; | |
584 | regulator-ramp-delay = <12500>; | |
585 | ||
586 | regulator-state-mem { | |
587 | regulator-off-in-suspend; | |
588 | regulator-suspend-microvolt = <850000>; | |
589 | }; | |
590 | }; | |
591 | ||
592 | vdd2_ddr_s3: dcdc-reg6 { | |
593 | regulator-name = "vdd2_ddr_s3"; | |
594 | regulator-always-on; | |
595 | regulator-boot-on; | |
596 | ||
597 | regulator-state-mem { | |
598 | regulator-on-in-suspend; | |
599 | }; | |
600 | }; | |
601 | ||
602 | vcc_2v0_pldo_s3: dcdc-reg7 { | |
603 | regulator-name = "vdd_2v0_pldo_s3"; | |
604 | regulator-always-on; | |
605 | regulator-boot-on; | |
606 | regulator-min-microvolt = <2000000>; | |
607 | regulator-max-microvolt = <2000000>; | |
608 | regulator-ramp-delay = <12500>; | |
609 | ||
610 | regulator-state-mem { | |
611 | regulator-on-in-suspend; | |
612 | regulator-suspend-microvolt = <2000000>; | |
613 | }; | |
614 | }; | |
615 | ||
616 | vcc_3v3_s3: dcdc-reg8 { | |
617 | regulator-name = "vcc_3v3_s3"; | |
618 | regulator-always-on; | |
619 | regulator-boot-on; | |
620 | regulator-min-microvolt = <3300000>; | |
621 | regulator-max-microvolt = <3300000>; | |
622 | ||
623 | regulator-state-mem { | |
624 | regulator-on-in-suspend; | |
625 | regulator-suspend-microvolt = <3300000>; | |
626 | }; | |
627 | }; | |
628 | ||
629 | vddq_ddr_s0: dcdc-reg9 { | |
630 | regulator-name = "vddq_ddr_s0"; | |
631 | regulator-always-on; | |
632 | regulator-boot-on; | |
633 | ||
634 | regulator-state-mem { | |
635 | regulator-off-in-suspend; | |
636 | }; | |
637 | }; | |
638 | ||
639 | vcc_1v8_s3: dcdc-reg10 { | |
640 | regulator-name = "vcc_1v8_s3"; | |
641 | regulator-always-on; | |
642 | regulator-boot-on; | |
643 | regulator-min-microvolt = <1800000>; | |
644 | regulator-max-microvolt = <1800000>; | |
645 | ||
646 | regulator-state-mem { | |
647 | regulator-on-in-suspend; | |
648 | regulator-suspend-microvolt = <1800000>; | |
649 | }; | |
650 | }; | |
651 | ||
652 | avcc_1v8_s0: pldo-reg1 { | |
653 | regulator-name = "avcc_1v8_s0"; | |
654 | regulator-always-on; | |
655 | regulator-boot-on; | |
656 | regulator-min-microvolt = <1800000>; | |
657 | regulator-max-microvolt = <1800000>; | |
658 | ||
659 | regulator-state-mem { | |
660 | regulator-off-in-suspend; | |
661 | regulator-suspend-microvolt = <1800000>; | |
662 | }; | |
663 | }; | |
664 | ||
665 | /* shorted to avcc_1v8_s0 on the board */ | |
666 | vcc_1v8_s0: pldo-reg2 { | |
667 | regulator-name = "vcc_1v8_s0"; | |
668 | regulator-always-on; | |
669 | regulator-boot-on; | |
670 | regulator-min-microvolt = <1800000>; | |
671 | regulator-max-microvolt = <1800000>; | |
672 | ||
673 | regulator-state-mem { | |
674 | regulator-off-in-suspend; | |
675 | regulator-suspend-microvolt = <1800000>; | |
676 | }; | |
677 | }; | |
678 | ||
679 | avdd_1v2_s0: pldo-reg3 { | |
680 | regulator-name = "avdd_1v2_s0"; | |
681 | regulator-always-on; | |
682 | regulator-boot-on; | |
683 | regulator-min-microvolt = <1200000>; | |
684 | regulator-max-microvolt = <1200000>; | |
685 | ||
686 | regulator-state-mem { | |
687 | regulator-off-in-suspend; | |
688 | }; | |
689 | }; | |
690 | ||
691 | vcc_3v3_s0: pldo-reg4 { | |
692 | regulator-name = "vcc_3v3_s0"; | |
693 | regulator-always-on; | |
694 | regulator-boot-on; | |
695 | regulator-min-microvolt = <3300000>; | |
696 | regulator-max-microvolt = <3300000>; | |
697 | regulator-ramp-delay = <12500>; | |
698 | ||
699 | regulator-state-mem { | |
700 | regulator-off-in-suspend; | |
701 | }; | |
702 | }; | |
703 | ||
704 | vccio_sd_s0: pldo-reg5 { | |
705 | regulator-name = "vccio_sd_s0"; | |
706 | regulator-always-on; | |
707 | regulator-boot-on; | |
708 | regulator-min-microvolt = <1800000>; | |
709 | regulator-max-microvolt = <3300000>; | |
710 | regulator-ramp-delay = <12500>; | |
711 | ||
712 | regulator-state-mem { | |
713 | regulator-off-in-suspend; | |
714 | }; | |
715 | }; | |
716 | ||
717 | pldo6_s3: pldo-reg6 { | |
718 | regulator-name = "pldo6_s3"; | |
719 | regulator-always-on; | |
720 | regulator-boot-on; | |
721 | regulator-min-microvolt = <1800000>; | |
722 | regulator-max-microvolt = <1800000>; | |
723 | ||
724 | regulator-state-mem { | |
725 | regulator-on-in-suspend; | |
726 | regulator-suspend-microvolt = <1800000>; | |
727 | }; | |
728 | }; | |
729 | ||
730 | vdd_0v75_s3: nldo-reg1 { | |
731 | regulator-name = "vdd_0v75_s3"; | |
732 | regulator-always-on; | |
733 | regulator-boot-on; | |
734 | regulator-min-microvolt = <750000>; | |
735 | regulator-max-microvolt = <750000>; | |
736 | ||
737 | regulator-state-mem { | |
738 | regulator-on-in-suspend; | |
739 | regulator-suspend-microvolt = <750000>; | |
740 | }; | |
741 | }; | |
742 | ||
743 | vdd_ddr_pll_s0: nldo-reg2 { | |
744 | regulator-name = "vdd_ddr_pll_s0"; | |
745 | regulator-always-on; | |
746 | regulator-boot-on; | |
747 | regulator-min-microvolt = <850000>; | |
748 | regulator-max-microvolt = <850000>; | |
749 | ||
750 | regulator-state-mem { | |
751 | regulator-off-in-suspend; | |
752 | regulator-suspend-microvolt = <850000>; | |
753 | }; | |
754 | }; | |
755 | ||
756 | avdd_0v75_s0: nldo-reg3 { | |
757 | regulator-name = "avdd_0v75_s0"; | |
758 | regulator-always-on; | |
759 | regulator-boot-on; | |
760 | /* | |
761 | * The schematic mentions that actual setting | |
762 | * should be 0.8375V. RK3588 datasheet specifies | |
763 | * maximum as 0.825V. So we set datasheet max | |
764 | * here. | |
765 | */ | |
766 | regulator-min-microvolt = <825000>; | |
767 | regulator-max-microvolt = <825000>; | |
768 | ||
769 | regulator-state-mem { | |
770 | regulator-off-in-suspend; | |
771 | }; | |
772 | }; | |
773 | ||
774 | vdd_0v85_s0: nldo-reg4 { | |
775 | regulator-name = "vdd_0v85_s0"; | |
776 | regulator-always-on; | |
777 | regulator-boot-on; | |
778 | regulator-min-microvolt = <850000>; | |
779 | regulator-max-microvolt = <850000>; | |
780 | ||
781 | regulator-state-mem { | |
782 | regulator-off-in-suspend; | |
783 | }; | |
784 | }; | |
785 | ||
786 | vdd_0v75_s0: nldo-reg5 { | |
787 | regulator-name = "vdd_0v75_s0"; | |
788 | regulator-always-on; | |
789 | regulator-boot-on; | |
790 | regulator-min-microvolt = <750000>; | |
791 | regulator-max-microvolt = <750000>; | |
792 | ||
793 | regulator-state-mem { | |
794 | regulator-off-in-suspend; | |
795 | }; | |
796 | }; | |
797 | }; | |
798 | }; | |
799 | }; | |
800 | ||
801 | &tsadc { | |
802 | status = "okay"; | |
803 | }; | |
804 | ||
805 | &u2phy2 { | |
806 | status = "okay"; | |
807 | }; | |
808 | ||
809 | &u2phy3 { | |
810 | status = "okay"; | |
811 | }; | |
812 | ||
813 | &u2phy2_host { | |
814 | phy-supply = <&vcc5v0_usb20>; | |
815 | status = "okay"; | |
816 | }; | |
817 | ||
818 | &u2phy3_host { | |
819 | phy-supply = <&vcc5v0_usb20>; | |
820 | status = "okay"; | |
821 | }; | |
822 | ||
823 | &uart2 { | |
824 | pinctrl-0 = <&uart2m0_xfer>; | |
825 | status = "okay"; | |
826 | }; | |
827 | ||
828 | &uart9 { | |
829 | pinctrl-0 = <&uart9m0_xfer>; | |
830 | status = "okay"; | |
831 | }; | |
832 | ||
833 | &usb_host0_ehci { | |
834 | status = "okay"; | |
835 | }; | |
836 | ||
837 | &usb_host0_ohci { | |
838 | status = "okay"; | |
839 | }; | |
840 | ||
841 | &usb_host1_ehci { | |
842 | status = "okay"; | |
843 | }; | |
844 | ||
845 | &usb_host1_ohci { | |
846 | status = "okay"; | |
847 | }; |