From: Tom Lendacky <thomas.lenda...@amd.com> BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=2198
Expand the CPU protocol to include a finalization function that can be used to perform any final AP processing or AP environment setup before transferring control over to an OS. Cc: Michael D Kinney <michael.d.kin...@intel.com> Cc: Liming Gao <liming....@intel.com> Signed-off-by: Tom Lendacky <thomas.lenda...@amd.com> --- MdePkg/Include/Protocol/Cpu.h | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/MdePkg/Include/Protocol/Cpu.h b/MdePkg/Include/Protocol/Cpu.h index e392f4cd9a13..1603797edd1c 100644 --- a/MdePkg/Include/Protocol/Cpu.h +++ b/MdePkg/Include/Protocol/Cpu.h @@ -258,6 +258,22 @@ EFI_STATUS ); +/** + This function is used to perform any CPU finalization operations needed + before exiting boot services. + + @param This The EFI_CPU_ARCH_PROTOCOL instance. + + @return None + +**/ +typedef +VOID +(EFIAPI *EFI_CPU_FINALIZE)( + IN EFI_CPU_ARCH_PROTOCOL *This + ); + + /// /// The EFI_CPU_ARCH_PROTOCOL is used to abstract processor-specific functions from the DXE /// Foundation. This includes flushing caches, enabling and disabling interrupts, hooking interrupt @@ -287,6 +303,8 @@ struct _EFI_CPU_ARCH_PROTOCOL { /// a read-only field. /// UINT32 DmaBufferAlignment; + + EFI_CPU_FINALIZE Finalize; }; extern EFI_GUID gEfiCpuArchProtocolGuid; -- 2.17.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#47673): https://edk2.groups.io/g/devel/message/47673 Mute This Topic: https://groups.io/mt/34203586/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-