There is no reason to cache the irq_handler in struct dt3155_priv. Just pass the function directly in request_irq. Signed-off-by: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx> Cc: Greg Kroah-Hartman <gregkh@xxxxxxx> Cc: Mauro Carvalho Chehab <mchehab@xxxxxxxxxx> Cc: Hans Verkuil <hverkuil@xxxxxxxxx> --- diff --git a/drivers/staging/dt3155v4l/dt3155v4l.c b/drivers/staging/dt3155v4l/dt3155v4l.c index 4059ea6..693b3d3 100644 --- a/drivers/staging/dt3155v4l/dt3155v4l.c +++ b/drivers/staging/dt3155v4l/dt3155v4l.c @@ -428,8 +428,7 @@ dt3155_open(struct file *filp) /* disable all irqs, clear all irq flags */ iowrite32(FLD_START | FLD_END_EVEN | FLD_END_ODD, pd->regs + INT_CSR); - pd->irq_handler = dt3155_irq_handler_even; - ret = request_irq(pd->pdev->irq, pd->irq_handler, + ret = request_irq(pd->pdev->irq, dt3155_irq_handler_even, IRQF_SHARED, DT3155_NAME, pd); if (ret) { printk(KERN_ERR "dt3155: error: request_irq\n"); diff --git a/drivers/staging/dt3155v4l/dt3155v4l.h b/drivers/staging/dt3155v4l/dt3155v4l.h index b0792b3..fea333c 100644 --- a/drivers/staging/dt3155v4l/dt3155v4l.h +++ b/drivers/staging/dt3155v4l/dt3155v4l.h @@ -183,7 +183,6 @@ struct dt3155_stats { * @q pointer to vb2_queue structure * @curr_buf: pointer to curren buffer * @mux: mutex to protect the instance - * @irq_handler: irq handler for the driver * @dmaq queue for dma buffers * @lock spinlock for dma queue * @field_count fields counter @@ -199,7 +198,6 @@ struct dt3155_priv { struct vb2_queue *q; struct vb2_buffer *curr_buf; struct mutex mux; - irq_handler_t irq_handler; struct list_head dmaq; spinlock_t lock; unsigned int field_count; _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/devel