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/BootMode.inf
119 INF $(WORKSPACE)/Nt32Pkg/WinNtFlashMapPei/FlashMap.inf
120 INF $(WORKSPACE)/MdeModulePkg/Universal/BaseMemoryTestPei/BaseMemoryTest.inf
121 INF $(WORKSPACE)/MdeModulePkg/Universal/VariablePei/Variable.inf
122 INF $(WORKSPACE)/Nt32Pkg/WinNtAutoScanPei/WinNtAutoScan.inf
123 INF $(WORKSPACE)/Nt32Pkg/WinNtFirmwareVolumePei/WinNtFwh.inf
124 INF $(WORKSPACE)/Nt32Pkg/WinNtThunkPPIToProtocolPei/WinNtThunkPPIToProtocol.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/Metronome.inf
133 INF $(WORKSPACE)/Nt32Pkg/RealTimeClockRuntimeDxe/RealTimeClock.inf
134 INF $(WORKSPACE)/Nt32Pkg/ResetRuntimeDxe/Reset.inf
135 INF $(WORKSPACE)/MdeModulePkg/Universal/RuntimeDxe/Runtime.inf
136 INF $(WORKSPACE)/Nt32Pkg/FvbServicesRuntimeDxe/Nt32Fwh.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/WinNtThunk.inf
143 INF $(WORKSPACE)/MdeModulePkg/Universal/FirmwareVolume/GuidedSectionExtraction/Crc32SectionExtract/Dxe/Crc32SectionExtract.inf
144 INF $(WORKSPACE)/Nt32Pkg/CpuRuntimeDxe/Cpu.inf
145 INF $(WORKSPACE)/Nt32Pkg/PlatformBdsDxe/PlatformBds.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/MiscSubclassDriver.inf
149 INF $(WORKSPACE)/Nt32Pkg/TimerDxe/Timer.inf
150 INF $(WORKSPACE)/IntelFrameworkModulePkg/Universal/StatusCode/Dxe/DxeStatusCode.inf
151 INF $(WORKSPACE)/MdeModulePkg/Universal/VariableRuntimeDxe/Variable.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/Terminal.inf
159 INF $(WORKSPACE)/MdeModulePkg/Universal/DevicePathDxe/DevicePath.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/ScsiBus.inf ##This driver follows UEFI specification definition
167 INF $(WORKSPACE)/MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDisk.inf ##This driver follows UEFI specification definition
168 INF $(WORKSPACE)/IntelFrameworkModulePkg/Bus/Pci/IdeBus/Dxe/IdeBus.inf
169 INF $(WORKSPACE)/MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBus.inf
170 INF $(WORKSPACE)/MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDisk.inf
171 INF $(WORKSPACE)/Nt32Pkg/WinNtBusDriverDxe/WinNtBusDriver.inf
172 INF $(WORKSPACE)/Nt32Pkg/WinNtBlockIoDxe/WinNtBlockIo.inf
173 INF $(WORKSPACE)/Nt32Pkg/WinNtConsoleDxe/WinNtConsole.inf
174 INF $(WORKSPACE)/Nt32Pkg/WinNtSerialIoDxe/WinNtSerialIo.inf
175 INF $(WORKSPACE)/Nt32Pkg/WinNtGopDxe/WinNtGop.inf
176 INF $(WORKSPACE)/Nt32Pkg/WinNtSimpleFileSystemDxe/WinNtSimpleFileSystem.inf
177 INF $(WORKSPACE)/IntelFrameworkModulePkg/Universal/DriverSampleDxe/DriverSampleDxe.inf
178 INF $(WORKSPACE)/MdeModulePkg/Application/HelloWorld/HelloWorld.inf
180 ################################################################################
182 # FILE statements are provided so that a platform integrator can include
183 # complete EFI FFS files, as well as a method for constructing FFS files
184 # using curly "{}" brace scoping. The following three FILEs are
185 # for binary shell, binary fat and logo module.
187 ################################################################################
188 FILE APPLICATION = c57ad6b7-0515-40a8-9d21-551652854e37 CHECKSUM {
189 SECTION COMPRESS PI_STD {
191 SECTION PE32 = EdkShellBinPkg/FullShell/ia32/Shell_Full.efi
195 FILE DRIVER = 961578FE-B6B7-44c3-AF35-6BC705CD2B1F CHECKSUM {
196 SECTION COMPRESS PI_STD {
198 SECTION PE32 = FatBinPkg/EnhancedFatDxe/Ia32/Fat.efi
202 FILE FREEFORM = 7BB28B99-61BB-11D5-9A5D-0090273FC14D CHECKSUM {
203 SECTION COMPRESS PI_STD {
205 SECTION RAW = EdkNt32Pkg/Logo/Logo.bmp
211 ################################################################################
213 # Rules are use with the [FV] section¡¯s module INF type to define
214 # how an FFS file is created for a given INF file. The following Rule are the default
215 # rules for the different module type. User can add the customized rules to define the
216 # content of the FFS file.
218 ################################################################################
219 [Rule.Common.PEI_CORE]
220 FILE PEI_CORE = $(NAMED_GUID) CheckSum {
221 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
222 UI Optional $(MODULE_NAME)
223 VERSION Optional BUILD_NUM=$(BUILD_NUMBER) $(INF_VERSION)
227 FILE PEIM = $(NAMED_GUID) CheckSum {
228 PEI_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).Depex
229 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
230 UI Optional $(MODULE_NAME)
231 VERSION Optional BUILD_NUM=$(BUILD_NUMBER) $(INF_VERSION)
234 [Rule.Common.DXE_CORE]
235 FILE DXE_CORE = $(NAMED_GUID) CheckSum {
237 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
238 UI Optional $(MODULE_NAME)
239 VERSION Optional BUILD_NUM=$(BUILD_NUMBER) $(INF_VERSION)
243 [Rule.Common.UEFI_DRIVER]
244 FILE DRIVER = $(NAMED_GUID) CheckSum {
247 DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex
248 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
249 UI Optional $(MODULE_NAME)
250 VERSION Optional BUILD_NUM=$(BUILD_NUMBER) $(INF_VERSION)
255 [Rule.Common.DXE_DRIVER]
256 FILE DRIVER = $(NAMED_GUID) CheckSum {
259 DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex
260 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
261 UI Optional $(MODULE_NAME)
262 VERSION Optional BUILD_NUM=$(BUILD_NUMBER) $(INF_VERSION)
267 [Rule.Common.DXE_RUNTIME_DRIVER]
268 FILE DRIVER = $(NAMED_GUID) CheckSum {
271 DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex
272 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
273 UI Optional $(MODULE_NAME)
274 VERSION Optional BUILD_NUM=$(BUILD_NUMBER) $(INF_VERSION)
279 [Rule.Common.UEFI_APPLICATION]
280 FILE APPLICATION = $(NAMED_GUID) CheckSum {
283 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
284 UI Optional $(MODULE_NAME)
285 VERSION Optional BUILD_NUM=$(BUILD_NUMBER) $(INF_VERSION)