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 2f25d2f03a71..c051c2a11172 100644 --- a/arch/arm64/boot/dts/rockchip/rk3566-evb1-ddr4-v10.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3566-evb1-ddr4-v10.dtsi @@ -182,6 +182,21 @@ status = "disabled"; }; +&sdmmc2 { + max-frequency = <150000000>; + supports-sdio; + bus-width = <4>; + disable-wp; + cap-sd-highspeed; + cap-sdio-irq; + keep-power-in-suspend; + pinctrl-names = "default"; + pinctrl-0 = <&sdmmc2m0_bus4 &sdmmc2m0_cmd &sdmmc2m0_clk>; + sd-uhs-sdr104; + logic-remove-card; + status = "okay"; +}; + &uart1 { status = "okay"; pinctrl-names = "default"; @@ -211,7 +226,9 @@ &wireless_wlan { pinctrl-names = "default"; - pinctrl-0 = <&wifi_host_wake_irq>; + pinctrl-0 = <&wifi_poweren &wifi_host_wake_irq>; + WIFI,poweren_gpio = <&gpio3 RK_PD5 GPIO_ACTIVE_HIGH>; + WIFI,host_wake_irq = <&gpio3 RK_PD4 GPIO_ACTIVE_HIGH>; }; &pinctrl { @@ -234,6 +251,10 @@ }; 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 a7ee8f552f33..72288ff7d661 100644 --- a/arch/arm64/boot/dts/rockchip/rk3566-evb2-lp4x-v10.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3566-evb2-lp4x-v10.dtsi @@ -269,13 +269,11 @@ }; }; - sdio-pwrseq { - wifi_enable_h: wifi-enable-h { + wireless-wlan { + wifi_poweren: wifi-poweren { 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>; }; @@ -356,30 +354,13 @@ cap-sd-highspeed; cap-sdio-irq; keep-power-in-suspend; - mmc-pwrseq = <&sdio_pwrseq>; - non-removable; + logic-remove-card; pinctrl-names = "default"; pinctrl-0 = <&sdmmc1_bus4 &sdmmc1_cmd &sdmmc1_clk>; sd-uhs-sdr104; status = "okay"; }; -&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 = <&gpio2 RK_PB1 GPIO_ACTIVE_LOW>; -}; - &spdif_8ch { status = "okay"; pinctrl-names = "default"; @@ -402,13 +383,10 @@ enable-active-high; }; &wireless_wlan { - compatible = "wlan-platdata"; - rockchip,grf = <&grf>; pinctrl-names = "default"; - pinctrl-0 = <&wifi_host_wake_irq>; - wifi_chip_type = "ap6398s"; + pinctrl-0 = <&wifi_poweren &wifi_host_wake_irq>; + WIFI,poweren_gpio = <&gpio2 RK_PB1 GPIO_ACTIVE_HIGH>; WIFI,host_wake_irq = <&gpio2 RK_PB2 GPIO_ACTIVE_HIGH>; - status = "okay"; }; &wireless_bluetooth { 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 a669f8590103..1781f57fd1ad 100644 --- a/arch/arm64/boot/dts/rockchip/rk3566-evb3-ddr3-v10.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3566-evb3-ddr3-v10.dtsi @@ -174,6 +174,10 @@ }; wireless-wlan { + wifi_poweren: wifi-poweren { + 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>; }; @@ -215,22 +219,6 @@ }; }; -&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 = <&gpio2 RK_PB1 GPIO_ACTIVE_LOW>; -}; - &sdmmc1 { max-frequency = <150000000>; supports-sdio; @@ -239,11 +227,10 @@ 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"; }; @@ -280,11 +267,8 @@ }; &wireless_wlan { - compatible = "wlan-platdata"; - rockchip,grf = <&grf>; pinctrl-names = "default"; - pinctrl-0 = <&wifi_host_wake_irq>; - wifi_chip_type = "ap6398s"; + pinctrl-0 = <&wifi_poweren &wifi_host_wake_irq>; + WIFI,poweren_gpio = <&gpio2 RK_PB1 GPIO_ACTIVE_HIGH>; WIFI,host_wake_irq = <&gpio2 RK_PB2 GPIO_ACTIVE_HIGH>; - status = "okay"; }; diff --git a/arch/arm64/boot/dts/rockchip/rk3568-evb.dtsi b/arch/arm64/boot/dts/rockchip/rk3568-evb.dtsi index 7d727f8c9d1c..01a8ba67eba9 100644 --- a/arch/arm64/boot/dts/rockchip/rk3568-evb.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3568-evb.dtsi @@ -315,7 +315,6 @@ compatible = "wlan-platdata"; rockchip,grf = <&grf>; wifi_chip_type = "ap6398s"; - WIFI,host_wake_irq = <&gpio3 RK_PD4 GPIO_ACTIVE_HIGH>; status = "okay"; }; @@ -1635,22 +1634,6 @@ status = "okay"; }; -&sdmmc2 { - max-frequency = <150000000>; - supports-sdio; - bus-width = <4>; - disable-wp; - 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; - status = "okay"; -}; - &sfc { status = "okay"; }; 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 1e9c81fc0832..a008553107d8 100644 --- a/arch/arm64/boot/dts/rockchip/rk3568-evb1-ddr4-v10.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3568-evb1-ddr4-v10.dtsi @@ -381,13 +381,11 @@ }; }; - sdio-pwrseq { - wifi_enable_h: wifi-enable-h { + wireless-wlan { + wifi_poweren: wifi-poweren { rockchip,pins = <3 RK_PD5 RK_FUNC_GPIO &pcfg_pull_none>; }; - }; - wireless-wlan { wifi_host_wake_irq: wifi-host-wake-irq { rockchip,pins = <3 RK_PD4 RK_FUNC_GPIO &pcfg_pull_down>; }; @@ -426,22 +424,6 @@ status = "okay"; }; -&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>; -}; - &sdmmc2 { max-frequency = <150000000>; supports-sdio; @@ -450,11 +432,10 @@ 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"; }; @@ -481,13 +462,10 @@ }; &wireless_wlan { - compatible = "wlan-platdata"; - rockchip,grf = <&grf>; pinctrl-names = "default"; - pinctrl-0 = <&wifi_host_wake_irq>; - wifi_chip_type = "ap6398s"; + pinctrl-0 = <&wifi_poweren &wifi_host_wake_irq>; + WIFI,poweren_gpio = <&gpio3 RK_PD5 GPIO_ACTIVE_HIGH>; WIFI,host_wake_irq = <&gpio3 RK_PD4 GPIO_ACTIVE_HIGH>; - status = "okay"; }; &wireless_bluetooth { 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 98f820a344a0..44b40fb717a5 100644 --- a/arch/arm64/boot/dts/rockchip/rk3568-evb2-lp4x-v10.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3568-evb2-lp4x-v10.dtsi @@ -261,22 +261,20 @@ }; }; - sdio-pwrseq { - wifi_enable_h: wifi-enable-h { + wireless-wlan { + wifi_poweren: wifi-poweren { 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>; @@ -398,22 +396,6 @@ status = "disabled"; }; -&sdio_pwrseq { - compatible = "mmc-pwrseq-simple"; - clocks = <&pmucru CLK_RTC_32K>; - clock-names = "ext_clock"; - pinctrl-names = "default"; - 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; @@ -422,11 +404,10 @@ 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"; }; @@ -451,13 +432,10 @@ }; &wireless_wlan { - compatible = "wlan-platdata"; - rockchip,grf = <&grf>; pinctrl-names = "default"; - pinctrl-0 = <&wifi_host_wake_irq>; - wifi_chip_type = "ap6398s"; + pinctrl-0 = <&wifi_poweren &wifi_host_wake_irq &wifi_32k>; + WIFI,poweren_gpio = <&gpio2 RK_PB1 GPIO_ACTIVE_HIGH>; WIFI,host_wake_irq = <&gpio2 RK_PB2 GPIO_ACTIVE_HIGH>; - status = "okay"; }; &wireless_bluetooth { 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 bf5e2bd19f41..89854888b7f5 100644 --- a/arch/arm64/boot/dts/rockchip/rk3568-evb6-ddr3-v10.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3568-evb6-ddr3-v10.dtsi @@ -189,8 +189,12 @@ }; }; - sdio-pwrseq { - wifi_enable_h: wifi-enable-h { + 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 { rockchip,pins = <2 RK_PB1 RK_FUNC_GPIO &pcfg_pull_none>; }; @@ -214,11 +218,10 @@ 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"; }; @@ -226,22 +229,6 @@ status = "disabled"; }; -&sdio_pwrseq { - compatible = "mmc-pwrseq-simple"; - clocks = <&pmucru CLK_RTC_32K>; - clock-names = "ext_clock"; - pinctrl-names = "default"; - 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"; }; @@ -269,11 +256,10 @@ }; &wireless_wlan { - compatible = "wlan-platdata"; - rockchip,grf = <&grf>; - wifi_chip_type = "ap6398s"; + pinctrl-names = "default"; + pinctrl-0 = <&wifi_32k &wifi_poweren &wifi_host_wake_irq>; + WIFI,poweren_gpio = <&gpio2 RK_PB1 GPIO_ACTIVE_HIGH>; WIFI,host_wake_irq = <&gpio2 RK_PB2 GPIO_ACTIVE_HIGH>; - status = "okay"; }; &wireless_bluetooth {