Patrick Rudolph has uploaded this change for review. ( https://review.coreboot.org/c/coreboot/+/73369 )
Change subject: mp_init: Wait longer for APs to check in ......................................................................
mp_init: Wait longer for APs to check in
On IBM/SBP1 with 384 cores it takes a while for all APs to check int. Use linear scaling instead of hardcoding an arbitrary limit.
Change-Id: If020a3fa985bfc7fd2f0aa836dc04e6647a1a450 Signed-off-by: Patrick Rudolph patrick.rudolph@9elements.com --- M src/cpu/x86/mp_init.c 1 file changed, 15 insertions(+), 1 deletion(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/69/73369/1
diff --git a/src/cpu/x86/mp_init.c b/src/cpu/x86/mp_init.c index 8c48f90..6ea86b8 100644 --- a/src/cpu/x86/mp_init.c +++ b/src/cpu/x86/mp_init.c @@ -479,7 +479,7 @@ return CB_ERR;
/* Wait for CPUs to check in. */ - if (wait_for_aps(num_aps, ap_count, 400000 /* 400 ms */, 50 /* us */) != CB_SUCCESS) { + if (wait_for_aps(num_aps, ap_count, 50000 * ap_count /* 50 ms per AP */, 50 /* us */) != CB_SUCCESS) { printk(BIOS_ERR, "Not all APs checked in: %d/%d.\n", atomic_read(num_aps), ap_count); return CB_ERR;