summaryrefslogtreecommitdiff
path: root/src/mainboard/emulation/qemu-q35/cpu.c
diff options
context:
space:
mode:
authorArthur Heymans <arthur@aheymans.xyz>2021-10-28 16:48:36 +0200
committerArthur Heymans <arthur@aheymans.xyz>2022-06-01 10:43:07 +0000
commit4db2e8e88a05c8858bd19d516e10df4825621bfa (patch)
tree9bdc8b568a197587b4bbd037b55f44fe0298471b /src/mainboard/emulation/qemu-q35/cpu.c
parent460936567f2ebd62f78dbb18e4bacab03ec5b056 (diff)
mb/emulation/qemu-q35: Support PARALLEL_MP with SMM_ASEG
Tested with SMI_DEBUG: SMM prints things on the console. Change-Id: I7db55aaabd16a6ef585c4802218790bf04650b13 Signed-off-by: Arthur Heymans <arthur@aheymans.xyz> Signed-off-by: Kyösti Mälkki <kyosti.malkki@gmail.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/61494 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Diffstat (limited to 'src/mainboard/emulation/qemu-q35/cpu.c')
-rw-r--r--src/mainboard/emulation/qemu-q35/cpu.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/mainboard/emulation/qemu-q35/cpu.c b/src/mainboard/emulation/qemu-q35/cpu.c
index fb31fc5963..fe3a571021 100644
--- a/src/mainboard/emulation/qemu-q35/cpu.c
+++ b/src/mainboard/emulation/qemu-q35/cpu.c
@@ -12,7 +12,14 @@ static void get_smm_info(uintptr_t *perm_smbase, size_t *perm_smsize,
{
printk(BIOS_DEBUG, "Setting up SMI for CPU\n");
- smm_subregion(SMM_SUBREGION_HANDLER, perm_smbase, perm_smsize);
+ if (CONFIG(SMM_TSEG))
+ smm_subregion(SMM_SUBREGION_HANDLER, perm_smbase, perm_smsize);
+
+ if (CONFIG(SMM_ASEG)) {
+ smm_open_aseg();
+ *perm_smbase = 0xa0000;
+ *perm_smsize = 0x10000;
+ }
/* FIXME: on X86_64 the save state size is smaller than the size of the SMM stub */
*smm_save_state_size = sizeof(amd64_smm_state_save_area_t);