1 # This is NT32 FDF file
3 ################################################################################
6 # The [FD] Section is made up of the definition statements and a
7 # description of what goes into the Flash Device Image. Each FD section
8 # defines one flash ¡°device¡± image. A flash device image may be one of
9 # the following: Removable media bootable image (like a boot floppy
10 # image,) an Option ROM image (that would be ¡°flashed¡± into an add-in
11 # card,) a System ¡°Flash¡± image (that would be burned into a system¡¯s
12 # flash) or an Update (¡°Capsule¡±) image that will be used to update and
13 # existing system flash.
15 ################################################################################
17 BaseAddress = 0x0|PcdFdBaseAddress #The base address of the FLASH Device.
18 Size = 0x002a0000 #The size in bytes of the FLASH Device
23 ################################################################################
25 # Following are lists of FD Region layout which correspond to the locations of different
26 # images within the flash device.
28 # Regions must be defined in ascending order and may not overlap.
30 # A Layout Region start with a eight digit hex offset (leading ¡°0x¡± required) followed by
31 # the pipe ¡°|¡± character, followed by the size of the region, also in hex with the leading
32 # ¡°0x¡± characters. Like:
34 # PcdOffsetCName|PcdSizeCName
35 # RegionType <FV, DATA, or FILE>
37 ################################################################################
39 PcdFlashFvRecoveryBase|PcdFlashFvRecoverySize
43 PcdFlashNvStorageBase|PcdFlashNvStorageSize
45 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
46 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
47 0x8d, 0x2b, 0xf1, 0xff, 0x96, 0x76, 0x8b, 0x4c,
48 0xa9, 0x85, 0x27, 0x47, 0x07, 0x5b, 0x4f, 0x50,
49 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
50 0x5f, 0x46, 0x56, 0x48, 0xff, 0x8c, 0xff, 0xff,
51 0x48, 0x00, 0x3b, 0x7c, 0x00, 0x00, 0x00, 0x01,
52 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00,
53 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
54 0x24, 0x56, 0x53, 0x53, 0xb8, 0xbf, 0x00, 0x00,
55 0x5a, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
59 PcdFlashNvStorageEventLogBase|PcdFlashNvStorageEventLogSize
62 PcdFlashNvStorageFtwWorkingBase|PcdFlashNvStorageFtwWorkingSize
64 0x8d, 0x2b, 0xf1, 0xff, 0x96, 0x76, 0x8b, 0x4c,
65 0xa9, 0x85, 0x27, 0x47, 0x07, 0x5b, 0x4f, 0x50,
66 0xd2, 0x5f, 0x05, 0x9e, 0xfe, 0xff, 0xff, 0xff,
67 0xff, 0xff, 0xff, 0xff, 0xe0, 0x1f, 0x00, 0x00
71 PcdFlashNvStorageFtwSpareBase|PcdFlashNvStorageFtwSpareBase
73 ################################################################################
77 # [FV] section is used to define what components or modules are placed within a flash
78 # device file. This section also defines order the components and modules are positioned
79 # within the image. The [FV] section consists of define statements, set statements and
82 ################################################################################
84 FvAlignment = 16 #FV alignment and FV attributes setting.
90 WRITE_DISABLED_CAP = TRUE
91 WRITE_ENABLED_CAP = TRUE
94 WRITE_LOCK_STATUS = TRUE
95 READ_DISABLED_CAP = TRUE
96 READ_ENABLED_CAP = TRUE
99 READ_LOCK_STATUS = TRUE
101 ################################################################################
103 # The INF statements point to EDK component and EDK II module INF files, which will be placed into this FV image.
104 # Parsing tools will scan the INF file to determine the type of component or module.
105 # The component or module type is used to reference the standard rules
106 # defined elsewhere in the FDF file.
108 # The format for INF statements is:
109 # INF $(PathAndInfFileName)
111 ################################################################################
115 INF $(WORKSPACE)/MdeModulePkg/Core/Pei/PeiMain.inf
116 INF $(WORKSPACE)/MdeModulePkg/Universal/PCD/Pei/Pcd.inf
117 INF $(WORKSPACE)/IntelFrameworkModulePkg/Universal/StatusCode/Pei/PeiStatusCode.inf
118 INF $(WORKSPACE)/Nt32Pkg/BootModePei/BootModePei.inf
119 INF $(WORKSPACE)/Nt32Pkg/WinNtFlashMapPei/WinNtFlashMapPei.inf
120 INF $(WORKSPACE)/MdeModulePkg/Universal/BaseMemoryTestPei/BaseMemoryTest.inf
121 INF $(WORKSPACE)/MdeModulePkg/Universal/VariablePei/VariablePei.inf
122 INF $(WORKSPACE)/Nt32Pkg/WinNtAutoScanPei/WinNtAutoScanPei.inf
123 INF $(WORKSPACE)/Nt32Pkg/WinNtFirmwareVolumePei/WinNtFirmwareVolumePei.inf
124 INF $(WORKSPACE)/Nt32Pkg/WinNtThunkPPIToProtocolPei/WinNtThunkPPIToProtocolPei.inf
125 INF $(WORKSPACE)/MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf
130 INF $(WORKSPACE)/MdeModulePkg/Core/Dxe/DxeMain.inf
131 INF $(WORKSPACE)/MdeModulePkg/Universal/PCD/Dxe/Pcd.inf
132 INF $(WORKSPACE)/Nt32Pkg/MetronomeDxe/MetronomeDxe.inf
133 INF $(WORKSPACE)/Nt32Pkg/RealTimeClockRuntimeDxe/RealTimeClockRuntimeDxe.inf
134 INF $(WORKSPACE)/Nt32Pkg/ResetRuntimeDxe/ResetRuntimeDxe.inf
135 INF $(WORKSPACE)/MdeModulePkg/Universal/RuntimeDxe/Runtime.inf
136 INF $(WORKSPACE)/Nt32Pkg/FvbServicesRuntimeDxe/FvbServicesRuntimeDxe.inf
137 INF $(WORKSPACE)/MdeModulePkg/Universal/SecurityStubDxe/SecurityStub.inf
138 INF $(WORKSPACE)/IntelFrameworkModulePkg/Universal/DataHub/DataHub/Dxe/DataHub.inf
139 INF $(WORKSPACE)/MdeModulePkg/Universal/Ebc/Dxe/Ebc.inf
140 INF $(WORKSPACE)/MdeModulePkg/Universal/GenericMemoryTest/Dxe/NullMemoryTest.inf
141 INF $(WORKSPACE)/IntelFrameworkModulePkg/Universal/HiiDataBaseDxe/HiiDatabase.inf
142 INF $(WORKSPACE)/Nt32Pkg/WinNtThunkDxe/WinNtThunkDxe.inf
143 INF $(WORKSPACE)/MdeModulePkg/Universal/FirmwareVolume/GuidedSectionExtraction/Crc32SectionExtract/Dxe/Crc32SectionExtract.inf
144 INF $(WORKSPACE)/Nt32Pkg/CpuRuntimeDxe/CpuRuntimeDxe.inf
145 INF $(WORKSPACE)/Nt32Pkg/PlatformBdsDxe/PlatformBdsDxe.inf
146 INF $(WORKSPACE)/MdeModulePkg/Universal/FirmwareVolume/FaultTolerantWriteLite/Dxe/FtwLite.inf
147 INF $(WORKSPACE)/IntelFrameworkModulePkg/Universal/DataHub/DataHubStdErr/Dxe/DataHubStdErr.inf
148 INF $(WORKSPACE)/Nt32Pkg/MiscSubClassPlatformDxe/MiscSubClassPlatformDxe.inf
149 INF $(WORKSPACE)/Nt32Pkg/TimerDxe/TimerDxe.inf
150 INF $(WORKSPACE)/IntelFrameworkModulePkg/Universal/StatusCode/Dxe/DxeStatusCode.inf
151 INF $(WORKSPACE)/MdeModulePkg/Universal/VariableRuntimeDxe/VariableRuntimeDxe.inf
152 INF $(WORKSPACE)/MdeModulePkg/Universal/WatchDogTimerDxe/WatchDogTimer.inf
153 INF $(WORKSPACE)/MdeModulePkg/Universal/MonotonicCounterDxe/MonotonicCounter.inf
154 INF $(WORKSPACE)/MdeModulePkg/Universal/Capsule/RuntimeDxe/CapsuleRuntime.inf
155 INF $(WORKSPACE)/MdeModulePkg/Universal/Console/ConPlatformDxe/ConPlatform.inf
156 INF $(WORKSPACE)/MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitter.inf
157 INF $(WORKSPACE)/MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsole.inf
158 INF $(WORKSPACE)/MdeModulePkg/Universal/Console/TerminalDxe/TerminalDxe.inf
159 INF $(WORKSPACE)/MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf
160 INF $(WORKSPACE)/MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf
161 INF $(WORKSPACE)/MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf
162 INF $(WORKSPACE)/IntelFrameworkModulePkg/Universal/SetupBrowserDxe/SetupBrowser.inf
163 INF $(WORKSPACE)/MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf
164 INF $(WORKSPACE)/MdeModulePkg/Bus/Pci/AtapiPassThruDxe/AtapiPassThru.inf
165 INF $(WORKSPACE)/IntelFrameworkModulePkg/Bus/Pci/PciBus/Dxe/PciBus.inf
166 INF $(WORKSPACE)/MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBusDxe.inf ##This driver follows UEFI specification definition
167 INF $(WORKSPACE)/MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDiskDxe.inf ##This driver follows UEFI specification definition
168 INF $(WORKSPACE)/IntelFrameworkModulePkg/Bus/Pci/IdeBus/Dxe/IdeBus.inf
169 INF $(WORKSPACE)/Nt32Pkg/WinNtBusDriverDxe/WinNtBusDriverDxe.inf
170 INF $(WORKSPACE)/Nt32Pkg/WinNtBlockIoDxe/WinNtBlockIoDxe.inf
171 INF $(WORKSPACE)/Nt32Pkg/WinNtConsoleDxe/WinNtConsoleDxe.inf
172 INF $(WORKSPACE)/Nt32Pkg/WinNtSerialIoDxe/WinNtSerialIoDxe.inf
173 INF $(WORKSPACE)/Nt32Pkg/WinNtGopDxe/WinNtGopDxe.inf
174 INF $(WORKSPACE)/Nt32Pkg/WinNtSimpleFileSystemDxe/WinNtSimpleFileSystemDxe.inf
175 INF $(WORKSPACE)/IntelFrameworkModulePkg/Universal/DriverSampleDxe/DriverSampleDxe.inf
176 INF $(WORKSPACE)/MdeModulePkg/Application/HelloWorld/HelloWorld.inf
178 ################################################################################
180 # FILE statements are provided so that a platform integrator can include
181 # complete EFI FFS files, as well as a method for constructing FFS files
182 # using curly "{}" brace scoping. The following three FILEs are
183 # for binary shell, binary fat and logo module.
185 ################################################################################
186 FILE APPLICATION = c57ad6b7-0515-40a8-9d21-551652854e37 CHECKSUM {
187 SECTION COMPRESS PI_STD {
189 SECTION PE32 = EdkShellBinPkg/FullShell/ia32/Shell_Full.efi
193 FILE DRIVER = 961578FE-B6B7-44c3-AF35-6BC705CD2B1F CHECKSUM {
194 SECTION COMPRESS PI_STD {
196 SECTION PE32 = FatBinPkg/EnhancedFatDxe/Ia32/Fat.efi
200 FILE FREEFORM = 7BB28B99-61BB-11D5-9A5D-0090273FC14D CHECKSUM {
201 SECTION COMPRESS PI_STD {
203 SECTION RAW = MdeModulePkg/Logo/Logo.bmp
209 ################################################################################
211 # Rules are use with the [FV] section¡¯s module INF type to define
212 # how an FFS file is created for a given INF file. The following Rule are the default
213 # rules for the different module type. User can add the customized rules to define the
214 # content of the FFS file.
216 ################################################################################
217 [Rule.Common.PEI_CORE]
218 FILE PEI_CORE = $(NAMED_GUID) CheckSum {
219 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
220 UI Optional $(MODULE_NAME)
221 VERSION Optional BUILD_NUM=$(BUILD_NUMBER) $(INF_VERSION)
225 FILE PEIM = $(NAMED_GUID) CheckSum {
226 PEI_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).Depex
227 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
228 UI Optional $(MODULE_NAME)
229 VERSION Optional BUILD_NUM=$(BUILD_NUMBER) $(INF_VERSION)
232 [Rule.Common.DXE_CORE]
233 FILE DXE_CORE = $(NAMED_GUID) CheckSum {
235 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
236 UI Optional $(MODULE_NAME)
237 VERSION Optional BUILD_NUM=$(BUILD_NUMBER) $(INF_VERSION)
241 [Rule.Common.UEFI_DRIVER]
242 FILE DRIVER = $(NAMED_GUID) CheckSum {
245 DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex
246 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
247 UI Optional $(MODULE_NAME)
248 VERSION Optional BUILD_NUM=$(BUILD_NUMBER) $(INF_VERSION)
253 [Rule.Common.DXE_DRIVER]
254 FILE DRIVER = $(NAMED_GUID) CheckSum {
257 DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex
258 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
259 UI Optional $(MODULE_NAME)
260 VERSION Optional BUILD_NUM=$(BUILD_NUMBER) $(INF_VERSION)
265 [Rule.Common.DXE_RUNTIME_DRIVER]
266 FILE DRIVER = $(NAMED_GUID) CheckSum {
269 DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex
270 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
271 UI Optional $(MODULE_NAME)
272 VERSION Optional BUILD_NUM=$(BUILD_NUMBER) $(INF_VERSION)
277 [Rule.Common.UEFI_APPLICATION]
278 FILE APPLICATION = $(NAMED_GUID) CheckSum {
281 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
282 UI Optional $(MODULE_NAME)
283 VERSION Optional BUILD_NUM=$(BUILD_NUMBER) $(INF_VERSION)