From a6107c8add7527c8a2ff91a40192113786121ef3 Mon Sep 17 00:00:00 2001 From: Alex Zhao Date: Mon, 4 Jan 2021 11:54:32 +0800 Subject: [PATCH] Revert "arm64: dts: rockchip: change the wifi power-on method for rk356x evb" This reverts commit e37604f00fb9e59851bc2d9335fa141a7b7cf5a5. Signed-off-by: Alex Zhao Change-Id: I90a96482445710b6089acd5b6ad19264462b35f7 --- .../dts/rockchip/rk3566-evb1-ddr4-v10.dtsi | 10 ++---- .../dts/rockchip/rk3566-evb2-lp4x-v10.dtsi | 16 ++++++--- .../dts/rockchip/rk3566-evb3-ddr3-v10.dtsi | 16 ++++++--- arch/arm64/boot/dts/rockchip/rk3568-evb.dtsi | 22 +++++++++++++ .../dts/rockchip/rk3568-evb1-ddr4-v10.dtsi | 10 ++---- .../dts/rockchip/rk3568-evb2-lp4x-v10.dtsi | 33 ++++++++++++++----- .../dts/rockchip/rk3568-evb6-ddr3-v10.dtsi | 33 ++++++++++++++----- 7 files changed, 98 insertions(+), 42 deletions(-) diff --git a/arch/arm64/boot/dts/rockchip/rk3566-evb1-ddr4-v10.dtsi b/arch/arm64/boot/dts/rockchip/rk3566-evb1-ddr4-v10.dtsi index 9fa9bfc71a80..97012250356e 100644 --- a/arch/arm64/boot/dts/rockchip/rk3566-evb1-ddr4-v10.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3566-evb1-ddr4-v10.dtsi @@ -315,10 +315,11 @@ cap-sd-highspeed; cap-sdio-irq; keep-power-in-suspend; + mmc-pwrseq = <&sdio_pwrseq>; + non-removable; pinctrl-names = "default"; pinctrl-0 = <&sdmmc2m0_bus4 &sdmmc2m0_cmd &sdmmc2m0_clk>; sd-uhs-sdr104; - logic-remove-card; status = "okay"; }; @@ -351,8 +352,7 @@ &wireless_wlan { pinctrl-names = "default"; - pinctrl-0 = <&wifi_poweren &wifi_host_wake_irq>; - WIFI,poweren_gpio = <&gpio3 RK_PD5 GPIO_ACTIVE_HIGH>; + pinctrl-0 = <&wifi_host_wake_irq>; WIFI,host_wake_irq = <&gpio3 RK_PD4 GPIO_ACTIVE_HIGH>; }; @@ -376,10 +376,6 @@ }; wireless-wlan { - wifi_poweren: wifi-poweren { - rockchip,pins = <3 RK_PD5 RK_FUNC_GPIO &pcfg_pull_none>; - }; - wifi_host_wake_irq: wifi-host-wake-irq { rockchip,pins = <3 RK_PD4 RK_FUNC_GPIO &pcfg_pull_down>; }; diff --git a/arch/arm64/boot/dts/rockchip/rk3566-evb2-lp4x-v10.dtsi b/arch/arm64/boot/dts/rockchip/rk3566-evb2-lp4x-v10.dtsi index b62daaf57e95..3708772e5b5f 100644 --- a/arch/arm64/boot/dts/rockchip/rk3566-evb2-lp4x-v10.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3566-evb2-lp4x-v10.dtsi @@ -298,11 +298,13 @@ }; }; - wireless-wlan { - wifi_poweren: wifi-poweren { + sdio-pwrseq { + wifi_enable_h: wifi-enable-h { rockchip,pins = <2 RK_PB1 RK_FUNC_GPIO &pcfg_pull_none>; }; + }; + wireless-wlan { wifi_host_wake_irq: wifi-host-wake-irq { rockchip,pins = <2 RK_PB2 RK_FUNC_GPIO &pcfg_pull_down>; }; @@ -387,13 +389,18 @@ cap-sd-highspeed; cap-sdio-irq; keep-power-in-suspend; - logic-remove-card; + mmc-pwrseq = <&sdio_pwrseq>; + non-removable; pinctrl-names = "default"; pinctrl-0 = <&sdmmc1_bus4 &sdmmc1_cmd &sdmmc1_clk>; sd-uhs-sdr104; status = "okay"; }; +&sdio_pwrseq { + reset-gpios = <&gpio2 RK_PB1 GPIO_ACTIVE_LOW>; +}; + &spdif_8ch { status = "okay"; pinctrl-names = "default"; @@ -417,8 +424,7 @@ }; &wireless_wlan { pinctrl-names = "default"; - pinctrl-0 = <&wifi_poweren &wifi_host_wake_irq>; - WIFI,poweren_gpio = <&gpio2 RK_PB1 GPIO_ACTIVE_HIGH>; + pinctrl-0 = <&wifi_host_wake_irq>; WIFI,host_wake_irq = <&gpio2 RK_PB2 GPIO_ACTIVE_HIGH>; }; diff --git a/arch/arm64/boot/dts/rockchip/rk3566-evb3-ddr3-v10.dtsi b/arch/arm64/boot/dts/rockchip/rk3566-evb3-ddr3-v10.dtsi index a37ef014dd6d..083282293620 100644 --- a/arch/arm64/boot/dts/rockchip/rk3566-evb3-ddr3-v10.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3566-evb3-ddr3-v10.dtsi @@ -173,11 +173,13 @@ }; }; - wireless-wlan { - wifi_poweren: wifi-poweren { + sdio-pwrseq { + wifi_enable_h: wifi-enable-h { rockchip,pins = <2 RK_PB1 RK_FUNC_GPIO &pcfg_pull_none>; }; + }; + wireless-wlan { wifi_host_wake_irq: wifi-host-wake-irq { rockchip,pins = <2 RK_PB2 RK_FUNC_GPIO &pcfg_pull_down>; }; @@ -223,6 +225,10 @@ status = "okay"; }; +&sdio_pwrseq { + reset-gpios = <&gpio2 RK_PB1 GPIO_ACTIVE_LOW>; +}; + &sdmmc1 { max-frequency = <150000000>; supports-sdio; @@ -231,10 +237,11 @@ cap-sd-highspeed; cap-sdio-irq; keep-power-in-suspend; + mmc-pwrseq = <&sdio_pwrseq>; + non-removable; pinctrl-names = "default"; pinctrl-0 = <&sdmmc1_bus4 &sdmmc1_cmd &sdmmc1_clk>; sd-uhs-sdr104; - logic-remove-card; status = "okay"; }; @@ -272,7 +279,6 @@ &wireless_wlan { pinctrl-names = "default"; - pinctrl-0 = <&wifi_poweren &wifi_host_wake_irq>; - WIFI,poweren_gpio = <&gpio2 RK_PB1 GPIO_ACTIVE_HIGH>; + pinctrl-0 = <&wifi_host_wake_irq>; WIFI,host_wake_irq = <&gpio2 RK_PB2 GPIO_ACTIVE_HIGH>; }; diff --git a/arch/arm64/boot/dts/rockchip/rk3568-evb.dtsi b/arch/arm64/boot/dts/rockchip/rk3568-evb.dtsi index 29161bce125c..01a8ba67eba9 100644 --- a/arch/arm64/boot/dts/rockchip/rk3568-evb.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3568-evb.dtsi @@ -295,6 +295,22 @@ }; }; + sdio_pwrseq: sdio-pwrseq { + compatible = "mmc-pwrseq-simple"; + clocks = <&rk809 1>; + clock-names = "ext_clock"; + pinctrl-names = "default"; + pinctrl-0 = <&wifi_enable_h>; + + /* + * On the module itself this is one of these (depending + * on the actual card populated): + * - SDIO_RESET_L_WL_REG_ON + * - PDN (power down when low) + */ + reset-gpios = <&gpio3 RK_PD5 GPIO_ACTIVE_LOW>; + }; + wireless_wlan: wireless-wlan { compatible = "wlan-platdata"; rockchip,grf = <&grf>; @@ -1410,6 +1426,12 @@ }; }; + sdio-pwrseq { + wifi_enable_h: wifi-enable-h { + rockchip,pins = <3 RK_PD5 RK_FUNC_GPIO &pcfg_pull_none>; + }; + }; + usb { vcc5v0_host_en: vcc5v0-host-en { rockchip,pins = <0 RK_PA6 RK_FUNC_GPIO &pcfg_pull_none>; diff --git a/arch/arm64/boot/dts/rockchip/rk3568-evb1-ddr4-v10.dtsi b/arch/arm64/boot/dts/rockchip/rk3568-evb1-ddr4-v10.dtsi index 89595a6c5590..0a864bcac8a9 100644 --- a/arch/arm64/boot/dts/rockchip/rk3568-evb1-ddr4-v10.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3568-evb1-ddr4-v10.dtsi @@ -382,10 +382,6 @@ }; wireless-wlan { - wifi_poweren: wifi-poweren { - rockchip,pins = <3 RK_PD5 RK_FUNC_GPIO &pcfg_pull_none>; - }; - wifi_host_wake_irq: wifi-host-wake-irq { rockchip,pins = <3 RK_PD4 RK_FUNC_GPIO &pcfg_pull_down>; }; @@ -436,10 +432,11 @@ cap-sd-highspeed; cap-sdio-irq; keep-power-in-suspend; + mmc-pwrseq = <&sdio_pwrseq>; + non-removable; pinctrl-names = "default"; pinctrl-0 = <&sdmmc2m0_bus4 &sdmmc2m0_cmd &sdmmc2m0_clk>; sd-uhs-sdr104; - logic-remove-card; status = "okay"; }; @@ -467,8 +464,7 @@ &wireless_wlan { pinctrl-names = "default"; - pinctrl-0 = <&wifi_poweren &wifi_host_wake_irq>; - WIFI,poweren_gpio = <&gpio3 RK_PD5 GPIO_ACTIVE_HIGH>; + pinctrl-0 = <&wifi_host_wake_irq>; WIFI,host_wake_irq = <&gpio3 RK_PD4 GPIO_ACTIVE_HIGH>; }; diff --git a/arch/arm64/boot/dts/rockchip/rk3568-evb2-lp4x-v10.dtsi b/arch/arm64/boot/dts/rockchip/rk3568-evb2-lp4x-v10.dtsi index 52a5101d9f4a..7774ccff2451 100644 --- a/arch/arm64/boot/dts/rockchip/rk3568-evb2-lp4x-v10.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3568-evb2-lp4x-v10.dtsi @@ -278,20 +278,22 @@ }; }; - wireless-wlan { - wifi_poweren: wifi-poweren { + sdio-pwrseq { + wifi_enable_h: wifi-enable-h { rockchip,pins = <2 RK_PB1 RK_FUNC_GPIO &pcfg_pull_none>; }; - wifi_host_wake_irq: wifi-host-wake-irq { - rockchip,pins = <2 RK_PB2 RK_FUNC_GPIO &pcfg_pull_down>; - }; - wifi_32k: wifi-32k { rockchip,pins = <2 RK_PC6 1 &pcfg_pull_none>; }; }; + wireless-wlan { + wifi_host_wake_irq: wifi-host-wake-irq { + rockchip,pins = <2 RK_PB2 RK_FUNC_GPIO &pcfg_pull_down>; + }; + }; + wireless-bluetooth { uart1_gpios: uart1-gpios { rockchip,pins = <2 RK_PB5 RK_FUNC_GPIO &pcfg_pull_none>; @@ -417,6 +419,19 @@ status = "okay"; }; +&sdio_pwrseq { + clocks = <&pmucru CLK_RTC_32K>; + pinctrl-0 = <&wifi_enable_h &wifi_32k>; + + /* + * On the module itself this is one of these (depending + * on the actual card populated): + * - SDIO_RESET_L_WL_REG_ON + * - PDN (power down when low) + */ + reset-gpios = <&gpio2 RK_PB1 GPIO_ACTIVE_LOW>; +}; + &sdmmc1 { max-frequency = <150000000>; supports-sdio; @@ -425,10 +440,11 @@ cap-sd-highspeed; cap-sdio-irq; keep-power-in-suspend; + mmc-pwrseq = <&sdio_pwrseq>; + non-removable; pinctrl-names = "default"; pinctrl-0 = <&sdmmc1_bus4 &sdmmc1_cmd &sdmmc1_clk>; sd-uhs-sdr104; - logic-remove-card; status = "okay"; }; @@ -454,8 +470,7 @@ &wireless_wlan { pinctrl-names = "default"; - pinctrl-0 = <&wifi_poweren &wifi_host_wake_irq &wifi_32k>; - WIFI,poweren_gpio = <&gpio2 RK_PB1 GPIO_ACTIVE_HIGH>; + pinctrl-0 = <&wifi_host_wake_irq>; WIFI,host_wake_irq = <&gpio2 RK_PB2 GPIO_ACTIVE_HIGH>; }; diff --git a/arch/arm64/boot/dts/rockchip/rk3568-evb6-ddr3-v10.dtsi b/arch/arm64/boot/dts/rockchip/rk3568-evb6-ddr3-v10.dtsi index e05b1e319b0a..46c53945eb96 100644 --- a/arch/arm64/boot/dts/rockchip/rk3568-evb6-ddr3-v10.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3568-evb6-ddr3-v10.dtsi @@ -210,12 +210,8 @@ }; }; - wireless-wlan { - wifi_host_wake_irq: wifi-host-wake-irq { - rockchip,pins = <2 RK_PB2 RK_FUNC_GPIO &pcfg_pull_down>; - }; - - wifi_poweren: wifi-poweren { + sdio-pwrseq { + wifi_enable_h: wifi-enable-h { rockchip,pins = <2 RK_PB1 RK_FUNC_GPIO &pcfg_pull_none>; }; @@ -224,6 +220,12 @@ }; }; + wireless-wlan { + wifi_host_wake_irq: wifi-host-wake-irq { + rockchip,pins = <2 RK_PB2 RK_FUNC_GPIO &pcfg_pull_down>; + }; + }; + wireless-bluetooth { uart1_gpios: uart1-gpios { rockchip,pins = <2 RK_PB5 RK_FUNC_GPIO &pcfg_pull_none>; @@ -243,10 +245,11 @@ cap-sd-highspeed; cap-sdio-irq; keep-power-in-suspend; + mmc-pwrseq = <&sdio_pwrseq>; + non-removable; pinctrl-names = "default"; pinctrl-0 = <&sdmmc1_bus4 &sdmmc1_cmd &sdmmc1_clk>; sd-uhs-sdr104; - logic-remove-card; status = "okay"; }; @@ -254,6 +257,19 @@ status = "disabled"; }; +&sdio_pwrseq { + clocks = <&pmucru CLK_RTC_32K>; + pinctrl-0 = <&wifi_enable_h &wifi_32k>; + + /* + * On the module itself this is one of these (depending + * on the actual card populated): + * - SDIO_RESET_L_WL_REG_ON + * - PDN (power down when low) + */ + reset-gpios = <&gpio2 RK_PB1 GPIO_ACTIVE_LOW>; +}; + &spdif_8ch { status = "disabled"; }; @@ -283,8 +299,7 @@ &wireless_wlan { pinctrl-names = "default"; - pinctrl-0 = <&wifi_32k &wifi_poweren &wifi_host_wake_irq>; - WIFI,poweren_gpio = <&gpio2 RK_PB1 GPIO_ACTIVE_HIGH>; + pinctrl-0 = <&wifi_host_wake_irq>; WIFI,host_wake_irq = <&gpio2 RK_PB2 GPIO_ACTIVE_HIGH>; };