coreboot/src/cpu
Arthur Heymans 56776a1ab3 soc/amd: Do SMM relocation via MSR
AMD CPUs have a convenient MSR that allows to set the SMBASE in the save
state without ever entering SMM (e.g. at the default 0x30000 address).
This has been a feature in all AMD CPUs since at least AMD K8. This
allows to do relocation in parallel in ramstage and without setting up a
relocation handler, which likely results in a speedup. The more cores
the higher the speedup as relocation was happening sequentially. On a 4
core AMD picasso system this results in 33ms boot speedup.

TESTED on google/vilboz (Picasso) with CONFIG_SMI_DEBUG: verify that SMM
is correctly relocated with the BSP correctly entering the smihandler.

Change-Id: I9729fb94ed5c18cfd57b8098c838c08a04490e4b
Signed-off-by: Arthur Heymans <arthur@aheymans.xyz>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/64872
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
2022-09-15 14:47:52 +00:00
..
amd soc/amd/common: Add common function to get cpu count 2022-09-14 20:28:37 +00:00
armltd
intel cpu/intel/haswell: Allow up to six microcodes in the FIT table 2022-09-15 13:01:13 +00:00
power9 src/cpu/power9: add file structure for power9, implement SCOM access 2022-02-11 13:53:29 +00:00
qemu-power8
qemu-x86 mb/emulation/qemu-q35: Support PARALLEL_MP with SMM_ASEG 2022-06-01 10:43:07 +00:00
x86 soc/amd: Do SMM relocation via MSR 2022-09-15 14:47:52 +00:00
Kconfig src/cpu: Remove unused symbols 2021-02-18 10:11:24 +00:00
Makefile.inc cpu/Makefile.inc: Fix rebuilding a new target 2022-06-17 14:26:55 +00:00