diff options
author | Glauber de Oliveira Costa <gcosta@redhat.com> | 2008-03-19 14:25:49 -0300 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-04-17 17:41:02 +0200 |
commit | ac60aae561fff99d38beba82d84277b12437c05e (patch) | |
tree | c9e40b476e3e75bd5155ac0c755fc88ddfbfe80e /arch/x86/kernel/apic_32.c | |
parent | df7939ae8bee101d9d79d104e17f14b60845cf0f (diff) | |
download | op-kernel-dev-ac60aae561fff99d38beba82d84277b12437c05e.zip op-kernel-dev-ac60aae561fff99d38beba82d84277b12437c05e.tar.gz |
x86: provide an end_local_APIC_setup function
It splits setup_local_APIC in two, providing a function corresponding
to the ending part of it. As a side effect, smp_callin looks the same
between i386 and x86_64.
Signed-off-by: Glauber Costa <gcosta@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/x86/kernel/apic_32.c')
-rw-r--r-- | arch/x86/kernel/apic_32.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/arch/x86/kernel/apic_32.c b/arch/x86/kernel/apic_32.c index 80c81c7..6f50602 100644 --- a/arch/x86/kernel/apic_32.c +++ b/arch/x86/kernel/apic_32.c @@ -1064,9 +1064,13 @@ void __cpuinit setup_local_APIC(void) if (!integrated) /* 82489DX */ value |= APIC_LVT_LEVEL_TRIGGER; apic_write_around(APIC_LVT1, value); +} - lapic_setup_esr(); +void __cpuinit end_local_APIC_setup(void) +{ + unsigned long value; + lapic_setup_esr(); /* Disable the local apic timer */ value = apic_read(APIC_LVTT); value |= (APIC_LVT_MASKED | LOCAL_TIMER_VECTOR); @@ -1256,6 +1260,7 @@ int __init APIC_init_uniprocessor(void) setup_local_APIC(); + end_local_APIC_setup(); #ifdef CONFIG_X86_IO_APIC if (smp_found_config) if (!skip_ioapic_setup && nr_ioapics) |