summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/cpu/x86/mp_init.c17
1 files changed, 7 insertions, 10 deletions
diff --git a/src/cpu/x86/mp_init.c b/src/cpu/x86/mp_init.c
index 806fc98123..fd2add0b9b 100644
--- a/src/cpu/x86/mp_init.c
+++ b/src/cpu/x86/mp_init.c
@@ -486,19 +486,16 @@ static enum cb_err start_aps(struct bus *cpu_bus, int ap_count, atomic_t *num_ap
if (!CONFIG(X86_AMD_INIT_SIPI)) {
printk(BIOS_DEBUG, "Waiting for 10ms after sending INIT.\n");
mdelay(10);
- }
-
- /* Send 1st Startup IPI (SIPI) */
- if (send_sipi_to_aps(ap_count, num_aps, sipi_vector) != CB_SUCCESS)
- return CB_ERR;
- /* Wait for CPUs to check in up to 200 us. */
- wait_for_aps(num_aps, ap_count, 200 /* us */, 15 /* us */);
+ /* Send 1st Startup IPI (SIPI) */
+ if (send_sipi_to_aps(ap_count, num_aps, sipi_vector) != CB_SUCCESS)
+ return CB_ERR;
- if (CONFIG(X86_AMD_INIT_SIPI))
- return CB_SUCCESS;
+ /* Wait for CPUs to check in up to 200 us. */
+ wait_for_aps(num_aps, ap_count, 200 /* us */, 15 /* us */);
+ }
- /* Send 2nd SIPI */
+ /* Send final SIPI */
if (send_sipi_to_aps(ap_count, num_aps, sipi_vector) != CB_SUCCESS)
return CB_ERR;