diff options
author | Suresh Siddha <suresh.b.siddha@intel.com> | 2011-05-19 23:45:46 (GMT) |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2011-05-20 11:41:04 (GMT) |
commit | 9ebd680bd029a9fc47399ca61c950f8b6730ac40 (patch) | |
tree | 41b5c8ae4a13b51536ead20f6e4b4b380748072a /arch/x86/kernel/apic/x2apic_phys.c | |
parent | 8f18c9711ed31c257d4f00a094b2fdbe72a741da (diff) | |
download | linux-9ebd680bd029a9fc47399ca61c950f8b6730ac40.tar.xz |
x86, apic: Use probe routines to simplify apic selection
Use the unused probe routine in the apic driver to finalize the
apic model selection. This cleans up the
default_setup_apic_routing() and this probe routine in future
can also be used for doing any apic model specific
initialisation.
Signed-off-by: Suresh Siddha <suresh.b.siddha@intel.com>
Acked-by: Cyrill Gorcunov <gorcunov@openvz.org>
Cc: steiner@sgi.com
Cc: yinghai@kernel.org
Link: http://lkml.kernel.org/r/20110519234637.247458931@sbsiddha-MOBL3.sc.intel.com
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/x86/kernel/apic/x2apic_phys.c')
-rw-r--r-- | arch/x86/kernel/apic/x2apic_phys.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/arch/x86/kernel/apic/x2apic_phys.c b/arch/x86/kernel/apic/x2apic_phys.c index c7e6d66..8f21771 100644 --- a/arch/x86/kernel/apic/x2apic_phys.c +++ b/arch/x86/kernel/apic/x2apic_phys.c @@ -173,10 +173,18 @@ static void init_x2apic_ldr(void) { } +static int x2apic_phys_probe(void) +{ + if (x2apic_mode && x2apic_phys) + return 1; + + return apic == &apic_x2apic_phys; +} + struct apic apic_x2apic_phys = { .name = "physical x2apic", - .probe = NULL, + .probe = x2apic_phys_probe, .acpi_madt_oem_check = x2apic_acpi_madt_oem_check, .apic_id_registered = x2apic_apic_id_registered, |