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:
@@ -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;
|
||||
|
||||
|
||||
@@ -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;
|
||||
|
||||
|
||||
@@ -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;
|
||||
|
||||
|
||||
@@ -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;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user