From cb435f3097b28e7470a7653def7d5ab06855f6ee Mon Sep 17 00:00:00 2001 From: Michael Roth Date: Wed, 16 Aug 2023 15:11:46 -0500 Subject: [PATCH 19/20] OvmfPkg/AmdSev: Disable PcdFirstTimeWakeUpAPsBySipi PcdFirstTimeWakeUpAPsBySipi was recently introduced to indicate when the full INIT-SIPI-SIPI sequence can be skipped for AP bringup. It is true by default, but needs to be disabled for QEMU/OVMF where early INIT is not simulated. Commit 1d76560146 ("OvmfPkg: Disable PcdFirstTimeWakeUpAPsBySipi.") added changes to disable it by default for OvmfPkg, but a similar change was not made for the AmdSev package. This breaks booting of SEV and SNP guests. Fix this defaulting PcdFirstTimeWakeUpAPsBySipi to false for AmdSev package, as was previously done for OvmfPkg variants. Fixes: eaffa1d7ff ("UefiCpuPkg:Wake up APs after power-up or RESET through SIPI.") Signed-off-by: Michael Roth Acked-by: Gerd Hoffmann (cherry picked from commit 8b66f9df1bb0fd5ebb743944d41cb33178cf2fdd) --- OvmfPkg/AmdSev/AmdSevX64.dsc | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/OvmfPkg/AmdSev/AmdSevX64.dsc b/OvmfPkg/AmdSev/AmdSevX64.dsc index 865d150a2871..7f808126675f 100644 --- a/OvmfPkg/AmdSev/AmdSevX64.dsc +++ b/OvmfPkg/AmdSev/AmdSevX64.dsc @@ -468,6 +468,14 @@ [PcdsFixedAtBuild] gEfiMdeModulePkgTokenSpaceGuid.PcdConInConnectOnDemand|TRUE gUefiOvmfPkgTokenSpaceGuid.PcdBootRestrictToFirmware|TRUE + # + # INIT is now triggered before BIOS by ucode/hardware. In the OVMF + # environment, QEMU lacks a simulation for the INIT process. + # To address this, PcdFirstTimeWakeUpAPsBySipi set to FALSE to + # broadcast INIT-SIPI-SIPI for the first time. + # + gUefiCpuPkgTokenSpaceGuid.PcdFirstTimeWakeUpAPsBySipi|FALSE + ################################################################################ # # Pcd Dynamic Section - list of all EDK II PCD Entries defined by this Platform -- 2.41.0