Hello all,
The following patch seems to fix the 'apic_sis_bug undeclared' error
within include/asm-i386/io_apic.h . (I'm still compiling
2.5.49-ac1). sis_apic_bug is defined in
arch/i386/kernel/io_apic.c . Please review.
Regards,
Frank
--- linux/include/asm-i386/io_apic.h.old Mon Nov 25 21:24:21 2002
+++ linux/include/asm-i386/io_apic.h Mon Nov 25 21:22:17 2002
@@ -10,6 +10,7 @@
*
* Copyright (C) 1997, 1998, 1999, 2000 Ingo Molnar
*/
+extern int sis_apic_bug;
#ifdef CONFIG_X86_IO_APIC
@@ -125,7 +126,7 @@
*/
static inline void io_apic_modify(unsigned int apic, unsigned int reg, unsigned int value)
{
- if(apic_sis_bug)
+ if(sis_apic_bug)
*IO_APIC_BASE(apic) = reg;
*(IO_APIC_BASE(apic)+4) = value;
}
I had to work a slightly larger patch than Frank. Note that I am assuming that
s/PCI_VENDOR_ID_SIS/PCI_VENDOR_ID_SI/ is correct, as PCI_VENDOR_ID_SIS shows up
nowhere in the kernel tree.
Please CC me in all replies.
Justin
diff -Naur linux.2.5.49-ac1/drivers/pci/quirks.c linux.2.5.49-ac1-jp/drivers/pci/quirks.c
--- linux.2.5.49-ac1/drivers/pci/quirks.c 2002-11-26 00:28:18.000000000 -0500
+++ linux.2.5.49-ac1-jp/drivers/pci/quirks.c 2002-11-26 00:20:47.000000000 -0500
@@ -19,6 +19,8 @@
#include <linux/init.h>
#include <linux/delay.h>
+static int sis_apic_bug;
+
#undef DEBUG
/* Deal with broken BIOS'es that neglect to enable passive release,
@@ -351,7 +353,7 @@
static void __init quirk_ioapic_rmw(struct pci_dev *dev)
{
if(dev->devfn == 0 && dev->bus->number == 0)
- apic_sys_bug = 1;
+ sis_apic_bug = 1;
}
@@ -561,7 +563,7 @@
#ifdef CONFIG_X86_IO_APIC
{ PCI_FIXUP_FINAL, PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_82C686, quirk_via_ioapic },
{ PCI_FIXUP_FINAL, PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_VIPER_7410, quirk_amd_ioapic },
- { PCI_FIXUP_FINAL, PCI_VENDOR_ID_SIS, PCI_ANY_ID, quirk_ioapic_rmw },
+ { PCI_FIXUP_FINAL, PCI_VENDOR_ID_SI, PCI_ANY_ID, quirk_ioapic_rmw },
#endif
{ PCI_FIXUP_HEADER, PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_82C586_3, quirk_via_acpi },
{ PCI_FIXUP_HEADER, PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_82C686_4, quirk_via_acpi },
diff -Naur linux.2.5.49-ac1/include/asm-i386/io_apic.h linux.2.5.49-ac1-jp/include/asm-i386/io_apic.h
--- linux.2.5.49-ac1/include/asm-i386/io_apic.h 2002-11-26 00:28:19.000000000 -0500
+++ linux.2.5.49-ac1-jp/include/asm-i386/io_apic.h 2002-11-25 23:57:35.000000000 -0500
@@ -11,6 +11,8 @@
* Copyright (C) 1997, 1998, 1999, 2000 Ingo Molnar
*/
+extern int sis_apic_bug;
+
#ifdef CONFIG_X86_IO_APIC
#define APIC_MISMATCH_DEBUG