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.liakhovet...@gmx.de>
---
 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 majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to