V4L/DVB (6167): cx23885: Changed PCI quirks to after bridge detech
authorSteven Toth <stoth@hauppauge.com>
Wed, 22 Aug 2007 23:52:21 +0000 (20:52 -0300)
committerMauro Carvalho Chehab <mchehab@infradead.org>
Wed, 10 Oct 2007 01:08:17 +0000 (22:08 -0300)
Changed the pci_quirks function to detech the bridge type before setting
the NMI clear bit, rather than detecting based on unique board id.

Signed-off-by: Steven Toth <stoth@hauppauge.com>
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
drivers/media/video/cx23885/cx23885-core.c

index 6916729..d2bc3e5 100644 (file)
@@ -622,11 +622,9 @@ static int cx23885_pci_quirks(struct cx23885_dev *dev)
 {
        dprintk(1, "%s()\n", __FUNCTION__);
 
-       switch(dev->board) {
-       case CX23885_BOARD_HAUPPAUGE_HVR1800lp:
+       if(dev->bridge == CX23885_BRIDGE_885)
                cx_clear(RDR_TLCTL0, 1 << 4);
-               break;
-       }
+
        return 0;
 }
 
@@ -777,8 +775,6 @@ static int cx23885_dev_setup(struct cx23885_dev *dev)
               dev->board, card[dev->nr] == dev->board ?
               "insmod option" : "autodetected");
 
-       cx23885_pci_quirks(dev);
-
        /* Configure the internal memory */
        if(dev->pci->device == 0x8880) {
                dev->bridge = CX23885_BRIDGE_887;
@@ -791,6 +787,8 @@ static int cx23885_dev_setup(struct cx23885_dev *dev)
        dprintk(1, "%s() Memory configured for PCIe bridge type %d\n",
                __FUNCTION__, dev->bridge);
 
+       cx23885_pci_quirks(dev);
+
        /* init hardware */
        cx23885_reset(dev);