aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKyösti Mälkki <kyosti.malkki@gmail.com>2021-05-29 22:22:57 +0300
committerKyösti Mälkki <kyosti.malkki@gmail.com>2021-06-07 21:05:23 +0000
commit176989a48b95ccb92c0aab9b1a557e6b72871211 (patch)
tree6bdbad4647599761388723b20c7fdd9d3b5bad87
parent75363a93f1e585f2676473eeaba6943d945232ff (diff)
cpu/x86/lapic: Drop parallel_cpu_init inside LEGACY_SMP_INIT
It was not used, platforms should move away from LEGACY_SMP_INIT instead of maintaining this. Change-Id: Id89ec4bb0bdc056ac328f31397e4fab02742e444 Signed-off-by: Kyösti Mälkki <kyosti.malkki@gmail.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/55204 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Arthur Heymans <arthur@aheymans.xyz> Reviewed-by: Angel Pons <th3fanbus@gmail.com>
-rw-r--r--src/cpu/x86/lapic/lapic_cpu_init.c20
1 files changed, 4 insertions, 16 deletions
diff --git a/src/cpu/x86/lapic/lapic_cpu_init.c b/src/cpu/x86/lapic/lapic_cpu_init.c
index 8edb7d7555..29f3724b18 100644
--- a/src/cpu/x86/lapic/lapic_cpu_init.c
+++ b/src/cpu/x86/lapic/lapic_cpu_init.c
@@ -21,8 +21,6 @@
#include <stdlib.h>
#include <thread.h>
-const int parallel_cpu_init = false;
-
/* This is a lot more paranoid now, since Linux can NOT handle
* being told there is a CPU when none exists. So any errors
* will return 0, meaning no CPU.
@@ -392,8 +390,7 @@ asmlinkage void secondary_cpu_init(unsigned int index)
{
atomic_inc(&active_cpus);
- if (!parallel_cpu_init)
- spin_lock(&start_cpu_lock);
+ spin_lock(&start_cpu_lock);
#ifdef __SSE3__
/*
@@ -407,8 +404,7 @@ asmlinkage void secondary_cpu_init(unsigned int index)
#endif
cpu_initialize(index);
- if (!parallel_cpu_init)
- spin_unlock(&start_cpu_lock);
+ spin_unlock(&start_cpu_lock);
atomic_dec(&active_cpus);
@@ -424,9 +420,6 @@ static void start_other_cpus(struct bus *cpu_bus, struct device *bsp_cpu)
if (cpu->path.type != DEVICE_PATH_APIC)
continue;
- if (parallel_cpu_init && (cpu == bsp_cpu))
- continue;
-
if (!cpu->enabled)
continue;
@@ -438,8 +431,7 @@ static void start_other_cpus(struct bus *cpu_bus, struct device *bsp_cpu)
printk(BIOS_ERR, "CPU 0x%02x would not start!\n",
cpu->path.apic.apic_id);
- if (!parallel_cpu_init)
- udelay(10);
+ udelay(10);
}
}
@@ -542,14 +534,10 @@ void initialize_cpus(struct bus *cpu_bus)
if (!CONFIG(SERIALIZED_SMM_INITIALIZATION))
smm_init();
- /* start all aps at first, so we can init ECC all together */
- if (is_smp_boot() && parallel_cpu_init)
- start_other_cpus(cpu_bus, info->cpu);
-
/* Initialize the bootstrap processor */
cpu_initialize(0);
- if (is_smp_boot() && !parallel_cpu_init)
+ if (is_smp_boot())
start_other_cpus(cpu_bus, info->cpu);
/* Now wait the rest of the cpus stop*/