]> git.proxmox.com Git - mirror_edk2.git/blame - Nt32Pkg/Nt32Pkg.fdf
Nt32Pkg FDF: Move StatusCode Handler run earlier in DXE phase
[mirror_edk2.git] / Nt32Pkg / Nt32Pkg.fdf
CommitLineData
7b202cb0 1## @file\r
5fd5fcd3 2# This is NT32 FDF file with UEFI HII features enabled\r
a9ce5754 3#\r
70420e31 4# Copyright (c) 2007 - 2017, Intel Corporation. All rights reserved.<BR>\r
c4a5d3f1 5# (C) Copyright 2016 Hewlett Packard Enterprise Development LP<BR>\r
a9ce5754 6#\r
8f2a5f80 7# This program and the accompanying materials\r
a9ce5754 8# are licensed and made available under the terms and conditions of the BSD License\r
9# which accompanies this distribution. The full text of the license may be found at\r
10# http://opensource.org/licenses/bsd-license.php\r
11#\r
12# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
13# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
14#\r
24491cf6 15\r
f5d74f6d
LG
16################################################################################\r
17#\r
18# FD Section\r
7800ef49 19# The [FD] Section is made up of the definition statements and a\r
20# description of what goes into the Flash Device Image. Each FD section\r
d88bd7a5 21# defines one flash "device" image. A flash device image may be one of\r
7800ef49 22# the following: Removable media bootable image (like a boot floppy\r
d88bd7a5 23# image,) an Option ROM image (that would be "flashed" into an add-in\r
8df425cb 24# card,) a System "Flash" image (that would be burned into a system's\r
d88bd7a5 25# flash) or an Update ("Capsule") image that will be used to update and\r
f5d74f6d
LG
26# existing system flash.\r
27#\r
28################################################################################\r
ae8432d0 29[FD.Nt32]\r
c4a5d3f1
CS
30BaseAddress = 0x0|gEfiNt32PkgTokenSpaceGuid.PcdWinNtFdBaseAddress #The base address of the FLASH Device.\r
31Size = 0x00380000|gEfiNt32PkgTokenSpaceGuid.PcdWinNtFirmwareFdSize #The size in bytes of the FLASH Device\r
24491cf6
LG
32ErasePolarity = 1\r
33BlockSize = 0x10000\r
c4a5d3f1 34NumBlocks = 0x38\r
24491cf6 35\r
f5d74f6d
LG
36################################################################################\r
37#\r
7800ef49 38# Following are lists of FD Region layout which correspond to the locations of different\r
39# images within the flash device.\r
40#\r
f5d74f6d
LG
41# Regions must be defined in ascending order and may not overlap.\r
42#\r
d88bd7a5
LG
43# A Layout Region start with a eight digit hex offset (leading "0x" required) followed by\r
44# the pipe "|" character, followed by the size of the region, also in hex with the leading\r
45# "0x" characters. Like:\r
f5d74f6d
LG
46# Offset|Size\r
47# PcdOffsetCName|PcdSizeCName\r
48# RegionType <FV, DATA, or FILE>\r
49#\r
50################################################################################\r
c4a5d3f1 510x00000000|0x00360000\r
c4396d66 52gEfiNt32PkgTokenSpaceGuid.PcdWinNtFlashFvRecoveryBase|gEfiNt32PkgTokenSpaceGuid.PcdWinNtFlashFvRecoverySize\r
24491cf6
LG
53FV = FvRecovery\r
54\r
c4a5d3f1 550x00360000|0x0000c000\r
c4396d66 56gEfiNt32PkgTokenSpaceGuid.PcdWinNtFlashNvStorageVariableBase|gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableSize\r
498f4b39 57#NV_VARIABLE_STORE\r
24491cf6 58DATA = {\r
498f4b39
LG
59 ## This is the EFI_FIRMWARE_VOLUME_HEADER\r
60 # ZeroVector []\r
7800ef49 61 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\r
62 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\r
498f4b39
LG
63 # FileSystemGuid: gEfiSystemNvDataFvGuid =\r
64 # { 0xFFF12B8D, 0x7696, 0x4C8B, { 0xA9, 0x85, 0x27, 0x47, 0x07, 0x5B, 0x4F, 0x50 }}\r
65 0x8D, 0x2B, 0xF1, 0xFF, 0x96, 0x76, 0x8B, 0x4C,\r
66 0xA9, 0x85, 0x27, 0x47, 0x07, 0x5B, 0x4F, 0x50,\r
67 # FvLength: 0x20000\r
7800ef49 68 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\r
498f4b39
LG
69 #Signature "_FVH" #Attributes\r
70 0x5f, 0x46, 0x56, 0x48, 0xff, 0xfe, 0x04, 0x00,\r
71 #HeaderLength #CheckSum #ExtHeaderOffset #Reserved #Revision\r
72 0x48, 0x00, 0x36, 0x09, 0x00, 0x00, 0x00, 0x02,\r
73 #Blockmap[0]: 2 Blocks * 0x10000 Bytes / Block\r
7800ef49 74 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00,\r
498f4b39 75 #Blockmap[1]: End\r
7800ef49 76 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\r
498f4b39 77 ## This is the VARIABLE_STORE_HEADER\r
0ff38cbf 78!if $(SECURE_BOOT_ENABLE) == TRUE\r
79 #Signature: gEfiAuthenticatedVariableGuid =\r
80 # { 0xaaf32c78, 0x947b, 0x439a, { 0xa1, 0x80, 0x2e, 0x14, 0x4e, 0xc3, 0x77, 0x92 }}\r
81 0x78, 0x2c, 0xf3, 0xaa, 0x7b, 0x94, 0x9a, 0x43,\r
82 0xa1, 0x80, 0x2e, 0x14, 0x4e, 0xc3, 0x77, 0x92,\r
83!else\r
3709c4cd 84 #Signature: gEfiVariableGuid =\r
85 # { 0xddcf3616, 0x3275, 0x4164, { 0x98, 0xb6, 0xfe, 0x85, 0x70, 0x7f, 0xfe, 0x7d }}\r
86 0x16, 0x36, 0xcf, 0xdd, 0x75, 0x32, 0x64, 0x41,\r
87 0x98, 0xb6, 0xfe, 0x85, 0x70, 0x7f, 0xfe, 0x7d,\r
0ff38cbf 88!endif\r
3709c4cd 89 #Size: 0xc000 (gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableSize) - 0x48 (size of EFI_FIRMWARE_VOLUME_HEADER) = 0xBFB8\r
90 # This can speed up the Variable Dispatch a bit.\r
91 0xB8, 0xBF, 0x00, 0x00,\r
498f4b39
LG
92 #FORMATTED: 0x5A #HEALTHY: 0xFE #Reserved: UINT16 #Reserved1: UINT32\r
93 0x5A, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00\r
24491cf6
LG
94}\r
95\r
c4a5d3f1 960x0036c000|0x00002000\r
498f4b39 97#NV_EVENT_LOG\r
c4396d66 98gEfiNt32PkgTokenSpaceGuid.PcdWinNtFlashNvStorageEventLogBase|gEfiNt32PkgTokenSpaceGuid.PcdWinNtFlashNvStorageEventLogSize\r
24491cf6 99\r
c4a5d3f1 1000x0036e000|0x00002000\r
c4396d66 101gEfiNt32PkgTokenSpaceGuid.PcdWinNtFlashNvStorageFtwWorkingBase|gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingSize\r
498f4b39 102#NV_FTW_WORKING\r
7800ef49 103DATA = {\r
71e9d09e
SZ
104 # EFI_FAULT_TOLERANT_WORKING_BLOCK_HEADER->Signature = gEdkiiWorkingBlockSignatureGuid =\r
105 # { 0x9e58292b, 0x7c68, 0x497d, { 0xa0, 0xce, 0x65, 0x0, 0xfd, 0x9f, 0x1b, 0x95 }}\r
106 0x2b, 0x29, 0x58, 0x9e, 0x68, 0x7c, 0x7d, 0x49,\r
107 0xa0, 0xce, 0x65, 0x0, 0xfd, 0x9f, 0x1b, 0x95,\r
498f4b39 108 # Crc:UINT32 #WorkingBlockValid:1, WorkingBlockInvalid:1, Reserved\r
71e9d09e 109 0xE2, 0x33, 0xF2, 0x03, 0xFE, 0xFF, 0xFF, 0xFF,\r
2a958a00
LG
110 # WriteQueueSize: UINT64\r
111 0xE0, 0x1F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00\r
24491cf6
LG
112}\r
113\r
c4a5d3f1 1140x00370000|0x00010000\r
498f4b39 115#NV_FTW_SPARE\r
c4396d66 116gEfiNt32PkgTokenSpaceGuid.PcdWinNtFlashNvStorageFtwSpareBase|gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareSize\r
24491cf6 117\r
f5d74f6d
LG
118################################################################################\r
119#\r
120# FV Section\r
121#\r
122# [FV] section is used to define what components or modules are placed within a flash\r
123# device file. This section also defines order the components and modules are positioned\r
124# within the image. The [FV] section consists of define statements, set statements and\r
125# module statements.\r
126#\r
127################################################################################\r
c47eca1a 128[FV.FvRecovery]\r
7800ef49 129FvAlignment = 16 #FV alignment and FV attributes setting.\r
24491cf6
LG
130ERASE_POLARITY = 1\r
131MEMORY_MAPPED = TRUE\r
132STICKY_WRITE = TRUE\r
133LOCK_CAP = TRUE\r
134LOCK_STATUS = TRUE\r
135WRITE_DISABLED_CAP = TRUE\r
136WRITE_ENABLED_CAP = TRUE\r
137WRITE_STATUS = TRUE\r
138WRITE_LOCK_CAP = TRUE\r
139WRITE_LOCK_STATUS = TRUE\r
140READ_DISABLED_CAP = TRUE\r
141READ_ENABLED_CAP = TRUE\r
142READ_STATUS = TRUE\r
143READ_LOCK_CAP = TRUE\r
144READ_LOCK_STATUS = TRUE\r
eb920364 145FvNameGuid = 6D99E806-3D38-42c2-A095-5F4300BFD7DC\r
24491cf6 146\r
c47eca1a
LG
147################################################################################\r
148#\r
149# The INF statements point to EDK component and EDK II module INF files, which will be placed into this FV image.\r
150# Parsing tools will scan the INF file to determine the type of component or module.\r
151# The component or module type is used to reference the standard rules\r
152# defined elsewhere in the FDF file.\r
153#\r
154# The format for INF statements is:\r
155# INF $(PathAndInfFileName)\r
156#\r
157################################################################################\r
158 ##\r
159 # PEI Phase modules\r
160 ##\r
161 ##\r
162 # PEI Apriori file example, more PEIM module added later.\r
163 ##\r
164APRIORI PEI {\r
165 INF MdeModulePkg/Universal/PCD/Pei/Pcd.inf\r
25126a05 166 INF MdeModulePkg/Universal/ReportStatusCodeRouter/Pei/ReportStatusCodeRouterPei.inf\r
164393a0 167 INF MdeModulePkg/Universal/StatusCodeHandler/Pei/StatusCodeHandlerPei.inf\r
25126a05 168 INF Nt32Pkg/WinNtOemHookStatusCodeHandlerPei/WinNtOemHookStatusCodeHandlerPei.inf\r
9c7aa186 169 }\r
c47eca1a 170APRIORI DXE {\r
863986b3 171 INF MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf\r
c47eca1a
LG
172 INF MdeModulePkg/Universal/PCD/Dxe/Pcd.inf\r
173 INF Nt32Pkg/MetronomeDxe/MetronomeDxe.inf\r
70420e31
LG
174 INF MdeModulePkg/Universal/ReportStatusCodeRouter/RuntimeDxe/ReportStatusCodeRouterRuntimeDxe.inf\r
175 INF MdeModulePkg/Universal/StatusCodeHandler/RuntimeDxe/StatusCodeHandlerRuntimeDxe.inf\r
176 INF Nt32Pkg/WinNtOemHookStatusCodeHandlerDxe/WinNtOemHookStatusCodeHandlerDxe.inf\r
00b7321e 177 }\r
9c7aa186 178\r
c47eca1a
LG
179INF MdeModulePkg/Core/Pei/PeiMain.inf\r
180INF MdeModulePkg/Universal/PCD/Pei/Pcd.inf\r
25126a05 181INF MdeModulePkg/Universal/ReportStatusCodeRouter/Pei/ReportStatusCodeRouterPei.inf\r
164393a0 182INF MdeModulePkg/Universal/StatusCodeHandler/Pei/StatusCodeHandlerPei.inf\r
25126a05 183INF Nt32Pkg/WinNtOemHookStatusCodeHandlerPei/WinNtOemHookStatusCodeHandlerPei.inf\r
c47eca1a 184INF Nt32Pkg/BootModePei/BootModePei.inf\r
ba82cb67 185INF Nt32Pkg/StallPei/StallPei.inf\r
c47eca1a 186INF Nt32Pkg/WinNtFlashMapPei/WinNtFlashMapPei.inf\r
c47eca1a
LG
187INF Nt32Pkg/WinNtAutoScanPei/WinNtAutoScanPei.inf\r
188INF Nt32Pkg/WinNtFirmwareVolumePei/WinNtFirmwareVolumePei.inf\r
0ff38cbf 189\r
71e9d09e 190INF MdeModulePkg/Universal/FaultTolerantWritePei/FaultTolerantWritePei.inf\r
58dcdada 191INF MdeModulePkg/Universal/Variable/Pei/VariablePei.inf\r
0ff38cbf 192\r
c47eca1a
LG
193INF Nt32Pkg/WinNtThunkPPIToProtocolPei/WinNtThunkPPIToProtocolPei.inf\r
194INF MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf\r
7800ef49 195\r
c47eca1a
LG
196 ##\r
197 # DXE Phase modules\r
198 ##\r
199INF MdeModulePkg/Core/Dxe/DxeMain.inf\r
a5b8a503 200INF MdeModulePkg/Universal/PCD/Dxe/Pcd.inf\r
201INF Nt32Pkg/MetronomeDxe/MetronomeDxe.inf\r
202INF Nt32Pkg/RealTimeClockRuntimeDxe/RealTimeClockRuntimeDxe.inf\r
203INF Nt32Pkg/ResetRuntimeDxe/ResetRuntimeDxe.inf\r
204INF MdeModulePkg/Core/RuntimeDxe/RuntimeDxe.inf\r
205INF Nt32Pkg/FvbServicesRuntimeDxe/FvbServicesRuntimeDxe.inf\r
206INF MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf\r
1fdd39d3 207INF MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.inf\r
a5b8a503 208INF MdeModulePkg/Universal/EbcDxe/EbcDxe.inf\r
209INF MdeModulePkg/Universal/MemoryTest/NullMemoryTestDxe/NullMemoryTestDxe.inf\r
5fd5fcd3 210INF MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf\r
a5b8a503 211INF Nt32Pkg/WinNtThunkDxe/WinNtThunkDxe.inf\r
a5b8a503 212INF Nt32Pkg/CpuRuntimeDxe/CpuRuntimeDxe.inf\r
811e73ac 213INF MdeModulePkg/Universal/BdsDxe/BdsDxe.inf\r
f2993c02 214INF MdeModulePkg/Application/UiApp/UiApp.inf\r
811e73ac 215INF MdeModulePkg/Universal/DriverHealthManagerDxe/DriverHealthManagerDxe.inf\r
eba3ff4c 216INF MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteDxe.inf\r
a5b8a503 217INF Nt32Pkg/MiscSubClassPlatformDxe/MiscSubClassPlatformDxe.inf\r
218INF Nt32Pkg/TimerDxe/TimerDxe.inf\r
25126a05 219INF MdeModulePkg/Universal/ReportStatusCodeRouter/RuntimeDxe/ReportStatusCodeRouterRuntimeDxe.inf\r
164393a0 220INF MdeModulePkg/Universal/StatusCodeHandler/RuntimeDxe/StatusCodeHandlerRuntimeDxe.inf\r
25126a05 221INF Nt32Pkg/WinNtOemHookStatusCodeHandlerDxe/WinNtOemHookStatusCodeHandlerDxe.inf\r
6f88fb20 222INF MdeModulePkg/Universal/Variable/RuntimeDxe/VariableRuntimeDxe.inf\r
0ff38cbf 223!if $(SECURE_BOOT_ENABLE) == TRUE\r
0ff38cbf 224INF SecurityPkg/VariableAuthenticated/SecureBootConfigDxe/SecureBootConfigDxe.inf\r
0ff38cbf 225!endif\r
9efcf13f 226INF MdeModulePkg/Universal/WatchdogTimerDxe/WatchdogTimer.inf\r
a5b8a503 227INF MdeModulePkg/Universal/MonotonicCounterRuntimeDxe/MonotonicCounterRuntimeDxe.inf\r
228INF MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf\r
229INF MdeModulePkg/Universal/Console/ConPlatformDxe/ConPlatformDxe.inf\r
230INF MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitterDxe.inf\r
231INF MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsoleDxe.inf\r
232INF MdeModulePkg/Universal/Console/TerminalDxe/TerminalDxe.inf\r
233INF MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf\r
234INF MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf\r
235INF MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf\r
6b1ac444 236INF MdeModulePkg/Universal/DisplayEngineDxe/DisplayEngineDxe.inf\r
5fd5fcd3 237INF MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf\r
fcf24bad 238INF MdeModulePkg/Universal/PrintDxe/PrintDxe.inf\r
97ef8cff 239INF RuleOverride = TIANOCOMPRESSED MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf\r
061b1c20 240INF MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf\r
d46f3632
LG
241INF MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBusDxe.inf\r
242INF MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDiskDxe.inf\r
a5b8a503 243INF IntelFrameworkModulePkg/Bus/Pci/IdeBusDxe/IdeBusDxe.inf\r
244INF Nt32Pkg/WinNtBusDriverDxe/WinNtBusDriverDxe.inf\r
245INF Nt32Pkg/WinNtBlockIoDxe/WinNtBlockIoDxe.inf\r
a5b8a503 246INF Nt32Pkg/WinNtSerialIoDxe/WinNtSerialIoDxe.inf\r
247INF Nt32Pkg/WinNtGopDxe/WinNtGopDxe.inf\r
248INF Nt32Pkg/WinNtSimpleFileSystemDxe/WinNtSimpleFileSystemDxe.inf\r
27431725 249INF MdeModulePkg/Universal/PlatformDriOverrideDxe/PlatformDriOverrideDxe.inf\r
785a1214 250INF MdeModulePkg/Universal/DriverSampleDxe/DriverSampleDxe.inf\r
f5d74f6d 251\r
3709c4cd 252INF MdeModulePkg/Universal/Network/DpcDxe/DpcDxe.inf\r
253INF MdeModulePkg/Universal/Network/ArpDxe/ArpDxe.inf\r
254INF MdeModulePkg/Universal/Network/Dhcp4Dxe/Dhcp4Dxe.inf\r
3709c4cd 255INF MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Dxe.inf\r
256INF MdeModulePkg/Universal/Network/MnpDxe/MnpDxe.inf\r
1b14ec40 257INF MdeModulePkg/Universal/Network/VlanConfigDxe/VlanConfigDxe.inf\r
3709c4cd 258INF MdeModulePkg/Universal/Network/Mtftp4Dxe/Mtftp4Dxe.inf\r
259INF MdeModulePkg/Universal/Network/Tcp4Dxe/Tcp4Dxe.inf\r
260INF MdeModulePkg/Universal/Network/Udp4Dxe/Udp4Dxe.inf\r
261INF Nt32Pkg/SnpNt32Dxe/SnpNt32Dxe.inf\r
dda34dc7 262INF MdeModulePkg/Universal/Network/UefiPxeBcDxe/UefiPxeBcDxe.inf\r
3709c4cd 263INF MdeModulePkg/Universal/Network/IScsiDxe/IScsiDxe.inf\r
24662805
FS
264INF NetworkPkg/HttpBootDxe/HttpBootDxe.inf\r
265INF NetworkPkg/DnsDxe/DnsDxe.inf\r
266INF NetworkPkg/HttpDxe/HttpDxe.inf\r
4018f205 267INF NetworkPkg/HttpUtilitiesDxe/HttpUtilitiesDxe.inf\r
c9b78304
JW
268!if $(TLS_ENABLE) == TRUE\r
269INF NetworkPkg/TlsDxe/TlsDxe.inf\r
270INF NetworkPkg/TlsAuthConfigDxe/TlsAuthConfigDxe.inf\r
271!endif\r
0b6dc68d 272INF MdeModulePkg/Application/BootManagerMenuApp/BootManagerMenuApp.inf\r
f5d74f6d
LG
273################################################################################\r
274#\r
7800ef49 275# FILE statements are provided so that a platform integrator can include\r
276# complete EFI FFS files, as well as a method for constructing FFS files\r
277# using curly "{}" brace scoping. The following three FILEs are\r
f5d74f6d
LG
278# for binary shell, binary fat and logo module.\r
279#\r
280################################################################################\r
2790926d
RN
281!ifndef $(USE_OLD_SHELL)\r
282INF ShellBinPkg/UefiShell/UefiShell.inf\r
283!else\r
284INF EdkShellBinPkg/FullShell/FullShell.inf\r
285!endif\r
ae8432d0 286\r
70dc0b80 287INF FatPkg/EnhancedFatDxe/Fat.inf\r
ae8432d0 288\r
67ce479a 289INF MdeModulePkg/Logo/LogoDxe.inf\r
e2e9b3b4 290INF MdeModulePkg/Universal/LoadFileOnFv2/LoadFileOnFv2.inf\r
f5d74f6d
LG
291################################################################################\r
292#\r
8df425cb 293# Rules are use with the [FV] section's module INF type to define\r
f5d74f6d
LG
294# how an FFS file is created for a given INF file. The following Rule are the default\r
295# rules for the different module type. User can add the customized rules to define the\r
296# content of the FFS file.\r
297#\r
298################################################################################\r
29c3622c 299\r
300\r
301############################################################################\r
302# Example of a DXE_DRIVER FFS file with a Checksum encapsulation section # \r
303############################################################################\r
304#\r
305#[Rule.Common.DXE_DRIVER]\r
c4396d66 306# FILE DRIVER = $(NAMED_GUID) {\r
2014a81a 307# DXE_DEPEX DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex\r
29c3622c 308# COMPRESS PI_STD {\r
309# GUIDED {\r
2014a81a 310# PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi\r
c4396d66
LG
311# UI STRING="$(MODULE_NAME)" Optional\r
312# VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)\r
29c3622c 313# }\r
314# }\r
315# }\r
316#\r
317############################################################################\r
318\r
24491cf6 319[Rule.Common.PEI_CORE]\r
29c3622c 320 FILE PEI_CORE = $(NAMED_GUID) {\r
2014a81a 321 PE32 PE32 Align=4K $(INF_OUTPUT)/$(MODULE_NAME).efi\r
c4396d66
LG
322 UI STRING ="$(MODULE_NAME)" Optional \r
323 VERSION STRING ="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER) \r
24491cf6
LG
324 }\r
325\r
326[Rule.Common.PEIM]\r
29c3622c 327 FILE PEIM = $(NAMED_GUID) {\r
2014a81a
LG
328 PEI_DEPEX PEI_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex\r
329 PE32 PE32 Align=4K $(INF_OUTPUT)/$(MODULE_NAME).efi\r
c4396d66
LG
330 UI STRING="$(MODULE_NAME)" Optional \r
331 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER) \r
7800ef49 332 }\r
24491cf6
LG
333\r
334[Rule.Common.DXE_CORE]\r
29c3622c 335 FILE DXE_CORE = $(NAMED_GUID) {\r
24491cf6 336 COMPRESS PI_STD {\r
2014a81a 337 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi\r
c4396d66
LG
338 UI STRING="$(MODULE_NAME)" Optional\r
339 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)\r
7800ef49 340 }\r
24491cf6
LG
341 }\r
342\r
343[Rule.Common.UEFI_DRIVER]\r
29c3622c 344 FILE DRIVER = $(NAMED_GUID) {\r
2014a81a 345 DXE_DEPEX DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex\r
24491cf6
LG
346 COMPRESS PI_STD {\r
347 GUIDED {\r
2014a81a 348 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi\r
c4396d66
LG
349 UI STRING="$(MODULE_NAME)" Optional\r
350 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)\r
24491cf6 351 }\r
97ef8cff
LG
352 }\r
353 }\r
354\r
355[Rule.Common.UEFI_DRIVER.TIANOCOMPRESSED]\r
356 FILE DRIVER = $(NAMED_GUID) {\r
2014a81a 357 DXE_DEPEX DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex\r
97ef8cff 358 GUIDED A31280AD-481E-41B6-95E8-127F4C984779 PROCESSING_REQUIRED = TRUE {\r
2014a81a 359 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi\r
97ef8cff
LG
360 UI STRING="$(MODULE_NAME)" Optional\r
361 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)\r
24491cf6 362 }\r
7800ef49 363 }\r
24491cf6
LG
364\r
365[Rule.Common.DXE_DRIVER]\r
29c3622c 366 FILE DRIVER = $(NAMED_GUID) {\r
2014a81a 367 DXE_DEPEX DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex\r
24491cf6
LG
368 COMPRESS PI_STD {\r
369 GUIDED {\r
2014a81a 370 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi\r
c4396d66
LG
371 UI STRING="$(MODULE_NAME)" Optional\r
372 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)\r
24491cf6
LG
373 }\r
374 }\r
7800ef49 375 }\r
24491cf6
LG
376\r
377[Rule.Common.DXE_RUNTIME_DRIVER]\r
29c3622c 378 FILE DRIVER = $(NAMED_GUID) {\r
2014a81a 379 DXE_DEPEX DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex\r
24491cf6
LG
380 COMPRESS PI_STD {\r
381 GUIDED {\r
2014a81a 382 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi\r
c4396d66
LG
383 UI STRING="$(MODULE_NAME)" Optional\r
384 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)\r
24491cf6
LG
385 }\r
386 }\r
7800ef49 387 }\r
24491cf6
LG
388\r
389[Rule.Common.UEFI_APPLICATION]\r
29c3622c 390 FILE APPLICATION = $(NAMED_GUID) {\r
24491cf6
LG
391 COMPRESS PI_STD {\r
392 GUIDED {\r
2014a81a 393 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi\r
c4396d66
LG
394 UI STRING="$(MODULE_NAME)" Optional\r
395 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)\r
24491cf6
LG
396 }\r
397 }\r
7800ef49 398 }\r
f66a43b2
JM
399\r
400[Rule.Common.UEFI_APPLICATION.BINARY]\r
401 FILE APPLICATION = $(NAMED_GUID) {\r
402 COMPRESS PI_STD {\r
403 GUIDED {\r
404 PE32 PE32 |.efi\r
405 UI STRING="$(MODULE_NAME)" Optional\r
406 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)\r
407 }\r
408 }\r
409 }\r
410\r
411[Rule.Common.UEFI_DRIVER.BINARY]\r
412 FILE DRIVER = $(NAMED_GUID) {\r
413 DXE_DEPEX DXE_DEPEX Optional |.depex\r
414 COMPRESS PI_STD {\r
415 GUIDED {\r
416 PE32 PE32 |.efi\r
417 UI STRING="$(MODULE_NAME)" Optional\r
418 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)\r
419 }\r
420 }\r
421 }\r