summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFrank Li <Frank.Li@nxp.com>2026-02-26 00:41:48 +0300
committerVinod Koul <vkoul@kernel.org>2026-03-09 14:20:48 +0300
commit804e18f7da6d29cff7ed4e004bcc05658f51d737 (patch)
tree17cf189d5b9045565a363c49b8fa81d52bdec150
parent4035726a6b724ff0f04b4f1429c7b1a935fc2e76 (diff)
downloadlinux-804e18f7da6d29cff7ed4e004bcc05658f51d737.tar.xz
dmaengine: fsl-edma: Use dev_err_probe() to simplify code
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>
-rw-r--r--drivers/dma/fsl-edma-main.c47
1 files changed, 20 insertions, 27 deletions
diff --git a/drivers/dma/fsl-edma-main.c b/drivers/dma/fsl-edma-main.c
index 57a185bb4076..950538cc8883 100644
--- a/drivers/dma/fsl-edma-main.c
+++ b/drivers/dma/fsl-edma-main.c
@@ -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))