[PATCH 3/3] arm64: dts: rockchip: remove always-on and boot-on from vcc_sd

Shawn Lin shawn.lin at rock-chips.com
Sun Oct 9 06:42:07 PDT 2016


Hi Heiko,

Ping... :)

在 2016/9/22 12:02, Shawn Lin 写道:
> Please don't add these for vcc_sd, and mmc-core/driver will control
> it. Otherwise, it will waste energy even without sdmmc in slot.
>
> Moreover, it will causes a bug:
> If we insert/remove sd card, we could see
> [9.337271] mmc0: new ultra high speed SDR25 SDHC card at address 0007
> [9.345144] mmcblk0: mmc0:0007 SD32G 29.3 GiB
>
> This is okay for normal sd insert/remove test, but when I debug some
> issues for sdmmc, I did unbind/bind test. And there is a interesting
> phenomenon when we bind the driver again:
> [58.314069] mmc0: new high speed SDHC card at address 0007
> [58.320282] mmcblk0: mmc0:0007 SD32G 29.3 GiB
>
> So the sd card could just support high speed without power cycle
> since the vcc_sd is always on, which makes the sd card fail to
> reinit its internal ocr mask.
>
> Signed-off-by: Shawn Lin <shawn.lin at rock-chips.com>
> ---
>
>  arch/arm64/boot/dts/rockchip/rk3368-geekbox.dts        | 2 --
>  arch/arm64/boot/dts/rockchip/rk3368-orion-r68-meta.dts | 2 --
>  arch/arm64/boot/dts/rockchip/rk3368-px5-evb.dts        | 2 --
>  3 files changed, 6 deletions(-)
>
> diff --git a/arch/arm64/boot/dts/rockchip/rk3368-geekbox.dts b/arch/arm64/boot/dts/rockchip/rk3368-geekbox.dts
> index 46cdddf..353314c 100644
> --- a/arch/arm64/boot/dts/rockchip/rk3368-geekbox.dts
> +++ b/arch/arm64/boot/dts/rockchip/rk3368-geekbox.dts
> @@ -258,8 +258,6 @@
>  			};
>
>  			vcc_sd: SWITCH_REG1 {
> -				regulator-always-on;
> -				regulator-boot-on;
>  				regulator-name = "vcc_sd";
>  			};
>
> diff --git a/arch/arm64/boot/dts/rockchip/rk3368-orion-r68-meta.dts b/arch/arm64/boot/dts/rockchip/rk3368-orion-r68-meta.dts
> index 5797933..13b7f1ed 100644
> --- a/arch/arm64/boot/dts/rockchip/rk3368-orion-r68-meta.dts
> +++ b/arch/arm64/boot/dts/rockchip/rk3368-orion-r68-meta.dts
> @@ -152,8 +152,6 @@
>  		gpio = <&gpio3 11 GPIO_ACTIVE_LOW>;
>  		regulator-min-microvolt = <1800000>;
>  		regulator-max-microvolt = <3300000>;
> -		regulator-always-on;
> -		regulator-boot-on;
>  		vin-supply = <&vcc_io>;
>  	};
>
> diff --git a/arch/arm64/boot/dts/rockchip/rk3368-px5-evb.dts b/arch/arm64/boot/dts/rockchip/rk3368-px5-evb.dts
> index f59049b..8c47b01 100644
> --- a/arch/arm64/boot/dts/rockchip/rk3368-px5-evb.dts
> +++ b/arch/arm64/boot/dts/rockchip/rk3368-px5-evb.dts
> @@ -236,8 +236,6 @@
>  			};
>
>  			vcc_sd: SWITCH_REG1 {
> -				regulator-always-on;
> -				regulator-boot-on;
>  				regulator-name = "vcc_sd";
>  			};
>
>


-- 
Best Regards
Shawn Lin




More information about the Linux-rockchip mailing list