From: ES7000 platform code clean up for compilation errors and a warning. Ifdef'd the ACPI related parts in the ES7000 platform code. They were causing compile errors in certain configuration (without ACPI defined). I think this approach would be best (as opposed to Kconfig changes) since it only touches the subarch... Signed-off-by: Signed-off-by: Andrew Morton --- arch/i386/kernel/mpparse.c | 4 ++-- arch/i386/mach-es7000/es7000.h | 5 ++++- arch/i386/mach-es7000/es7000plat.c | 6 ++---- include/asm-i386/mach-es7000/mach_mpparse.h | 10 ++++++++-- 4 files changed, 16 insertions(+), 9 deletions(-) diff -puN arch/i386/kernel/mpparse.c~compilation-fix-for-es7000-when-no-acpi-is-specified-in-config-i386 arch/i386/kernel/mpparse.c --- devel/arch/i386/kernel/mpparse.c~compilation-fix-for-es7000-when-no-acpi-is-specified-in-config-i386 2006-02-27 20:57:59.000000000 -0800 +++ devel-akpm/arch/i386/kernel/mpparse.c 2006-02-27 20:57:59.000000000 -0800 @@ -828,6 +828,8 @@ void __init find_smp_config (void) smp_scan_config(address, 0x400); } +int es7000_plat; + /* -------------------------------------------------------------------------- ACPI-based MP Configuration -------------------------------------------------------------------------- */ @@ -1011,8 +1013,6 @@ void __init mp_override_legacy_irq ( return; } -int es7000_plat; - void __init mp_config_acpi_legacy_irqs (void) { struct mpc_config_intsrc intsrc; diff -puN arch/i386/mach-es7000/es7000.h~compilation-fix-for-es7000-when-no-acpi-is-specified-in-config-i386 arch/i386/mach-es7000/es7000.h --- devel/arch/i386/mach-es7000/es7000.h~compilation-fix-for-es7000-when-no-acpi-is-specified-in-config-i386 2006-02-27 20:57:59.000000000 -0800 +++ devel-akpm/arch/i386/mach-es7000/es7000.h 2006-02-27 20:57:59.000000000 -0800 @@ -83,6 +83,7 @@ struct es7000_oem_table { struct psai psai; }; +#ifdef CONFIG_ACPI struct acpi_table_sdt { unsigned long pa; unsigned long count; @@ -99,6 +100,9 @@ struct oem_table { u32 OEMTableSize; }; +extern int find_unisys_acpi_oem_table(unsigned long *oem_addr); +#endif + struct mip_reg { unsigned long long off_0; unsigned long long off_8; @@ -114,7 +118,6 @@ struct mip_reg { #define MIP_FUNC(VALUE) (VALUE & 0xff) extern int parse_unisys_oem (char *oemptr); -extern int find_unisys_acpi_oem_table(unsigned long *oem_addr); extern void setup_unisys(void); extern int es7000_start_cpu(int cpu, unsigned long eip); extern void es7000_sw_apic(void); diff -puN arch/i386/mach-es7000/es7000plat.c~compilation-fix-for-es7000-when-no-acpi-is-specified-in-config-i386 arch/i386/mach-es7000/es7000plat.c --- devel/arch/i386/mach-es7000/es7000plat.c~compilation-fix-for-es7000-when-no-acpi-is-specified-in-config-i386 2006-02-27 20:57:59.000000000 -0800 +++ devel-akpm/arch/i386/mach-es7000/es7000plat.c 2006-02-27 20:57:59.000000000 -0800 @@ -51,8 +51,6 @@ struct mip_reg *host_reg; int mip_port; unsigned long mip_addr, host_addr; -#if defined(CONFIG_X86_IO_APIC) && defined(CONFIG_ACPI) - /* * GSI override for ES7000 platforms. */ @@ -76,8 +74,6 @@ es7000_rename_gsi(int ioapic, int gsi) return gsi; } -#endif /* (CONFIG_X86_IO_APIC) && (CONFIG_ACPI) */ - void __init setup_unisys(void) { @@ -160,6 +156,7 @@ parse_unisys_oem (char *oemptr) return es7000_plat; } +#ifdef CONFIG_ACPI int __init find_unisys_acpi_oem_table(unsigned long *oem_addr) { @@ -212,6 +209,7 @@ find_unisys_acpi_oem_table(unsigned long } return -1; } +#endif static void es7000_spin(int n) diff -puN include/asm-i386/mach-es7000/mach_mpparse.h~compilation-fix-for-es7000-when-no-acpi-is-specified-in-config-i386 include/asm-i386/mach-es7000/mach_mpparse.h --- devel/include/asm-i386/mach-es7000/mach_mpparse.h~compilation-fix-for-es7000-when-no-acpi-is-specified-in-config-i386 2006-02-27 20:57:59.000000000 -0800 +++ devel-akpm/include/asm-i386/mach-es7000/mach_mpparse.h 2006-02-27 20:57:59.000000000 -0800 @@ -30,7 +30,8 @@ static inline int mps_oem_check(struct m return 0; } -static inline int es7000_check_dsdt() +#ifdef CONFIG_ACPI +static inline int es7000_check_dsdt(void) { struct acpi_table_header *header = NULL; if(!acpi_get_table_header_early(ACPI_DSDT, &header)) @@ -54,6 +55,11 @@ static inline int acpi_madt_oem_check(ch } return 0; } - +#else +static inline int acpi_madt_oem_check(char *oem_id, char *oem_table_id) +{ + return 0; +} +#endif #endif /* __ASM_MACH_MPPARSE_H */ _