> -----Original Message----- > From: Kishon Vijay Abraham I <kishon@xxxxxx> > Sent: Wednesday, March 10, 2021 9:16 PM > To: Kishon Vijay Abraham I <kishon@xxxxxx>; Vinod Koul > <vkoul@xxxxxxxxxx>; Rob Herring <robh+dt@xxxxxxxxxx>; Philipp Zabel > <p.zabel@xxxxxxxxxxxxxx>; Swapnil Kashinath Jakhade > <sjakhade@xxxxxxxxxxx> > Cc: linux-kernel@xxxxxxxxxxxxxxx; devicetree@xxxxxxxxxxxxxxx; Lokesh Vutla > <lokeshvutla@xxxxxx> > Subject: [PATCH v6 05/13] phy: cadence: cadence-sierra: Move all clk_get_*() > to a separate function > > EXTERNAL MAIL > > > No functional change. Group all devm_clk_get_optional() to a separate > function. > > Signed-off-by: Kishon Vijay Abraham I <kishon@xxxxxx> > --- > drivers/phy/cadence/phy-cadence-sierra.c | 57 +++++++++++++++--------- > 1 file changed, 35 insertions(+), 22 deletions(-) > Reviewed-by: Swapnil Jakhade <sjakhade@xxxxxxxxxxx> Thanks & regards, Swapnil > 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