--- drivers/pci/quirks.c 2007-01-24 01:20:26.000000000 +1100 +++ drivers/pci/quirks.c.new 2007-01-23 22:40:46.000000000 +1100 @@ -685,13 +685,18 @@ static void quirk_via_vlink(struct pci_d u8 irq, new_irq; /* Check if we have VLink and cache the result */ + printk("quirk_via_vlink 1\n"); +#if 0 /* Checked already - no */ if (dev_lo == -2) return; +#endif /* Not checked - see what bridge we have and find the device ranges */ + + printk("quirk_via_vlink 2\n"); if (dev_lo == -1) { via_vlink_fixup = pci_find_present(via_vlink_fixup_tbl); if (via_vlink_fixup == NULL) { @@ -705,15 +710,20 @@ static void quirk_via_vlink(struct pci_d } new_irq = dev->irq; + printk("quirk_via_vlink 3\n"); /* Don't quirk interrupts outside the legacy IRQ range */ if (!new_irq || new_irq > 15) return; + printk("quirk_via_vlink 4\n"); +#if 0 /* Internal device ? */ if (dev->bus->number != 0 || PCI_SLOT(dev->devfn) > dev_hi || PCI_SLOT(dev->devfn) < dev_lo) return; +#endif + printk("quirk_via_vlink 5\n"); /* This is an internal VLink device on a PIC interrupt. The BIOS ought to have set this but may not have, so we redo it */