diff options
Diffstat (limited to 'src/cpu/x86/lapic/lapic_cpu_init.c')
-rw-r--r-- | src/cpu/x86/lapic/lapic_cpu_init.c | 24 |
1 files changed, 12 insertions, 12 deletions
diff --git a/src/cpu/x86/lapic/lapic_cpu_init.c b/src/cpu/x86/lapic/lapic_cpu_init.c index 83be53b22d..ce4d0f588e 100644 --- a/src/cpu/x86/lapic/lapic_cpu_init.c +++ b/src/cpu/x86/lapic/lapic_cpu_init.c @@ -541,18 +541,18 @@ void initialize_cpus(struct bus *cpu_bus) /* Find the info struct for this CPU */ info = cpu_info(); -#if NEED_LAPIC == 1 - /* Ensure the local APIC is enabled */ - 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; -#endif + if (need_lapic_init()) { + /* Ensure the local APIC is enabled */ + 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; + } /* Find the device structure for the boot CPU */ info->cpu = alloc_find_dev(cpu_bus, &cpu_path); |