mirror of https://github.com/acidanthera/audk.git
OvmfPkg: include FaultTolerantWritePei and VariablePei with -D SMM_REQUIRE
FaultTolerantWritePei consumes: - PcdFlashNvStorageFtwWorkingBase, - PcdFlashNvStorageFtwSpareBase. VariablePei consumes: - PcdFlashNvStorageVariableBase64. Due to the previous patches in this series, the above PCDs are available in the PEI phase, in the SMM_REQUIRE build. FaultTolerantWritePei produces a GUID-ed HOB with FAULT_TOLERANT_WRITE_LAST_WRITE_DATA as contents. It also installs a Null PPI that carries the same gEdkiiFaultTolerantWriteGuid as the HOB. VariablePei depends on the Null PPI mentioned above with a DEPEX, consumes the HOB (which is safe due to the DEPEX), and produces EFI_PEI_READ_ONLY_VARIABLE2_PPI. This enables read-only access to non-volatile UEFI variables in the PEI phase, in the SMM_REQUIRE build. For now, the DxeLoadCore() function in "MdeModulePkg/Core/DxeIplPeim/DxeLoad.c" will not access the "MemoryTypeInformation" variable, because OVMF's PlatformPei always produces the MemoryTypeInformation HOB. (Note: when the boot mode is BOOT_ON_S3_RESUME, PlatformPei doesn't build the HOB, but that's in sync with DxeLoadCore() also not looking for either the HOB or the UEFI variable.) Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org> Cc: Jordan Justen <jordan.l.justen@intel.com> Cc: Philippe Mathieu-Daudé <philmd@redhat.com> Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=386 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Message-Id: <20200310222739.26717-5-lersek@redhat.com> Acked-by: Leif Lindholm <leif@nuviainc.com>
This commit is contained in:
parent
b0ed7ebdeb
commit
89465fe9e0
|
@ -638,6 +638,8 @@
|
|||
!endif
|
||||
}
|
||||
!if $(SMM_REQUIRE) == TRUE
|
||||
MdeModulePkg/Universal/FaultTolerantWritePei/FaultTolerantWritePei.inf
|
||||
MdeModulePkg/Universal/Variable/Pei/VariablePei.inf
|
||||
OvmfPkg/SmmAccess/SmmAccessPei.inf
|
||||
!endif
|
||||
UefiCpuPkg/CpuMpPei/CpuMpPei.inf
|
||||
|
|
|
@ -155,6 +155,8 @@ INF OvmfPkg/PlatformPei/PlatformPei.inf
|
|||
INF MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf
|
||||
INF UefiCpuPkg/Universal/Acpi/S3Resume2Pei/S3Resume2Pei.inf
|
||||
!if $(SMM_REQUIRE) == TRUE
|
||||
INF MdeModulePkg/Universal/FaultTolerantWritePei/FaultTolerantWritePei.inf
|
||||
INF MdeModulePkg/Universal/Variable/Pei/VariablePei.inf
|
||||
INF OvmfPkg/SmmAccess/SmmAccessPei.inf
|
||||
!endif
|
||||
INF UefiCpuPkg/CpuMpPei/CpuMpPei.inf
|
||||
|
|
|
@ -649,6 +649,8 @@
|
|||
!endif
|
||||
}
|
||||
!if $(SMM_REQUIRE) == TRUE
|
||||
MdeModulePkg/Universal/FaultTolerantWritePei/FaultTolerantWritePei.inf
|
||||
MdeModulePkg/Universal/Variable/Pei/VariablePei.inf
|
||||
OvmfPkg/SmmAccess/SmmAccessPei.inf
|
||||
!endif
|
||||
UefiCpuPkg/CpuMpPei/CpuMpPei.inf
|
||||
|
|
|
@ -155,6 +155,8 @@ INF OvmfPkg/PlatformPei/PlatformPei.inf
|
|||
INF MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf
|
||||
INF UefiCpuPkg/Universal/Acpi/S3Resume2Pei/S3Resume2Pei.inf
|
||||
!if $(SMM_REQUIRE) == TRUE
|
||||
INF MdeModulePkg/Universal/FaultTolerantWritePei/FaultTolerantWritePei.inf
|
||||
INF MdeModulePkg/Universal/Variable/Pei/VariablePei.inf
|
||||
INF OvmfPkg/SmmAccess/SmmAccessPei.inf
|
||||
!endif
|
||||
INF UefiCpuPkg/CpuMpPei/CpuMpPei.inf
|
||||
|
|
|
@ -648,6 +648,8 @@
|
|||
!endif
|
||||
}
|
||||
!if $(SMM_REQUIRE) == TRUE
|
||||
MdeModulePkg/Universal/FaultTolerantWritePei/FaultTolerantWritePei.inf
|
||||
MdeModulePkg/Universal/Variable/Pei/VariablePei.inf
|
||||
OvmfPkg/SmmAccess/SmmAccessPei.inf
|
||||
!endif
|
||||
UefiCpuPkg/CpuMpPei/CpuMpPei.inf
|
||||
|
|
|
@ -155,6 +155,8 @@ INF OvmfPkg/PlatformPei/PlatformPei.inf
|
|||
INF MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf
|
||||
INF UefiCpuPkg/Universal/Acpi/S3Resume2Pei/S3Resume2Pei.inf
|
||||
!if $(SMM_REQUIRE) == TRUE
|
||||
INF MdeModulePkg/Universal/FaultTolerantWritePei/FaultTolerantWritePei.inf
|
||||
INF MdeModulePkg/Universal/Variable/Pei/VariablePei.inf
|
||||
INF OvmfPkg/SmmAccess/SmmAccessPei.inf
|
||||
!endif
|
||||
INF UefiCpuPkg/CpuMpPei/CpuMpPei.inf
|
||||
|
|
Loading…
Reference in New Issue