[PATCH] staging: comedi: dt282x: release irq on dt282x detach

Arvind Yadav arvind.yadav.cs at gmail.com
Fri Oct 6 16:36:20 UTC 2017


free_irq() should be called on driver 'dt282x' detach.

Signed-off-by: Arvind Yadav <arvind.yadav.cs at gmail.com>
---
 drivers/staging/comedi/drivers/dt282x.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/drivers/staging/comedi/drivers/dt282x.c b/drivers/staging/comedi/drivers/dt282x.c
index d5295bb..a132f60 100644
--- a/drivers/staging/comedi/drivers/dt282x.c
+++ b/drivers/staging/comedi/drivers/dt282x.c
@@ -1057,6 +1057,8 @@ static void dt282x_alloc_dma(struct comedi_device *dev,
 	if (request_irq(irq_num, dt282x_interrupt, 0, dev->board_name, dev))
 		return;
 
+	dev->irq = irq_num;
+
 	/* DMA uses two 4K buffers with separate DMA channels */
 	devpriv->dma = comedi_isadma_alloc(dev, 2, dma_chan[0], dma_chan[1],
 					   PAGE_SIZE, 0);
@@ -1070,6 +1072,9 @@ static void dt282x_free_dma(struct comedi_device *dev)
 
 	if (devpriv)
 		comedi_isadma_free(devpriv->dma);
+
+	if (dev->irq)
+		free_irq(dev->irq, dev);
 }
 
 static int dt282x_initialize(struct comedi_device *dev)
-- 
2.7.4



More information about the devel mailing list