On 2019/10/4 8:53, Soeren Moch wrote:


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.


I believe we addressed this issue long time ago, please check:

https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=6a11fc47f175c8d87018e89cb58e2d36c66534cb

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 <sm...@web.de>
---
Cc: Heiko Stuebner <he...@sntech.de>
Cc: linux-rockc...@lists.infradead.org
Cc: linux-arm-ker...@lists.infradead.org
Cc: linux-kernel@vger.kernel.org
---
   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-rockc...@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-rockchip


_______________________________________________
Linux-rockchip mailing list
linux-rockc...@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-rockchip



--
Best Regards
Shawn Lin


Reply via email to