Re: [PATCH 3/3] arm64: dts: rockchip: fix RockPro64 sdmmc settings

From: Soeren Moch
Date: Thu Oct 03 2019 - 20:55:13 EST




On 04.10.19 02:01, Robin Murphy wrote:
> On 2019-10-03 10:50 pm, Soeren Moch wrote:
>> According to the RockPro64 schematic [1] the rk3399 sdmmc controller is
>> connected to a microSD (TF card) slot, which cannot be switched to 1.8V.
>
> Really? AFAICS the SDMMC0 wiring looks pretty much identical to the
> NanoPC-T4 schematic (it's the same reference design, after all), and I
> know that board can happily drive a UHS-I microSD card with 1.8v I/Os,
> because mine's doing so right now.
>
> Robin.
OK, the RockPro64 does not allow a card reset (power cycle) since
VCC3V0_SD is directly connected to VCC3V3_SYS (via R89555), the
SDMMC0_PWH_H signal is not connected. So the card fails to identify
itself after suspend or reboot when switched to 1.8V operation.

Regards,
Soeren
>
>> So also configure the vcc_sdio regulator, which drives the i/o voltage
>> of the sdmmc controller, accordingly.
>>
>> While at it, also remove the cap-mmc-highspeed property of the sdmmc
>> controller, since no mmc card can be connected here.
>>
>> [1] http://files.pine64.org/doc/rockpro64/rockpro64_v21-SCH.pdf
>>
>> Fixes: e4f3fb490967 ("arm64: dts: rockchip: add initial dts support
>> for Rockpro64")
>> Signed-off-by: Soeren Moch <smoch@xxxxxx>
>> ---
>> Cc: Heiko Stuebner <heiko@xxxxxxxxx>
>> Cc: linux-rockchip@xxxxxxxxxxxxxxxxxxx
>> Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx
>> Cc: linux-kernel@xxxxxxxxxxxxxxx
>> ---
>> Â arch/arm64/boot/dts/rockchip/rk3399-rockpro64.dts | 3 +--
>> Â 1 file changed, 1 insertion(+), 2 deletions(-)
>>
>> diff --git a/arch/arm64/boot/dts/rockchip/rk3399-rockpro64.dts
>> b/arch/arm64/boot/dts/rockchip/rk3399-rockpro64.dts
>> index 2e44dae4865a..084f1d994a50 100644
>> --- a/arch/arm64/boot/dts/rockchip/rk3399-rockpro64.dts
>> +++ b/arch/arm64/boot/dts/rockchip/rk3399-rockpro64.dts
>> @@ -353,7 +353,7 @@
>> ÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ regulator-name = "vcc_sdio";
>> ÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ regulator-always-on;
>> ÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ regulator-boot-on;
>> -ÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ regulator-min-microvolt = <1800000>;
>> +ÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ regulator-min-microvolt = <3000000>;
>> ÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ regulator-max-microvolt = <3000000>;
>> ÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ regulator-state-mem {
>> ÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ regulator-on-in-suspend;
>> @@ -624,7 +624,6 @@
>>
>> Â &sdmmc {
>> ÂÂÂÂÂ bus-width = <4>;
>> -ÂÂÂ cap-mmc-highspeed;
>> ÂÂÂÂÂ cap-sd-highspeed;
>> ÂÂÂÂÂ cd-gpios = <&gpio0 7 GPIO_ACTIVE_LOW>;
>> ÂÂÂÂÂ disable-wp;
>> --
>> 2.17.1
>>
>>
>> _______________________________________________
>> Linux-rockchip mailing list
>> Linux-rockchip@xxxxxxxxxxxxxxxxxxx
>> http://lists.infradead.org/mailman/listinfo/linux-rockchip
>>