Thread (6 messages) 6 messages, 2 authors, 2025-10-13

Re: [RFC v1 1/2] PCI: j721e: Use devm_clk_get_optional_enabled() to get the clock

From: Anand Moon <hidden>
Date: 2025-10-13 14:03:17
Also in: linux-omap, linux-pci, lkml

Hi Siddharth,

Thanks for your review comment

On Mon, 13 Oct 2025 at 16:43, Siddharth Vadapalli [off-list ref] wrote:
On Mon, 2025-10-13 at 15:47 +0530, Anand Moon wrote:
quoted
Use devm_clk_get_optional_enabled() helper instead of calling
devm_clk_get_optional() and then clk_prepare_enable(). It simplifies
the error handling and makes the code more compact. This changes removes
the unnecessary clk variable and assigns the result of the
devm_clk_get_optional_enabled() call directly to pcie->refclk.
This makes the code more concise and readable without changing the
behavior.

Cc: Siddharth Vadapalli <s-vadapalli@ti.com>
Signed-off-by: Anand Moon <redacted>
---
 drivers/pci/controller/cadence/pci-j721e.c | 12 ++----------
 1 file changed, 2 insertions(+), 10 deletions(-)
diff --git a/drivers/pci/controller/cadence/pci-j721e.c b/drivers/pci/controller/cadence/pci-j721e.c
index 5bc5ab20aa6d..d6bbd04c615b 100644
--- a/drivers/pci/controller/cadence/pci-j721e.c
+++ b/drivers/pci/controller/cadence/pci-j721e.c
@@ -479,7 +479,6 @@ static int j721e_pcie_probe(struct platform_device *pdev)
      struct cdns_pcie_ep *ep = NULL;
      struct gpio_desc *gpiod;
      void __iomem *base;
-     struct clk *clk;
      u32 num_lanes;
      u32 mode;
      int ret;
@@ -603,18 +602,11 @@ static int j721e_pcie_probe(struct platform_device *pdev)
                      goto err_get_sync;
              }

-             clk = devm_clk_get_optional(dev, "pcie_refclk");
-             if (IS_ERR(clk)) {
-                     ret = dev_err_probe(dev, PTR_ERR(clk), "failed to get pcie_refclk\n");
-                     goto err_pcie_setup;
-             }
-
-             ret = clk_prepare_enable(clk);
-             if (ret) {
+             pcie->refclk = devm_clk_get_optional_enabled(dev, "pcie_refclk");
+             if (IS_ERR(pcie->refclk)) {
                      dev_err_probe(dev, ret, "failed to enable pcie_refclk\n");
                      goto err_pcie_setup;
'err_pcie_setup' returns 'ret' which isn't being updated above.
Maybe add:
                ret = pcie->refclk;
above dev_err_probe(...
All return values from the dev_err_probe function appear to be missing
in this file.
I'll address this in the next revision through a separate patch.
quoted
              }
-             pcie->refclk = clk;

              /*
               * Section 2.2 of the PCI Express Card Electromechanical
Regards,
Siddharth.
Thanks
-Anand
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help