2020-04-05 11:25:41

by Justin Swartz

[permalink] [raw]
Subject: [PATCH] ARM: dts: enable WLAN for Mecer Xtreme Mini S6

The Mecer Xtreme Mini S6 features a wireless module, based on a
Realtek 8723BS, which provides WLAN and Bluetooth connectivity via
SDIO and UART interfaces respectively.

Define a simple MMC power sequence that declares the GPIO pins
connected to the module's WLAN Disable and Bluetooth Disable pins
as active low reset signals, because both signals must be deasserted
for WLAN radio operation.

Configure the host's SDIO interface for High Speed mode with 1.8v
I/O signalling and IRQ detection over a 4-bit wide bus.

Signed-off-by: Justin Swartz <[email protected]>
---
arch/arm/boot/dts/rk3229-xms6.dts | 18 ++++++++++++++++++
1 file changed, 18 insertions(+)

diff --git a/arch/arm/boot/dts/rk3229-xms6.dts b/arch/arm/boot/dts/rk3229-xms6.dts
index 679fc2b00..cdfcef41b 100644
--- a/arch/arm/boot/dts/rk3229-xms6.dts
+++ b/arch/arm/boot/dts/rk3229-xms6.dts
@@ -39,6 +39,12 @@
};
};

+ sdio_pwrseq: sdio-pwrseq {
+ compatible = "mmc-pwrseq-simple";
+ reset-gpios = <&gpio2 26 GPIO_ACTIVE_LOW>,
+ <&gpio2 29 GPIO_ACTIVE_LOW>;
+ };
+
vcc_host: vcc-host-regulator {
compatible = "regulator-fixed";
enable-active-high;
@@ -202,6 +208,18 @@
status = "okay";
};

+&sdio {
+ bus-width = <4>;
+ cap-sd-highspeed;
+ cap-sdio-irq;
+ disable-wp;
+ mmc-pwrseq = <&sdio_pwrseq>;
+ non-removable;
+ num-slots = <1>;
+ vqmmc-supply = <&vccio_1v8>;
+ status = "okay";
+};
+
&sdmmc {
cap-mmc-highspeed;
disable-wp;
--
2.11.0


2020-04-06 09:57:41

by Johan Jonker

[permalink] [raw]
Subject: Re: [PATCH] ARM: dts: enable WLAN for Mecer Xtreme Mini S6

Hi Justin,

Have a look at the documents:

Documentation/devicetree/bindings/mmc/rockchip-dw-mshc.yaml
Documentation/devicetree/bindings/mmc/synopsys-dw-mshc-common.yaml
Documentation/devicetree/bindings/mmc/mmc-controller.yaml

Fix &emmc as well.

> From: Justin Swartz <[email protected]>
> To: Heiko Stuebner <[email protected]>,
> Rob Herring <[email protected]>,
> Mark Rutland <[email protected]>
> Cc: Justin Swartz <[email protected]>,
> [email protected],
> [email protected], [email protected],
> [email protected]
> Subject: [PATCH] ARM: dts: enable WLAN for Mecer Xtreme Mini S6
> Date: Sun, 5 Apr 2020 11:00:21 +0000
> Message-ID: <[email protected]> (raw)
>
> The Mecer Xtreme Mini S6 features a wireless module, based on a
> Realtek 8723BS, which provides WLAN and Bluetooth connectivity via
> SDIO and UART interfaces respectively.
>
> Define a simple MMC power sequence that declares the GPIO pins
> connected to the module's WLAN Disable and Bluetooth Disable pins
> as active low reset signals, because both signals must be deasserted
> for WLAN radio operation.
>
> Configure the host's SDIO interface for High Speed mode with 1.8v
> I/O signalling and IRQ detection over a 4-bit wide bus.
>
> Signed-off-by: Justin Swartz <[email protected]>
> ---
> arch/arm/boot/dts/rk3229-xms6.dts | 18 ++++++++++++++++++
> 1 file changed, 18 insertions(+)
>
> diff --git a/arch/arm/boot/dts/rk3229-xms6.dts b/arch/arm/boot/dts/rk3229-xms6.dts
> index 679fc2b00..cdfcef41b 100644
> --- a/arch/arm/boot/dts/rk3229-xms6.dts
> +++ b/arch/arm/boot/dts/rk3229-xms6.dts
> @@ -39,6 +39,12 @@
> };
> };
>
> + sdio_pwrseq: sdio-pwrseq {
> + compatible = "mmc-pwrseq-simple";
> + reset-gpios = <&gpio2 26 GPIO_ACTIVE_LOW>,
> + <&gpio2 29 GPIO_ACTIVE_LOW>;
> + };
> +
> vcc_host: vcc-host-regulator {
> compatible = "regulator-fixed";
> enable-active-high;
> @@ -202,6 +208,18 @@
> status = "okay";
> };
>
> +&sdio {
> + bus-width = <4>;
> + cap-sd-highspeed;
> + cap-sdio-irq;

> + disable-wp;

Not used in combination with sdio and emmc.

> + mmc-pwrseq = <&sdio_pwrseq>;
> + non-removable;

> + num-slots = <1>;

Deprecated.

> + vqmmc-supply = <&vccio_1v8>;
> + status = "okay";
> +};
> +
> &sdmmc {
> cap-mmc-highspeed;
> disable-wp;
> --
> 2.11.0

2020-04-06 13:54:57

by Justin Swartz

[permalink] [raw]
Subject: [PATCH v2] ARM: dts: enable WLAN for Mecer Xtreme Mini S6

The Mecer Xtreme Mini S6 features a wireless module, based on a
Realtek 8723BS, which provides WLAN and Bluetooth connectivity via
SDIO and UART interfaces respectively.

Define a simple MMC power sequence that declares the GPIO pins
connected to the module's WLAN Disable and Bluetooth Disable pins
as active low reset signals, because both signals must be deasserted
for WLAN radio operation.

Configure the host's SDIO interface for High Speed mode with 1.8v
I/O signalling and IRQ detection over a 4-bit wide bus.

Signed-off-by: Justin Swartz <[email protected]>
---
Changes in v2:
- Remove unused disable-wp and deprecated num-slots attributes
from &sdio, as suggested by Johan Jonker.

arch/arm/boot/dts/rk3229-xms6.dts | 16 ++++++++++++++++
1 file changed, 16 insertions(+)

diff --git a/arch/arm/boot/dts/rk3229-xms6.dts b/arch/arm/boot/dts/rk3229-xms6.dts
index 679fc2b00..6890af0b7 100644
--- a/arch/arm/boot/dts/rk3229-xms6.dts
+++ b/arch/arm/boot/dts/rk3229-xms6.dts
@@ -39,6 +39,12 @@
};
};

+ sdio_pwrseq: sdio-pwrseq {
+ compatible = "mmc-pwrseq-simple";
+ reset-gpios = <&gpio2 26 GPIO_ACTIVE_LOW>,
+ <&gpio2 29 GPIO_ACTIVE_LOW>;
+ };
+
vcc_host: vcc-host-regulator {
compatible = "regulator-fixed";
enable-active-high;
@@ -202,6 +208,16 @@
status = "okay";
};

+&sdio {
+ bus-width = <4>;
+ cap-sd-highspeed;
+ cap-sdio-irq;
+ mmc-pwrseq = <&sdio_pwrseq>;
+ non-removable;
+ vqmmc-supply = <&vccio_1v8>;
+ status = "okay";
+};
+
&sdmmc {
cap-mmc-highspeed;
disable-wp;
--
2.11.0

2020-04-06 15:08:41

by Justin Swartz

[permalink] [raw]
Subject: [PATCH] ARM: dts: remove disable-wp from rk3229-xms6 emmc

Remove the disable-wp attribute from &emmc as it is, according to
Documentation/devicetree/bindings/mmc/mmc-controller.yaml:

"Not used in combination with eMMC or SDIO."

Suggested-by: Johan Jonker <[email protected]>
Signed-off-by: Justin Swartz <[email protected]>
---
arch/arm/boot/dts/rk3229-xms6.dts | 1 -
1 file changed, 1 deletion(-)

diff --git a/arch/arm/boot/dts/rk3229-xms6.dts b/arch/arm/boot/dts/rk3229-xms6.dts
index 6890af0b7..e75624d46 100644
--- a/arch/arm/boot/dts/rk3229-xms6.dts
+++ b/arch/arm/boot/dts/rk3229-xms6.dts
@@ -137,7 +137,6 @@

&emmc {
cap-mmc-highspeed;
- disable-wp;
non-removable;
status = "okay";
};
--
2.11.0

2020-05-18 22:46:21

by Heiko Stuebner

[permalink] [raw]
Subject: Re: [PATCH v2] ARM: dts: enable WLAN for Mecer Xtreme Mini S6

On Mon, 6 Apr 2020 13:50:04 +0000, Justin Swartz wrote:
> The Mecer Xtreme Mini S6 features a wireless module, based on a
> Realtek 8723BS, which provides WLAN and Bluetooth connectivity via
> SDIO and UART interfaces respectively.
>
> Define a simple MMC power sequence that declares the GPIO pins
> connected to the module's WLAN Disable and Bluetooth Disable pins
> as active low reset signals, because both signals must be deasserted
> for WLAN radio operation.
>
> [...]

Applied, thanks!

[1/1] ARM: dts: enable WLAN for Mecer Xtreme Mini S6
commit: 6067ec2c7ffacab4689ddfed3df74a467d112efe

Best regards,
--
Heiko Stuebner <[email protected]>

2020-05-18 22:46:33

by Heiko Stuebner

[permalink] [raw]
Subject: Re: [PATCH] ARM: dts: remove disable-wp from rk3229-xms6 emmc

Am Montag, 6. April 2020, 15:50:05 CEST schrieb Justin Swartz:
> Remove the disable-wp attribute from &emmc as it is, according to
> Documentation/devicetree/bindings/mmc/mmc-controller.yaml:
>
> "Not used in combination with eMMC or SDIO."
>
> Suggested-by: Johan Jonker <[email protected]>
> Signed-off-by: Justin Swartz <[email protected]>

applied for 5.8