From: Nicolas Saenz Julienne <nsaenzjulie...@suse.de>

devicetree might request a clock frequency different from whatever is
set-up by the bootloader. Make sure to setup the new rate.

Signed-off-by: Nicolas Saenz Julienne <nsa...@kernel.org>
---
 drivers/mmc/host/sdhci-iproc.c | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/drivers/mmc/host/sdhci-iproc.c b/drivers/mmc/host/sdhci-iproc.c
index ddeaf8e1f72f..536c382e2486 100644
--- a/drivers/mmc/host/sdhci-iproc.c
+++ b/drivers/mmc/host/sdhci-iproc.c
@@ -358,6 +358,16 @@ static int sdhci_iproc_probe(struct platform_device *pdev)
                        ret = PTR_ERR(pltfm_host->clk);
                        goto err;
                }
+
+               if (pltfm_host->clock) {
+                       ret = clk_set_rate(pltfm_host->clk, pltfm_host->clock);
+                       if (ret) {
+                               dev_err(dev, "failed to set host clk at %u 
Hz\n",
+                                       pltfm_host->clock);
+                               goto err;
+                       }
+               }
+
                ret = clk_prepare_enable(pltfm_host->clk);
                if (ret) {
                        dev_err(dev, "failed to enable host clk\n");
-- 
2.30.2

Reply via email to