Angel Pons has uploaded a new patch set (#17) to the change originally created by Patrick Rudolph. ( https://review.coreboot.org/c/coreboot/+/35739 )
Change subject: soc/intel/common/block: Serialize microcode updates for HT threads ......................................................................
soc/intel/common/block: Serialize microcode updates for HT threads
On HyperThreading-enabled platforms, update the microcode on a core serialized for threads running on that core. This prevents the "microcode: Update failed" error seen in the console log on boards with multiple cores and HyperThreading enabled.
The SDM and most of the BWGs suggest doing this.
Tested on out-of-tree Skylake-U board, still boots.
TODO: * Fix MPinit's first microcode update * Remove comments that state microcode updates should be done after SMM setup (it should be done at end of MPinit) * Guard microcode updates on HT where required
TOTEST: Can we update the microcode on all primary threads, then on all secondary threads? This would make locking much less complex.
Change-Id: I72804753e567a137a5648ca6950009fed332531b Signed-off-by: Patrick Rudolph patrick.rudolph@9elements.com --- M src/cpu/intel/common/common.h M src/cpu/intel/common/hyperthreading.c M src/cpu/intel/microcode/microcode.c M src/include/cpu/intel/microcode.h M src/include/cpu/x86/lapic.h M src/soc/intel/common/block/cpu/Kconfig M src/soc/intel/common/block/cpu/mp_init.c M src/soc/intel/common/block/sgx/sgx.c 8 files changed, 115 insertions(+), 19 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/39/35739/17