No functional change. Group all devm_clk_get_optional() to a
separate function.

Signed-off-by: Kishon Vijay Abraham I <kis...@ti.com>
---
 drivers/phy/cadence/phy-cadence-sierra.c | 57 +++++++++++++++---------
 1 file changed, 35 insertions(+), 22 deletions(-)

diff --git a/drivers/phy/cadence/phy-cadence-sierra.c 
b/drivers/phy/cadence/phy-cadence-sierra.c
index f7ba0ed416bc..7bf1b4c7774a 100644
--- a/drivers/phy/cadence/phy-cadence-sierra.c
+++ b/drivers/phy/cadence/phy-cadence-sierra.c
@@ -477,6 +477,38 @@ static int cdns_regmap_init_blocks(struct cdns_sierra_phy 
*sp,
        return 0;
 }
 
+static int cdns_sierra_phy_get_clocks(struct cdns_sierra_phy *sp,
+                                     struct device *dev)
+{
+       struct clk *clk;
+       int ret;
+
+       clk = devm_clk_get_optional(dev, "phy_clk");
+       if (IS_ERR(clk)) {
+               dev_err(dev, "failed to get clock phy_clk\n");
+               return PTR_ERR(clk);
+       }
+       sp->clk = clk;
+
+       clk = devm_clk_get_optional(dev, "cmn_refclk_dig_div");
+       if (IS_ERR(clk)) {
+               dev_err(dev, "cmn_refclk_dig_div clock not found\n");
+               ret = PTR_ERR(clk);
+               return ret;
+       }
+       sp->cmn_refclk_dig_div = clk;
+
+       clk = devm_clk_get_optional(dev, "cmn_refclk1_dig_div");
+       if (IS_ERR(clk)) {
+               dev_err(dev, "cmn_refclk1_dig_div clock not found\n");
+               ret = PTR_ERR(clk);
+               return ret;
+       }
+       sp->cmn_refclk1_dig_div = clk;
+
+       return 0;
+}
+
 static int cdns_sierra_phy_probe(struct platform_device *pdev)
 {
        struct cdns_sierra_phy *sp;
@@ -487,7 +519,6 @@ static int cdns_sierra_phy_probe(struct platform_device 
*pdev)
        unsigned int id_value;
        int i, ret, node = 0;
        void __iomem *base;
-       struct clk *clk;
        struct device_node *dn = dev->of_node, *child;
 
        if (of_get_child_count(dn) == 0)
@@ -524,11 +555,9 @@ static int cdns_sierra_phy_probe(struct platform_device 
*pdev)
 
        platform_set_drvdata(pdev, sp);
 
-       sp->clk = devm_clk_get_optional(dev, "phy_clk");
-       if (IS_ERR(sp->clk)) {
-               dev_err(dev, "failed to get clock phy_clk\n");
-               return PTR_ERR(sp->clk);
-       }
+       ret = cdns_sierra_phy_get_clocks(sp, dev);
+       if (ret)
+               return ret;
 
        sp->phy_rst = devm_reset_control_get(dev, "sierra_reset");
        if (IS_ERR(sp->phy_rst)) {
@@ -542,22 +571,6 @@ static int cdns_sierra_phy_probe(struct platform_device 
*pdev)
                return PTR_ERR(sp->apb_rst);
        }
 
-       clk = devm_clk_get_optional(dev, "cmn_refclk_dig_div");
-       if (IS_ERR(clk)) {
-               dev_err(dev, "cmn_refclk_dig_div clock not found\n");
-               ret = PTR_ERR(clk);
-               return ret;
-       }
-       sp->cmn_refclk_dig_div = clk;
-
-       clk = devm_clk_get_optional(dev, "cmn_refclk1_dig_div");
-       if (IS_ERR(clk)) {
-               dev_err(dev, "cmn_refclk1_dig_div clock not found\n");
-               ret = PTR_ERR(clk);
-               return ret;
-       }
-       sp->cmn_refclk1_dig_div = clk;
-
        ret = clk_prepare_enable(sp->clk);
        if (ret)
                return ret;
-- 
2.17.1

Reply via email to