diff options
Diffstat (limited to 'src/cpu')
-rw-r--r-- | src/cpu/x86/lapic/lapic_cpu_init.c | 15 |
1 files changed, 5 insertions, 10 deletions
diff --git a/src/cpu/x86/lapic/lapic_cpu_init.c b/src/cpu/x86/lapic/lapic_cpu_init.c index ba88a3662d..589b8fa0dc 100644 --- a/src/cpu/x86/lapic/lapic_cpu_init.c +++ b/src/cpu/x86/lapic/lapic_cpu_init.c @@ -506,18 +506,13 @@ void initialize_cpus(struct bus *cpu_bus) /* Find the info struct for this CPU */ info = cpu_info(); - if (need_lapic_init()) { - /* Ensure the local APIC is enabled */ + /* Ensure the local APIC is enabled */ + if (is_smp_boot()) enable_lapic(); - /* Get the device path of the boot CPU */ - cpu_path.type = DEVICE_PATH_APIC; - cpu_path.apic.apic_id = lapicid(); - } else { - /* Get the device path of the boot CPU */ - cpu_path.type = DEVICE_PATH_CPU; - cpu_path.cpu.id = 0; - } + /* Get the device path of the boot CPU */ + cpu_path.type = DEVICE_PATH_APIC; + cpu_path.apic.apic_id = lapicid(); /* Find the device structure for the boot CPU */ info->cpu = alloc_find_dev(cpu_bus, &cpu_path); |