From: William Lee Irwin III While sweeping the APIC code two points were missed. The first is getting the definition of BAD_APICID available to include/asm-i386/mach-default/mach_apic.h by #including the right header, and the second is UP local APIC without UP IO-APIC linking in get_broadcast_physid(). Signed-off-by: Andrew Morton --- 25-akpm/arch/i386/kernel/apic.c | 11 +++++++++++ 25-akpm/arch/i386/kernel/io_apic.c | 11 ----------- 25-akpm/include/asm-i386/mach-default/mach_apic.h | 1 + 3 files changed, 12 insertions(+), 11 deletions(-) diff -puN arch/i386/kernel/apic.c~apic-make-mach_default-compile-again arch/i386/kernel/apic.c --- 25/arch/i386/kernel/apic.c~apic-make-mach_default-compile-again Wed Jun 9 14:46:02 2004 +++ 25-akpm/arch/i386/kernel/apic.c Wed Jun 9 14:46:02 2004 @@ -80,6 +80,17 @@ void enable_NMI_through_LVT0 (void * dum apic_write_around(APIC_LVT0, v); } +int get_physical_broadcast(void) +{ + unsigned int lvr, version; + lvr = apic_read(APIC_LVR); + version = GET_APIC_VERSION(lvr); + if (version >= 0x14) + return 0xff; + else + return 0xf; +} + int get_maxlvt(void) { unsigned int v, ver, maxlvt; diff -puN arch/i386/kernel/io_apic.c~apic-make-mach_default-compile-again arch/i386/kernel/io_apic.c --- 25/arch/i386/kernel/io_apic.c~apic-make-mach_default-compile-again Wed Jun 9 14:46:02 2004 +++ 25-akpm/arch/i386/kernel/io_apic.c Wed Jun 9 14:46:02 2004 @@ -722,17 +722,6 @@ static int __init ioapic_pirq_setup(char __setup("pirq=", ioapic_pirq_setup); -int get_physical_broadcast(void) -{ - unsigned int lvr, version; - lvr = apic_read(APIC_LVR); - version = GET_APIC_VERSION(lvr); - if (version >= 0x14) - return 0xff; - else - return 0xf; -} - /* * Find the IRQ entry number of a certain pin. */ diff -puN include/asm-i386/mach-default/mach_apic.h~apic-make-mach_default-compile-again include/asm-i386/mach-default/mach_apic.h --- 25/include/asm-i386/mach-default/mach_apic.h~apic-make-mach_default-compile-again Wed Jun 9 14:46:02 2004 +++ 25-akpm/include/asm-i386/mach-default/mach_apic.h Wed Jun 9 14:46:02 2004 @@ -2,6 +2,7 @@ #define __ASM_MACH_APIC_H #include +#include #define APIC_DFR_VALUE (APIC_DFR_FLAT) _