VirtualBox

source: vbox/trunk/src/VBox/Devices/EFI/Firmware/ArmVirtPkg/ArmVirt.dsc.inc@ 101297

最後變更 在這個檔案從101297是 101291,由 vboxsync 提交於 17 月 前

EFI/FirmwareNew: Make edk2-stable202308 build on all supported platforms (using gcc at least, msvc not tested yet), bugref:4643

  • 屬性 svn:eol-style 設為 native
檔案大小: 20.5 KB
 
1#
2# Copyright (c) 2011 - 2022, ARM Limited. All rights reserved.
3# Copyright (c) 2014, Linaro Limited. All rights reserved.
4# Copyright (c) 2015 - 2018, Intel Corporation. All rights reserved.
5# Copyright (c) Microsoft Corporation.
6#
7# SPDX-License-Identifier: BSD-2-Clause-Patent
8#
9#
10
11[Defines]
12 DEFINE DEBUG_PRINT_ERROR_LEVEL = 0x8000004F
13
14!if $(TARGET) != NOOPT
15 DEFINE FD_SIZE_IN_MB = 2
16!else
17 DEFINE FD_SIZE_IN_MB = 3
18!endif
19
20!if $(FD_SIZE_IN_MB) == 2
21 DEFINE FD_SIZE = 0x200000
22 DEFINE FD_NUM_BLOCKS = 0x200
23!endif
24!if $(FD_SIZE_IN_MB) == 3
25 DEFINE FD_SIZE = 0x300000
26 DEFINE FD_NUM_BLOCKS = 0x300
27!endif
28
29[BuildOptions.common.EDKII.DXE_CORE,BuildOptions.common.EDKII.DXE_DRIVER,BuildOptions.common.EDKII.UEFI_DRIVER,BuildOptions.common.EDKII.UEFI_APPLICATION]
30 GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000
31
32[BuildOptions.common.EDKII.DXE_RUNTIME_DRIVER]
33 GCC:*_*_ARM_DLINK_FLAGS = -z common-page-size=0x1000
34 GCC:*_*_AARCH64_DLINK_FLAGS = -z common-page-size=0x10000
35
36!ifdef $(VBOX)
37[BuildOptions.Arm]
38 GCC:*_*_*_CC_FLAGS = -DVBOX -DIPRT_NO_CRT -DRT_OS_UEFI -DARCH_BITS=32 -DHC_ARCH_BITS=32 -DVBOX_REV=$(VBOX_REV)
39 MSFT:*_*_*_CC_FLAGS = -DVBOX -DIPRT_NO_CRT -DRT_OS_UEFI -DARCH_BITS=32 -DHC_ARCH_BITS=32 -DVBOX_REV=$(VBOX_REV)
40 INTEL:*_*_*_CC_FLAGS = -DVBOX -DIPRT_NO_CRT -DRT_OS_UEFI -DARCH_BITS=32 -DHC_ARCH_BITS=32 -DVBOX_REV=$(VBOX_REV)
41[BuildOptions.AArch64]
42 GCC:*_*_*_CC_FLAGS = -DVBOX -DIPRT_NO_CRT -DRT_OS_UEFI -DARCH_BITS=64 -DHC_ARCH_BITS=64 -DVBOX_REV=$(VBOX_REV)
43 MSFT:*_*_*_CC_FLAGS = -DVBOX -DIPRT_NO_CRT -DRT_OS_UEFI -DARCH_BITS=64 -DHC_ARCH_BITS=64 -DVBOX_REV=$(VBOX_REV)
44 INTEL:*_*_*_CC_FLAGS = -DVBOX -DIPRT_NO_CRT -DRT_OS_UEFI -DARCH_BITS=64 -DHC_ARCH_BITS=64 -DVBOX_REV=$(VBOX_REV)
45
46!ifdef $(SOURCE_DEBUG_ENABLE)
47 # Get much better source-level debugging
48 GCC:DEBUG_*_*_CC_FLAGS = -DVBOX_SOURCE_DEBUG_ENABLE
49 MSFT:DEBUG_*_*_CC_FLAGS = /Od -DVBOX_SOURCE_DEBUG_ENABLE
50 INTEL:DEBUG_*_*_CC_FLAGS = -DVBOX_SOURCE_DEBUG_ENABLE
51!endif
52
53!endif
54
55[LibraryClasses.common]
56!if $(TARGET) == RELEASE
57 DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
58!else
59 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
60!endif
61 DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf
62
63 BaseLib|MdePkg/Library/BaseLib/BaseLib.inf
64 SafeIntLib|MdePkg/Library/BaseSafeIntLib/BaseSafeIntLib.inf
65 BmpSupportLib|MdeModulePkg/Library/BaseBmpSupportLib/BaseBmpSupportLib.inf
66 SynchronizationLib|MdePkg/Library/BaseSynchronizationLib/BaseSynchronizationLib.inf
67 PerformanceLib|MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf
68 PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
69 PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf
70 PeCoffLib|MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf
71 IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsicArmVirt.inf
72 UefiDecompressLib|MdePkg/Library/BaseUefiDecompressLib/BaseUefiDecompressLib.inf
73 CpuLib|MdePkg/Library/BaseCpuLib/BaseCpuLib.inf
74
75 UefiLib|MdePkg/Library/UefiLib/UefiLib.inf
76 HobLib|ArmVirtPkg/Library/ArmVirtDxeHobLib/ArmVirtDxeHobLib.inf
77 UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
78 DevicePathLib|MdePkg/Library/UefiDevicePathLibDevicePathProtocol/UefiDevicePathLibDevicePathProtocol.inf
79 UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
80 DxeServicesTableLib|MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf
81 DxeServicesLib|MdePkg/Library/DxeServicesLib/DxeServicesLib.inf
82 UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
83 UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf
84 HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf
85 UefiHiiServicesLib|MdeModulePkg/Library/UefiHiiServicesLib/UefiHiiServicesLib.inf
86 SortLib|MdeModulePkg/Library/UefiSortLib/UefiSortLib.inf
87 ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf
88 ShellCEntryLib|ShellPkg/Library/UefiShellCEntryLib/UefiShellCEntryLib.inf
89 FileHandleLib|MdePkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf
90
91 UefiRuntimeLib|MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf
92 OrderedCollectionLib|MdePkg/Library/BaseOrderedCollectionRedBlackTreeLib/BaseOrderedCollectionRedBlackTreeLib.inf
93
94 #
95 # Ramdisk Requirements
96 #
97 FileExplorerLib|MdeModulePkg/Library/FileExplorerLib/FileExplorerLib.inf
98
99 # Allow dynamic PCDs
100 #
101 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
102
103 # use the accelerated BaseMemoryLibOptDxe by default, overrides for SEC/PEI below
104 BaseMemoryLib|MdePkg/Library/BaseMemoryLibOptDxe/BaseMemoryLibOptDxe.inf
105
106 # Networking Requirements
107!include NetworkPkg/NetworkLibs.dsc.inc
108!if $(NETWORK_TLS_ENABLE) == TRUE
109 TlsLib|CryptoPkg/Library/TlsLib/TlsLib.inf
110!endif
111
112
113 #
114 # It is not possible to prevent the ARM compiler from inserting calls to intrinsic functions.
115 # This library provides the instrinsic functions such a compiler may generate calls to.
116 #
117 NULL|ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf
118
119 # Add support for GCC stack protector
120 NULL|MdePkg/Library/BaseStackCheckLib/BaseStackCheckLib.inf
121
122 # ARM Architectural Libraries
123 CacheMaintenanceLib|ArmPkg/Library/ArmCacheMaintenanceLib/ArmCacheMaintenanceLib.inf
124 DefaultExceptionHandlerLib|ArmPkg/Library/DefaultExceptionHandlerLib/DefaultExceptionHandlerLib.inf
125 CpuExceptionHandlerLib|ArmPkg/Library/ArmExceptionLib/ArmExceptionLib.inf
126 ArmDisassemblerLib|ArmPkg/Library/ArmDisassemblerLib/ArmDisassemblerLib.inf
127 ArmGicLib|ArmPkg/Drivers/ArmGic/ArmGicLib.inf
128 ArmGicArchLib|ArmVirtPkg/Library/ArmVirtGicArchLib/ArmVirtGicArchLib.inf
129 ArmSmcLib|ArmPkg/Library/ArmSmcLib/ArmSmcLib.inf
130 ArmHvcLib|ArmPkg/Library/ArmHvcLib/ArmHvcLib.inf
131 ArmGenericTimerCounterLib|ArmPkg/Library/ArmGenericTimerVirtCounterLib/ArmGenericTimerVirtCounterLib.inf
132
133 PlatformPeiLib|ArmVirtPkg/Library/PlatformPeiLib/PlatformPeiLib.inf
134 MemoryInitPeiLib|ArmVirtPkg/Library/ArmVirtMemoryInitPeiLib/ArmVirtMemoryInitPeiLib.inf
135 ResetSystemLib|ArmVirtPkg/Library/ArmVirtPsciResetSystemLib/ArmVirtPsciResetSystemLib.inf
136
137 # ARM PL031 RTC Driver
138 RealTimeClockLib|ArmPlatformPkg/Library/PL031RealTimeClockLib/PL031RealTimeClockLib.inf
139 TimeBaseLib|EmbeddedPkg/Library/TimeBaseLib/TimeBaseLib.inf
140 # ARM PL011 UART Driver
141 PL011UartLib|ArmPlatformPkg/Library/PL011UartLib/PL011UartLib.inf
142 SerialPortLib|ArmVirtPkg/Library/FdtPL011SerialPortLib/FdtPL011SerialPortLib.inf
143
144 PeCoffExtraActionLib|ArmPkg/Library/DebugPeCoffExtraActionLib/DebugPeCoffExtraActionLib.inf
145 #PeCoffExtraActionLib|MdePkg/Library/BasePeCoffExtraActionLibNull/BasePeCoffExtraActionLibNull.inf
146
147 DebugAgentLib|MdeModulePkg/Library/DebugAgentLibNull/DebugAgentLibNull.inf
148 DebugAgentTimerLib|EmbeddedPkg/Library/DebugAgentTimerLibNull/DebugAgentTimerLibNull.inf
149
150 # Flattened Device Tree (FDT) access library
151 FdtLib|EmbeddedPkg/Library/FdtLib/FdtLib.inf
152
153 # PCI Libraries
154 PciLib|MdePkg/Library/BasePciLibPciExpress/BasePciLibPciExpress.inf
155 PciExpressLib|OvmfPkg/Library/BaseCachingPciExpressLib/BaseCachingPciExpressLib.inf
156 PciCapLib|OvmfPkg/Library/BasePciCapLib/BasePciCapLib.inf
157 PciCapPciSegmentLib|OvmfPkg/Library/BasePciCapPciSegmentLib/BasePciCapPciSegmentLib.inf
158 PciCapPciIoLib|OvmfPkg/Library/UefiPciCapPciIoLib/UefiPciCapPciIoLib.inf
159 DxeHardwareInfoLib|OvmfPkg/Library/HardwareInfoLib/DxeHardwareInfoLib.inf
160
161 # USB Libraries
162 UefiUsbLib|MdePkg/Library/UefiUsbLib/UefiUsbLib.inf
163
164 XenIoMmioLib|OvmfPkg/Library/XenIoMmioLib/XenIoMmioLib.inf
165
166 #
167 # CryptoPkg libraries needed by multiple firmware features
168 #
169 IntrinsicLib|CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf
170!if $(NETWORK_TLS_ENABLE) == TRUE
171 OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLib.inf
172!else
173 OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf
174!endif
175 BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf
176 RngLib|MdePkg/Library/BaseRngLibTimerLib/BaseRngLibTimerLib.inf
177
178 #
179 # Secure Boot dependencies
180 #
181!if $(SECURE_BOOT_ENABLE) == TRUE
182 AuthVariableLib|SecurityPkg/Library/AuthVariableLib/AuthVariableLib.inf
183 SecureBootVariableLib|SecurityPkg/Library/SecureBootVariableLib/SecureBootVariableLib.inf
184 SecureBootVariableProvisionLib|SecurityPkg/Library/SecureBootVariableProvisionLib/SecureBootVariableProvisionLib.inf
185 PlatformPKProtectionLib|SecurityPkg/Library/PlatformPKProtectionLibVarPolicy/PlatformPKProtectionLibVarPolicy.inf
186
187 # re-use the UserPhysicalPresent() dummy implementation from the ovmf tree
188 PlatformSecureLib|OvmfPkg/Library/PlatformSecureLib/PlatformSecureLib.inf
189!else
190 AuthVariableLib|MdeModulePkg/Library/AuthVariableLibNull/AuthVariableLibNull.inf
191!endif
192 VarCheckLib|MdeModulePkg/Library/VarCheckLib/VarCheckLib.inf
193 VariableFlashInfoLib|MdeModulePkg/Library/BaseVariableFlashInfoLib/BaseVariableFlashInfoLib.inf
194 VariablePolicyLib|MdeModulePkg/Library/VariablePolicyLib/VariablePolicyLib.inf
195 VariablePolicyHelperLib|MdeModulePkg/Library/VariablePolicyHelperLib/VariablePolicyHelperLib.inf
196 UefiBootManagerLib|MdeModulePkg/Library/UefiBootManagerLib/UefiBootManagerLib.inf
197
198 ReportStatusCodeLib|MdePkg/Library/BaseReportStatusCodeLibNull/BaseReportStatusCodeLibNull.inf
199
200[LibraryClasses.common.SEC]
201 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
202 BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf
203
204 DebugAgentLib|ArmPkg/Library/DebugAgentSymbolsBaseLib/DebugAgentSymbolsBaseLib.inf
205 SerialPortLib|ArmVirtPkg/Library/FdtPL011SerialPortLib/EarlyFdtPL011SerialPortLib.inf
206 HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf
207 PeiServicesLib|MdePkg/Library/PeiServicesLib/PeiServicesLib.inf
208 PeiServicesTablePointerLib|ArmPkg/Library/PeiServicesTablePointerLib/PeiServicesTablePointerLib.inf
209 MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf
210
211[LibraryClasses.common.PEI_CORE]
212 PcdLib|MdePkg/Library/PeiPcdLib/PeiPcdLib.inf
213 BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf
214 HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf
215 PeiServicesLib|MdePkg/Library/PeiServicesLib/PeiServicesLib.inf
216 MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf
217 PeiCoreEntryPoint|MdePkg/Library/PeiCoreEntryPoint/PeiCoreEntryPoint.inf
218 PerformanceLib|MdeModulePkg/Library/PeiPerformanceLib/PeiPerformanceLib.inf
219 OemHookStatusCodeLib|MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf
220 PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf
221 ExtractGuidedSectionLib|MdePkg/Library/PeiExtractGuidedSectionLib/PeiExtractGuidedSectionLib.inf
222
223 PeiServicesTablePointerLib|ArmPkg/Library/PeiServicesTablePointerLib/PeiServicesTablePointerLib.inf
224 SerialPortLib|ArmVirtPkg/Library/FdtPL011SerialPortLib/EarlyFdtPL011SerialPortLib.inf
225
226[LibraryClasses.common.PEIM]
227 PcdLib|MdePkg/Library/PeiPcdLib/PeiPcdLib.inf
228 BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf
229 HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf
230 PeiServicesLib|MdePkg/Library/PeiServicesLib/PeiServicesLib.inf
231 MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf
232 PeimEntryPoint|MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf
233 PerformanceLib|MdeModulePkg/Library/PeiPerformanceLib/PeiPerformanceLib.inf
234 OemHookStatusCodeLib|MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf
235 PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf
236 ExtractGuidedSectionLib|MdePkg/Library/PeiExtractGuidedSectionLib/PeiExtractGuidedSectionLib.inf
237
238 PeiServicesTablePointerLib|ArmPkg/Library/PeiServicesTablePointerLib/PeiServicesTablePointerLib.inf
239 SerialPortLib|ArmVirtPkg/Library/FdtPL011SerialPortLib/EarlyFdtPL011SerialPortLib.inf
240
241[LibraryClasses.common.DXE_CORE]
242 HobLib|MdePkg/Library/DxeCoreHobLib/DxeCoreHobLib.inf
243 MemoryAllocationLib|MdeModulePkg/Library/DxeCoreMemoryAllocationLib/DxeCoreMemoryAllocationLib.inf
244 DxeCoreEntryPoint|MdePkg/Library/DxeCoreEntryPoint/DxeCoreEntryPoint.inf
245 ExtractGuidedSectionLib|MdePkg/Library/DxeExtractGuidedSectionLib/DxeExtractGuidedSectionLib.inf
246 PerformanceLib|MdeModulePkg/Library/DxeCorePerformanceLib/DxeCorePerformanceLib.inf
247
248[LibraryClasses.common.DXE_DRIVER]
249 SecurityManagementLib|MdeModulePkg/Library/DxeSecurityManagementLib/DxeSecurityManagementLib.inf
250 PerformanceLib|MdeModulePkg/Library/DxePerformanceLib/DxePerformanceLib.inf
251 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
252
253[LibraryClasses.common.UEFI_APPLICATION]
254 PerformanceLib|MdeModulePkg/Library/DxePerformanceLib/DxePerformanceLib.inf
255 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
256 HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf
257
258[LibraryClasses.common.UEFI_DRIVER]
259 ExtractGuidedSectionLib|MdePkg/Library/DxeExtractGuidedSectionLib/DxeExtractGuidedSectionLib.inf
260 PerformanceLib|MdeModulePkg/Library/DxePerformanceLib/DxePerformanceLib.inf
261 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
262
263[LibraryClasses.common.DXE_RUNTIME_DRIVER]
264 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
265 CapsuleLib|MdeModulePkg/Library/DxeCapsuleLibNull/DxeCapsuleLibNull.inf
266!if $(TARGET) != RELEASE
267 DebugLib|MdePkg/Library/DxeRuntimeDebugLibSerialPort/DxeRuntimeDebugLibSerialPort.inf
268!endif
269 VariablePolicyLib|MdeModulePkg/Library/VariablePolicyLib/VariablePolicyLibRuntimeDxe.inf
270
271!if $(SECURE_BOOT_ENABLE) == TRUE
272 BaseCryptLib|CryptoPkg/Library/BaseCryptLib/RuntimeCryptLib.inf
273!endif
274
275[LibraryClasses.ARM]
276 ArmSoftFloatLib|ArmPkg/Library/ArmSoftFloatLib/ArmSoftFloatLib.inf
277
278[BuildOptions]
279 GCC:RELEASE_*_*_CC_FLAGS = -DMDEPKG_NDEBUG
280
281 #
282 # Disable deprecated APIs.
283 #
284 GCC:*_*_*_CC_FLAGS = -DDISABLE_NEW_DEPRECATED_INTERFACES
285
286################################################################################
287#
288# Pcd Section - list of all EDK II PCD Entries defined by this Platform
289#
290################################################################################
291
292[PcdsFeatureFlag.common]
293 gEfiMdeModulePkgTokenSpaceGuid.PcdHiiOsRuntimeSupport|FALSE
294
295 gEmbeddedTokenSpaceGuid.PcdPrePiProduceMemoryTypeInformationHob|TRUE
296
297[PcdsFeatureFlag.AARCH64]
298 #
299 # Activate AcpiSdtProtocol
300 #
301 gEfiMdeModulePkgTokenSpaceGuid.PcdInstallAcpiSdtProtocol|TRUE
302
303[PcdsFixedAtBuild.common]
304!ifdef $(FIRMWARE_VER)
305 gEfiMdeModulePkgTokenSpaceGuid.PcdFirmwareVersionString|L"$(FIRMWARE_VER)"
306!endif
307
308 gEfiMdePkgTokenSpaceGuid.PcdMaximumUnicodeStringLength|1000000
309 gEfiMdePkgTokenSpaceGuid.PcdMaximumAsciiStringLength|1000000
310 gEfiMdePkgTokenSpaceGuid.PcdMaximumLinkedListLength|0
311 gEfiMdePkgTokenSpaceGuid.PcdSpinLockTimeout|10000000
312 gEfiMdePkgTokenSpaceGuid.PcdUefiLibMaxPrintBufferSize|320
313
314 # DEBUG_ASSERT_ENABLED 0x01
315 # DEBUG_PRINT_ENABLED 0x02
316 # DEBUG_CODE_ENABLED 0x04
317 # CLEAR_MEMORY_ENABLED 0x08
318 # ASSERT_BREAKPOINT_ENABLED 0x10
319 # ASSERT_DEADLOOP_ENABLED 0x20
320!if $(TARGET) == RELEASE
321 gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x21
322!else
323 gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x2f
324!endif
325
326 # DEBUG_INIT 0x00000001 // Initialization
327 # DEBUG_WARN 0x00000002 // Warnings
328 # DEBUG_LOAD 0x00000004 // Load events
329 # DEBUG_FS 0x00000008 // EFI File system
330 # DEBUG_POOL 0x00000010 // Alloc & Free (pool)
331 # DEBUG_PAGE 0x00000020 // Alloc & Free (page)
332 # DEBUG_INFO 0x00000040 // Informational debug messages
333 # DEBUG_DISPATCH 0x00000080 // PEI/DXE/SMM Dispatchers
334 # DEBUG_VARIABLE 0x00000100 // Variable
335 # DEBUG_BM 0x00000400 // Boot Manager
336 # DEBUG_BLKIO 0x00001000 // BlkIo Driver
337 # DEBUG_NET 0x00004000 // SNP Driver
338 # DEBUG_UNDI 0x00010000 // UNDI Driver
339 # DEBUG_LOADFILE 0x00020000 // LoadFile
340 # DEBUG_EVENT 0x00080000 // Event messages
341 # DEBUG_GCD 0x00100000 // Global Coherency Database changes
342 # DEBUG_CACHE 0x00200000 // Memory range cachability changes
343 # DEBUG_VERBOSE 0x00400000 // Detailed debug messages that may
344 # // significantly impact boot performance
345 # DEBUG_ERROR 0x80000000 // Error
346!if $(TARGET) != RELEASE
347 gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|$(DEBUG_PRINT_ERROR_LEVEL)
348!endif
349
350 #
351 # Optional feature to help prevent EFI memory map fragments
352 # Turned on and off via: PcdPrePiProduceMemoryTypeInformationHob
353 # Values are in EFI Pages (4K). DXE Core will make sure that
354 # at least this much of each type of memory can be allocated
355 # from a single memory range. This way you only end up with
356 # maximum of two fragments for each type in the memory map
357 # (the memory used, and the free memory that was prereserved
358 # but not used).
359 #
360 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiACPIReclaimMemory|0
361 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiACPIMemoryNVS|0
362 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiReservedMemoryType|0
363!if $(SECURE_BOOT_ENABLE) == TRUE
364 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiRuntimeServicesData|600
365 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiRuntimeServicesCode|400
366 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiBootServicesCode|1500
367!else
368 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiRuntimeServicesData|300
369 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiRuntimeServicesCode|150
370 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiBootServicesCode|1000
371!endif
372 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiBootServicesData|12000
373 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiLoaderCode|20
374 gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiLoaderData|0
375
376 #
377 # Enable strict image permissions for all images. (This applies
378 # only to images that were built with >= 4 KB section alignment.)
379 #
380 gEfiMdeModulePkgTokenSpaceGuid.PcdImageProtectionPolicy|0x3
381
382 #
383 # Enable NX memory protection for all non-code regions, including OEM and OS
384 # reserved ones, with the exception of LoaderData regions, of which OS loaders
385 # (i.e., GRUB) may assume that its contents are executable.
386 #
387!ifdef $(VBOX)
388 #
389 # The default protection includes EfiLoaderData which older grub bootloaders
390 # fail to boot with because they assume being able to execute code from such memory
391 # regions. So don't apply the NX protection there.
392 #
393 gEfiMdeModulePkgTokenSpaceGuid.PcdDxeNxMemoryProtectionPolicy|0xC000000000007FD1
394!else
395 gEfiMdeModulePkgTokenSpaceGuid.PcdDxeNxMemoryProtectionPolicy|0xC000000000007FD5
396!endif
397
398 gEfiMdeModulePkgTokenSpaceGuid.PcdCpuStackGuard|TRUE
399
400[Components.common]
401 #
402 # Ramdisk support
403 #
404 MdeModulePkg/Universal/Disk/RamDiskDxe/RamDiskDxe.inf
405
406 ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf {
407 <PcdsFixedAtBuild>
408 gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
409 }
410 ShellPkg/DynamicCommand/HttpDynamicCommand/HttpDynamicCommand.inf {
411 <PcdsFixedAtBuild>
412 gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
413 }
414 OvmfPkg/LinuxInitrdDynamicShellCommand/LinuxInitrdDynamicShellCommand.inf {
415 <PcdsFixedAtBuild>
416 gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
417 }
418 ShellPkg/Application/Shell/Shell.inf {
419 <LibraryClasses>
420 ShellCommandLib|ShellPkg/Library/UefiShellCommandLib/UefiShellCommandLib.inf
421 NULL|ShellPkg/Library/UefiShellLevel2CommandsLib/UefiShellLevel2CommandsLib.inf
422 NULL|ShellPkg/Library/UefiShellLevel1CommandsLib/UefiShellLevel1CommandsLib.inf
423 NULL|ShellPkg/Library/UefiShellLevel3CommandsLib/UefiShellLevel3CommandsLib.inf
424 NULL|ShellPkg/Library/UefiShellDriver1CommandsLib/UefiShellDriver1CommandsLib.inf
425 NULL|ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1CommandsLib.inf
426!if $(ACPIVIEW_ENABLE) == TRUE
427 NULL|ShellPkg/Library/UefiShellAcpiViewCommandLib/UefiShellAcpiViewCommandLib.inf
428!endif
429 NULL|ShellPkg/Library/UefiShellInstall1CommandsLib/UefiShellInstall1CommandsLib.inf
430 NULL|ShellPkg/Library/UefiShellNetwork1CommandsLib/UefiShellNetwork1CommandsLib.inf
431!if $(NETWORK_IP6_ENABLE) == TRUE
432 NULL|ShellPkg/Library/UefiShellNetwork2CommandsLib/UefiShellNetwork2CommandsLib.inf
433!endif
434 HandleParsingLib|ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.inf
435 PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
436 BcfgCommandLib|ShellPkg/Library/UefiShellBcfgCommandLib/UefiShellBcfgCommandLib.inf
437
438 <PcdsFixedAtBuild>
439 gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0xFF
440 gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
441 gEfiMdePkgTokenSpaceGuid.PcdUefiLibMaxPrintBufferSize|8000
442 }
443
444[Components.AARCH64]
445 #
446 # ACPI Support
447 #
448 MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf {
449 <LibraryClasses>
450 NULL|EmbeddedPkg/Library/PlatformHasAcpiLib/PlatformHasAcpiLib.inf
451 }
注意: 瀏覽 TracBrowser 來幫助您使用儲存庫瀏覽器

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette