summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorArthur Heymans <arthur@aheymans.xyz>2022-05-31 17:47:56 +0200
committerPaul Fagerburg <pfagerburg@chromium.org>2022-06-02 16:00:06 +0000
commit3f6ff24e57e1a4d16f4f43bf08d69492754498ea (patch)
tree40f45dfb57a49f9f54fec7c7f205aa84b33480ca /src
parentfd7a6946d76829bbf46a1fc96bbdbc4079e2b249 (diff)
cpu/x86/mp_init.c: Prolong delay on synchronous API
When each AP needs to do a lot of printing 1 sec is not enough. Change-Id: I00f0a49bf60f3915547924c34a62dd0044b0c918 Signed-off-by: Arthur Heymans <arthur@aheymans.xyz> Reviewed-on: https://review.coreboot.org/c/coreboot/+/64828 Reviewed-by: Subrata Banik <subratabanik@google.com> Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Kane Chen <kane.chen@intel.corp-partner.google.com>
Diffstat (limited to 'src')
-rw-r--r--src/cpu/x86/mp_init.c4
-rw-r--r--src/include/cpu/x86/mp.h2
2 files changed, 3 insertions, 3 deletions
diff --git a/src/cpu/x86/mp_init.c b/src/cpu/x86/mp_init.c
index e4e662e9ad..7cc7fbcd18 100644
--- a/src/cpu/x86/mp_init.c
+++ b/src/cpu/x86/mp_init.c
@@ -1041,9 +1041,9 @@ enum cb_err mp_run_on_all_cpus_synchronously(void (*func)(void *), void *arg)
/* Run on BSP first. */
func(arg);
- /* For up to 1 second for AP to finish previous work. */
+ /* For up to 1 second per AP (console can be slow) to finish previous work. */
return mp_run_on_aps_and_wait_for_complete(func, arg, MP_RUN_ON_ALL_CPUS,
- 1000 * USECS_PER_MSEC);
+ 1000 * USECS_PER_MSEC * global_num_aps);
}
enum cb_err mp_park_aps(void)
diff --git a/src/include/cpu/x86/mp.h b/src/include/cpu/x86/mp.h
index aea3ca1e3d..8ee7d02431 100644
--- a/src/include/cpu/x86/mp.h
+++ b/src/include/cpu/x86/mp.h
@@ -122,7 +122,7 @@ enum cb_err mp_run_on_all_aps(void (*func)(void *), void *arg, long expire_us,
enum cb_err mp_run_on_all_cpus(void (*func)(void *), void *arg);
/* Like mp_run_on_all_cpus but make sure all APs finish executing the
- function call. The time limit on a function call is 1 second. */
+ function call. The time limit on a function call is 1 second per AP. */
enum cb_err mp_run_on_all_cpus_synchronously(void (*func)(void *), void *arg);
/*