DEFINE DEBUG_PRINT_ERROR_LEVEL = 0x8000004F\r
DEFINE TTY_TERMINAL = FALSE\r
\r
-[BuildOptions.common.EDKII.DXE_DRIVER,BuildOptions.common.EDKII.UEFI_DRIVER,BuildOptions.common.EDKII.UEFI_APPLICATION]\r
- GCC:*_*_AARCH64_DLINK_FLAGS = -z common-page-size=0x1000\r
+[BuildOptions.common.EDKII.DXE_CORE,BuildOptions.common.EDKII.DXE_DRIVER,BuildOptions.common.EDKII.UEFI_DRIVER,BuildOptions.common.EDKII.UEFI_APPLICATION]\r
+ GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000\r
\r
[BuildOptions.common.EDKII.DXE_RUNTIME_DRIVER]\r
GCC:*_*_ARM_DLINK_FLAGS = -z common-page-size=0x1000\r
DefaultExceptionHandlerLib|ArmPkg/Library/DefaultExceptionHandlerLib/DefaultExceptionHandlerLib.inf\r
CpuExceptionHandlerLib|ArmPkg/Library/ArmExceptionLib/ArmExceptionLib.inf\r
ArmDisassemblerLib|ArmPkg/Library/ArmDisassemblerLib/ArmDisassemblerLib.inf\r
- DmaLib|ArmPkg/Library/ArmDmaLib/ArmDmaLib.inf\r
ArmGicLib|ArmPkg/Drivers/ArmGic/ArmGicLib.inf\r
ArmGicArchLib|ArmVirtPkg/Library/ArmVirtGicArchLib/ArmVirtGicArchLib.inf\r
ArmPlatformStackLib|ArmPlatformPkg/Library/ArmPlatformStackLib/ArmPlatformStackLib.inf\r
\r
PlatformPeiLib|ArmVirtPkg/Library/PlatformPeiLib/PlatformPeiLib.inf\r
MemoryInitPeiLib|ArmVirtPkg/Library/ArmVirtMemoryInitPeiLib/ArmVirtMemoryInitPeiLib.inf\r
- EfiResetSystemLib|ArmVirtPkg/Library/ArmVirtPsciResetSystemLib/ArmVirtPsciResetSystemLib.inf\r
+ ResetSystemLib|ArmVirtPkg/Library/ArmVirtPsciResetSystemLib/ArmVirtPsciResetSystemLib.inf\r
\r
# ARM PL031 RTC Driver\r
RealTimeClockLib|ArmPlatformPkg/Library/PL031RealTimeClockLib/PL031RealTimeClockLib.inf\r
+ TimeBaseLib|EmbeddedPkg/Library/TimeBaseLib/TimeBaseLib.inf\r
# ARM PL011 UART Driver\r
PL011UartLib|ArmPlatformPkg/Drivers/PL011Uart/PL011Uart.inf\r
SerialPortLib|ArmVirtPkg/Library/FdtPL011SerialPortLib/FdtPL011SerialPortLib.inf\r
AuthVariableLib|MdeModulePkg/Library/AuthVariableLibNull/AuthVariableLibNull.inf\r
!endif\r
VarCheckLib|MdeModulePkg/Library/VarCheckLib/VarCheckLib.inf\r
+ UefiBootManagerLib|MdeModulePkg/Library/UefiBootManagerLib/UefiBootManagerLib.inf\r
+\r
+ ReportStatusCodeLib|MdePkg/Library/BaseReportStatusCodeLibNull/BaseReportStatusCodeLibNull.inf\r
\r
[LibraryClasses.common.SEC]\r
PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf\r
MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf\r
PeiCoreEntryPoint|MdePkg/Library/PeiCoreEntryPoint/PeiCoreEntryPoint.inf\r
PerformanceLib|MdeModulePkg/Library/PeiPerformanceLib/PeiPerformanceLib.inf\r
- ReportStatusCodeLib|MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf\r
OemHookStatusCodeLib|MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf\r
PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf\r
UefiDecompressLib|MdePkg/Library/BaseUefiDecompressLib/BaseUefiDecompressLib.inf\r
MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf\r
PeimEntryPoint|MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf\r
PerformanceLib|MdeModulePkg/Library/PeiPerformanceLib/PeiPerformanceLib.inf\r
- ReportStatusCodeLib|MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf\r
OemHookStatusCodeLib|MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf\r
PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf\r
PeiResourcePublicationLib|MdePkg/Library/PeiResourcePublicationLib/PeiResourcePublicationLib.inf\r
HobLib|MdePkg/Library/DxeCoreHobLib/DxeCoreHobLib.inf\r
MemoryAllocationLib|MdeModulePkg/Library/DxeCoreMemoryAllocationLib/DxeCoreMemoryAllocationLib.inf\r
DxeCoreEntryPoint|MdePkg/Library/DxeCoreEntryPoint/DxeCoreEntryPoint.inf\r
- ReportStatusCodeLib|IntelFrameworkModulePkg/Library/DxeReportStatusCodeLibFramework/DxeReportStatusCodeLib.inf\r
ExtractGuidedSectionLib|MdePkg/Library/DxeExtractGuidedSectionLib/DxeExtractGuidedSectionLib.inf\r
UefiDecompressLib|MdePkg/Library/BaseUefiDecompressLib/BaseUefiDecompressLib.inf\r
PerformanceLib|MdeModulePkg/Library/DxeCorePerformanceLib/DxeCorePerformanceLib.inf\r
\r
[LibraryClasses.common.DXE_DRIVER]\r
- ReportStatusCodeLib|IntelFrameworkModulePkg/Library/DxeReportStatusCodeLibFramework/DxeReportStatusCodeLib.inf\r
SecurityManagementLib|MdeModulePkg/Library/DxeSecurityManagementLib/DxeSecurityManagementLib.inf\r
PerformanceLib|MdeModulePkg/Library/DxePerformanceLib/DxePerformanceLib.inf\r
MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf\r
HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf\r
ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf\r
FileHandleLib|MdePkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf\r
- ReportStatusCodeLib|MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf\r
\r
[LibraryClasses.common.UEFI_DRIVER]\r
- ReportStatusCodeLib|IntelFrameworkModulePkg/Library/DxeReportStatusCodeLibFramework/DxeReportStatusCodeLib.inf\r
UefiDecompressLib|IntelFrameworkModulePkg/Library/BaseUefiTianoCustomDecompressLib/BaseUefiTianoCustomDecompressLib.inf\r
ExtractGuidedSectionLib|MdePkg/Library/DxeExtractGuidedSectionLib/DxeExtractGuidedSectionLib.inf\r
PerformanceLib|MdeModulePkg/Library/DxePerformanceLib/DxePerformanceLib.inf\r
\r
[LibraryClasses.common.DXE_RUNTIME_DRIVER]\r
MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf\r
- ReportStatusCodeLib|IntelFrameworkModulePkg/Library/DxeReportStatusCodeLibFramework/DxeReportStatusCodeLib.inf\r
CapsuleLib|MdeModulePkg/Library/DxeCapsuleLibNull/DxeCapsuleLibNull.inf\r
\r
!if $(SECURE_BOOT_ENABLE) == TRUE\r
[PcdsFeatureFlag.common]\r
gEfiMdeModulePkgTokenSpaceGuid.PcdHiiOsRuntimeSupport|FALSE\r
\r
- #\r
- # Control what commands are supported from the UI\r
- # Turn these on and off to add features or save size\r
- #\r
- gEmbeddedTokenSpaceGuid.PcdEmbeddedMacBoot|TRUE\r
- gEmbeddedTokenSpaceGuid.PcdEmbeddedDirCmd|TRUE\r
- gEmbeddedTokenSpaceGuid.PcdEmbeddedHobCmd|TRUE\r
- gEmbeddedTokenSpaceGuid.PcdEmbeddedHwDebugCmd|TRUE\r
- gEmbeddedTokenSpaceGuid.PcdEmbeddedPciDebugCmd|TRUE\r
- gEmbeddedTokenSpaceGuid.PcdEmbeddedIoEnable|FALSE\r
- gEmbeddedTokenSpaceGuid.PcdEmbeddedScriptCmd|FALSE\r
-\r
gEmbeddedTokenSpaceGuid.PcdCacheEnable|TRUE\r
\r
# Use the Vector Table location in CpuDxe. We will not copy the Vector Table at PcdCpuVectorBaseAddress\r
# DEBUG_ERROR 0x80000000 // Error\r
gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|$(DEBUG_PRINT_ERROR_LEVEL)\r
\r
- gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|0x07\r
-\r
#\r
# Optional feature to help prevent EFI memory map fragments\r
# Turned on and off via: PcdPrePiProduceMemoryTypeInformationHob\r
gArmVirtTokenSpaceGuid.PcdTerminalTypeGuidBuffer|{0x80, 0x6d, 0x91, 0x7d, 0xb1, 0x5b, 0x8c, 0x45, 0xa4, 0x8f, 0xe2, 0x5f, 0xdd, 0x51, 0xef, 0x94}\r
!endif\r
\r
-[PcdsFixedAtBuild.ARM]\r
- gEmbeddedTokenSpaceGuid.PcdPrePiCpuMemorySize|40\r
-\r
-[PcdsFixedAtBuild.AARCH64]\r
#\r
# Enable strict image permissions for all images. (This applies\r
# only to images that were built with >= 4 KB section alignment.)\r
#\r
gEfiMdeModulePkgTokenSpaceGuid.PcdImageProtectionPolicy|0x3\r
\r
-[Components.common]\r
#\r
- # Networking stack\r
+ # Enable NX memory protection for all non-code regions, including OEM and OS\r
+ # reserved ones, with the exception of LoaderData regions, of which OS loaders\r
+ # (i.e., GRUB) may assume that its contents are executable.\r
#\r
- MdeModulePkg/Universal/Network/DpcDxe/DpcDxe.inf\r
- MdeModulePkg/Universal/Network/ArpDxe/ArpDxe.inf\r
- MdeModulePkg/Universal/Network/Dhcp4Dxe/Dhcp4Dxe.inf\r
- MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Dxe.inf\r
- MdeModulePkg/Universal/Network/MnpDxe/MnpDxe.inf\r
- MdeModulePkg/Universal/Network/VlanConfigDxe/VlanConfigDxe.inf\r
- MdeModulePkg/Universal/Network/Mtftp4Dxe/Mtftp4Dxe.inf\r
- MdeModulePkg/Universal/Network/Tcp4Dxe/Tcp4Dxe.inf\r
- MdeModulePkg/Universal/Network/Udp4Dxe/Udp4Dxe.inf\r
- MdeModulePkg/Universal/Network/UefiPxeBcDxe/UefiPxeBcDxe.inf\r
- MdeModulePkg/Universal/Network/IScsiDxe/IScsiDxe.inf\r
+ gEfiMdeModulePkgTokenSpaceGuid.PcdDxeNxMemoryProtectionPolicy|0xC000000000007FD1\r
\r
+ #\r
+ # Enable the non-executable DXE stack. (This gets set up by DxeIpl)\r
+ #\r
+ gEfiMdeModulePkgTokenSpaceGuid.PcdSetNxForStack|TRUE\r
+\r
+[PcdsFixedAtBuild.ARM]\r
+ gEmbeddedTokenSpaceGuid.PcdPrePiCpuMemorySize|40\r
+\r
+[Components.common]\r
#\r
# Ramdisk support\r
#\r
#\r
# ACPI Support\r
#\r
- MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf\r
+ MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf {\r
+ <LibraryClasses>\r
+ NULL|EmbeddedPkg/Library/PlatformHasAcpiLib/PlatformHasAcpiLib.inf\r
+ }\r
+\r
+ #\r
+ # EBC support\r
+ #\r
MdeModulePkg/Universal/EbcDxe/EbcDxe.inf\r