INTEL:*_*_*_CC_FLAGS = /D DISABLE_NEW_DEPRECATED_INTERFACES\r
GCC:*_*_*_CC_FLAGS = -D DISABLE_NEW_DEPRECATED_INTERFACES\r
\r
- #\r
- # SECURE_BOOT_FEATURE_ENABLED\r
- #\r
-!if $(SECURE_BOOT_ENABLE) == TRUE\r
- MSFT:*_*_*_CC_FLAGS = /D SECURE_BOOT_FEATURE_ENABLED\r
- INTEL:*_*_*_CC_FLAGS = /D SECURE_BOOT_FEATURE_ENABLED\r
- GCC:*_*_*_CC_FLAGS = -D SECURE_BOOT_FEATURE_ENABLED\r
-!endif\r
-\r
!include NetworkPkg/NetworkBuildOptions.dsc.inc\r
\r
[BuildOptions.common.EDKII.DXE_RUNTIME_DRIVER]\r
gEfiMdeModulePkgTokenSpaceGuid.PcdEnableVariableRuntimeCache|FALSE\r
!endif\r
!if $(SECURE_BOOT_ENABLE) == TRUE\r
+ gUefiOvmfPkgTokenSpaceGuid.PcdSecureBootSupported|TRUE\r
gEfiMdeModulePkgTokenSpaceGuid.PcdRequireSelfSignedPk|TRUE\r
!endif\r
\r
INTEL:*_*_*_CC_FLAGS = /D TDX_PEI_LESS_BOOT\r
GCC:*_*_*_CC_FLAGS = -D TDX_PEI_LESS_BOOT\r
\r
- #\r
- # SECURE_BOOT_FEATURE_ENABLED\r
- #\r
-!if $(SECURE_BOOT_ENABLE) == TRUE\r
- MSFT:*_*_*_CC_FLAGS = /D SECURE_BOOT_FEATURE_ENABLED\r
- INTEL:*_*_*_CC_FLAGS = /D SECURE_BOOT_FEATURE_ENABLED\r
- GCC:*_*_*_CC_FLAGS = -D SECURE_BOOT_FEATURE_ENABLED\r
-!endif\r
-\r
[BuildOptions.common.EDKII.DXE_RUNTIME_DRIVER]\r
GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000\r
XCODE:*_*_*_DLINK_FLAGS = -seg1addr 0x1000 -segalign 0x1000\r
gUefiOvmfPkgTokenSpaceGuid.PcdCsmEnable|TRUE\r
!endif\r
!if $(SECURE_BOOT_ENABLE) == TRUE\r
+ gUefiOvmfPkgTokenSpaceGuid.PcdSecureBootSupported|TRUE\r
gEfiMdeModulePkgTokenSpaceGuid.PcdRequireSelfSignedPk|TRUE\r
!endif\r
\r
IN EFI_HANDLE FsHandle\r
)\r
{\r
- #ifdef SECURE_BOOT_FEATURE_ENABLED\r
-\r
- return EFI_UNSUPPORTED;\r
-\r
- #else\r
-\r
EFI_STATUS Status;\r
\r
+ if (FeaturePcdGet (PcdSecureBootSupported)) {\r
+ return EFI_UNSUPPORTED;\r
+ }\r
+\r
//\r
// We might fail to load the variable, since the file system initially\r
// will not have the NvVars file.\r
}\r
\r
return Status;\r
- #endif\r
}\r
\r
/**\r
[Protocols]\r
gEfiSimpleFileSystemProtocolGuid ## CONSUMES\r
\r
+[Pcd]\r
+ gUefiOvmfPkgTokenSpaceGuid.PcdSecureBootSupported\r
\r
[Guids]\r
gEfiFileInfoGuid\r
INTEL:*_*_*_CC_FLAGS = /D DISABLE_NEW_DEPRECATED_INTERFACES\r
GCC:*_*_*_CC_FLAGS = -D DISABLE_NEW_DEPRECATED_INTERFACES\r
\r
- #\r
- # SECURE_BOOT_FEATURE_ENABLED\r
- #\r
-!if $(SECURE_BOOT_ENABLE) == TRUE\r
- MSFT:*_*_*_CC_FLAGS = /D SECURE_BOOT_FEATURE_ENABLED\r
- INTEL:*_*_*_CC_FLAGS = /D SECURE_BOOT_FEATURE_ENABLED\r
- GCC:*_*_*_CC_FLAGS = -D SECURE_BOOT_FEATURE_ENABLED\r
-!endif\r
-\r
!include NetworkPkg/NetworkBuildOptions.dsc.inc\r
\r
[BuildOptions.common.EDKII.DXE_RUNTIME_DRIVER]\r
gEfiMdeModulePkgTokenSpaceGuid.PcdConOutUgaSupport|FALSE\r
gEfiMdeModulePkgTokenSpaceGuid.PcdInstallAcpiSdtProtocol|TRUE\r
!if $(SECURE_BOOT_ENABLE) == TRUE\r
+ gUefiOvmfPkgTokenSpaceGuid.PcdSecureBootSupported|TRUE\r
gEfiMdeModulePkgTokenSpaceGuid.PcdRequireSelfSignedPk|TRUE\r
!endif\r
\r
# used by OVMF, the varstore pflash chip, LockBox etc).\r
gUefiOvmfPkgTokenSpaceGuid.PcdSmmSmramRequire|FALSE|BOOLEAN|0x1e\r
\r
+ ## This feature flag indicates the firmware build supports secure boot.\r
+ gUefiOvmfPkgTokenSpaceGuid.PcdSecureBootSupported|FALSE|BOOLEAN|0x6d\r
+\r
## Informs modules (including pre-DXE-phase modules) whether the platform\r
# firmware contains a CSM (Compatibility Support Module).\r
#\r
INTEL:*_*_*_CC_FLAGS = /D DISABLE_NEW_DEPRECATED_INTERFACES\r
GCC:*_*_*_CC_FLAGS = -D DISABLE_NEW_DEPRECATED_INTERFACES\r
\r
- #\r
- # SECURE_BOOT_FEATURE_ENABLED\r
- #\r
-!if $(SECURE_BOOT_ENABLE) == TRUE\r
- MSFT:*_*_*_CC_FLAGS = /D SECURE_BOOT_FEATURE_ENABLED\r
- INTEL:*_*_*_CC_FLAGS = /D SECURE_BOOT_FEATURE_ENABLED\r
- GCC:*_*_*_CC_FLAGS = -D SECURE_BOOT_FEATURE_ENABLED\r
-!endif\r
-\r
!include NetworkPkg/NetworkBuildOptions.dsc.inc\r
\r
[BuildOptions.common.EDKII.DXE_RUNTIME_DRIVER]\r
gEfiMdeModulePkgTokenSpaceGuid.PcdEnableVariableRuntimeCache|FALSE\r
!endif\r
!if $(SECURE_BOOT_ENABLE) == TRUE\r
+ gUefiOvmfPkgTokenSpaceGuid.PcdSecureBootSupported|TRUE\r
gEfiMdeModulePkgTokenSpaceGuid.PcdRequireSelfSignedPk|TRUE\r
!endif\r
\r
INTEL:*_*_*_CC_FLAGS = /D DISABLE_NEW_DEPRECATED_INTERFACES\r
GCC:*_*_*_CC_FLAGS = -D DISABLE_NEW_DEPRECATED_INTERFACES\r
\r
- #\r
- # SECURE_BOOT_FEATURE_ENABLED\r
- #\r
-!if $(SECURE_BOOT_ENABLE) == TRUE\r
- MSFT:*_*_*_CC_FLAGS = /D SECURE_BOOT_FEATURE_ENABLED\r
- INTEL:*_*_*_CC_FLAGS = /D SECURE_BOOT_FEATURE_ENABLED\r
- GCC:*_*_*_CC_FLAGS = -D SECURE_BOOT_FEATURE_ENABLED\r
-!endif\r
-\r
!include NetworkPkg/NetworkBuildOptions.dsc.inc\r
\r
[BuildOptions.common.EDKII.DXE_RUNTIME_DRIVER]\r
gEfiMdeModulePkgTokenSpaceGuid.PcdEnableVariableRuntimeCache|FALSE\r
!endif\r
!if $(SECURE_BOOT_ENABLE) == TRUE\r
+ gUefiOvmfPkgTokenSpaceGuid.PcdSecureBootSupported|TRUE\r
gEfiMdeModulePkgTokenSpaceGuid.PcdRequireSelfSignedPk|TRUE\r
!endif\r
\r
INTEL:*_*_*_CC_FLAGS = /D TDX_GUEST_SUPPORTED\r
GCC:*_*_*_CC_FLAGS = -D TDX_GUEST_SUPPORTED\r
\r
- #\r
- # SECURE_BOOT_FEATURE_ENABLED\r
- #\r
-!if $(SECURE_BOOT_ENABLE) == TRUE\r
- MSFT:*_*_*_CC_FLAGS = /D SECURE_BOOT_FEATURE_ENABLED\r
- INTEL:*_*_*_CC_FLAGS = /D SECURE_BOOT_FEATURE_ENABLED\r
- GCC:*_*_*_CC_FLAGS = -D SECURE_BOOT_FEATURE_ENABLED\r
-!endif\r
-\r
!include NetworkPkg/NetworkBuildOptions.dsc.inc\r
\r
[BuildOptions.common.EDKII.DXE_RUNTIME_DRIVER]\r
gEfiMdeModulePkgTokenSpaceGuid.PcdEnableVariableRuntimeCache|FALSE\r
!endif\r
!if $(SECURE_BOOT_ENABLE) == TRUE\r
+ gUefiOvmfPkgTokenSpaceGuid.PcdSecureBootSupported|TRUE\r
gEfiMdeModulePkgTokenSpaceGuid.PcdRequireSelfSignedPk|TRUE\r
!endif\r
\r
VariableStore = (EFI_PHYSICAL_ADDRESS)(UINTN)PlatformReserveEmuVariableNvStore ();\r
PcdStatus = PcdSet64S (PcdEmuVariableNvStoreReserved, VariableStore);\r
\r
- #ifdef SECURE_BOOT_FEATURE_ENABLED\r
- PlatformInitEmuVariableNvStore ((VOID *)(UINTN)VariableStore);\r
- #endif\r
+ if (FeaturePcdGet (PcdSecureBootSupported)) {\r
+ // restore emulated VarStore from pristine ROM copy\r
+ PlatformInitEmuVariableNvStore ((VOID *)(UINTN)VariableStore);\r
+ }\r
\r
ASSERT_RETURN_ERROR (PcdStatus);\r
}\r
gUefiOvmfPkgTokenSpaceGuid.PcdQ35SmramAtDefaultSmbase\r
gUefiOvmfPkgTokenSpaceGuid.PcdXenPvhStartOfDayStructPtr\r
gUefiOvmfPkgTokenSpaceGuid.PcdXenPvhStartOfDayStructPtrSize\r
+ gUefiOvmfPkgTokenSpaceGuid.PcdSecureBootSupported\r
gEfiMdePkgTokenSpaceGuid.PcdGuidedExtractHandlerTableAddress\r
gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress\r
gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareSize\r