soc/intel/xeon_sp/cpx: Fix loading MCU on APs
Commit 393992f
(cpu/mp_init: Fix microcode lock) fixed the semantics
of parallel loading microcode updates.
So now '*parallel = 1' really means loading MCU in parallel, which
seems to fail inconsistently on around 10% of the APs.
Change-Id: I755dd302abbb58537d840852e8e290bea282a674
Signed-off-by: Arthur Heymans <arthur@aheymans.xyz>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/49671
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
This commit is contained in:
parent
a626d2ed6f
commit
8331833c89
|
@ -51,10 +51,15 @@ static void xeon_configure_mca(void)
|
||||||
mca_configure();
|
mca_configure();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* On server platforms the FIT mechanism only updates the microcode on
|
||||||
|
* the BSP. Loading MCU on AP in parallel seems to fail in 10% of the cases
|
||||||
|
* so do it serialized.
|
||||||
|
*/
|
||||||
void get_microcode_info(const void **microcode, int *parallel)
|
void get_microcode_info(const void **microcode, int *parallel)
|
||||||
{
|
{
|
||||||
*microcode = intel_mp_current_microcode();
|
*microcode = intel_mp_current_microcode();
|
||||||
*parallel = 1;
|
*parallel = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
const void *intel_mp_current_microcode(void)
|
const void *intel_mp_current_microcode(void)
|
||||||
|
|
Loading…
Reference in New Issue