lkml.org 
[lkml]   [2021]   [Mar]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRE: [PATCH v6 05/13] phy: cadence: cadence-sierra: Move all clk_get_*() to a separate function
Date


> -----Original Message-----
> From: Kishon Vijay Abraham I <kishon@ti.com>
> Sent: Wednesday, March 10, 2021 9:16 PM
> To: Kishon Vijay Abraham I <kishon@ti.com>; Vinod Koul
> <vkoul@kernel.org>; Rob Herring <robh+dt@kernel.org>; Philipp Zabel
> <p.zabel@pengutronix.de>; Swapnil Kashinath Jakhade
> <sjakhade@cadence.com>
> Cc: linux-kernel@vger.kernel.org; devicetree@vger.kernel.org; Lokesh Vutla
> <lokeshvutla@ti.com>
> 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@ti.com>
> ---
> drivers/phy/cadence/phy-cadence-sierra.c | 57 +++++++++++++++---------
> 1 file changed, 35 insertions(+), 22 deletions(-)
>

Reviewed-by: Swapnil Jakhade <sjakhade@cadence.com>

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

\
 
 \ /
  Last update: 2021-03-15 06:52    [W:0.119 / U:0.436 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site