Loading drivers/mmc/host/mxcmmc.c +19 −6 Original line number Original line Diff line number Diff line Loading @@ -1103,8 +1103,13 @@ static int mxcmci_probe(struct platform_device *pdev) goto out_free; goto out_free; } } clk_prepare_enable(host->clk_per); ret = clk_prepare_enable(host->clk_per); clk_prepare_enable(host->clk_ipg); if (ret) goto out_free; ret = clk_prepare_enable(host->clk_ipg); if (ret) goto out_clk_per_put; mxcmci_softreset(host); mxcmci_softreset(host); Loading Loading @@ -1173,8 +1178,9 @@ static int mxcmci_probe(struct platform_device *pdev) dma_release_channel(host->dma); dma_release_channel(host->dma); out_clk_put: out_clk_put: clk_disable_unprepare(host->clk_per); clk_disable_unprepare(host->clk_ipg); clk_disable_unprepare(host->clk_ipg); out_clk_per_put: clk_disable_unprepare(host->clk_per); out_free: out_free: mmc_free_host(mmc); mmc_free_host(mmc); Loading Loading @@ -1217,10 +1223,17 @@ static int __maybe_unused mxcmci_resume(struct device *dev) { { struct mmc_host *mmc = dev_get_drvdata(dev); struct mmc_host *mmc = dev_get_drvdata(dev); struct mxcmci_host *host = mmc_priv(mmc); struct mxcmci_host *host = mmc_priv(mmc); int ret; clk_prepare_enable(host->clk_per); ret = clk_prepare_enable(host->clk_per); clk_prepare_enable(host->clk_ipg); if (ret) return 0; return ret; ret = clk_prepare_enable(host->clk_ipg); if (ret) clk_disable_unprepare(host->clk_per); return ret; } } static SIMPLE_DEV_PM_OPS(mxcmci_pm_ops, mxcmci_suspend, mxcmci_resume); static SIMPLE_DEV_PM_OPS(mxcmci_pm_ops, mxcmci_suspend, mxcmci_resume); Loading Loading
drivers/mmc/host/mxcmmc.c +19 −6 Original line number Original line Diff line number Diff line Loading @@ -1103,8 +1103,13 @@ static int mxcmci_probe(struct platform_device *pdev) goto out_free; goto out_free; } } clk_prepare_enable(host->clk_per); ret = clk_prepare_enable(host->clk_per); clk_prepare_enable(host->clk_ipg); if (ret) goto out_free; ret = clk_prepare_enable(host->clk_ipg); if (ret) goto out_clk_per_put; mxcmci_softreset(host); mxcmci_softreset(host); Loading Loading @@ -1173,8 +1178,9 @@ static int mxcmci_probe(struct platform_device *pdev) dma_release_channel(host->dma); dma_release_channel(host->dma); out_clk_put: out_clk_put: clk_disable_unprepare(host->clk_per); clk_disable_unprepare(host->clk_ipg); clk_disable_unprepare(host->clk_ipg); out_clk_per_put: clk_disable_unprepare(host->clk_per); out_free: out_free: mmc_free_host(mmc); mmc_free_host(mmc); Loading Loading @@ -1217,10 +1223,17 @@ static int __maybe_unused mxcmci_resume(struct device *dev) { { struct mmc_host *mmc = dev_get_drvdata(dev); struct mmc_host *mmc = dev_get_drvdata(dev); struct mxcmci_host *host = mmc_priv(mmc); struct mxcmci_host *host = mmc_priv(mmc); int ret; clk_prepare_enable(host->clk_per); ret = clk_prepare_enable(host->clk_per); clk_prepare_enable(host->clk_ipg); if (ret) return 0; return ret; ret = clk_prepare_enable(host->clk_ipg); if (ret) clk_disable_unprepare(host->clk_per); return ret; } } static SIMPLE_DEV_PM_OPS(mxcmci_pm_ops, mxcmci_suspend, mxcmci_resume); static SIMPLE_DEV_PM_OPS(mxcmci_pm_ops, mxcmci_suspend, mxcmci_resume); Loading