blob: d5c7648c841dc7d12ca42aae4d0ab85b774caa3f [file] [log] [blame]
Nick Xieaa09b3b2019-07-30 11:51:14 +08001// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2/*
3 * Copyright (c) 2019 Shenzhen Wesion Technology Co., Ltd.
4 * (https://www.khadas.com)
5 */
6
7/dts-v1/;
8#include <dt-bindings/input/linux-event-codes.h>
9#include <dt-bindings/pwm/pwm.h>
10#include "rk3399.dtsi"
11#include "rk3399-opp.dtsi"
12
13/ {
Peter Robinson7c79b872021-07-22 16:20:42 +010014 aliases {
15 mmc0 = &sdio0;
16 mmc1 = &sdmmc;
17 mmc2 = &sdhci;
18 };
19
Nick Xieaa09b3b2019-07-30 11:51:14 +080020 chosen {
21 stdout-path = "serial2:1500000n8";
22 };
23
24 clkin_gmac: external-gmac-clock {
25 compatible = "fixed-clock";
26 clock-frequency = <125000000>;
27 clock-output-names = "clkin_gmac";
28 #clock-cells = <0>;
29 };
30
31 sdio_pwrseq: sdio-pwrseq {
32 compatible = "mmc-pwrseq-simple";
33 clocks = <&rk808 1>;
34 clock-names = "ext_clock";
35 pinctrl-names = "default";
36 pinctrl-0 = <&wifi_enable_h>;
37
38 /*
39 * On the module itself this is one of these (depending
40 * on the actual card populated):
41 * - SDIO_RESET_L_WL_REG_ON
42 * - PDN (power down when low)
43 */
44 reset-gpios = <&gpio2 RK_PD4 GPIO_ACTIVE_LOW>;
45 };
46
47 /* switched by pmic_sleep */
48 vcc1v8_s3: vcca1v8_s3: vcc1v8-s3 {
49 compatible = "regulator-fixed";
50 regulator-name = "vcc1v8_s3";
51 regulator-always-on;
52 regulator-boot-on;
53 regulator-min-microvolt = <1800000>;
54 regulator-max-microvolt = <1800000>;
55 vin-supply = <&vcc_1v8>;
56 };
57
58 vcc3v3_pcie: vcc3v3-pcie-regulator {
59 compatible = "regulator-fixed";
60 regulator-name = "vcc3v3_pcie";
61 regulator-always-on;
62 regulator-boot-on;
63 regulator-min-microvolt = <3300000>;
64 regulator-max-microvolt = <3300000>;
65 vin-supply = <&vsys_3v3>;
66 };
67
68 /* Actually 3 regulators (host0, 1, 2) controlled by the same gpio */
69 vcc5v0_host: vcc5v0-host-regulator {
70 compatible = "regulator-fixed";
71 enable-active-high;
72 gpio = <&gpio4 RK_PD1 GPIO_ACTIVE_HIGH>;
73 pinctrl-names = "default";
74 pinctrl-0 = <&vcc5v0_host_en>;
75 regulator-name = "vcc5v0_host";
76 regulator-always-on;
77 vin-supply = <&vsys_5v0>;
78 };
79
80 vdd_log: vdd-log {
81 compatible = "pwm-regulator";
82 pwms = <&pwm2 0 25000 1>;
83 regulator-name = "vdd_log";
84 regulator-always-on;
85 regulator-boot-on;
86 regulator-min-microvolt = <800000>;
87 regulator-max-microvolt = <1400000>;
88 vin-supply = <&vsys_3v3>;
89 };
90
91 vsys: vsys {
92 compatible = "regulator-fixed";
93 regulator-name = "vsys";
94 regulator-always-on;
95 regulator-boot-on;
96 };
97
98 vsys_3v3: vsys-3v3 {
99 compatible = "regulator-fixed";
100 regulator-name = "vsys_3v3";
101 regulator-always-on;
102 regulator-boot-on;
103 regulator-min-microvolt = <3300000>;
104 regulator-max-microvolt = <3300000>;
105 vin-supply = <&vsys>;
106 };
107
108 vsys_5v0: vsys-5v0 {
109 compatible = "regulator-fixed";
110 regulator-name = "vsys_5v0";
111 regulator-always-on;
112 regulator-boot-on;
113 regulator-min-microvolt = <5000000>;
114 regulator-max-microvolt = <5000000>;
115 vin-supply = <&vsys>;
116 };
117
118 adc-keys {
119 compatible = "adc-keys";
120 io-channels = <&saradc 1>;
121 io-channel-names = "buttons";
122 keyup-threshold-microvolt = <1800000>;
123 poll-interval = <100>;
124
125 recovery {
126 label = "Recovery";
127 linux,code = <KEY_VENDOR>;
128 press-threshold-microvolt = <18000>;
129 };
130 };
131
132 gpio-keys {
133 compatible = "gpio-keys";
134 autorepeat;
135 pinctrl-names = "default";
136 pinctrl-0 = <&pwrbtn>;
137
138 power {
139 debounce-interval = <100>;
140 gpios = <&gpio0 RK_PA5 GPIO_ACTIVE_LOW>;
141 label = "GPIO Key Power";
142 linux,code = <KEY_POWER>;
143 wakeup-source;
144 };
145 };
146
Peter Robinson7c79b872021-07-22 16:20:42 +0100147 ir-receiver {
148 compatible = "gpio-ir-receiver";
149 gpios = <&gpio1 RK_PB6 GPIO_ACTIVE_LOW>;
150 linux,rc-map-name = "rc-khadas";
151 pinctrl-names = "default";
152 pinctrl-0 = <&ir_rx>;
153 };
154
Nick Xieaa09b3b2019-07-30 11:51:14 +0800155 leds {
156 compatible = "gpio-leds";
157 pinctrl-names = "default";
Peter Robinson7c79b872021-07-22 16:20:42 +0100158 pinctrl-0 = <&sys_led_pin>, <&user_led_pin>;
Nick Xieaa09b3b2019-07-30 11:51:14 +0800159
Peter Robinson7c79b872021-07-22 16:20:42 +0100160 sys_led: led-0 {
Nick Xieaa09b3b2019-07-30 11:51:14 +0800161 label = "sys_led";
162 linux,default-trigger = "heartbeat";
163 gpios = <&gpio0 RK_PA6 GPIO_ACTIVE_HIGH>;
164 };
165
Peter Robinson7c79b872021-07-22 16:20:42 +0100166 user_led: led-1 {
Nick Xieaa09b3b2019-07-30 11:51:14 +0800167 label = "user_led";
168 default-state = "off";
169 gpios = <&gpio4 RK_PD0 GPIO_ACTIVE_HIGH>;
170 };
171 };
172
173 fan: pwm-fan {
174 compatible = "pwm-fan";
175 cooling-levels = <0 150 200 255>;
176 #cooling-cells = <2>;
177 fan-supply = <&vsys_5v0>;
178 pwms = <&pwm0 0 40000 0>;
179 };
180};
181
182&cpu_l0 {
183 cpu-supply = <&vdd_cpu_l>;
184};
185
186&cpu_l1 {
187 cpu-supply = <&vdd_cpu_l>;
188};
189
190&cpu_l2 {
191 cpu-supply = <&vdd_cpu_l>;
192};
193
194&cpu_l3 {
195 cpu-supply = <&vdd_cpu_l>;
196};
197
198&cpu_b0 {
199 cpu-supply = <&vdd_cpu_b>;
200};
201
202&cpu_b1 {
203 cpu-supply = <&vdd_cpu_b>;
204};
205
206&cpu_thermal {
207 trips {
208 cpu_warm: cpu_warm {
209 temperature = <55000>;
210 hysteresis = <2000>;
211 type = "active";
212 };
213
214 cpu_hot: cpu_hot {
215 temperature = <65000>;
216 hysteresis = <2000>;
217 type = "active";
218 };
219 };
220
221 cooling-maps {
222 map2 {
223 trip = <&cpu_warm>;
224 cooling-device = <&fan THERMAL_NO_LIMIT 1>;
225 };
226
227 map3 {
228 trip = <&cpu_hot>;
229 cooling-device = <&fan 2 THERMAL_NO_LIMIT>;
230 };
231 };
232};
233
234&emmc_phy {
235 status = "okay";
236};
237
238&gmac {
239 assigned-clocks = <&cru SCLK_RMII_SRC>;
240 assigned-clock-parents = <&clkin_gmac>;
241 clock_in_out = "input";
242 phy-supply = <&vcc_lan>;
243 phy-mode = "rgmii";
244 pinctrl-names = "default";
245 pinctrl-0 = <&rgmii_pins>;
246 snps,reset-gpio = <&gpio3 RK_PB7 GPIO_ACTIVE_LOW>;
247 snps,reset-active-low;
248 snps,reset-delays-us = <0 10000 50000>;
249 tx_delay = <0x28>;
250 rx_delay = <0x11>;
251};
252
253&gpu {
254 mali-supply = <&vdd_gpu>;
255 status = "okay";
256};
257
258&gpu_thermal {
259 trips {
260 gpu_warm: gpu_warm {
261 temperature = <55000>;
262 hysteresis = <2000>;
263 type = "active";
264 };
265
266 gpu_hot: gpu_hot {
267 temperature = <65000>;
268 hysteresis = <2000>;
269 type = "active";
270 };
271 };
272
273 cooling-maps {
274 map1 {
275 trip = <&gpu_warm>;
276 cooling-device = <&fan THERMAL_NO_LIMIT 1>;
277 };
278
279 map2 {
280 trip = <&gpu_hot>;
281 cooling-device = <&fan 2 THERMAL_NO_LIMIT>;
282 };
283 };
284};
285
286&hdmi {
287 ddc-i2c-bus = <&i2c3>;
288 pinctrl-names = "default";
289 pinctrl-0 = <&hdmi_cec>;
290 status = "okay";
291};
292
293&hdmi_sound {
294 status = "okay";
295};
296
297&i2c3 {
298 i2c-scl-rising-time-ns = <450>;
299 i2c-scl-falling-time-ns = <15>;
300 status = "okay";
301};
302
303&i2c4 {
304 clock-frequency = <400000>;
305 i2c-scl-rising-time-ns = <168>;
306 i2c-scl-falling-time-ns = <4>;
307 status = "okay";
308
309 rk808: pmic@1b {
310 compatible = "rockchip,rk808";
311 reg = <0x1b>;
312 interrupt-parent = <&gpio1>;
313 interrupts = <RK_PC6 IRQ_TYPE_LEVEL_LOW>;
314 #clock-cells = <1>;
315 clock-output-names = "xin32k", "rk808-clkout2";
316 pinctrl-names = "default";
317 pinctrl-0 = <&pmic_int_l>;
318 rockchip,system-power-controller;
319 wakeup-source;
320
321 vcc1-supply = <&vsys_3v3>;
322 vcc2-supply = <&vsys_3v3>;
323 vcc3-supply = <&vsys_3v3>;
324 vcc4-supply = <&vsys_3v3>;
325 vcc6-supply = <&vsys_3v3>;
326 vcc7-supply = <&vsys_3v3>;
327 vcc8-supply = <&vsys_3v3>;
328 vcc9-supply = <&vsys_3v3>;
329 vcc10-supply = <&vsys_3v3>;
330 vcc11-supply = <&vsys_3v3>;
331 vcc12-supply = <&vsys_3v3>;
332 vddio-supply = <&vcc_1v8>;
333
334 regulators {
335 vdd_center: DCDC_REG1 {
336 regulator-name = "vdd_center";
337 regulator-always-on;
338 regulator-boot-on;
339 regulator-min-microvolt = <750000>;
340 regulator-max-microvolt = <1350000>;
341 regulator-ramp-delay = <6001>;
342
343 regulator-state-mem {
344 regulator-off-in-suspend;
345 };
346 };
347
348 vdd_cpu_l: DCDC_REG2 {
349 regulator-name = "vdd_cpu_l";
350 regulator-always-on;
351 regulator-boot-on;
352 regulator-min-microvolt = <750000>;
353 regulator-max-microvolt = <1350000>;
354 regulator-ramp-delay = <6001>;
355
356 regulator-state-mem {
357 regulator-off-in-suspend;
358 };
359 };
360
361 vcc_ddr: DCDC_REG3 {
362 regulator-name = "vcc_ddr";
363 regulator-always-on;
364 regulator-boot-on;
365
366 regulator-state-mem {
367 regulator-on-in-suspend;
368 };
369 };
370
371 vcc_1v8: DCDC_REG4 {
372 regulator-name = "vcc_1v8";
373 regulator-always-on;
374 regulator-boot-on;
375 regulator-min-microvolt = <1800000>;
376 regulator-max-microvolt = <1800000>;
377
378 regulator-state-mem {
379 regulator-on-in-suspend;
380 regulator-suspend-microvolt = <1800000>;
381 };
382 };
383
384 vcc1v8_apio2: LDO_REG1 {
385 regulator-name = "vcc1v8_apio2";
386 regulator-always-on;
387 regulator-boot-on;
388 regulator-min-microvolt = <1800000>;
389 regulator-max-microvolt = <1800000>;
390
391 regulator-state-mem {
392 regulator-off-in-suspend;
393 };
394 };
395
396 vcc_vldo2: LDO_REG2 {
397 regulator-name = "vcc_vldo2";
398 regulator-always-on;
399 regulator-boot-on;
400 regulator-min-microvolt = <3000000>;
401 regulator-max-microvolt = <3000000>;
402
403 regulator-state-mem {
404 regulator-off-in-suspend;
405 };
406 };
407
408 vcc1v8_pmupll: LDO_REG3 {
409 regulator-name = "vcc1v8_pmupll";
410 regulator-always-on;
411 regulator-boot-on;
412 regulator-min-microvolt = <1800000>;
413 regulator-max-microvolt = <1800000>;
414
415 regulator-state-mem {
416 regulator-on-in-suspend;
417 regulator-suspend-microvolt = <1800000>;
418 };
419 };
420
421 vccio_sd: LDO_REG4 {
422 regulator-name = "vccio_sd";
423 regulator-always-on;
424 regulator-boot-on;
425 regulator-min-microvolt = <1800000>;
426 regulator-max-microvolt = <3000000>;
427
428 regulator-state-mem {
429 regulator-on-in-suspend;
430 regulator-suspend-microvolt = <3000000>;
431 };
432 };
433
434 vcc_vldo5: LDO_REG5 {
435 regulator-name = "vcc_vldo5";
436 regulator-always-on;
437 regulator-boot-on;
438 regulator-min-microvolt = <3000000>;
439 regulator-max-microvolt = <3000000>;
440
441 regulator-state-mem {
442 regulator-off-in-suspend;
443 };
444 };
445
446 vcc_1v5: LDO_REG6 {
447 regulator-name = "vcc_1v5";
448 regulator-always-on;
449 regulator-boot-on;
450 regulator-min-microvolt = <1500000>;
451 regulator-max-microvolt = <1500000>;
452
453 regulator-state-mem {
454 regulator-on-in-suspend;
455 regulator-suspend-microvolt = <1500000>;
456 };
457 };
458
459 vcc1v8_codec: LDO_REG7 {
460 regulator-name = "vcc1v8_codec";
461 regulator-always-on;
462 regulator-boot-on;
463 regulator-min-microvolt = <1800000>;
464 regulator-max-microvolt = <1800000>;
465
466 regulator-state-mem {
467 regulator-off-in-suspend;
468 };
469 };
470
471 vcc_3v0: LDO_REG8 {
472 regulator-name = "vcc_3v0";
473 regulator-always-on;
474 regulator-boot-on;
475 regulator-min-microvolt = <3000000>;
476 regulator-max-microvolt = <3000000>;
477
478 regulator-state-mem {
479 regulator-on-in-suspend;
480 regulator-suspend-microvolt = <3000000>;
481 };
482 };
483
484 vcc3v3_s3: vcc_lan: SWITCH_REG1 {
485 regulator-name = "vcc3v3_s3";
486 regulator-always-on;
487 regulator-boot-on;
488
489 regulator-state-mem {
490 regulator-off-in-suspend;
491 };
492 };
493
494 vcc3v3_s0: SWITCH_REG2 {
495 regulator-name = "vcc3v3_s0";
496 regulator-always-on;
497 regulator-boot-on;
498
499 regulator-state-mem {
500 regulator-off-in-suspend;
501 };
502 };
503 };
504 };
505
506 vdd_cpu_b: regulator@40 {
507 compatible = "silergy,syr827";
508 reg = <0x40>;
509 fcs,suspend-voltage-selector = <1>;
510 pinctrl-names = "default";
511 pinctrl-0 = <&cpu_b_sleep>;
512 regulator-name = "vdd_cpu_b";
513 regulator-min-microvolt = <712500>;
514 regulator-max-microvolt = <1500000>;
515 regulator-ramp-delay = <1000>;
516 regulator-always-on;
517 regulator-boot-on;
518 vin-supply = <&vsys_3v3>;
519
520 regulator-state-mem {
521 regulator-off-in-suspend;
522 };
523 };
524
525 vdd_gpu: regulator@41 {
526 compatible = "silergy,syr828";
527 reg = <0x41>;
528 fcs,suspend-voltage-selector = <1>;
529 pinctrl-names = "default";
530 pinctrl-0 = <&gpu_sleep>;
531 regulator-name = "vdd_gpu";
532 regulator-min-microvolt = <712500>;
533 regulator-max-microvolt = <1500000>;
534 regulator-ramp-delay = <1000>;
535 regulator-always-on;
536 regulator-boot-on;
537 vin-supply = <&vsys_3v3>;
538
539 regulator-state-mem {
540 regulator-off-in-suspend;
541 };
542 };
543};
544
545&i2c8 {
546 clock-frequency = <400000>;
547 i2c-scl-rising-time-ns = <160>;
548 i2c-scl-falling-time-ns = <30>;
549 status = "okay";
550};
551
552&i2s0 {
553 rockchip,playback-channels = <8>;
554 rockchip,capture-channels = <8>;
555 status = "okay";
556};
557
558&i2s1 {
559 rockchip,playback-channels = <2>;
560 rockchip,capture-channels = <2>;
561 status = "okay";
562};
563
564&i2s2 {
565 status = "okay";
566};
567
568&io_domains {
569 bt656-supply = <&vcc1v8_apio2>;
570 audio-supply = <&vcc1v8_codec>;
571 sdmmc-supply = <&vccio_sd>;
572 gpio1830-supply = <&vcc_3v0>;
573 status = "okay";
574};
575
576&pmu_io_domains {
577 pmu1830-supply = <&vcc_1v8>;
578 status = "okay";
579};
580
581&pinctrl {
582 bt {
583 bt_host_wake_l: bt-host-wake-l {
584 rockchip,pins = <0 RK_PA4 RK_FUNC_GPIO &pcfg_pull_none>;
585 };
586
587 bt_reg_on_h: bt-reg-on-h {
588 rockchip,pins = <2 RK_PD3 RK_FUNC_GPIO &pcfg_pull_none>;
589 };
590
591 bt_wake_l: bt-wake-l {
592 rockchip,pins = <2 RK_PD2 RK_FUNC_GPIO &pcfg_pull_none>;
593 };
594 };
595
596 buttons {
597 pwrbtn: pwrbtn {
598 rockchip,pins = <0 RK_PA5 RK_FUNC_GPIO &pcfg_pull_up>;
599 };
600 };
601
Peter Robinson7c79b872021-07-22 16:20:42 +0100602 ir {
603 ir_rx: ir-rx {
604 rockchip,pins = <1 RK_PB6 RK_FUNC_GPIO &pcfg_pull_none>;
605 };
606 };
607
Nick Xieaa09b3b2019-07-30 11:51:14 +0800608 leds {
Peter Robinson7c79b872021-07-22 16:20:42 +0100609 sys_led_pin: sys-led-pin {
Nick Xieaa09b3b2019-07-30 11:51:14 +0800610 rockchip,pins = <0 RK_PA6 RK_FUNC_GPIO &pcfg_pull_none>;
611 };
612
Peter Robinson7c79b872021-07-22 16:20:42 +0100613 user_led_pin: user-led-pin {
Nick Xieaa09b3b2019-07-30 11:51:14 +0800614 rockchip,pins = <4 RK_PD0 RK_FUNC_GPIO &pcfg_pull_none>;
615 };
616 };
617
618 pmic {
619 pmic_int_l: pmic-int-l {
620 rockchip,pins = <1 RK_PC6 RK_FUNC_GPIO &pcfg_pull_up>;
621 };
622
623 cpu_b_sleep: cpu-b-sleep {
624 rockchip,pins = <1 RK_PB5 RK_FUNC_GPIO &pcfg_pull_down>;
625 };
626
627 gpu_sleep: gpu-sleep {
628 rockchip,pins = <0 RK_PB5 RK_FUNC_GPIO &pcfg_pull_down>;
629 };
630 };
631
632 sdio-pwrseq {
633 wifi_enable_h: wifi-enable-h {
634 rockchip,pins = <2 RK_PD4 RK_FUNC_GPIO &pcfg_pull_none>;
635 };
636 };
637
638 usb2 {
639 vcc5v0_host_en: vcc5v0-host-en {
640 rockchip,pins = <4 RK_PD1 RK_FUNC_GPIO &pcfg_pull_none>;
641 };
642 };
643
644 wifi {
645 wifi_host_wake_l: wifi-host-wake-l {
646 rockchip,pins = <0 RK_PA3 RK_FUNC_GPIO &pcfg_pull_none>;
647 };
648 };
649};
650
651&pwm0 {
652 status = "okay";
653};
654
655&pwm2 {
656 status = "okay";
657};
658
659&saradc {
660 vref-supply = <&vcca1v8_s3>;
661 status = "okay";
662};
663
664&sdio0 {
665 /* WiFi & BT combo module Ampak AP6356S */
666 bus-width = <4>;
667 cap-sdio-irq;
668 cap-sd-highspeed;
669 keep-power-in-suspend;
670 mmc-pwrseq = <&sdio_pwrseq>;
671 non-removable;
672 pinctrl-names = "default";
673 pinctrl-0 = <&sdio0_bus4 &sdio0_cmd &sdio0_clk>;
674 sd-uhs-sdr104;
675 vqmmc-supply = <&vcc1v8_s3>;
676 vmmc-supply = <&vccio_sd>;
Jagan Teki5cc21182020-04-28 15:30:17 +0530677 #address-cells = <1>;
678 #size-cells = <0>;
Nick Xieaa09b3b2019-07-30 11:51:14 +0800679 status = "okay";
680
681 brcmf: wifi@1 {
Jagan Teki5cc21182020-04-28 15:30:17 +0530682 reg = <1>;
Nick Xieaa09b3b2019-07-30 11:51:14 +0800683 compatible = "brcm,bcm4329-fmac";
684 interrupt-parent = <&gpio0>;
685 interrupts = <RK_PA3 GPIO_ACTIVE_HIGH>;
686 interrupt-names = "host-wake";
687 brcm,drive-strength = <5>;
688 pinctrl-names = "default";
689 pinctrl-0 = <&wifi_host_wake_l>;
690 };
691};
692
693&sdmmc {
694 bus-width = <4>;
695 cap-mmc-highspeed;
696 cap-sd-highspeed;
697 cd-gpios = <&gpio0 RK_PA7 GPIO_ACTIVE_LOW>;
698 disable-wp;
699 max-frequency = <150000000>;
700 pinctrl-names = "default";
701 pinctrl-0 = <&sdmmc_clk &sdmmc_cmd &sdmmc_bus4>;
702 status = "okay";
703};
704
705&sdhci {
706 bus-width = <8>;
707 mmc-hs400-1_8v;
708 mmc-hs400-enhanced-strobe;
709 non-removable;
710 status = "okay";
Peter Robinson7c79b872021-07-22 16:20:42 +0100711};
712
713&spi1 {
714 status = "okay";
715
716 spiflash: flash@0 {
717 compatible = "winbond,w25q128fw", "jedec,spi-nor";
718 reg = <0>;
719 spi-max-frequency = <104000000>;
720 };
Nick Xieaa09b3b2019-07-30 11:51:14 +0800721};
722
723&tcphy0 {
724 status = "okay";
725};
726
727&tcphy1 {
728 status = "okay";
729};
730
731&tsadc {
732 /* tshut mode 0:CRU 1:GPIO */
733 rockchip,hw-tshut-mode = <1>;
734 /* tshut polarity 0:LOW 1:HIGH */
735 rockchip,hw-tshut-polarity = <1>;
736 status = "okay";
737};
738
739&u2phy0 {
740 status = "okay";
741
742 u2phy0_otg: otg-port {
743 status = "okay";
744 };
745
746 u2phy0_host: host-port {
747 phy-supply = <&vcc5v0_host>;
748 status = "okay";
749 };
750};
751
752&u2phy1 {
753 status = "okay";
754
755 u2phy1_otg: otg-port {
756 status = "okay";
757 };
758
759 u2phy1_host: host-port {
760 phy-supply = <&vcc5v0_host>;
761 status = "okay";
762 };
763};
764
765&uart0 {
766 pinctrl-names = "default";
767 pinctrl-0 = <&uart0_xfer &uart0_rts &uart0_cts>;
768 status = "okay";
769
770 bluetooth {
771 compatible = "brcm,bcm43438-bt";
772 clocks = <&rk808 1>;
773 clock-names = "lpo";
774 device-wakeup-gpios = <&gpio2 RK_PD2 GPIO_ACTIVE_HIGH>;
775 host-wakeup-gpios = <&gpio0 RK_PA4 GPIO_ACTIVE_HIGH>;
776 shutdown-gpios = <&gpio2 RK_PD3 GPIO_ACTIVE_HIGH>;
777 max-speed = <4000000>;
778 pinctrl-names = "default";
779 pinctrl-0 = <&bt_reg_on_h &bt_host_wake_l &bt_wake_l>;
780 vbat-supply = <&vsys_3v3>;
781 vddio-supply = <&vcc_1v8>;
782 };
783};
784
785&uart2 {
786 status = "okay";
787};
788
789&usb_host0_ehci {
790 status = "okay";
791};
792
793&usb_host0_ohci {
794 status = "okay";
795};
796
797&usb_host1_ehci {
798 status = "okay";
799};
800
801&usb_host1_ohci {
802 status = "okay";
803};
804
805&usbdrd3_0 {
806 status = "okay";
807};
808
809&usbdrd_dwc3_0 {
810 status = "okay";
811 dr_mode = "otg";
812};
813
814&usbdrd3_1 {
815 status = "okay";
816};
817
818&usbdrd_dwc3_1 {
819 status = "okay";
820 dr_mode = "host";
821};
822
823&vopb {
824 status = "okay";
825};
826
827&vopb_mmu {
828 status = "okay";
829};
830
831&vopl {
832 status = "okay";
833};
834
835&vopl_mmu {
836 status = "okay";
837};