Furquan Shaikh has uploaded this change for review.

View Change

cpu/x86/mp_init: Increase AP check-in timeout to 1second

Currently, the AP check-in timeout in bsp_do_flight_plan is set to
100ms. However, as the number of APs increases, contention could
increase especially for resource like UART. This led to MP record
timeout issues on KBL platform with 7 APs and serial-console enabled
BIOS image.

This change increases the timeout value to 1 second to be on the safer
side and let APs check-in before continuing boot.

BUG=b:74085891
TEST=Verified that MP record timeout is not observed anymore on Nami.

Change-Id: I979c11a10e6888aef0f71b5632ea803a67bbb0ff
Signed-off-by: Furquan Shaikh <furquan@google.com>
---
M src/cpu/x86/mp_init.c
1 file changed, 6 insertions(+), 1 deletion(-)

git pull ssh://review.coreboot.org:29418/coreboot refs/changes/65/24965/1
diff --git a/src/cpu/x86/mp_init.c b/src/cpu/x86/mp_init.c
index 92eb722..06e30b6 100644
--- a/src/cpu/x86/mp_init.c
+++ b/src/cpu/x86/mp_init.c
@@ -539,7 +539,12 @@
{
int i;
int ret = 0;
- const int timeout_us = 100000;
+ /*
+ * Set timeout to wait for APs to a huge value (=1 second) since it
+ * could take a longer time for APs to check-in as the number of APs
+ * increases (contention for resources like UART also increases).
+ */
+ const int timeout_us = 1000000;
const int step_us = 100;
int num_aps = mp_params->num_cpus - 1;


To view, visit change 24965. To unsubscribe, or for help writing mail filters, visit settings.

Gerrit-Project: coreboot
Gerrit-Branch: master
Gerrit-MessageType: newchange
Gerrit-Change-Id: I979c11a10e6888aef0f71b5632ea803a67bbb0ff
Gerrit-Change-Number: 24965
Gerrit-PatchSet: 1
Gerrit-Owner: Furquan Shaikh <furquan@google.com>