Subject: [PATCH] mmc: pwrseq_simple: Support assigned-clocks

From: [email-masked] (Martin Fuzzey)
Date: Fri, 08 Jan 2016 10:59:17 +0100

The clock subsystem now allows clock rates and parents to be configured
in the device tree.

This requires calling of_clk_set_defaults() which is done automatically
for platform, i2c, spi devices. Since pwrseq_simple does not fit into
those catagories we must do it ourself.

With this patch the standard assigned-clocks, assigned-clock-rates,
assigned-clock-parents DT properties to be used in pwrseq_simple nodes.

Signed-off-by: Martin Fuzzey <[email-masked]>
---
 drivers/mmc/core/pwrseq_simple.c |    5 +++++
 1 file changed, 5 insertions(+)

diff --git a/drivers/mmc/core/pwrseq_simple.c b/drivers/mmc/core/pwrseq_simple.c
index 4d2962b..fd8f38e 100644
--- a/drivers/mmc/core/pwrseq_simple.c
+++ b/drivers/mmc/core/pwrseq_simple.c
@@ -8,6 +8,7 @@
  *  Simple MMC power sequence management
  */
 #include <linux/clk.h>
+#include <linux/clk/clk-conf.h>
 #include <linux/kernel.h>
 #include <linux/slab.h>
 #include <linux/device.h>
@@ -108,6 +109,10 @@ struct mmc_pwrseq *mmc_pwrseq_simple_alloc(struct mmc_host *host,
 	if (!pwrseq)
 		return ERR_PTR(-ENOMEM);
 
+	ret = of_clk_set_defaults(dev->of_node, false);
+	if (ret)
+		goto free;
+
 	pwrseq->ext_clk = clk_get(dev, "ext_clock");
 	if (IS_ERR(pwrseq->ext_clk) &&
 	    PTR_ERR(pwrseq->ext_clk) != -ENOENT) {