From: Luke Wang <[email protected]> After enabling vmmc supply, add 10ms delay to allow voltage to stabilize before SD initialization starts. Without this delay, some SD cards fail to initialize because the initial clock cycles are sent while power is still ramping up.
Signed-off-by: Luke Wang <[email protected]> --- drivers/mmc/mmc.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/drivers/mmc/mmc.c b/drivers/mmc/mmc.c index bf82c515600..97037722fe1 100644 --- a/drivers/mmc/mmc.c +++ b/drivers/mmc/mmc.c @@ -2878,6 +2878,12 @@ static int mmc_power_on(struct mmc *mmc) printf("Error enabling VMMC supply : %d\n", ret); return ret; } + + /* + * Wait for power supply to stabilize before sending + * initial clock cycle. + */ + mdelay(10); } if (mmc->vqmmc_supply) { -- 2.34.1

