Immediately after reset, issue the command which sets update_clock_register_only bit, the card clock will restart. MMC_PM_KEEP_POWER is disabled for SD card and eMMC slots, so that they have no chance to invoke dw_mci_setup_bus for update clock behaviour. Let's consummate it. Fixes: e9ed883 ("mmc: dw_mmc: add runtime PM callback") Reported-by: Randy Li <randy.li@xxxxxxxxxxxxxx> Signed-off-by: Ziyuan Xu <xzy.xu@xxxxxxxxxxxxxx> --- drivers/mmc/host/dw_mmc.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/mmc/host/dw_mmc.c b/drivers/mmc/host/dw_mmc.c index b44306b..71715b4 100644 --- a/drivers/mmc/host/dw_mmc.c +++ b/drivers/mmc/host/dw_mmc.c @@ -3357,6 +3357,8 @@ int dw_mci_runtime_resume(struct device *dev) if (slot->mmc->pm_flags & MMC_PM_KEEP_POWER) { dw_mci_set_ios(slot->mmc, &slot->mmc->ios); dw_mci_setup_bus(slot, true); + } else { + mci_send_cmd(slot, SDMMC_CMD_UPD_CLK, 0); } } -- 2.7.4 -- To unsubscribe from this list: send the line "unsubscribe linux-mmc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html