]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
crypto: atmel - use devm_clk_get_prepared() helpers
authorChunhai Guo <guochunhai@vivo.com>
Fri, 23 Aug 2024 09:42:49 +0000 (03:42 -0600)
committerHerbert Xu <herbert@gondor.apana.org.au>
Fri, 30 Aug 2024 10:23:43 +0000 (18:23 +0800)
Simplify the code by replacing devm_clk_get() and clk_prepare() with
devm_clk_get_prepared(), which also avoids the call to clk_unprepare().

Signed-off-by: Chunhai Guo <guochunhai@vivo.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
drivers/crypto/atmel-aes.c
drivers/crypto/atmel-sha.c

index 8bd64fc37e75710814c53ff480dbcb8e1df4f728..0dd90785db9a868022de1afb2062ec793911d4a1 100644 (file)
@@ -2376,33 +2376,29 @@ static int atmel_aes_probe(struct platform_device *pdev)
        }
 
        /* Initializing the clock */
-       aes_dd->iclk = devm_clk_get(&pdev->dev, "aes_clk");
+       aes_dd->iclk = devm_clk_get_prepared(&pdev->dev, "aes_clk");
        if (IS_ERR(aes_dd->iclk)) {
                dev_err(dev, "clock initialization failed.\n");
                err = PTR_ERR(aes_dd->iclk);
                goto err_tasklet_kill;
        }
 
-       err = clk_prepare(aes_dd->iclk);
-       if (err)
-               goto err_tasklet_kill;
-
        err = atmel_aes_hw_version_init(aes_dd);
        if (err)
-               goto err_iclk_unprepare;
+               goto err_tasklet_kill;
 
        atmel_aes_get_cap(aes_dd);
 
 #if IS_ENABLED(CONFIG_CRYPTO_DEV_ATMEL_AUTHENC)
        if (aes_dd->caps.has_authenc && !atmel_sha_authenc_is_ready()) {
                err = -EPROBE_DEFER;
-               goto err_iclk_unprepare;
+               goto err_tasklet_kill;
        }
 #endif
 
        err = atmel_aes_buff_init(aes_dd);
        if (err)
-               goto err_iclk_unprepare;
+               goto err_tasklet_kill;
 
        err = atmel_aes_dma_init(aes_dd);
        if (err)
@@ -2429,8 +2425,6 @@ err_algs:
        atmel_aes_dma_cleanup(aes_dd);
 err_buff_cleanup:
        atmel_aes_buff_cleanup(aes_dd);
-err_iclk_unprepare:
-       clk_unprepare(aes_dd->iclk);
 err_tasklet_kill:
        tasklet_kill(&aes_dd->done_task);
        tasklet_kill(&aes_dd->queue_task);
@@ -2455,8 +2449,6 @@ static void atmel_aes_remove(struct platform_device *pdev)
 
        atmel_aes_dma_cleanup(aes_dd);
        atmel_aes_buff_cleanup(aes_dd);
-
-       clk_unprepare(aes_dd->iclk);
 }
 
 static struct platform_driver atmel_aes_driver = {
index f4cd6158a4f7877f3e816c683e22ecacbde16310..8cc57df257784a8e988728a001fe522f6eab500f 100644 (file)
@@ -2623,27 +2623,23 @@ static int atmel_sha_probe(struct platform_device *pdev)
        }
 
        /* Initializing the clock */
-       sha_dd->iclk = devm_clk_get(&pdev->dev, "sha_clk");
+       sha_dd->iclk = devm_clk_get_prepared(&pdev->dev, "sha_clk");
        if (IS_ERR(sha_dd->iclk)) {
                dev_err(dev, "clock initialization failed.\n");
                err = PTR_ERR(sha_dd->iclk);
                goto err_tasklet_kill;
        }
 
-       err = clk_prepare(sha_dd->iclk);
-       if (err)
-               goto err_tasklet_kill;
-
        err = atmel_sha_hw_version_init(sha_dd);
        if (err)
-               goto err_iclk_unprepare;
+               goto err_tasklet_kill;
 
        atmel_sha_get_cap(sha_dd);
 
        if (sha_dd->caps.has_dma) {
                err = atmel_sha_dma_init(sha_dd);
                if (err)
-                       goto err_iclk_unprepare;
+                       goto err_tasklet_kill;
 
                dev_info(dev, "using %s for DMA transfers\n",
                                dma_chan_name(sha_dd->dma_lch_in.chan));
@@ -2669,8 +2665,6 @@ err_algs:
        spin_unlock(&atmel_sha.lock);
        if (sha_dd->caps.has_dma)
                atmel_sha_dma_cleanup(sha_dd);
-err_iclk_unprepare:
-       clk_unprepare(sha_dd->iclk);
 err_tasklet_kill:
        tasklet_kill(&sha_dd->queue_task);
        tasklet_kill(&sha_dd->done_task);
@@ -2693,8 +2687,6 @@ static void atmel_sha_remove(struct platform_device *pdev)
 
        if (sha_dd->caps.has_dma)
                atmel_sha_dma_cleanup(sha_dd);
-
-       clk_unprepare(sha_dd->iclk);
 }
 
 static struct platform_driver atmel_sha_driver = {