On 11/25/2016 12:47 PM, Joonyoung Shim wrote: > The commit 64997de4fd17 ("mmc: dw_mmc: remove system PM callback") is > missing to call dw_mci_ctrl_reset(). This adds to call > dw_mci_ctrl_reset() and to handle error of clocks. > > Signed-off-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx> Applied on my repository, instead of v1. Thanks for noticing. If someone find the issue, let me know before PR to Ulf. Best Regards, Jaehoon Chung > --- > v2: fix error handling of biu_clk. > > drivers/mmc/host/dw_mmc.c | 16 +++++++++++++++- > 1 file changed, 15 insertions(+), 1 deletion(-) > > diff --git a/drivers/mmc/host/dw_mmc.c b/drivers/mmc/host/dw_mmc.c > index d426fa41bcce..5b50b2cdb008 100644 > --- a/drivers/mmc/host/dw_mmc.c > +++ b/drivers/mmc/host/dw_mmc.c > @@ -3301,7 +3301,13 @@ int dw_mci_runtime_resume(struct device *dev) > > ret = clk_prepare_enable(host->ciu_clk); > if (ret) > - return ret; > + goto err; > + > + if (!dw_mci_ctrl_reset(host, SDMMC_CTRL_ALL_RESET_FLAGS)) { > + clk_disable_unprepare(host->ciu_clk); > + ret = -ENODEV; > + goto err; > + } > > if (host->use_dma && host->dma_ops->init) > host->dma_ops->init(host); > @@ -3336,6 +3342,14 @@ int dw_mci_runtime_resume(struct device *dev) > /* Now that slots are all setup, we can enable card detect */ > dw_mci_enable_cd(host); > > + return 0; > + > +err: > + if (host->cur_slot && > + (mmc_can_gpio_cd(host->cur_slot->mmc) || > + !mmc_card_is_removable(host->cur_slot->mmc))) > + clk_disable_unprepare(host->biu_clk); > + > return ret; > } > EXPORT_SYMBOL(dw_mci_runtime_resume); > -- 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