ARM: tegra: beaver: Allow SD card voltage to be changed
diff mbox

Message ID 20160630153208.22761-1-thierry.reding@gmail.com
State Deferred
Headers show

Commit Message

Thierry Reding June 30, 2016, 3:32 p.m. UTC
From: Lucas Stach <dev@lynxeye.de>

This allows to switch the card signal voltage level to 1.8 V, which is
needed for any ultra high speed modes to work.

Signed-off-by: Lucas Stach <dev@lynxeye.de>
Acked-by: Jon Hunter <jonathanh@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
---
Hi ARM-SoC maintainers,

Can you please apply this for v4.7? It fixes a regression with UHS modes
that I had hoped could be fixed in the MMC core, but it turns out that a
fairly invasive change will be required and it's not going to make v4.7.

I should note that this is not a workaround. It is the proper fix to
enable UHS modes, but it exposes a weakness in the SDHCI driver which
will happily switch to UHS modes whether or not the power supply can be
configured to output the required voltage. Ideally the SDHCI driver will
be taught to reject UHS modes if the available supply voltages aren't
suitable. There is work underway to do that, but it won't make v4.7.

Thanks,
Thierry

 arch/arm/boot/dts/tegra30-beaver.dts | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

Comments

Olof Johansson July 7, 2016, 5:22 a.m. UTC | #1
On Thu, Jun 30, 2016 at 05:32:08PM +0200, Thierry Reding wrote:
> From: Lucas Stach <dev@lynxeye.de>
> 
> This allows to switch the card signal voltage level to 1.8 V, which is
> needed for any ultra high speed modes to work.
> 
> Signed-off-by: Lucas Stach <dev@lynxeye.de>
> Acked-by: Jon Hunter <jonathanh@nvidia.com>
> Signed-off-by: Thierry Reding <treding@nvidia.com>
> ---
> Hi ARM-SoC maintainers,
> 
> Can you please apply this for v4.7? It fixes a regression with UHS modes
> that I had hoped could be fixed in the MMC core, but it turns out that a
> fairly invasive change will be required and it's not going to make v4.7.
> 
> I should note that this is not a workaround. It is the proper fix to
> enable UHS modes, but it exposes a weakness in the SDHCI driver which
> will happily switch to UHS modes whether or not the power supply can be
> configured to output the required voltage. Ideally the SDHCI driver will
> be taught to reject UHS modes if the available supply voltages aren't
> suitable. There is work underway to do that, but it won't make v4.7.

Applied to fixes.


-Olof

--
To unsubscribe from this list: send the line "unsubscribe linux-tegra" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Patch
diff mbox

diff --git a/arch/arm/boot/dts/tegra30-beaver.dts b/arch/arm/boot/dts/tegra30-beaver.dts
index 1eca3b28ac64..b6da15d823a6 100644
--- a/arch/arm/boot/dts/tegra30-beaver.dts
+++ b/arch/arm/boot/dts/tegra30-beaver.dts
@@ -1843,7 +1843,7 @@ 
 
 				ldo5_reg: ldo5 {
 					regulator-name = "vddio_sdmmc,avdd_vdac";
-					regulator-min-microvolt = <3300000>;
+					regulator-min-microvolt = <1800000>;
 					regulator-max-microvolt = <3300000>;
 					regulator-always-on;
 				};
@@ -1914,6 +1914,7 @@ 
 
 	sdhci@78000000 {
 		status = "okay";
+		vqmmc-supply = <&ldo5_reg>;
 		cd-gpios = <&gpio TEGRA_GPIO(I, 5) GPIO_ACTIVE_LOW>;
 		wp-gpios = <&gpio TEGRA_GPIO(T, 3) GPIO_ACTIVE_HIGH>;
 		power-gpios = <&gpio TEGRA_GPIO(D, 7) GPIO_ACTIVE_HIGH>;