diff options
author | Yinghai Lu <yhlu.kernel@gmail.com> | 2008-07-19 02:07:25 -0700 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-07-20 09:18:17 +0200 |
commit | 3c9cb6de1e5ad37d1558fdb0d9d2bed5a7bac0d9 (patch) | |
tree | f579e0c0a09c6df7fc0fbf6e8008920eec325e2b /arch/x86/kernel/mpparse.c | |
parent | 5f1f2b3d9dbaee82cd532f28da459adcbf611499 (diff) | |
download | blackbird-obmc-linux-3c9cb6de1e5ad37d1558fdb0d9d2bed5a7bac0d9.tar.gz blackbird-obmc-linux-3c9cb6de1e5ad37d1558fdb0d9d2bed5a7bac0d9.zip |
x86: introduce x86_quirks
introduce x86_quirks array of boot-time quirk methods.
No change in functionality intended.
Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/x86/kernel/mpparse.c')
-rw-r--r-- | arch/x86/kernel/mpparse.c | 17 |
1 files changed, 5 insertions, 12 deletions
diff --git a/arch/x86/kernel/mpparse.c b/arch/x86/kernel/mpparse.c index 3b25e49380c6..3cbd2df3abe4 100644 --- a/arch/x86/kernel/mpparse.c +++ b/arch/x86/kernel/mpparse.c @@ -27,6 +27,7 @@ #include <asm/bios_ebda.h> #include <asm/e820.h> #include <asm/trampoline.h> +#include <asm/setup.h> #include <mach_apic.h> #ifdef CONFIG_X86_32 @@ -726,20 +727,14 @@ static inline void __init construct_default_ISA_mptable(int mpc_default_type) static struct intel_mp_floating *mpf_found; /* - * Machine specific quirk for finding the SMP config before other setup - * activities destroy the table: - */ -int (*mach_get_smp_config_quirk)(unsigned int early); - -/* * Scan the memory blocks for an SMP configuration block. */ static void __init __get_smp_config(unsigned int early) { struct intel_mp_floating *mpf = mpf_found; - if (mach_get_smp_config_quirk) { - if (mach_get_smp_config_quirk(early)) + if (x86_quirks->mach_get_smp_config) { + if (x86_quirks->mach_get_smp_config(early)) return; } if (acpi_lapic && early) @@ -899,14 +894,12 @@ static int __init smp_scan_config(unsigned long base, unsigned long length, return 0; } -int (*mach_find_smp_config_quirk)(unsigned int reserve); - static void __init __find_smp_config(unsigned int reserve) { unsigned int address; - if (mach_find_smp_config_quirk) { - if (mach_find_smp_config_quirk(reserve)) + if (x86_quirks->mach_find_smp_config) { + if (x86_quirks->mach_find_smp_config(reserve)) return; } /* |