[PATCH v2 2/4] arm64: dts: marvell: cn9132-clearfog: disable eMMC high-speed modes

Josua Mayer posted 4 patches 3 weeks ago
[PATCH v2 2/4] arm64: dts: marvell: cn9132-clearfog: disable eMMC high-speed modes
Posted by Josua Mayer 3 weeks ago
Similar to MacchiatoBIN the high-speed modes are unstable on the CN9132
CEX-7 module, leading to failed transactions under normal use.

Disable all high-speed modes including UHS.

Additionally add no-sdio and non-removable properties as appropriate for
eMMC.

Fixes: e9ff907f4076 ("arm64: dts: add description for solidrun cn9132 cex7 module and clearfog board")
Cc: <stable@vger.kernel.org>
Signed-off-by: Josua Mayer <josua@solid-run.com>
---
 arch/arm64/boot/dts/marvell/cn9132-sr-cex7.dtsi | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/arch/arm64/boot/dts/marvell/cn9132-sr-cex7.dtsi b/arch/arm64/boot/dts/marvell/cn9132-sr-cex7.dtsi
index afc041c1c448c3e49e1c35d817e91e75db6cfad6..bb2bb47fd77c12f1461b5b9f6ef5567a32cc0153 100644
--- a/arch/arm64/boot/dts/marvell/cn9132-sr-cex7.dtsi
+++ b/arch/arm64/boot/dts/marvell/cn9132-sr-cex7.dtsi
@@ -137,6 +137,14 @@ &ap_sdhci0 {
 	pinctrl-0 = <&ap_mmc0_pins>;
 	pinctrl-names = "default";
 	vqmmc-supply = <&v_1_8>;
+	/*
+	 * Not stable in HS modes - phy needs "more calibration", so disable
+	 * UHS (by preventing voltage switch), SDR104, SDR50 and DDR50 modes.
+	 */
+	no-1-8-v;
+	no-sd;
+	no-sdio;
+	non-removable;
 	status = "okay";
 };
 

-- 
2.51.0
Re: [PATCH v2 2/4] arm64: dts: marvell: cn9132-clearfog: disable eMMC high-speed modes
Posted by Gregory CLEMENT 2 weeks, 6 days ago
Josua Mayer <josua@solid-run.com> writes:

> Similar to MacchiatoBIN the high-speed modes are unstable on the CN9132
> CEX-7 module, leading to failed transactions under normal use.
>
> Disable all high-speed modes including UHS.
>
> Additionally add no-sdio and non-removable properties as appropriate for
> eMMC.
>
> Fixes: e9ff907f4076 ("arm64: dts: add description for solidrun cn9132 cex7 module and clearfog board")
> Cc: <stable@vger.kernel.org>
> Signed-off-by: Josua Mayer <josua@solid-run.com>

Applied on mvebu/fixes

Thanks,

Gregory

> ---
>  arch/arm64/boot/dts/marvell/cn9132-sr-cex7.dtsi | 8 ++++++++
>  1 file changed, 8 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/marvell/cn9132-sr-cex7.dtsi b/arch/arm64/boot/dts/marvell/cn9132-sr-cex7.dtsi
> index afc041c1c448c3e49e1c35d817e91e75db6cfad6..bb2bb47fd77c12f1461b5b9f6ef5567a32cc0153 100644
> --- a/arch/arm64/boot/dts/marvell/cn9132-sr-cex7.dtsi
> +++ b/arch/arm64/boot/dts/marvell/cn9132-sr-cex7.dtsi
> @@ -137,6 +137,14 @@ &ap_sdhci0 {
>  	pinctrl-0 = <&ap_mmc0_pins>;
>  	pinctrl-names = "default";
>  	vqmmc-supply = <&v_1_8>;
> +	/*
> +	 * Not stable in HS modes - phy needs "more calibration", so disable
> +	 * UHS (by preventing voltage switch), SDR104, SDR50 and DDR50 modes.
> +	 */
> +	no-1-8-v;
> +	no-sd;
> +	no-sdio;
> +	non-removable;
>  	status = "okay";
>  };
>  
>
> -- 
> 2.51.0
>
>

-- 
Grégory CLEMENT, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com