]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
dmaengine: fsl-edma: Use dev_err_probe() to simplify code
authorFrank Li <Frank.Li@nxp.com>
Wed, 25 Feb 2026 21:41:48 +0000 (16:41 -0500)
committerVinod Koul <vkoul@kernel.org>
Mon, 9 Mar 2026 11:20:48 +0000 (12:20 +0100)
Use dev_err_probe() to simplify code.

No functional change.

Signed-off-by: Frank Li <Frank.Li@nxp.com>
Link: https://patch.msgid.link/20260225-mxsdma-module-v3-12-8f798b13baa6@nxp.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
drivers/dma/fsl-edma-main.c

index 57a185bb4076db1257e761e1c1be523178a5ff04..950538cc88830a7f899449fe6dc43efacc9d2e3c 100644 (file)
@@ -709,16 +709,14 @@ static int fsl_edma_probe(struct platform_device *pdev)
        int ret, i;
 
        drvdata = device_get_match_data(&pdev->dev);
-       if (!drvdata) {
-               dev_err(&pdev->dev, "unable to find driver data\n");
-               return -EINVAL;
-       }
+       if (!drvdata)
+               return dev_err_probe(&pdev->dev, -EINVAL,
+                                    "unable to find driver data\n");
 
        ret = of_property_read_u32(np, "dma-channels", &chans);
-       if (ret) {
-               dev_err(&pdev->dev, "Can't get dma-channels.\n");
-               return ret;
-       }
+       if (ret)
+               return dev_err_probe(&pdev->dev, ret,
+                                    "Can't get dma-channels.\n");
 
        fsl_edma = devm_kzalloc(&pdev->dev, struct_size(fsl_edma, chans, chans),
                                GFP_KERNEL);
@@ -742,10 +740,10 @@ static int fsl_edma_probe(struct platform_device *pdev)
 
        if (drvdata->flags & FSL_EDMA_DRV_HAS_DMACLK) {
                fsl_edma->dmaclk = devm_clk_get_enabled(&pdev->dev, "dma");
-               if (IS_ERR(fsl_edma->dmaclk)) {
-                       dev_err(&pdev->dev, "Missing DMA block clock.\n");
-                       return PTR_ERR(fsl_edma->dmaclk);
-               }
+               if (IS_ERR(fsl_edma->dmaclk))
+                       return dev_err_probe(&pdev->dev,
+                                            PTR_ERR(fsl_edma->dmaclk),
+                                            "Missing DMA block clock.\n");
        }
 
        ret = of_property_read_variable_u32_array(np, "dma-channel-mask", chan_mask, 1, 2);
@@ -769,11 +767,10 @@ static int fsl_edma_probe(struct platform_device *pdev)
 
                sprintf(clkname, "dmamux%d", i);
                fsl_edma->muxclk[i] = devm_clk_get_enabled(&pdev->dev, clkname);
-               if (IS_ERR(fsl_edma->muxclk[i])) {
-                       dev_err(&pdev->dev, "Missing DMAMUX block clock.\n");
-                       /* on error: disable all previously enabled clks */
-                       return PTR_ERR(fsl_edma->muxclk[i]);
-               }
+               if (IS_ERR(fsl_edma->muxclk[i]))
+                       return dev_err_probe(&pdev->dev,
+                                            PTR_ERR(fsl_edma->muxclk[i]),
+                                            "Missing DMAMUX block clock.\n");
        }
 
        fsl_edma->big_endian = of_property_read_bool(np, "big-endian");
@@ -883,20 +880,16 @@ static int fsl_edma_probe(struct platform_device *pdev)
        platform_set_drvdata(pdev, fsl_edma);
 
        ret = dmaenginem_async_device_register(&fsl_edma->dma_dev);
-       if (ret) {
-               dev_err(&pdev->dev,
-                       "Can't register Freescale eDMA engine. (%d)\n", ret);
-               return ret;
-       }
+       if (ret)
+               return dev_err_probe(&pdev->dev, ret,
+                                    "Can't register Freescale eDMA engine.\n");
 
        ret = devm_of_dma_controller_register(&pdev->dev, np,
                        drvdata->dmamuxs ? fsl_edma_xlate : fsl_edma3_xlate,
                        fsl_edma);
-       if (ret) {
-               dev_err(&pdev->dev,
-                       "Can't register Freescale eDMA of_dma. (%d)\n", ret);
-               return ret;
-       }
+       if (ret)
+               return dev_err_probe(&pdev->dev, ret,
+                                    "Can't register Freescale eDMA of_dma.\n");
 
        /* enable round robin arbitration */
        if (!(drvdata->flags & FSL_EDMA_DRV_SPLIT_REG))