diff --git a/drivers/mmc/rockchip_dw_mmc.c b/drivers/mmc/rockchip_dw_mmc.c index ef57f0edfe..7965f54afe 100644 --- a/drivers/mmc/rockchip_dw_mmc.c +++ b/drivers/mmc/rockchip_dw_mmc.c @@ -284,6 +284,7 @@ static int rockchip_dwmmc_probe(struct udevice *dev) plat->cfg.host_caps |= MMC_MODE_HS200; plat->mmc.default_phase = dev_read_u32_default(dev, "default-sample-phase", 0); + plat->mmc.init_retry = 0; host->mmc = &plat->mmc; host->mmc->priv = &priv->host; host->mmc->dev = dev; diff --git a/include/mmc.h b/include/mmc.h index 94922945b6..e3e1bbaeaf 100644 --- a/include/mmc.h +++ b/include/mmc.h @@ -567,6 +567,7 @@ struct mmc { uint erase_grp_size; /* in 512-byte sectors */ uint hc_wp_grp_size; /* in 512-byte sectors */ int default_phase; /* set the default sample clock phase */ + uint init_retry; /* re-init mmc when error occur */ struct sd_ssr ssr; /* SD status register */ struct emmc_esr esr; /* emmc status register */ u64 capacity;