Re: [PATCH] Revert "V4L/DVB: cx23885: Enable Message Signaled Interrupts(MSI)"

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Jun 29, 2011 at 3:49 PM, Jarod Wilson <jarod@xxxxxxxxxx> wrote:
> This reverts commit e38030f3ff02684eb9e25e983a03ad318a10a2ea.
>
> MSI flat-out doesn't work right on cx2388x devices yet. There are now
> multiple reports of cards that hard-lock systems when MSI is enabled,
> including my own HVR-1250 when trying to use its built-in IR receiver.
> Disable MSI and it works just fine. Similar for another user's HVR-1270.
> Issues have also been reported with the HVR-1850 when MSI is enabled,
> and the 1850 behavior sounds similar to an as-yet-undiagnosed issue I've
> seen with an 1800.
>
> References:
>
> http://www.spinics.net/lists/linux-media/msg25956.html
> http://www.spinics.net/lists/linux-media/msg33676.html
> http://www.spinics.net/lists/linux-media/msg34734.html
>
> CC: Andy Walls <awalls@xxxxxxxxxxxxxxxx>
> CC: Kusanagi Kouichi <slash@xxxxxxxxxxxxxxx>
> Signed-off-by: Jarod Wilson <jarod@xxxxxxxxxx>
> ---
>  drivers/media/video/cx23885/cx23885-core.c |    9 ++-------
>  1 files changed, 2 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/media/video/cx23885/cx23885-core.c b/drivers/media/video/cx23885/cx23885-core.c
> index 64d9b21..419777a 100644
> --- a/drivers/media/video/cx23885/cx23885-core.c
> +++ b/drivers/media/video/cx23885/cx23885-core.c
> @@ -2060,12 +2060,8 @@ static int __devinit cx23885_initdev(struct pci_dev *pci_dev,
>                goto fail_irq;
>        }
>
> -       if (!pci_enable_msi(pci_dev))
> -               err = request_irq(pci_dev->irq, cx23885_irq,
> -                                 IRQF_DISABLED, dev->name, dev);
> -       else
> -               err = request_irq(pci_dev->irq, cx23885_irq,
> -                                 IRQF_SHARED | IRQF_DISABLED, dev->name, dev);
> +       err = request_irq(pci_dev->irq, cx23885_irq,
> +                         IRQF_SHARED | IRQF_DISABLED, dev->name, dev);
>        if (err < 0) {
>                printk(KERN_ERR "%s: can't get IRQ %d\n",
>                       dev->name, pci_dev->irq);
> @@ -2114,7 +2110,6 @@ static void __devexit cx23885_finidev(struct pci_dev *pci_dev)
>
>        /* unregister stuff */
>        free_irq(pci_dev->irq, dev);
> -       pci_disable_msi(pci_dev);
>
>        cx23885_dev_unregister(dev);
>        v4l2_device_unregister(v4l2_dev);
> --
> 1.7.1
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-media" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>


Tested and it fixed my HVR-1270 IR. I also tested a couple minutes of
live TV and it still works.
--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux