summaryrefslogtreecommitdiffstats
path: root/OvmfPkg/CpuHotplugSmm/CpuHotplugSmm.inf
diff options
context:
space:
mode:
authorLaszlo Ersek <lersek@redhat.com>2020-02-26 23:11:51 +0100
committermergify[bot] <37929162+mergify[bot]@users.noreply.github.com>2020-03-04 12:22:07 +0000
commit63c89da242f3a49e0dbdfac0d2a29ae0daa73970 (patch)
tree24783319cf8c70a91bdece78dfb6b9df28363d2a /OvmfPkg/CpuHotplugSmm/CpuHotplugSmm.inf
parent17cb8ddba39b58e008a58aa6d502856d61f82dc9 (diff)
downloadedk2-63c89da242f3a49e0dbdfac0d2a29ae0daa73970.tar.gz
edk2-63c89da242f3a49e0dbdfac0d2a29ae0daa73970.tar.bz2
edk2-63c89da242f3a49e0dbdfac0d2a29ae0daa73970.zip
OvmfPkg/CpuHotplugSmm: introduce Post-SMM Pen for hot-added CPUs
Once a hot-added CPU finishes the SMBASE relocation, we need to pen it in a HLT loop. Add the NASM implementation (with just a handful of instructions, but much documentation), and some C language helper functions. Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org> Cc: Igor Mammedov <imammedo@redhat.com> Cc: Jiewen Yao <jiewen.yao@intel.com> Cc: Jordan Justen <jordan.l.justen@intel.com> Cc: Michael Kinney <michael.d.kinney@intel.com> Cc: Philippe Mathieu-Daudé <philmd@redhat.com> Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=1512 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Message-Id: <20200226221156.29589-12-lersek@redhat.com> Acked-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Tested-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
Diffstat (limited to 'OvmfPkg/CpuHotplugSmm/CpuHotplugSmm.inf')
-rw-r--r--OvmfPkg/CpuHotplugSmm/CpuHotplugSmm.inf4
1 files changed, 4 insertions, 0 deletions
diff --git a/OvmfPkg/CpuHotplugSmm/CpuHotplugSmm.inf b/OvmfPkg/CpuHotplugSmm/CpuHotplugSmm.inf
index 31c1ee1c9f..bf4162299c 100644
--- a/OvmfPkg/CpuHotplugSmm/CpuHotplugSmm.inf
+++ b/OvmfPkg/CpuHotplugSmm/CpuHotplugSmm.inf
@@ -24,8 +24,11 @@
[Sources]
ApicId.h
CpuHotplug.c
+ PostSmmPen.nasm
QemuCpuhp.c
QemuCpuhp.h
+ Smbase.c
+ Smbase.h
[Packages]
MdePkg/MdePkg.dec
@@ -34,6 +37,7 @@
[LibraryClasses]
BaseLib
+ BaseMemoryLib
DebugLib
MmServicesTableLib
PcdLib