cpu/x86/lapic: Move LAPIC configuration to MP init

Implementation for setup_lapic() did two things -- call
enable_lapic() and virtual_wire_mode_init().

In PARALLEL_MP case enable_lapic() was redundant as it
was already executed prior to initialize_cpu() call.
For the !PARALLEL_MP case enable_lapic() is added to
AP CPUs.

Change-Id: I5caf94315776a499e9cf8f007251b61f51292dc5
Signed-off-by: Kyösti Mälkki <kyosti.malkki@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/58387
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Arthur Heymans <arthur@aheymans.xyz>
This commit is contained in:
Kyösti Mälkki
2021-10-17 08:34:31 +03:00
parent 7261b5ade5
commit 9ec7227c9b
42 changed files with 12 additions and 143 deletions

View File

@@ -7,7 +7,6 @@
#include <cpu/amd/mtrr.h>
#include <device/device.h>
#include <cpu/x86/pae.h>
#include <cpu/x86/lapic.h>
#include <cpu/cpu.h>
#include <cpu/x86/cache.h>
#include <acpi/acpi.h>
@@ -57,9 +56,6 @@ static void model_14_init(struct device *dev)
/* zero the machine check error status registers */
mca_clear_status();
/* Enable the local CPU APICs */
setup_lapic();
#if CONFIG(LOGICAL_CPUS)
siblings = cpuid_ecx(0x80000008) & 0xff;

View File

@@ -8,7 +8,6 @@
#include <cpu/x86/smm.h>
#include <device/device.h>
#include <cpu/x86/pae.h>
#include <cpu/x86/lapic.h>
#include <cpu/cpu.h>
#include <cpu/x86/cache.h>
#include <acpi/acpi.h>
@@ -59,9 +58,6 @@ static void model_15_init(struct device *dev)
/* zero the machine check error status registers */
mca_clear_status();
/* Enable the local CPU APICs */
setup_lapic();
#if CONFIG(LOGICAL_CPUS)
siblings = cpuid_ecx(0x80000008) & 0xff;

View File

@@ -7,7 +7,6 @@
#include <cpu/amd/mtrr.h>
#include <device/device.h>
#include <cpu/x86/pae.h>
#include <cpu/x86/lapic.h>
#include <cpu/cpu.h>
#include <cpu/x86/cache.h>
#include <acpi/acpi.h>
@@ -57,9 +56,6 @@ static void model_16_init(struct device *dev)
/* zero the machine check error status registers */
mca_clear_status();
/* Enable the local CPU APICs */
setup_lapic();
#if CONFIG(LOGICAL_CPUS)
siblings = cpuid_ecx(0x80000008) & 0xff;

View File

@@ -11,7 +11,6 @@
#include <device/device.h>
#include <device/pci.h>
#include <cpu/x86/pae.h>
#include <cpu/x86/lapic.h>
#include <cpu/cpu.h>
#include <cpu/x86/cache.h>
#include <smp/node.h>
@@ -26,9 +25,6 @@ static void model_16_init(struct device *dev)
/* zero the machine check error status registers */
mca_clear_status();
/* Enable the local CPU APICs */
setup_lapic();
if (CONFIG(LOGICAL_CPUS)) {
siblings = cpuid_ecx(0x80000008) & 0xff;