aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/media/video/cx23885
diff options
context:
space:
mode:
authorAndy Walls <awalls@md.metrocast.net>2010-07-18 19:54:52 -0400
committerMauro Carvalho Chehab <mchehab@redhat.com>2010-08-08 22:42:55 -0400
commit260e689ba237fb513b49e98841d98e93ea639c75 (patch)
treeb671e9e72757568222fb6c808e2ff7050b8468c8 /drivers/media/video/cx23885
parent81f287da73377eb408de6879aa6c54c6d57dc1db (diff)
V4L/DVB: v4l2_subdev: Move interrupt_service_routine ptr to v4l2_subdev_core_ops
The CX2584x and related cores are multifunction subdevices with a number of internal blocks that act as interrupt sources. Move the v4L2_subdev interrupt_service_routine callback from v4l_subdev_ir_ops to v4l2_subdev_core_ops, as the video and audio blocks of a CX2584x and related cores can generate interrupts along with the IR block. This change also makes sense for other subdev's that generate interrupts and do not have an IR block. Signed-off-by: Andy Walls <awalls@md.metrocast.net> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/video/cx23885')
-rw-r--r--drivers/media/video/cx23885/cx23885-core.c2
-rw-r--r--drivers/media/video/cx23885/cx23888-ir.c3
2 files changed, 2 insertions, 3 deletions
diff --git a/drivers/media/video/cx23885/cx23885-core.c b/drivers/media/video/cx23885/cx23885-core.c
index ff76f64edac1..a74c0ab859ed 100644
--- a/drivers/media/video/cx23885/cx23885-core.c
+++ b/drivers/media/video/cx23885/cx23885-core.c
@@ -1765,7 +1765,7 @@ static irqreturn_t cx23885_irq(int irq, void *dev_id)
1765 handled += cx23885_video_irq(dev, vida_status); 1765 handled += cx23885_video_irq(dev, vida_status);
1766 1766
1767 if (pci_status & PCI_MSK_IR) { 1767 if (pci_status & PCI_MSK_IR) {
1768 v4l2_subdev_call(dev->sd_ir, ir, interrupt_service_routine, 1768 v4l2_subdev_call(dev->sd_ir, core, interrupt_service_routine,
1769 pci_status, &ir_handled); 1769 pci_status, &ir_handled);
1770 if (ir_handled) 1770 if (ir_handled)
1771 handled++; 1771 handled++;
diff --git a/drivers/media/video/cx23885/cx23888-ir.c b/drivers/media/video/cx23885/cx23888-ir.c
index 28ca90ff223c..51f21636e639 100644
--- a/drivers/media/video/cx23885/cx23888-ir.c
+++ b/drivers/media/video/cx23885/cx23888-ir.c
@@ -1126,11 +1126,10 @@ static const struct v4l2_subdev_core_ops cx23888_ir_core_ops = {
1126 .g_register = cx23888_ir_g_register, 1126 .g_register = cx23888_ir_g_register,
1127 .s_register = cx23888_ir_s_register, 1127 .s_register = cx23888_ir_s_register,
1128#endif 1128#endif
1129 .interrupt_service_routine = cx23888_ir_irq_handler,
1129}; 1130};
1130 1131
1131static const struct v4l2_subdev_ir_ops cx23888_ir_ir_ops = { 1132static const struct v4l2_subdev_ir_ops cx23888_ir_ir_ops = {
1132 .interrupt_service_routine = cx23888_ir_irq_handler,
1133
1134 .rx_read = cx23888_ir_rx_read, 1133 .rx_read = cx23888_ir_rx_read,
1135 .rx_g_parameters = cx23888_ir_rx_g_parameters, 1134 .rx_g_parameters = cx23888_ir_rx_g_parameters,
1136 .rx_s_parameters = cx23888_ir_rx_s_parameters, 1135 .rx_s_parameters = cx23888_ir_rx_s_parameters,