Messages in this thread Patch in this message | | | From | Alexandru Ardelean <> | Subject | [PATCH 2/2] uio: pruss: use devm_clk_get() for clk init | Date | Wed, 11 Nov 2020 13:22:42 +0200 |
| |
This change uses devm_clk_get() to obtain a reference to the clock. It has the benefit that clk_put() is no longer required, and cleans up the exit & error path.
Signed-off-by: Alexandru Ardelean <alexandru.ardelean@analog.com> --- drivers/uio/uio_pruss.c | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-)
diff --git a/drivers/uio/uio_pruss.c b/drivers/uio/uio_pruss.c index 41470c4dba02..f50464c2a0bf 100644 --- a/drivers/uio/uio_pruss.c +++ b/drivers/uio/uio_pruss.c @@ -110,7 +110,6 @@ static void pruss_cleanup(struct device *dev, struct uio_pruss_dev *gdev) gdev->sram_vaddr, sram_pool_sz); clk_disable(gdev->pruss_clk); - clk_put(gdev->pruss_clk); } static int pruss_probe(struct platform_device *pdev) @@ -131,16 +130,16 @@ static int pruss_probe(struct platform_device *pdev) return -ENOMEM; /* Power on PRU in case its not done as part of boot-loader */ - gdev->pruss_clk = clk_get(dev, "pruss"); + gdev->pruss_clk = devm_clk_get(dev, "pruss"); if (IS_ERR(gdev->pruss_clk)) { dev_err(dev, "Failed to get clock\n"); - return PTR_ERR(gdev->pruss_clk); + return ret; } ret = clk_enable(gdev->pruss_clk); if (ret) { dev_err(dev, "Failed to enable clock\n"); - goto err_clk_put; + return ret; } regs_prussio = platform_get_resource(pdev, IORESOURCE_MEM, 0); @@ -229,8 +228,6 @@ static int pruss_probe(struct platform_device *pdev) gen_pool_free(gdev->sram_pool, gdev->sram_vaddr, sram_pool_sz); err_clk_disable: clk_disable(gdev->pruss_clk); -err_clk_put: - clk_put(gdev->pruss_clk); return ret; } -- 2.17.1
| |