Commit a0ad3087 authored by Michael Trimarchi's avatar Michael Trimarchi Committed by Ulf Hansson

mmc: sdhci-esdhc-imx: Changes the order of how clocks are being re-enabled

runtime_resume() should re-enable the clocks in reverse order comparing with
runtime_suspend()
Signed-off-by: default avatarMichael Trimarchi <michael@amarulasolutions.com>
Signed-off-by: default avatarUlf Hansson <ulf.hansson@linaro.org>
parent 371d39fa
...@@ -1411,31 +1411,33 @@ static int sdhci_esdhc_runtime_resume(struct device *dev) ...@@ -1411,31 +1411,33 @@ static int sdhci_esdhc_runtime_resume(struct device *dev)
struct pltfm_imx_data *imx_data = sdhci_pltfm_priv(pltfm_host); struct pltfm_imx_data *imx_data = sdhci_pltfm_priv(pltfm_host);
int err; int err;
err = clk_prepare_enable(imx_data->clk_ahb);
if (err)
return err;
if (!sdhci_sdio_irq_enabled(host)) { if (!sdhci_sdio_irq_enabled(host)) {
err = clk_prepare_enable(imx_data->clk_per); err = clk_prepare_enable(imx_data->clk_per);
if (err) if (err)
return err; goto disable_ahb_clk;
err = clk_prepare_enable(imx_data->clk_ipg); err = clk_prepare_enable(imx_data->clk_ipg);
if (err) if (err)
goto disable_per_clk; goto disable_per_clk;
} }
err = clk_prepare_enable(imx_data->clk_ahb);
if (err)
goto disable_ipg_clk;
err = sdhci_runtime_resume_host(host); err = sdhci_runtime_resume_host(host);
if (err) if (err)
goto disable_ahb_clk; goto disable_ipg_clk;
return 0; return 0;
disable_ahb_clk:
clk_disable_unprepare(imx_data->clk_ahb);
disable_ipg_clk: disable_ipg_clk:
if (!sdhci_sdio_irq_enabled(host)) if (!sdhci_sdio_irq_enabled(host))
clk_disable_unprepare(imx_data->clk_ipg); clk_disable_unprepare(imx_data->clk_ipg);
disable_per_clk: disable_per_clk:
if (!sdhci_sdio_irq_enabled(host)) if (!sdhci_sdio_irq_enabled(host))
clk_disable_unprepare(imx_data->clk_per); clk_disable_unprepare(imx_data->clk_per);
disable_ahb_clk:
clk_disable_unprepare(imx_data->clk_ahb);
return err; return err;
} }
#endif #endif
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment