]>
Commit | Line | Data |
---|---|---|
949f388f | 1 | ## @file\r |
5dcda296 | 2 | # UEFI/PI Emulation Platform with UEFI HII interface supported.\r |
949f388f | 3 | #\r |
4 | # The Emulation Platform can be used to debug individual modules, prior to creating\r | |
e23e488e | 5 | # a real platform. This also provides an example for how an DSC is created.\r |
6 | #\r | |
991c8987 | 7 | # Copyright (c) 2006 - 2021, Intel Corporation. All rights reserved.<BR>\r |
949f388f | 8 | # Portions copyright (c) 2010 - 2011, Apple Inc. All rights reserved.<BR>\r |
61a85646 | 9 | # Copyright (c) Microsoft Corporation.\r |
949f388f | 10 | #\r |
e3ba31da | 11 | # SPDX-License-Identifier: BSD-2-Clause-Patent\r |
949f388f | 12 | #\r |
13 | ##\r | |
14 | \r | |
949f388f | 15 | [Defines]\r |
e23e488e | 16 | PLATFORM_NAME = EmulatorPkg\r |
949f388f | 17 | PLATFORM_GUID = 05FD064D-1073-E844-936C-A0E16317107D\r |
18 | PLATFORM_VERSION = 0.3\r | |
52cb711d | 19 | DSC_SPECIFICATION = 0x00010005\r |
f89c018f | 20 | OUTPUT_DIRECTORY = Build/Emulator$(ARCH)\r |
e7523e06 | 21 | \r |
112a857f | 22 | SUPPORTED_ARCHITECTURES = X64|IA32\r |
57c320c9 | 23 | BUILD_TARGETS = DEBUG|RELEASE|NOOPT\r |
949f388f | 24 | SKUID_IDENTIFIER = DEFAULT\r |
e23e488e | 25 | FLASH_DEFINITION = EmulatorPkg/EmulatorPkg.fdf\r |
949f388f | 26 | \r |
3b7a897c FS |
27 | \r |
28 | #\r | |
29 | # Network definition\r | |
30 | #\r | |
31 | DEFINE NETWORK_SNP_ENABLE = FALSE\r | |
32 | DEFINE NETWORK_IP6_ENABLE = FALSE\r | |
33 | DEFINE NETWORK_TLS_ENABLE = FALSE\r | |
34 | DEFINE NETWORK_HTTP_BOOT_ENABLE = FALSE\r | |
4b69fab6 | 35 | DEFINE NETWORK_HTTP_ENABLE = FALSE\r |
3b7a897c | 36 | DEFINE NETWORK_ISCSI_ENABLE = FALSE\r |
7faece69 | 37 | DEFINE SECURE_BOOT_ENABLE = FALSE\r |
3b7a897c | 38 | \r |
484e869d AC |
39 | #\r |
40 | # Redfish definition\r | |
41 | #\r | |
42 | DEFINE REDFISH_ENABLE = FALSE\r | |
43 | \r | |
949f388f | 44 | [SkuIds]\r |
45 | 0|DEFAULT\r | |
46 | \r | |
991c8987 DB |
47 | !include MdePkg/MdeLibs.dsc.inc\r |
48 | \r | |
949f388f | 49 | [LibraryClasses]\r |
50 | #\r | |
51 | # Entry point\r | |
52 | #\r | |
53 | PeiCoreEntryPoint|MdePkg/Library/PeiCoreEntryPoint/PeiCoreEntryPoint.inf\r | |
54 | PeimEntryPoint|MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf\r | |
55 | DxeCoreEntryPoint|MdePkg/Library/DxeCoreEntryPoint/DxeCoreEntryPoint.inf\r | |
56 | UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf\r | |
57 | UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf\r | |
58 | #\r | |
59 | # Basic\r | |
60 | #\r | |
61 | BaseLib|MdePkg/Library/BaseLib/BaseLib.inf\r | |
62 | SynchronizationLib|MdePkg/Library/BaseSynchronizationLib/BaseSynchronizationLib.inf\r | |
63 | PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf\r | |
64 | CacheMaintenanceLib|MdePkg/Library/BaseCacheMaintenanceLib/BaseCacheMaintenanceLib.inf\r | |
65 | PeCoffLib|MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf\r | |
66 | PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf\r | |
67 | BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf\r | |
d773459e | 68 | FrameBufferBltLib|MdeModulePkg/Library/FrameBufferBltLib/FrameBufferBltLib.inf\r |
949f388f | 69 | \r |
70 | #\r | |
71 | # UEFI & PI\r | |
72 | #\r | |
73 | UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf\r | |
74 | UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf\r | |
75 | UefiRuntimeLib|MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf\r | |
76 | UefiLib|MdePkg/Library/UefiLib/UefiLib.inf\r | |
77 | UefiHiiServicesLib|MdeModulePkg/Library/UefiHiiServicesLib/UefiHiiServicesLib.inf\r | |
78 | HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf\r | |
79 | DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf\r | |
0108a91c | 80 | UefiDecompressLib|MdePkg/Library/BaseUefiDecompressLib/BaseUefiDecompressLib.inf\r |
949f388f | 81 | \r |
82 | PeiServicesLib|MdePkg/Library/PeiServicesLib/PeiServicesLib.inf\r | |
83 | DxeServicesLib|MdePkg/Library/DxeServicesLib/DxeServicesLib.inf\r | |
84 | DxeServicesTableLib|MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf\r | |
63f9b9b9 | 85 | SmbiosLib|EmulatorPkg/Library/SmbiosLib/SmbiosLib.inf\r |
86 | \r | |
949f388f | 87 | #\r |
88 | # Generic Modules\r | |
89 | #\r | |
90 | UefiScsiLib|MdePkg/Library/UefiScsiLib/UefiScsiLib.inf\r | |
949f388f | 91 | OemHookStatusCodeLib|MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf\r |
e0123894 RN |
92 | BootLogoLib|MdeModulePkg/Library/BootLogoLib/BootLogoLib.inf\r |
93 | FileExplorerLib|MdeModulePkg/Library/FileExplorerLib/FileExplorerLib.inf\r | |
94 | UefiBootManagerLib|MdeModulePkg/Library/UefiBootManagerLib/UefiBootManagerLib.inf\r | |
44b5d55d MK |
95 | BmpSupportLib|MdeModulePkg/Library/BaseBmpSupportLib/BaseBmpSupportLib.inf\r |
96 | SafeIntLib|MdePkg/Library/BaseSafeIntLib/BaseSafeIntLib.inf\r | |
9a25ad8b | 97 | CustomizedDisplayLib|MdeModulePkg/Library/CustomizedDisplayLib/CustomizedDisplayLib.inf\r |
949f388f | 98 | SecurityManagementLib|MdeModulePkg/Library/DxeSecurityManagementLib/DxeSecurityManagementLib.inf\r |
99 | TimerLib|MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.inf\r | |
100 | SerialPortLib|MdePkg/Library/BaseSerialPortLibNull/BaseSerialPortLibNull.inf\r | |
101 | CapsuleLib|MdeModulePkg/Library/DxeCapsuleLibNull/DxeCapsuleLibNull.inf\r | |
102 | #\r | |
103 | # Platform\r | |
104 | #\r | |
e0123894 | 105 | PlatformBootManagerLib|EmulatorPkg/Library/PlatformBmLib/PlatformBmLib.inf\r |
bb89ec1a | 106 | KeyMapLib|EmulatorPkg/Library/KeyMapLibNull/KeyMapLibNull.inf\r |
484e869d AC |
107 | !if $(REDFISH_ENABLE) == TRUE\r |
108 | RedfishPlatformHostInterfaceLib|EmulatorPkg/Library/RedfishPlatformHostInterfaceLib/RedfishPlatformHostInterfaceLib.inf\r | |
c88736f8 | 109 | RedfishPlatformCredentialLib|EmulatorPkg/Library/RedfishPlatformCredentialLib/RedfishPlatformCredentialLib.inf\r |
484e869d | 110 | !endif\r |
949f388f | 111 | #\r |
112 | # Misc\r | |
113 | #\r | |
114 | DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf\r | |
115 | PerformanceLib|MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf\r | |
116 | DebugAgentLib|MdeModulePkg/Library/DebugAgentLibNull/DebugAgentLibNull.inf\r | |
bb89ec1a | 117 | PeiServicesTablePointerLib|EmulatorPkg/Library/PeiServicesTablePointerLibMagicPage/PeiServicesTablePointerLibMagicPage.inf\r |
7bbe0b3e | 118 | DebugLib|MdeModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf\r |
7f5d7425 | 119 | LockBoxLib|MdeModulePkg/Library/LockBoxNullLib/LockBoxNullLib.inf\r |
5d81a9b3 | 120 | CpuExceptionHandlerLib|MdeModulePkg/Library/CpuExceptionHandlerLibNull/CpuExceptionHandlerLibNull.inf\r |
c8f451eb | 121 | TpmMeasurementLib|MdeModulePkg/Library/TpmMeasurementLibNull/TpmMeasurementLibNull.inf\r |
b6e3355a | 122 | VarCheckLib|MdeModulePkg/Library/VarCheckLib/VarCheckLib.inf\r |
61a85646 BB |
123 | VariablePolicyLib|MdeModulePkg/Library/VariablePolicyLib/VariablePolicyLibRuntimeDxe.inf\r |
124 | VariablePolicyHelperLib|MdeModulePkg/Library/VariablePolicyHelperLib/VariablePolicyHelperLib.inf\r | |
3df29b5d | 125 | SortLib|MdeModulePkg/Library/BaseSortLib/BaseSortLib.inf\r |
fdd8463d RN |
126 | ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf\r |
127 | FileHandleLib|MdePkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf\r | |
949f388f | 128 | \r |
7faece69 | 129 | !if $(SECURE_BOOT_ENABLE) == TRUE\r |
ea9af514 | 130 | RngLib|MdePkg/Library/BaseRngLibTimerLib/BaseRngLibTimerLib.inf\r |
7faece69 DRW |
131 | IntrinsicLib|CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf\r |
132 | OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf\r | |
133 | PlatformSecureLib|SecurityPkg/Library/PlatformSecureLibNull/PlatformSecureLibNull.inf\r | |
134 | AuthVariableLib|SecurityPkg/Library/AuthVariableLib/AuthVariableLib.inf\r | |
135 | !else\r | |
136 | AuthVariableLib|MdeModulePkg/Library/AuthVariableLibNull/AuthVariableLibNull.inf\r | |
137 | !endif\r | |
138 | \r | |
65e3f333 | 139 | [LibraryClasses.common.SEC]\r |
bb89ec1a | 140 | PeiServicesLib|EmulatorPkg/Library/SecPeiServicesLib/SecPeiServicesLib.inf\r |
65e3f333 | 141 | PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf\r |
bb89ec1a | 142 | PeCoffGetEntryPointLib|EmulatorPkg/Library/PeiEmuPeCoffGetEntryPointLib/PeiEmuPeCoffGetEntryPointLib.inf\r |
143 | PeCoffExtraActionLib|EmulatorPkg/Library/PeiEmuPeCoffExtraActionLib/PeiEmuPeCoffExtraActionLib.inf\r | |
144 | SerialPortLib|EmulatorPkg/Library/PeiEmuSerialPortLib/PeiEmuSerialPortLib.inf\r | |
145 | PpiListLib|EmulatorPkg/Library/SecPpiListLib/SecPpiListLib.inf\r | |
1453e773 | 146 | DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf\r |
bb89ec1a | 147 | TimerLib|EmulatorPkg/Library/PeiTimerLib/PeiTimerLib.inf\r |
65e3f333 | 148 | \r |
949f388f | 149 | [LibraryClasses.common.USER_DEFINED, LibraryClasses.common.BASE]\r |
150 | DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf\r | |
151 | PeCoffExtraActionLib|MdePkg/Library/BasePeCoffExtraActionLibNull/BasePeCoffExtraActionLibNull.inf\r | |
152 | MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf\r | |
153 | PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf\r | |
bb89ec1a | 154 | PpiListLib|EmulatorPkg/Library/SecPpiListLib/SecPpiListLib.inf\r |
155 | ThunkPpiList|EmulatorPkg/Library/ThunkPpiList/ThunkPpiList.inf\r | |
156 | ThunkProtocolList|EmulatorPkg/Library/ThunkProtocolList/ThunkProtocolList.inf\r | |
65e3f333 | 157 | PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf\r |
bb89ec1a | 158 | PpiListLib|EmulatorPkg/Library/SecPpiListLib/SecPpiListLib.inf\r |
159 | PeiServicesLib|EmulatorPkg/Library/SecPeiServicesLib/SecPeiServicesLib.inf\r | |
65e3f333 | 160 | \r |
949f388f | 161 | \r |
162 | [LibraryClasses.common.PEIM, LibraryClasses.common.PEI_CORE]\r | |
163 | HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf\r | |
164 | MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf\r | |
165 | ReportStatusCodeLib|MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf\r | |
bb89ec1a | 166 | PeCoffGetEntryPointLib|EmulatorPkg/Library/PeiEmuPeCoffGetEntryPointLib/PeiEmuPeCoffGetEntryPointLib.inf\r |
167 | PeCoffExtraActionLib|EmulatorPkg/Library/PeiEmuPeCoffExtraActionLib/PeiEmuPeCoffExtraActionLib.inf\r | |
949f388f | 168 | ExtractGuidedSectionLib|MdePkg/Library/PeiExtractGuidedSectionLib/PeiExtractGuidedSectionLib.inf\r |
bb89ec1a | 169 | SerialPortLib|EmulatorPkg/Library/PeiEmuSerialPortLib/PeiEmuSerialPortLib.inf\r |
1453e773 | 170 | ReportStatusCodeLib|MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf\r |
bb89ec1a | 171 | TimerLib|EmulatorPkg/Library/PeiTimerLib/PeiTimerLib.inf\r |
949f388f | 172 | \r |
173 | [LibraryClasses.common.PEI_CORE]\r | |
174 | PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf\r | |
949f388f | 175 | \r |
176 | [LibraryClasses.common.PEIM]\r | |
177 | PcdLib|MdePkg/Library/PeiPcdLib/PeiPcdLib.inf\r | |
949f388f | 178 | \r |
179 | [LibraryClasses.common.DXE_CORE]\r | |
180 | HobLib|MdePkg/Library/DxeCoreHobLib/DxeCoreHobLib.inf\r | |
181 | MemoryAllocationLib|MdeModulePkg/Library/DxeCoreMemoryAllocationLib/DxeCoreMemoryAllocationLib.inf\r | |
182 | ReportStatusCodeLib|MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf\r | |
bb89ec1a | 183 | PeCoffExtraActionLib|EmulatorPkg/Library/DxeEmuPeCoffExtraActionLib/DxeEmuPeCoffExtraActionLib.inf\r |
949f388f | 184 | ExtractGuidedSectionLib|MdePkg/Library/DxeExtractGuidedSectionLib/DxeExtractGuidedSectionLib.inf\r |
185 | PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf\r | |
bb89ec1a | 186 | TimerLib|EmulatorPkg/Library/DxeCoreTimerLib/DxeCoreTimerLib.inf\r |
187 | EmuThunkLib|EmulatorPkg/Library/DxeEmuLib/DxeEmuLib.inf\r | |
949f388f | 188 | \r |
7faece69 DRW |
189 | [LibraryClasses.common.DXE_DRIVER, LibraryClasses.common.UEFI_DRIVER, LibraryClasses.common.UEFI_APPLICATION]\r |
190 | !if $(SECURE_BOOT_ENABLE) == TRUE\r | |
191 | BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf\r | |
192 | !endif\r | |
193 | \r | |
194 | [LibraryClasses.common.DXE_RUNTIME_DRIVER]\r | |
195 | !if $(SECURE_BOOT_ENABLE) == TRUE\r | |
196 | BaseCryptLib|CryptoPkg/Library/BaseCryptLib/RuntimeCryptLib.inf\r | |
197 | !endif\r | |
198 | \r | |
949f388f | 199 | [LibraryClasses.common.DXE_RUNTIME_DRIVER, LibraryClasses.common.UEFI_DRIVER, LibraryClasses.common.DXE_DRIVER, LibraryClasses.common.UEFI_APPLICATION]\r |
200 | HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf\r | |
201 | PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf\r | |
202 | MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf\r | |
203 | ReportStatusCodeLib|MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf\r | |
bb89ec1a | 204 | EmuThunkLib|EmulatorPkg/Library/DxeEmuLib/DxeEmuLib.inf\r |
205 | PeCoffExtraActionLib|EmulatorPkg/Library/DxeEmuPeCoffExtraActionLib/DxeEmuPeCoffExtraActionLib.inf\r | |
1453e773 | 206 | ReportStatusCodeLib|MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf\r |
bb89ec1a | 207 | TimerLib|EmulatorPkg/Library/DxeTimerLib/DxeTimerLib.inf\r |
949f388f | 208 | \r |
949f388f | 209 | [PcdsFeatureFlag]\r |
210 | gEfiMdeModulePkgTokenSpaceGuid.PcdDxeIplSwitchToLongMode|FALSE\r | |
949f388f | 211 | gEfiMdeModulePkgTokenSpaceGuid.PcdPeiCoreImageLoaderSearchTeSectionFirst|FALSE\r |
1fc93083 | 212 | gEfiMdeModulePkgTokenSpaceGuid.PcdDxeIplBuildPageTables|FALSE\r |
949f388f | 213 | \r |
214 | [PcdsFixedAtBuild]\r | |
cf320090 | 215 | gEfiMdeModulePkgTokenSpaceGuid.PcdImageProtectionPolicy|0x00000000\r |
df1b7575 | 216 | gEfiMdeModulePkgTokenSpaceGuid.PcdResetOnMemoryTypeInformationChange|FALSE\r |
949f388f | 217 | gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80000040\r |
218 | gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|0x0f\r | |
219 | gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x1f\r | |
220 | gEfiMdeModulePkgTokenSpaceGuid.PcdMaxSizeNonPopulateCapsule|0x0\r | |
221 | gEfiMdeModulePkgTokenSpaceGuid.PcdMaxSizePopulateCapsule|0x0\r | |
6e9f7e5e | 222 | gEfiMdeModulePkgTokenSpaceGuid.PcdStatusCodeUseSerial|TRUE\r |
949f388f | 223 | \r |
bb89ec1a | 224 | gEmulatorPkgTokenSpaceGuid.PcdEmuFirmwareFdSize|0x002a0000\r |
225 | gEmulatorPkgTokenSpaceGuid.PcdEmuFirmwareBlockSize|0x10000\r | |
226 | gEmulatorPkgTokenSpaceGuid.PcdEmuFirmwareVolume|L"../FV/FV_RECOVERY.fd"\r | |
7faece69 DRW |
227 | !if $(SECURE_BOOT_ENABLE) == TRUE\r |
228 | gEfiMdeModulePkgTokenSpaceGuid.PcdMaxAuthVariableSize|0x2800\r | |
229 | gEfiSecurityPkgTokenSpaceGuid.PcdUserPhysicalPresence|TRUE\r | |
230 | !endif\r | |
d18d8a1d | 231 | \r |
59ad461d | 232 | gEmulatorPkgTokenSpaceGuid.PcdEmuMemorySize|L"64!64"\r |
72a44be9 | 233 | \r |
e0123894 RN |
234 | # Change PcdBootManagerMenuFile to UiApp\r |
235 | gEfiMdeModulePkgTokenSpaceGuid.PcdBootManagerMenuFile|{ 0x21, 0xaa, 0x2c, 0x46, 0x14, 0x76, 0x03, 0x45, 0x83, 0x6e, 0x8a, 0xb6, 0xf4, 0x66, 0x23, 0x31 }\r | |
236 | \r | |
72a44be9 | 237 | \r |
949f388f | 238 | #define BOOT_WITH_FULL_CONFIGURATION 0x00\r |
239 | #define BOOT_WITH_MINIMAL_CONFIGURATION 0x01\r | |
240 | #define BOOT_ASSUMING_NO_CONFIGURATION_CHANGES 0x02\r | |
241 | #define BOOT_WITH_FULL_CONFIGURATION_PLUS_DIAGNOSTICS 0x03\r | |
242 | #define BOOT_WITH_DEFAULT_SETTINGS 0x04\r | |
243 | #define BOOT_ON_S4_RESUME 0x05\r | |
244 | #define BOOT_ON_S5_RESUME 0x06\r | |
245 | #define BOOT_ON_S2_RESUME 0x10\r | |
246 | #define BOOT_ON_S3_RESUME 0x11\r | |
247 | #define BOOT_ON_FLASH_UPDATE 0x12\r | |
248 | #define BOOT_IN_RECOVERY_MODE 0x20\r | |
bb89ec1a | 249 | gEmulatorPkgTokenSpaceGuid.PcdEmuBootMode|0\r |
d18d8a1d | 250 | \r |
bb89ec1a | 251 | gEmulatorPkgTokenSpaceGuid.PcdEmuApCount|L"1"\r |
949f388f | 252 | \r |
5dcda296 | 253 | # For a CD-ROM/DVD use L"diag.dmg:RO:2048"\r |
bb89ec1a | 254 | gEmulatorPkgTokenSpaceGuid.PcdEmuVirtualDisk|L"disk.dmg:FW"\r |
255 | gEmulatorPkgTokenSpaceGuid.PcdEmuGop|L"GOP Window"\r | |
033949a8 | 256 | gEmulatorPkgTokenSpaceGuid.PcdEmuFileSystem|L"."\r |
bb89ec1a | 257 | gEmulatorPkgTokenSpaceGuid.PcdEmuSerialPort|L"/dev/ttyS0"\r |
258 | gEmulatorPkgTokenSpaceGuid.PcdEmuNetworkInterface|L"en0"\r | |
949f388f | 259 | \r |
bb89ec1a | 260 | gEmulatorPkgTokenSpaceGuid.PcdEmuCpuModel|L"Intel(R) Processor Model"\r |
261 | gEmulatorPkgTokenSpaceGuid.PcdEmuCpuSpeed|L"3000"\r | |
949f388f | 262 | \r |
1c145953 | 263 | # 0-PCANSI, 1-VT100, 2-VT00+, 3-UTF8, 4-TTYTERM\r |
7e284acb | 264 | gEfiMdePkgTokenSpaceGuid.PcdDefaultTerminalType|1\r |
265 | \r | |
484e869d AC |
266 | !if $(REDFISH_ENABLE) == TRUE\r |
267 | gEfiRedfishPkgTokenSpaceGuid.PcdRedfishRestExServiceDevicePath.DevicePathMatchMode|DEVICE_PATH_MATCH_MAC_NODE\r | |
268 | gEfiRedfishPkgTokenSpaceGuid.PcdRedfishRestExServiceDevicePath.DevicePathNum|1\r | |
269 | #\r | |
270 | # Below is the MAC address of network adapter on EDK2 Emulator platform.\r | |
271 | # You can use ifconfig under EFI shell to get the MAC address of network adapter on EDK2 Emulator platform.\r | |
272 | #\r | |
273 | gEfiRedfishPkgTokenSpaceGuid.PcdRedfishRestExServiceDevicePath.DevicePath|{DEVICE_PATH("MAC(000000000000,0x1)")}\r | |
274 | gEfiRedfishPkgTokenSpaceGuid.PcdRedfishRestExServiceAccessModeInBand|False\r | |
275 | gEfiRedfishPkgTokenSpaceGuid.PcdRedfishDiscoverAccessModeInBand|False\r | |
276 | !endif\r | |
277 | \r | |
949f388f | 278 | [PcdsDynamicDefault.common.DEFAULT]\r |
279 | gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareBase64|0\r | |
280 | gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingBase64|0\r | |
281 | gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableBase64|0\r | |
282 | \r | |
283 | [PcdsDynamicHii.common.DEFAULT]\r | |
284 | gEfiMdeModulePkgTokenSpaceGuid.PcdConOutColumn|L"Setup"|gEmuSystemConfigGuid|0x0|80\r | |
285 | gEfiMdeModulePkgTokenSpaceGuid.PcdConOutRow|L"Setup"|gEmuSystemConfigGuid|0x4|25\r | |
e0123894 | 286 | gEfiMdePkgTokenSpaceGuid.PcdPlatformBootTimeOut|L"Timeout"|gEfiGlobalVariableGuid|0x0|10\r |
949f388f | 287 | \r |
949f388f | 288 | [Components]\r |
50509ec6 | 289 | !if "IA32" in $(ARCH) || "X64" in $(ARCH)\r |
2737037a | 290 | !if "MSFT" in $(FAMILY) || $(WIN_HOST_BUILD) == TRUE\r |
50509ec6 MK |
291 | ##\r |
292 | # Emulator, OS WIN application\r | |
0b9ad0bc | 293 | # CLANGPDB is cross OS tool chain. It depends on WIN_HOST_BUILD flag\r |
2737037a | 294 | # to build WinHost application.\r |
50509ec6 MK |
295 | ##\r |
296 | EmulatorPkg/Win/Host/WinHost.inf\r | |
297 | !else\r | |
298 | ##\r | |
299 | # Emulator, OS POSIX application\r | |
300 | ##\r | |
301 | EmulatorPkg/Unix/Host/Host.inf\r | |
302 | !endif\r | |
3c859dfe RN |
303 | !endif\r |
304 | \r | |
53a6813f | 305 | !ifndef $(SKIP_MAIN_BUILD)\r |
65e3f333 | 306 | #\r |
307 | # Generic SEC\r | |
308 | #\r | |
bb89ec1a | 309 | EmulatorPkg/Sec/Sec.inf\r |
65e3f333 | 310 | \r |
949f388f | 311 | ##\r |
312 | # PEI Phase modules\r | |
313 | ##\r | |
314 | MdeModulePkg/Core/Pei/PeiMain.inf\r | |
315 | MdeModulePkg/Universal/PCD/Pei/Pcd.inf {\r | |
316 | <LibraryClasses>\r | |
317 | PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf\r | |
318 | }\r | |
319 | MdeModulePkg/Universal/ReportStatusCodeRouter/Pei/ReportStatusCodeRouterPei.inf\r | |
d18d8a1d | 320 | MdeModulePkg/Universal/StatusCodeHandler/Pei/StatusCodeHandlerPei.inf\r |
321 | \r | |
bb89ec1a | 322 | EmulatorPkg/BootModePei/BootModePei.inf\r |
94c4575c | 323 | MdeModulePkg/Universal/FaultTolerantWritePei/FaultTolerantWritePei.inf\r |
949f388f | 324 | MdeModulePkg/Universal/Variable/Pei/VariablePei.inf\r |
bb89ec1a | 325 | EmulatorPkg/AutoScanPei/AutoScanPei.inf\r |
326 | EmulatorPkg/FirmwareVolumePei/FirmwareVolumePei.inf\r | |
327 | EmulatorPkg/FlashMapPei/FlashMapPei.inf\r | |
328 | EmulatorPkg/ThunkPpiToProtocolPei/ThunkPpiToProtocolPei.inf\r | |
45aee4c8 | 329 | MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf\r |
949f388f | 330 | \r |
331 | ##\r | |
332 | # DXE Phase modules\r | |
333 | ##\r | |
334 | MdeModulePkg/Core/Dxe/DxeMain.inf {\r | |
335 | <LibraryClasses>\r | |
1453e773 | 336 | DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf\r |
bed0bbc3 | 337 | SerialPortLib|EmulatorPkg/Library/DxeEmuStdErrSerialPortLib/DxeEmuStdErrSerialPortLib.inf\r |
338 | DxeEmuLib|EmulatorPkg/Library/DxeEmuLib/DxeEmuLib.inf\r | |
949f388f | 339 | NULL|MdeModulePkg/Library/DxeCrc32GuidedSectionExtractLib/DxeCrc32GuidedSectionExtractLib.inf\r |
7bbe0b3e | 340 | NULL|MdeModulePkg/Library/LzmaCustomDecompressLib/LzmaCustomDecompressLib.inf\r |
949f388f | 341 | }\r |
342 | MdeModulePkg/Universal/PCD/Dxe/Pcd.inf {\r | |
343 | <LibraryClasses>\r | |
344 | PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf\r | |
345 | }\r | |
346 | \r | |
347 | MdeModulePkg/Universal/ReportStatusCodeRouter/RuntimeDxe/ReportStatusCodeRouterRuntimeDxe.inf\r | |
348 | MdeModulePkg/Universal/StatusCodeHandler/RuntimeDxe/StatusCodeHandlerRuntimeDxe.inf {\r | |
349 | <LibraryClasses>\r | |
1453e773 | 350 | DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf\r |
d18d8a1d | 351 | SerialPortLib|EmulatorPkg/Library/DxeEmuStdErrSerialPortLib/DxeEmuStdErrSerialPortLib.inf\r |
949f388f | 352 | }\r |
353 | \r | |
1ef41207 | 354 | MdeModulePkg/Universal/Metronome/Metronome.inf\r |
bb89ec1a | 355 | EmulatorPkg/RealTimeClockRuntimeDxe/RealTimeClock.inf\r |
356 | EmulatorPkg/ResetRuntimeDxe/Reset.inf\r | |
949f388f | 357 | MdeModulePkg/Core/RuntimeDxe/RuntimeDxe.inf\r |
bb89ec1a | 358 | EmulatorPkg/FvbServicesRuntimeDxe/FvbServicesRuntimeDxe.inf\r |
7faece69 DRW |
359 | \r |
360 | MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf {\r | |
361 | <LibraryClasses>\r | |
362 | !if $(SECURE_BOOT_ENABLE) == TRUE\r | |
363 | NULL|SecurityPkg/Library/DxeImageVerificationLib/DxeImageVerificationLib.inf\r | |
364 | !endif\r | |
365 | }\r | |
366 | \r | |
949f388f | 367 | MdeModulePkg/Universal/EbcDxe/EbcDxe.inf\r |
368 | MdeModulePkg/Universal/MemoryTest/NullMemoryTestDxe/NullMemoryTestDxe.inf\r | |
bb89ec1a | 369 | EmulatorPkg/EmuThunkDxe/EmuThunk.inf\r |
370 | EmulatorPkg/CpuRuntimeDxe/Cpu.inf\r | |
949f388f | 371 | MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteDxe.inf\r |
63f9b9b9 | 372 | EmulatorPkg/PlatformSmbiosDxe/PlatformSmbiosDxe.inf\r |
bb89ec1a | 373 | EmulatorPkg/TimerDxe/Timer.inf\r |
949f388f | 374 | \r |
7faece69 DRW |
375 | !if $(SECURE_BOOT_ENABLE) == TRUE\r |
376 | SecurityPkg/VariableAuthenticated/SecureBootConfigDxe/SecureBootConfigDxe.inf\r | |
377 | !endif\r | |
949f388f | 378 | \r |
1432065e SZ |
379 | MdeModulePkg/Universal/Variable/RuntimeDxe/VariableRuntimeDxe.inf {\r |
380 | <LibraryClasses>\r | |
381 | NULL|MdeModulePkg/Library/VarCheckUefiLib/VarCheckUefiLib.inf\r | |
382 | }\r | |
949f388f | 383 | MdeModulePkg/Universal/WatchdogTimerDxe/WatchdogTimer.inf\r |
384 | MdeModulePkg/Universal/MonotonicCounterRuntimeDxe/MonotonicCounterRuntimeDxe.inf\r | |
385 | MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf\r | |
386 | MdeModulePkg/Universal/Console/ConPlatformDxe/ConPlatformDxe.inf\r | |
387 | MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitterDxe.inf\r | |
388 | MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsoleDxe.inf\r | |
9fffd8e2 | 389 | MdeModulePkg/Universal/SerialDxe/SerialDxe.inf {\r |
7e284acb | 390 | <LibraryClasses>\r |
391 | DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf\r | |
d18d8a1d | 392 | SerialPortLib|EmulatorPkg/Library/DxeEmuSerialPortLib/DxeEmuSerialPortLib.inf\r |
7e284acb | 393 | }\r |
d18d8a1d | 394 | \r |
949f388f | 395 | MdeModulePkg/Universal/Console/TerminalDxe/TerminalDxe.inf\r |
e0123894 | 396 | MdeModulePkg/Universal/BdsDxe/BdsDxe.inf\r |
6ed2c8be | 397 | !if "XCODE5" not in $(TOOL_CHAIN_TAG)\r |
e0123894 | 398 | MdeModulePkg/Logo/LogoDxe.inf\r |
6ed2c8be | 399 | !endif\r |
e0123894 RN |
400 | MdeModulePkg/Universal/LoadFileOnFv2/LoadFileOnFv2.inf\r |
401 | MdeModulePkg/Application/UiApp/UiApp.inf {\r | |
402 | <LibraryClasses>\r | |
403 | NULL|MdeModulePkg/Library/DeviceManagerUiLib/DeviceManagerUiLib.inf\r | |
404 | NULL|MdeModulePkg/Library/BootManagerUiLib/BootManagerUiLib.inf\r | |
405 | NULL|MdeModulePkg/Library/BootMaintenanceManagerUiLib/BootMaintenanceManagerUiLib.inf\r | |
406 | }\r | |
407 | MdeModulePkg/Application/BootManagerMenuApp/BootManagerMenuApp.inf\r | |
408 | \r | |
d18d8a1d | 409 | MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf\r |
5dcda296 | 410 | #{\r |
d18d8a1d | 411 | # <LibraryClasses>\r |
bb89ec1a | 412 | # NULL|EmulatorPkg/Library/DevicePathTextLib/DevicePathTextLib.inf\r |
5dcda296 | 413 | #}\r |
d18d8a1d | 414 | \r |
949f388f | 415 | MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf\r |
416 | MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf\r | |
417 | MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf\r | |
418 | MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf\r | |
419 | MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBusDxe.inf\r | |
420 | MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDiskDxe.inf\r | |
949f388f | 421 | \r |
bb89ec1a | 422 | EmulatorPkg/EmuBusDriverDxe/EmuBusDriverDxe.inf\r |
423 | EmulatorPkg/EmuGopDxe/EmuGopDxe.inf\r | |
424 | EmulatorPkg/EmuSimpleFileSystemDxe/EmuSimpleFileSystemDxe.inf\r | |
425 | EmulatorPkg/EmuBlockIoDxe/EmuBlockIoDxe.inf\r | |
426 | EmulatorPkg/EmuSnpDxe/EmuSnpDxe.inf\r | |
949f388f | 427 | \r |
949f388f | 428 | MdeModulePkg/Application/HelloWorld/HelloWorld.inf\r |
429 | \r | |
949f388f | 430 | MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.inf\r |
431 | MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf\r | |
9a25ad8b | 432 | MdeModulePkg/Universal/DisplayEngineDxe/DisplayEngineDxe.inf\r |
949f388f | 433 | MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf\r |
434 | MdeModulePkg/Universal/PrintDxe/PrintDxe.inf\r | |
435 | MdeModulePkg/Universal/DriverSampleDxe/DriverSampleDxe.inf {\r | |
436 | <LibraryClasses>\r | |
437 | PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf\r | |
438 | }\r | |
439 | \r | |
949f388f | 440 | FatPkg/EnhancedFatDxe/Fat.inf\r |
72a44be9 | 441 | \r |
6ed2c8be | 442 | !if "XCODE5" not in $(TOOL_CHAIN_TAG)\r |
fdd8463d RN |
443 | ShellPkg/DynamicCommand/TftpDynamicCommand/TftpDynamicCommand.inf {\r |
444 | <PcdsFixedAtBuild>\r | |
445 | gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE\r | |
446 | }\r | |
6ed2c8be | 447 | !endif\r |
72a44be9 | 448 | ShellPkg/Application/Shell/Shell.inf {\r |
449 | <LibraryClasses>\r | |
450 | ShellCommandLib|ShellPkg/Library/UefiShellCommandLib/UefiShellCommandLib.inf\r | |
451 | NULL|ShellPkg/Library/UefiShellLevel2CommandsLib/UefiShellLevel2CommandsLib.inf\r | |
452 | NULL|ShellPkg/Library/UefiShellLevel1CommandsLib/UefiShellLevel1CommandsLib.inf\r | |
453 | NULL|ShellPkg/Library/UefiShellLevel3CommandsLib/UefiShellLevel3CommandsLib.inf\r | |
454 | NULL|ShellPkg/Library/UefiShellDriver1CommandsLib/UefiShellDriver1CommandsLib.inf\r | |
455 | NULL|ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1CommandsLib.inf\r | |
456 | NULL|ShellPkg/Library/UefiShellInstall1CommandsLib/UefiShellInstall1CommandsLib.inf\r | |
457 | NULL|ShellPkg/Library/UefiShellNetwork1CommandsLib/UefiShellNetwork1CommandsLib.inf\r | |
458 | HandleParsingLib|ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.inf\r | |
130e929f | 459 | OrderedCollectionLib|MdePkg/Library/BaseOrderedCollectionRedBlackTreeLib/BaseOrderedCollectionRedBlackTreeLib.inf\r |
45aee4c8 | 460 | SortLib|MdeModulePkg/Library/UefiSortLib/UefiSortLib.inf\r |
72a44be9 | 461 | PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf\r |
3f2035e7 | 462 | # SafeBlockIoLib|ShellPkg/Library/SafeBlockIoLib/SafeBlockIoLib.inf\r |
463 | # SafeOpenProtocolLib|ShellPkg/Library/SafeOpenProtocolLib/SafeOpenProtocolLib.inf\r | |
9fe7c61b JJ |
464 | BcfgCommandLib|ShellPkg/Library/UefiShellBcfgCommandLib/UefiShellBcfgCommandLib.inf\r |
465 | IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf\r | |
5dcda296 | 466 | \r |
72a44be9 | 467 | <PcdsFixedAtBuild>\r |
468 | gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0xFF\r | |
469 | gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE\r | |
470 | gEfiMdePkgTokenSpaceGuid.PcdUefiLibMaxPrintBufferSize|8000\r | |
471 | }\r | |
72a44be9 | 472 | \r |
53a6813f | 473 | !endif\r |
474 | \r | |
3b7a897c FS |
475 | !include NetworkPkg/Network.dsc.inc\r |
476 | \r | |
484e869d AC |
477 | !if $(REDFISH_ENABLE) == TRUE\r |
478 | EmulatorPkg/Application/RedfishPlatformConfig/RedfishPlatformConfig.inf\r | |
479 | !endif\r | |
480 | !include RedfishPkg/Redfish.dsc.inc\r | |
481 | \r | |
0d9b5c46 | 482 | [BuildOptions]\r |
9e3ab94d MK |
483 | #\r |
484 | # Disable deprecated APIs.\r | |
485 | #\r | |
486 | *_*_*_CC_FLAGS = -D DISABLE_NEW_DEPRECATED_INTERFACES\r | |
487 | \r | |
0d9b5c46 RN |
488 | MSFT:DEBUG_*_*_CC_FLAGS = /Od /Oy-\r |
489 | MSFT:NOOPT_*_*_CC_FLAGS = /Od /Oy-\r | |
0b9ad0bc | 490 | GCC:DEBUG_CLANGPDB_*_CC_FLAGS =-O0 -Wno-unused-command-line-argument -Wno-incompatible-pointer-types -Wno-enum-conversion -Wno-incompatible-pointer-types -Wno-sometimes-uninitialized -Wno-constant-conversion -Wno-main-return-type\r |
0d9b5c46 RN |
491 | \r |
492 | MSFT:*_*_*_DLINK_FLAGS = /ALIGN:4096 /FILEALIGN:4096 /SUBSYSTEM:CONSOLE\r | |
493 | MSFT:DEBUG_*_*_DLINK_FLAGS = /EXPORT:InitializeDriver=$(IMAGE_ENTRY_POINT) /BASE:0x10000\r | |
494 | MSFT:NOOPT_*_*_DLINK_FLAGS = /EXPORT:InitializeDriver=$(IMAGE_ENTRY_POINT) /BASE:0x10000\r | |
2737037a LG |
495 | \r |
496 | !if $(WIN_HOST_BUILD) == TRUE\r | |
497 | #\r | |
0b9ad0bc | 498 | # CLANGPDB tool chain depends on WIN_HOST_BUILD flag to generate the windows application.\r |
2737037a | 499 | #\r |
0b9ad0bc LG |
500 | GCC:*_CLANGPDB_*_DLINK_FLAGS = /ALIGN:4096 /FILEALIGN:4096 /SUBSYSTEM:CONSOLE\r |
501 | GCC:DEBUG_CLANGPDB_*_DLINK_FLAGS = /EXPORT:InitializeDriver=$(IMAGE_ENTRY_POINT) /BASE:0x10000\r | |
502 | GCC:NOOPT_CLANGPDB_*_DLINK_FLAGS = /EXPORT:InitializeDriver=$(IMAGE_ENTRY_POINT) /BASE:0x10000\r | |
2737037a | 503 | !endif\r |