aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/media
diff options
context:
space:
mode:
authorKusanagi Kouichi <slash@ac.auone-net.jp>2010-02-06 00:45:33 -0500
committerMauro Carvalho Chehab <mchehab@redhat.com>2010-08-02 14:34:59 -0400
commite38030f3ff02684eb9e25e983a03ad318a10a2ea (patch)
tree016340c5da972714624590ce968accb5dc6ab05a /drivers/media
parentb48592e496e55e4e3e6e7f27d5ba3a229a1db7a6 (diff)
V4L/DVB: cx23885: Enable Message Signaled Interrupts(MSI)
Signed-off-by: Kusanagi Kouichi <slash@ac.auone-net.jp> Signed-off-by: Steven Toth <stoth@kernellabs.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media')
-rw-r--r--drivers/media/video/cx23885/cx23885-core.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/drivers/media/video/cx23885/cx23885-core.c b/drivers/media/video/cx23885/cx23885-core.c
index 161ae7316c95..ff76f64edac1 100644
--- a/drivers/media/video/cx23885/cx23885-core.c
+++ b/drivers/media/video/cx23885/cx23885-core.c
@@ -1953,8 +1953,12 @@ static int __devinit cx23885_initdev(struct pci_dev *pci_dev,
1953 goto fail_irq; 1953 goto fail_irq;
1954 } 1954 }
1955 1955
1956 err = request_irq(pci_dev->irq, cx23885_irq, 1956 if (!pci_enable_msi(pci_dev))
1957 IRQF_SHARED | IRQF_DISABLED, dev->name, dev); 1957 err = request_irq(pci_dev->irq, cx23885_irq,
1958 IRQF_DISABLED, dev->name, dev);
1959 else
1960 err = request_irq(pci_dev->irq, cx23885_irq,
1961 IRQF_SHARED | IRQF_DISABLED, dev->name, dev);
1958 if (err < 0) { 1962 if (err < 0) {
1959 printk(KERN_ERR "%s: can't get IRQ %d\n", 1963 printk(KERN_ERR "%s: can't get IRQ %d\n",
1960 dev->name, pci_dev->irq); 1964 dev->name, pci_dev->irq);
@@ -2000,6 +2004,7 @@ static void __devexit cx23885_finidev(struct pci_dev *pci_dev)
2000 2004
2001 /* unregister stuff */ 2005 /* unregister stuff */
2002 free_irq(pci_dev->irq, dev); 2006 free_irq(pci_dev->irq, dev);
2007 pci_disable_msi(pci_dev);
2003 2008
2004 cx23885_dev_unregister(dev); 2009 cx23885_dev_unregister(dev);
2005 v4l2_device_unregister(v4l2_dev); 2010 v4l2_device_unregister(v4l2_dev);