On ARM the same clock is used by the PM subsystem and by the driver directly. This leads to the clock staying permanently on, independent of the runtime PM state. This patch makes clock enable and disable calls in the driver SuperH-specific. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@xxxxxx> --- drivers/mmc/host/sh_mobile_sdhi.c | 6 ++++++ 1 files changed, 6 insertions(+), 0 deletions(-) diff --git a/drivers/mmc/host/sh_mobile_sdhi.c b/drivers/mmc/host/sh_mobile_sdhi.c index a8d353e..0df69ab 100644 --- a/drivers/mmc/host/sh_mobile_sdhi.c +++ b/drivers/mmc/host/sh_mobile_sdhi.c @@ -117,7 +117,9 @@ static int __devinit sh_mobile_sdhi_probe(struct platform_device *pdev) goto eclkget; } +#if defined(CONFIG_SUPERH) clk_enable(priv->clk); +#endif mmc_data->hclk = clk_get_rate(priv->clk); mmc_data->set_pwr = sh_mobile_sdhi_set_pwr; @@ -235,7 +237,9 @@ eirq_sdio: eirq_card_detect: tmio_mmc_host_remove(host); eprobe: +#if defined(CONFIG_SUPERH) clk_disable(priv->clk); +#endif clk_put(priv->clk); eclkget: kfree(priv); @@ -261,7 +265,9 @@ static int sh_mobile_sdhi_remove(struct platform_device *pdev) free_irq(irq, host); } +#if defined(CONFIG_SUPERH) clk_disable(priv->clk); +#endif clk_put(priv->clk); kfree(priv); -- 1.7.2.5 -- 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