aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAkash Gajjar <akash@openedev.com>2019-05-28 14:46:58 -0400
committerHeiko Stuebner <heiko@sntech.de>2019-06-04 09:38:54 -0400
commit45fa7c3838715b34ccea661e4b7b261d91668b17 (patch)
tree971b557ac01ab18d2cc5c129b4144ed18d56a1d9
parentc432a29d3fc9ee928caeca2f5cf68b3aebfa6817 (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.dts97
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};