Hi Brian.

I'm sorry, patch itself was not attached in previous post :(

Best regards.

-- 
Andrey Panin            | Embedded systems software engineer
[EMAIL PROTECTED]        | PGP key: http://www.orbita1.ru/~pazke/AndreyPanin.asc
--- /linux/arch/i386/kernel/pci-pc.c.orig       Mon Feb 12 02:06:24 2001
+++ /linux/arch/i386/kernel/pci-pc.c    Mon Feb 12 02:08:51 2001
@@ -950,6 +950,26 @@
        }
 }
 
+static void __init pci_fixup_via_acpi(struct pci_dev *d)
+{
+       /*
+        * VIA ACPI device: IRQ line in PCI config byte 0x42
+        */
+       u8 irq;
+       pci_read_config_byte(d, 0x42, &irq);
+       irq &= 0x0f;
+       if (irq && (irq != 2))
+               d->irq = irq;
+}
+
+static void __init pci_fixup_piix4_acpi(struct pci_dev *d)
+{
+       /*
+        * PIIX4 ACPI device: hardwired IRQ9
+        */
+       d->irq = 9;
+}
+
 struct pci_fixup pcibios_fixups[] = {
        { PCI_FIXUP_HEADER,     PCI_VENDOR_ID_INTEL,    PCI_DEVICE_ID_INTEL_82451NX,   
 pci_fixup_i450nx },
        { PCI_FIXUP_HEADER,     PCI_VENDOR_ID_INTEL,    PCI_DEVICE_ID_INTEL_82454GX,   
 pci_fixup_i450gx },
@@ -963,6 +983,9 @@
        { PCI_FIXUP_HEADER,     PCI_VENDOR_ID_SI,       PCI_DEVICE_ID_SI_5597,         
 pci_fixup_latency },
        { PCI_FIXUP_HEADER,     PCI_VENDOR_ID_SI,       PCI_DEVICE_ID_SI_5598,         
 pci_fixup_latency },
        { PCI_FIXUP_HEADER,     PCI_VENDOR_ID_VIA,      PCI_DEVICE_ID_VIA_8363_0,      
 pci_fixup_vt8363 },
+       { PCI_FIXUP_HEADER,     PCI_VENDOR_ID_VIA,      PCI_DEVICE_ID_VIA_82C586_3,    
+ pci_fixup_via_acpi },
+       { PCI_FIXUP_HEADER,     PCI_VENDOR_ID_VIA,      PCI_DEVICE_ID_VIA_82C686_4,    
+ pci_fixup_via_acpi },
+       { PCI_FIXUP_HEADER,     PCI_VENDOR_ID_INTEL,    PCI_DEVICE_ID_INTEL_82371AB_3, 
+ pci_fixup_piix4_acpi },
        { 0 }
 };
 

PGP signature

Reply via email to