mirror of
https://github.com/acidanthera/audk.git
synced 2025-04-07 19:45:07 +02:00
OvmfPkg/ResetVector: split TDX BSP workflow
Create a separate control flow for TDX BSP. TdxPostBuildPageTables will now only be called when running in TDX mode, so the TDX check in that function is not needed any more. No functional change. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Reviewed-by: Laszlo Ersek <lersek@redhat.com> Message-Id: <20240301074402.98625-5-kraxel@redhat.com> Cc: Jiewen Yao <jiewen.yao@intel.com> Cc: Oliver Steffen <osteffen@redhat.com> Cc: Michael Roth <michael.roth@amd.com> Cc: Erdem Aktas <erdemaktas@google.com> Cc: Min Xu <min.m.xu@intel.com> Cc: Ard Biesheuvel <ardb+tianocore@kernel.org> Cc: Tom Lendacky <thomas.lendacky@amd.com> [lersek@redhat.com: turn the "Cc:" message headers from Gerd's on-list posting into "Cc:" tags in the commit message, in order to pacify "PatchCheck.py"]
This commit is contained in:
parent
4329b5b0cd
commit
b7a97bfac5
@ -197,11 +197,7 @@ NotTdx:
|
||||
; Set byte[TDX_WORK_AREA_PGTBL_READY] to 1
|
||||
;
|
||||
TdxPostBuildPageTables:
|
||||
cmp byte[WORK_AREA_GUEST_TYPE], VM_GUEST_TDX
|
||||
jne ExitTdxPostBuildPageTables
|
||||
mov byte[TDX_WORK_AREA_PGTBL_READY], 1
|
||||
|
||||
ExitTdxPostBuildPageTables:
|
||||
OneTimeCallRet TdxPostBuildPageTables
|
||||
|
||||
;
|
||||
|
@ -112,7 +112,7 @@ SetCr3ForPageTables64:
|
||||
; is set.
|
||||
OneTimeCall CheckTdxFeaturesBeforeBuildPagetables
|
||||
cmp eax, TDX_BSP
|
||||
je ClearOvmfPageTables
|
||||
je TdxBspInit
|
||||
cmp eax, TDX_AP
|
||||
je SetCr3
|
||||
|
||||
@ -124,16 +124,21 @@ SetCr3ForPageTables64:
|
||||
; the page table build below.
|
||||
OneTimeCall GetSevCBitMaskAbove31
|
||||
|
||||
ClearOvmfPageTables:
|
||||
ClearOvmfPageTables
|
||||
CreatePageTables4Level edx
|
||||
|
||||
; Clear the C-bit from the GHCB page if the SEV-ES is enabled.
|
||||
OneTimeCall SevClearPageEncMaskForGhcbPage
|
||||
jmp SetCr3
|
||||
|
||||
; TDX will do some PostBuildPages task, such as setting
|
||||
; byte[TDX_WORK_AREA_PGTBL_READY].
|
||||
OneTimeCall TdxPostBuildPageTables
|
||||
TdxBspInit:
|
||||
;
|
||||
; TDX BSP workflow
|
||||
;
|
||||
ClearOvmfPageTables
|
||||
CreatePageTables4Level 0
|
||||
OneTimeCall TdxPostBuildPageTables
|
||||
jmp SetCr3
|
||||
|
||||
SetCr3:
|
||||
;
|
||||
|
Loading…
x
Reference in New Issue
Block a user