Re: [PATCH] dmaengine: axi-dmac: add a check for devm_regmap_init_mmio

From: Ardelean, Alexandru
Date: Mon Dec 09 2019 - 04:28:58 EST


On Mon, 2019-12-09 at 16:57 +0800, Chuhong Yuan wrote:
> [External]
>
> The driver misses checking the result of devm_regmap_init_mmio().
> Add a check to fix it.

Thanks :)

Reviewed-by: Alexandru Ardelean <alexandru.ardelean@xxxxxxxxxx>

>
> Fixes: fc15be39a827 ("dmaengine: axi-dmac: add regmap support")
> Signed-off-by: Chuhong Yuan <hslester96@xxxxxxxxx>
> ---
> drivers/dma/dma-axi-dmac.c | 10 +++++++++-
> 1 file changed, 9 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/dma/dma-axi-dmac.c b/drivers/dma/dma-axi-dmac.c
> index a0ee404b736e..cf4f892562cc 100644
> --- a/drivers/dma/dma-axi-dmac.c
> +++ b/drivers/dma/dma-axi-dmac.c
> @@ -830,6 +830,7 @@ static int axi_dmac_probe(struct platform_device
> *pdev)
> struct dma_device *dma_dev;
> struct axi_dmac *dmac;
> struct resource *res;
> + struct regmap *regmap;
> int ret;
>
> dmac = devm_kzalloc(&pdev->dev, sizeof(*dmac), GFP_KERNEL);
> @@ -921,10 +922,17 @@ static int axi_dmac_probe(struct platform_device
> *pdev)
>
> platform_set_drvdata(pdev, dmac);
>
> - devm_regmap_init_mmio(&pdev->dev, dmac->base,
> &axi_dmac_regmap_config);
> + regmap = devm_regmap_init_mmio(&pdev->dev, dmac->base,
> + &axi_dmac_regmap_config);
> + if (IS_ERR(regmap)) {
> + ret = PTR_ERR(regmap);
> + goto err_free_irq;
> + }
>
> return 0;
>
> +err_free_irq:
> + free_irq(dmac->irq, dmac);
> err_unregister_of:
> of_dma_controller_free(pdev->dev.of_node);
> err_unregister_device: