Commit ebcdaee4 authored by Jean-Philippe Brucker's avatar Jean-Philippe Brucker Committed by Vinod Koul

dmaengine: pl330: fix warning in pl330_remove

When removing a device with less than 9 IRQs (AMBA_NR_IRQS), we'll get a
big WARN_ON from devres.c because pl330_remove calls devm_free_irqs for
unallocated irqs. Similarly to pl330_probe, check that IRQ number is
present before calling devm_free_irq.
Signed-off-by: default avatarJean-Philippe Brucker <jean-philippe.brucker@arm.com>
Signed-off-by: default avatarVinod Koul <vinod.koul@intel.com>
parent 56b17705
...@@ -3008,7 +3008,8 @@ static int pl330_remove(struct amba_device *adev) ...@@ -3008,7 +3008,8 @@ static int pl330_remove(struct amba_device *adev)
for (i = 0; i < AMBA_NR_IRQS; i++) { for (i = 0; i < AMBA_NR_IRQS; i++) {
irq = adev->irq[i]; irq = adev->irq[i];
devm_free_irq(&adev->dev, irq, pl330); if (irq)
devm_free_irq(&adev->dev, irq, pl330);
} }
dma_async_device_unregister(&pl330->ddma); dma_async_device_unregister(&pl330->ddma);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment