164 lines
3.9 KiB
Diff
164 lines
3.9 KiB
Diff
|
From c72235c288c8cc55d33e257e05d3017c2daf1603 Mon Sep 17 00:00:00 2001
|
||
|
From: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
|
||
|
Date: Fri, 15 Feb 2019 10:26:48 +0530
|
||
|
Subject: arm64: dts: rockchip: Add on-board WiFi/BT support for Rock960 boards
|
||
|
|
||
|
Add on-board WiFi/BT support for Rock960 boards such as Rock960 based
|
||
|
on AP6356S and Ficus based on AP6354 wireless modules.
|
||
|
|
||
|
Firmwares for the respective boards are available here:
|
||
|
|
||
|
http://people.linaro.org/~manivannan.sadhasivam/rock960_wifi/
|
||
|
http://people.linaro.org/~manivannan.sadhasivam/ficus_wifi/
|
||
|
|
||
|
Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
|
||
|
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
|
||
|
---
|
||
|
arch/arm64/boot/dts/rockchip/rk3399-rock960.dtsi | 95 +++++++++++++++++++++++-
|
||
|
1 file changed, 94 insertions(+), 1 deletion(-)
|
||
|
|
||
|
diff --git a/arch/arm64/boot/dts/rockchip/rk3399-rock960.dtsi b/arch/arm64/boot/dts/rockchip/rk3399-rock960.dtsi
|
||
|
index fecb133b0ed2..e40e66e33a5e 100644
|
||
|
--- a/arch/arm64/boot/dts/rockchip/rk3399-rock960.dtsi
|
||
|
+++ b/arch/arm64/boot/dts/rockchip/rk3399-rock960.dtsi
|
||
|
@@ -9,6 +9,15 @@
|
||
|
#include "rk3399-opp.dtsi"
|
||
|
|
||
|
/ {
|
||
|
+ sdio_pwrseq: sdio-pwrseq {
|
||
|
+ compatible = "mmc-pwrseq-simple";
|
||
|
+ clocks = <&rk808 1>;
|
||
|
+ clock-names = "ext_clock";
|
||
|
+ pinctrl-names = "default";
|
||
|
+ pinctrl-0 = <&wifi_enable_h>;
|
||
|
+ reset-gpios = <&gpio0 RK_PB2 GPIO_ACTIVE_LOW>;
|
||
|
+ };
|
||
|
+
|
||
|
vcc1v8_s0: vcc1v8-s0 {
|
||
|
compatible = "regulator-fixed";
|
||
|
regulator-name = "vcc1v8_s0";
|
||
|
@@ -370,6 +379,20 @@
|
||
|
};
|
||
|
|
||
|
&pinctrl {
|
||
|
+ bt {
|
||
|
+ bt_enable_h: bt-enable-h {
|
||
|
+ rockchip,pins = <0 RK_PB1 RK_FUNC_GPIO &pcfg_pull_none>;
|
||
|
+ };
|
||
|
+
|
||
|
+ bt_host_wake_l: bt-host-wake-l {
|
||
|
+ rockchip,pins = <0 RK_PA4 RK_FUNC_GPIO &pcfg_pull_none>;
|
||
|
+ };
|
||
|
+
|
||
|
+ bt_wake_l: bt-wake-l {
|
||
|
+ rockchip,pins = <2 RK_PD3 RK_FUNC_GPIO &pcfg_pull_none>;
|
||
|
+ };
|
||
|
+ };
|
||
|
+
|
||
|
sdmmc {
|
||
|
sdmmc_bus1: sdmmc-bus1 {
|
||
|
rockchip,pins =
|
||
|
@@ -395,6 +418,26 @@
|
||
|
};
|
||
|
};
|
||
|
|
||
|
+ sdio0 {
|
||
|
+ sdio0_bus4: sdio0-bus4 {
|
||
|
+ rockchip,pins =
|
||
|
+ <2 20 RK_FUNC_1 &pcfg_pull_up_20ma>,
|
||
|
+ <2 21 RK_FUNC_1 &pcfg_pull_up_20ma>,
|
||
|
+ <2 22 RK_FUNC_1 &pcfg_pull_up_20ma>,
|
||
|
+ <2 23 RK_FUNC_1 &pcfg_pull_up_20ma>;
|
||
|
+ };
|
||
|
+
|
||
|
+ sdio0_cmd: sdio0-cmd {
|
||
|
+ rockchip,pins =
|
||
|
+ <2 24 RK_FUNC_1 &pcfg_pull_up_20ma>;
|
||
|
+ };
|
||
|
+
|
||
|
+ sdio0_clk: sdio0-clk {
|
||
|
+ rockchip,pins =
|
||
|
+ <2 25 RK_FUNC_1 &pcfg_pull_none_20ma>;
|
||
|
+ };
|
||
|
+ };
|
||
|
+
|
||
|
pmic {
|
||
|
pmic_int_l: pmic-int-l {
|
||
|
rockchip,pins =
|
||
|
@@ -411,6 +454,19 @@
|
||
|
<1 14 RK_FUNC_GPIO &pcfg_pull_down>;
|
||
|
};
|
||
|
};
|
||
|
+
|
||
|
+ sdio-pwrseq {
|
||
|
+ wifi_enable_h: wifi-enable-h {
|
||
|
+ rockchip,pins =
|
||
|
+ <0 RK_PB2 RK_FUNC_GPIO &pcfg_pull_none>;
|
||
|
+ };
|
||
|
+ };
|
||
|
+
|
||
|
+ wifi {
|
||
|
+ wifi_host_wake_l: wifi-host-wake-l {
|
||
|
+ rockchip,pins = <0 RK_PA3 RK_FUNC_GPIO &pcfg_pull_none>;
|
||
|
+ };
|
||
|
+ };
|
||
|
};
|
||
|
|
||
|
&pwm2 {
|
||
|
@@ -421,6 +477,32 @@
|
||
|
status = "okay";
|
||
|
};
|
||
|
|
||
|
+&sdio0 {
|
||
|
+ bus-width = <4>;
|
||
|
+ clock-frequency = <50000000>;
|
||
|
+ cap-sdio-irq;
|
||
|
+ cap-sd-highspeed;
|
||
|
+ keep-power-in-suspend;
|
||
|
+ mmc-pwrseq = <&sdio_pwrseq>;
|
||
|
+ non-removable;
|
||
|
+ pinctrl-names = "default";
|
||
|
+ pinctrl-0 = <&sdio0_bus4 &sdio0_cmd &sdio0_clk>;
|
||
|
+ sd-uhs-sdr104;
|
||
|
+ #address-cells = <1>;
|
||
|
+ #size-cells = <0>;
|
||
|
+ status = "okay";
|
||
|
+
|
||
|
+ brcmf: wifi@1 {
|
||
|
+ compatible = "brcm,bcm4329-fmac";
|
||
|
+ reg = <1>;
|
||
|
+ interrupt-parent = <&gpio0>;
|
||
|
+ interrupts = <RK_PA3 GPIO_ACTIVE_HIGH>;
|
||
|
+ interrupt-names = "host-wake";
|
||
|
+ pinctrl-names = "default";
|
||
|
+ pinctrl-0 = <&wifi_host_wake_l>;
|
||
|
+ };
|
||
|
+};
|
||
|
+
|
||
|
&sdhci {
|
||
|
bus-width = <8>;
|
||
|
mmc-hs400-1_8v;
|
||
|
@@ -447,8 +529,19 @@
|
||
|
|
||
|
&uart0 {
|
||
|
pinctrl-names = "default";
|
||
|
- pinctrl-0 = <&uart0_xfer &uart0_cts>;
|
||
|
+ pinctrl-0 = <&uart0_xfer &uart0_cts &uart0_rts>;
|
||
|
status = "okay";
|
||
|
+
|
||
|
+ bluetooth {
|
||
|
+ compatible = "brcm,bcm43438-bt";
|
||
|
+ clocks = <&rk808 1>;
|
||
|
+ clock-names = "ext_clock";
|
||
|
+ device-wakeup-gpios = <&gpio2 RK_PD3 GPIO_ACTIVE_HIGH>;
|
||
|
+ host-wakeup-gpios = <&gpio0 RK_PA4 GPIO_ACTIVE_HIGH>;
|
||
|
+ shutdown-gpios = <&gpio0 RK_PB1 GPIO_ACTIVE_HIGH>;
|
||
|
+ pinctrl-names = "default";
|
||
|
+ pinctrl-0 = <&bt_host_wake_l &bt_wake_l &bt_enable_h>;
|
||
|
+ };
|
||
|
};
|
||
|
|
||
|
&uart2 {
|
||
|
--
|
||
|
cgit 1.2-0.3.lf.el7
|