soc/intel/mp_init: Skip before_post_cpus_init if !USE_COREBOOT_MP_INIT
This patch ensures all APs finish the task and continue before_post_cpus_init() if coreboot decides to perform multiprocessor initialization using native coreboot drivers instead of using FSP MP PPI implementation. BUG=b:233199592 TEST=Build and boot google/kano to ChromeOS. Signed-off-by: Subrata Banik <subratabanik@google.com> Change-Id: I3b76974ab19323201bf1dca9af423481a40f65c9 Reviewed-on: https://review.coreboot.org/c/coreboot/+/65173 Reviewed-by: Angel Pons <th3fanbus@gmail.com> Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
This commit is contained in:
parent
ceaf9d1169
commit
957609d00c
|
@ -183,6 +183,16 @@ static void wrapper_init_core_prmrr(void *unused)
|
|||
|
||||
void before_post_cpus_init(void)
|
||||
{
|
||||
/*
|
||||
* Ensure all APs finish the task and continue if coreboot decides to
|
||||
* perform multiprocessor initialization using native coreboot drivers
|
||||
* instead using FSP MP PPI implementation.
|
||||
*
|
||||
* Ignore if USE_COREBOOT_MP_INIT is not enabled.
|
||||
*/
|
||||
if (!CONFIG(USE_COREBOOT_MP_INIT))
|
||||
return;
|
||||
|
||||
if (mp_run_on_all_cpus(&wrapper_init_core_prmrr, NULL) != CB_SUCCESS)
|
||||
printk(BIOS_ERR, "core PRMRR sync failure\n");
|
||||
|
||||
|
|
Loading…
Reference in New Issue