Incase of interrupt property is not present,
Driver is trying to free an invalid irq,
This patch fixes it by adding a check before freeing the irq.

Signed-off-by: Kedareswara rao Appana <[email protected]>
---
Changes for v2:
--> New patch.

 drivers/dma/xilinx/zynqmp_dma.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/dma/xilinx/zynqmp_dma.c b/drivers/dma/xilinx/zynqmp_dma.c
index a297a26..f146458 100644
--- a/drivers/dma/xilinx/zynqmp_dma.c
+++ b/drivers/dma/xilinx/zynqmp_dma.c
@@ -851,7 +851,8 @@ static void zynqmp_dma_chan_remove(struct zynqmp_dma_chan 
*chan)
        if (!chan)
                return;
 
-       devm_free_irq(chan->zdev->dev, chan->irq, chan);
+       if (chan->irq)
+               devm_free_irq(chan->zdev->dev, chan->irq, chan);
        tasklet_kill(&chan->tasklet);
        list_del(&chan->common.device_node);
 }
-- 
2.7.4

Reply via email to