diff options
author | Akash Gajjar <akash@openedev.com> | 2019-05-28 14:46:58 -0400 |
---|---|---|
committer | Heiko Stuebner <heiko@sntech.de> | 2019-06-04 09:38:54 -0400 |
commit | 45fa7c3838715b34ccea661e4b7b261d91668b17 (patch) | |
tree | 971b557ac01ab18d2cc5c129b4144ed18d56a1d9 | |
parent | c432a29d3fc9ee928caeca2f5cf68b3aebfa6817 (diff) |
arm64: dts: rockchip: add WiFi+BT support on ROCK Pi4 board
Rock Pi 4 has a on board AP6256 WiFi/BT Module. enable wifi and bluetooth
support on Rock Pi 4 board.
Signed-off-by: Akash Gajjar <akash@openedev.com>
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
-rw-r--r-- | arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dts | 97 |
1 files changed, 97 insertions, 0 deletions
diff --git a/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dts b/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dts index e030627159c6..55e74f4d5cd0 100644 --- a/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dts +++ b/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dts | |||
@@ -25,6 +25,15 @@ | |||
25 | #clock-cells = <0>; | 25 | #clock-cells = <0>; |
26 | }; | 26 | }; |
27 | 27 | ||
28 | sdio_pwrseq: sdio-pwrseq { | ||
29 | compatible = "mmc-pwrseq-simple"; | ||
30 | clocks = <&rk808 1>; | ||
31 | clock-names = "ext_clock"; | ||
32 | pinctrl-names = "default"; | ||
33 | pinctrl-0 = <&wifi_enable_h>; | ||
34 | reset-gpios = <&gpio0 RK_PB2 GPIO_ACTIVE_LOW>; | ||
35 | }; | ||
36 | |||
28 | vcc12v_dcin: dc-12v { | 37 | vcc12v_dcin: dc-12v { |
29 | compatible = "regulator-fixed"; | 38 | compatible = "regulator-fixed"; |
30 | regulator-name = "vcc12v_dcin"; | 39 | regulator-name = "vcc12v_dcin"; |
@@ -451,12 +460,46 @@ | |||
451 | }; | 460 | }; |
452 | 461 | ||
453 | &pinctrl { | 462 | &pinctrl { |
463 | bt { | ||
464 | bt_enable_h: bt-enable-h { | ||
465 | rockchip,pins = <0 RK_PB1 RK_FUNC_GPIO &pcfg_pull_none>; | ||
466 | }; | ||
467 | |||
468 | bt_host_wake_l: bt-host-wake-l { | ||
469 | rockchip,pins = <0 RK_PA4 RK_FUNC_GPIO &pcfg_pull_none>; | ||
470 | }; | ||
471 | |||
472 | bt_wake_l: bt-wake-l { | ||
473 | rockchip,pins = <2 RK_PD3 RK_FUNC_GPIO &pcfg_pull_none>; | ||
474 | }; | ||
475 | }; | ||
476 | |||
454 | pcie { | 477 | pcie { |
455 | pcie_pwr_en: pcie-pwr-en { | 478 | pcie_pwr_en: pcie-pwr-en { |
456 | rockchip,pins = <2 RK_PD2 RK_FUNC_GPIO &pcfg_pull_none>; | 479 | rockchip,pins = <2 RK_PD2 RK_FUNC_GPIO &pcfg_pull_none>; |
457 | }; | 480 | }; |
458 | }; | 481 | }; |
459 | 482 | ||
483 | sdio0 { | ||
484 | sdio0_bus4: sdio0-bus4 { | ||
485 | rockchip,pins = | ||
486 | <2 20 RK_FUNC_1 &pcfg_pull_up_20ma>, | ||
487 | <2 21 RK_FUNC_1 &pcfg_pull_up_20ma>, | ||
488 | <2 22 RK_FUNC_1 &pcfg_pull_up_20ma>, | ||
489 | <2 23 RK_FUNC_1 &pcfg_pull_up_20ma>; | ||
490 | }; | ||
491 | |||
492 | sdio0_cmd: sdio0-cmd { | ||
493 | rockchip,pins = | ||
494 | <2 24 RK_FUNC_1 &pcfg_pull_up_20ma>; | ||
495 | }; | ||
496 | |||
497 | sdio0_clk: sdio0-clk { | ||
498 | rockchip,pins = | ||
499 | <2 25 RK_FUNC_1 &pcfg_pull_none_20ma>; | ||
500 | }; | ||
501 | }; | ||
502 | |||
460 | pmic { | 503 | pmic { |
461 | pmic_int_l: pmic-int-l { | 504 | pmic_int_l: pmic-int-l { |
462 | rockchip,pins = <1 RK_PC5 RK_FUNC_GPIO &pcfg_pull_up>; | 505 | rockchip,pins = <1 RK_PC5 RK_FUNC_GPIO &pcfg_pull_up>; |
@@ -482,6 +525,17 @@ | |||
482 | rockchip,pins = <4 RK_PD1 RK_FUNC_GPIO &pcfg_pull_none>; | 525 | rockchip,pins = <4 RK_PD1 RK_FUNC_GPIO &pcfg_pull_none>; |
483 | }; | 526 | }; |
484 | }; | 527 | }; |
528 | |||
529 | wifi { | ||
530 | wifi_enable_h: wifi-enable-h { | ||
531 | rockchip,pins = | ||
532 | <0 RK_PB2 RK_FUNC_GPIO &pcfg_pull_none>; | ||
533 | }; | ||
534 | |||
535 | wifi_host_wake_l: wifi-host-wake-l { | ||
536 | rockchip,pins = <0 RK_PA3 RK_FUNC_GPIO &pcfg_pull_none>; | ||
537 | }; | ||
538 | }; | ||
485 | }; | 539 | }; |
486 | 540 | ||
487 | &pwm2 { | 541 | &pwm2 { |
@@ -494,6 +548,32 @@ | |||
494 | vref-supply = <&vcc_1v8>; | 548 | vref-supply = <&vcc_1v8>; |
495 | }; | 549 | }; |
496 | 550 | ||
551 | &sdio0 { | ||
552 | #address-cells = <1>; | ||
553 | #size-cells = <0>; | ||
554 | bus-width = <4>; | ||
555 | clock-frequency = <50000000>; | ||
556 | cap-sdio-irq; | ||
557 | cap-sd-highspeed; | ||
558 | keep-power-in-suspend; | ||
559 | mmc-pwrseq = <&sdio_pwrseq>; | ||
560 | non-removable; | ||
561 | pinctrl-names = "default"; | ||
562 | pinctrl-0 = <&sdio0_bus4 &sdio0_cmd &sdio0_clk>; | ||
563 | sd-uhs-sdr104; | ||
564 | status = "okay"; | ||
565 | |||
566 | brcmf: wifi@1 { | ||
567 | compatible = "brcm,bcm4329-fmac"; | ||
568 | reg = <1>; | ||
569 | interrupt-parent = <&gpio0>; | ||
570 | interrupts = <RK_PA3 GPIO_ACTIVE_HIGH>; | ||
571 | interrupt-names = "host-wake"; | ||
572 | pinctrl-names = "default"; | ||
573 | pinctrl-0 = <&wifi_host_wake_l>; | ||
574 | }; | ||
575 | }; | ||
576 | |||
497 | &sdmmc { | 577 | &sdmmc { |
498 | bus-width = <4>; | 578 | bus-width = <4>; |
499 | cap-mmc-highspeed; | 579 | cap-mmc-highspeed; |
@@ -557,6 +637,23 @@ | |||
557 | }; | 637 | }; |
558 | }; | 638 | }; |
559 | 639 | ||
640 | &uart0 { | ||
641 | pinctrl-names = "default"; | ||
642 | pinctrl-0 = <&uart0_xfer &uart0_cts &uart0_rts>; | ||
643 | status = "okay"; | ||
644 | |||
645 | bluetooth { | ||
646 | compatible = "brcm,bcm43438-bt"; | ||
647 | clocks = <&rk808 1>; | ||
648 | clock-names = "ext_clock"; | ||
649 | device-wakeup-gpios = <&gpio2 RK_PD3 GPIO_ACTIVE_HIGH>; | ||
650 | host-wakeup-gpios = <&gpio0 RK_PA4 GPIO_ACTIVE_HIGH>; | ||
651 | shutdown-gpios = <&gpio0 RK_PB1 GPIO_ACTIVE_HIGH>; | ||
652 | pinctrl-names = "default"; | ||
653 | pinctrl-0 = <&bt_host_wake_l &bt_wake_l &bt_enable_h>; | ||
654 | }; | ||
655 | }; | ||
656 | |||
560 | &uart2 { | 657 | &uart2 { |
561 | status = "okay"; | 658 | status = "okay"; |
562 | }; | 659 | }; |