mmc: sdhci-brcmstb: Simplify with optional clock and dev_err_probe()
authorKrzysztof Kozlowski <krzk@kernel.org>
Wed, 2 Sep 2020 19:36:53 +0000 (21:36 +0200)
committerUlf Hansson <ulf.hansson@linaro.org>
Mon, 7 Sep 2020 07:16:31 +0000 (09:16 +0200)
Only -ENOENT from devm_clk_get() means that clock is not present in
device tree.  Other errors have their own meaning and should not be
ignored.

Simplify getting the clock which is in fact optional and also use
dev_err_probe() for handling deferred.

Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
Acked-by: Florian Fainelli <f.fainelli@gmail.com>
Link: https://lore.kernel.org/r/20200902193658.20539-7-krzk@kernel.org
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
drivers/mmc/host/sdhci-brcmstb.c

index ad01f6451a953d61f4594ceef6b69b32389943f0..876668827580870b127a65af98d1c0ff462390d9 100644 (file)
@@ -235,13 +235,11 @@ static int sdhci_brcmstb_probe(struct platform_device *pdev)
 
        dev_dbg(&pdev->dev, "Probe found match for %s\n",  match->compatible);
 
-       clk = devm_clk_get(&pdev->dev, NULL);
-       if (IS_ERR(clk)) {
-               if (PTR_ERR(clk) == -EPROBE_DEFER)
-                       return -EPROBE_DEFER;
-               dev_err(&pdev->dev, "Clock not found in Device Tree\n");
-               clk = NULL;
-       }
+       clk = devm_clk_get_optional(&pdev->dev, NULL);
+       if (IS_ERR(clk))
+               return dev_err_probe(&pdev->dev, PTR_ERR(clk),
+                                    "Failed to get clock from Device Tree\n");
+
        res = clk_prepare_enable(clk);
        if (res)
                return res;