]> git.proxmox.com Git - mirror_edk2.git/blame - Nt32Pkg/Nt32Pkg.fdf
Fix one bug in PeiExtractGuidedSectionLib to convert the address after hob start...
[mirror_edk2.git] / Nt32Pkg / Nt32Pkg.fdf
CommitLineData
24491cf6 1# This is NT32 FDF file\r
a9ce5754 2#\r
3# Copyright (c) 2007, Intel Corporation\r
4#\r
5# All rights reserved. This program and the accompanying materials\r
6# are licensed and made available under the terms and conditions of the BSD License\r
7# which accompanies this distribution. The full text of the license may be found at\r
8# http://opensource.org/licenses/bsd-license.php\r
9#\r
10# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
11# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
12#\r
24491cf6 13\r
f5d74f6d
LG
14################################################################################\r
15#\r
16# FD Section\r
7800ef49 17# The [FD] Section is made up of the definition statements and a\r
18# description of what goes into the Flash Device Image. Each FD section\r
d88bd7a5 19# defines one flash "device" image. A flash device image may be one of\r
7800ef49 20# the following: Removable media bootable image (like a boot floppy\r
d88bd7a5 21# image,) an Option ROM image (that would be "flashed" into an add-in\r
8df425cb 22# card,) a System "Flash" image (that would be burned into a system's\r
d88bd7a5 23# flash) or an Update ("Capsule") image that will be used to update and\r
f5d74f6d
LG
24# existing system flash.\r
25#\r
26################################################################################\r
24491cf6 27[FD.Fv_Recovery]\r
c4396d66
LG
28BaseAddress = 0x0|gEfiNt32PkgTokenSpaceGuid.PcdWinNtFdBaseAddress #The base address of the FLASH Device.\r
29Size = 0x002a0000 #The size in bytes of the FLASH Device\r
24491cf6
LG
30ErasePolarity = 1\r
31BlockSize = 0x10000\r
32NumBlocks = 0x2a\r
33\r
f5d74f6d
LG
34################################################################################\r
35#\r
7800ef49 36# Following are lists of FD Region layout which correspond to the locations of different\r
37# images within the flash device.\r
38#\r
f5d74f6d
LG
39# Regions must be defined in ascending order and may not overlap.\r
40#\r
d88bd7a5
LG
41# A Layout Region start with a eight digit hex offset (leading "0x" required) followed by\r
42# the pipe "|" character, followed by the size of the region, also in hex with the leading\r
43# "0x" characters. Like:\r
f5d74f6d
LG
44# Offset|Size\r
45# PcdOffsetCName|PcdSizeCName\r
46# RegionType <FV, DATA, or FILE>\r
47#\r
48################################################################################\r
24491cf6 490x00000000|0x00280000\r
c4396d66 50gEfiNt32PkgTokenSpaceGuid.PcdWinNtFlashFvRecoveryBase|gEfiNt32PkgTokenSpaceGuid.PcdWinNtFlashFvRecoverySize\r
24491cf6
LG
51FV = FvRecovery\r
52\r
530x00280000|0x0000c000\r
c4396d66 54gEfiNt32PkgTokenSpaceGuid.PcdWinNtFlashNvStorageVariableBase|gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableSize\r
24491cf6 55DATA = {\r
7800ef49 56 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\r
57 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\r
58 0x8d, 0x2b, 0xf1, 0xff, 0x96, 0x76, 0x8b, 0x4c,\r
59 0xa9, 0x85, 0x27, 0x47, 0x07, 0x5b, 0x4f, 0x50,\r
60 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00,\r
61 0x5f, 0x46, 0x56, 0x48, 0xff, 0x8c, 0xff, 0xff,\r
62 0x48, 0x00, 0x3b, 0x7c, 0x00, 0x00, 0x00, 0x01,\r
63 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00,\r
64 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\r
65 0x24, 0x56, 0x53, 0x53, 0xb8, 0xbf, 0x00, 0x00,\r
24491cf6
LG
66 0x5a, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00\r
67}\r
68\r
690x0028c000|0x00002000\r
c4396d66 70gEfiNt32PkgTokenSpaceGuid.PcdWinNtFlashNvStorageEventLogBase|gEfiNt32PkgTokenSpaceGuid.PcdWinNtFlashNvStorageEventLogSize\r
24491cf6
LG
71\r
720x0028e000|0x00002000\r
c4396d66 73gEfiNt32PkgTokenSpaceGuid.PcdWinNtFlashNvStorageFtwWorkingBase|gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingSize\r
7800ef49 74DATA = {\r
75 0x8d, 0x2b, 0xf1, 0xff, 0x96, 0x76, 0x8b, 0x4c,\r
76 0xa9, 0x85, 0x27, 0x47, 0x07, 0x5b, 0x4f, 0x50,\r
77 0xd2, 0x5f, 0x05, 0x9e, 0xfe, 0xff, 0xff, 0xff,\r
78 0xff, 0xff, 0xff, 0xff, 0xe0, 0x1f, 0x00, 0x00\r
24491cf6
LG
79}\r
80\r
810x00290000|0x00010000\r
c4396d66 82gEfiNt32PkgTokenSpaceGuid.PcdWinNtFlashNvStorageFtwSpareBase|gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareSize\r
24491cf6 83\r
f5d74f6d
LG
84################################################################################\r
85#\r
86# FV Section\r
87#\r
88# [FV] section is used to define what components or modules are placed within a flash\r
89# device file. This section also defines order the components and modules are positioned\r
90# within the image. The [FV] section consists of define statements, set statements and\r
91# module statements.\r
92#\r
93################################################################################\r
c47eca1a 94[FV.FvRecovery]\r
7800ef49 95FvAlignment = 16 #FV alignment and FV attributes setting.\r
24491cf6
LG
96ERASE_POLARITY = 1\r
97MEMORY_MAPPED = TRUE\r
98STICKY_WRITE = TRUE\r
99LOCK_CAP = TRUE\r
100LOCK_STATUS = TRUE\r
101WRITE_DISABLED_CAP = TRUE\r
102WRITE_ENABLED_CAP = TRUE\r
103WRITE_STATUS = TRUE\r
104WRITE_LOCK_CAP = TRUE\r
105WRITE_LOCK_STATUS = TRUE\r
106READ_DISABLED_CAP = TRUE\r
107READ_ENABLED_CAP = TRUE\r
108READ_STATUS = TRUE\r
109READ_LOCK_CAP = TRUE\r
110READ_LOCK_STATUS = TRUE\r
111\r
c47eca1a
LG
112################################################################################\r
113#\r
114# The INF statements point to EDK component and EDK II module INF files, which will be placed into this FV image.\r
115# Parsing tools will scan the INF file to determine the type of component or module.\r
116# The component or module type is used to reference the standard rules\r
117# defined elsewhere in the FDF file.\r
118#\r
119# The format for INF statements is:\r
120# INF $(PathAndInfFileName)\r
121#\r
122################################################################################\r
123 ##\r
124 # PEI Phase modules\r
125 ##\r
126 ##\r
127 # PEI Apriori file example, more PEIM module added later.\r
128 ##\r
129APRIORI PEI {\r
130 INF MdeModulePkg/Universal/PCD/Pei/Pcd.inf\r
131 INF IntelFrameworkModulePkg/Universal/StatusCode/Pei/PeiStatusCode.inf\r
9c7aa186 132 }\r
c47eca1a
LG
133APRIORI DXE {\r
134 INF MdeModulePkg/Universal/PCD/Dxe/Pcd.inf\r
135 INF Nt32Pkg/MetronomeDxe/MetronomeDxe.inf\r
00b7321e 136 }\r
9c7aa186 137\r
c47eca1a
LG
138INF MdeModulePkg/Core/Pei/PeiMain.inf\r
139INF MdeModulePkg/Universal/PCD/Pei/Pcd.inf\r
140INF IntelFrameworkModulePkg/Universal/StatusCode/Pei/PeiStatusCode.inf\r
141INF Nt32Pkg/BootModePei/BootModePei.inf\r
142INF Nt32Pkg/WinNtFlashMapPei/WinNtFlashMapPei.inf\r
143INF MdeModulePkg/Universal/MemoryTest/BaseMemoryTestPei/BaseMemoryTestPei.inf\r
144INF MdeModulePkg/Universal/Variable/Pei/VariablePei.inf\r
145INF Nt32Pkg/WinNtAutoScanPei/WinNtAutoScanPei.inf\r
146INF Nt32Pkg/WinNtFirmwareVolumePei/WinNtFirmwareVolumePei.inf\r
147INF Nt32Pkg/WinNtThunkPPIToProtocolPei/WinNtThunkPPIToProtocolPei.inf\r
148INF MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf\r
7800ef49 149\r
c47eca1a
LG
150 ##\r
151 # DXE Phase modules\r
152 ##\r
153INF MdeModulePkg/Core/Dxe/DxeMain.inf\r
a5b8a503 154INF MdeModulePkg/Universal/PCD/Dxe/Pcd.inf\r
155INF Nt32Pkg/MetronomeDxe/MetronomeDxe.inf\r
156INF Nt32Pkg/RealTimeClockRuntimeDxe/RealTimeClockRuntimeDxe.inf\r
157INF Nt32Pkg/ResetRuntimeDxe/ResetRuntimeDxe.inf\r
158INF MdeModulePkg/Core/RuntimeDxe/RuntimeDxe.inf\r
159INF Nt32Pkg/FvbServicesRuntimeDxe/FvbServicesRuntimeDxe.inf\r
160INF MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf\r
161INF IntelFrameworkModulePkg/Universal/DataHubDxe/DataHubDxe.inf\r
162INF MdeModulePkg/Universal/EbcDxe/EbcDxe.inf\r
163INF MdeModulePkg/Universal/MemoryTest/NullMemoryTestDxe/NullMemoryTestDxe.inf\r
164INF IntelFrameworkModulePkg/Universal/HiiDataBaseDxe/HiiDatabase.inf\r
165INF Nt32Pkg/WinNtThunkDxe/WinNtThunkDxe.inf\r
a5b8a503 166INF Nt32Pkg/CpuRuntimeDxe/CpuRuntimeDxe.inf\r
167INF Nt32Pkg/PlatformBdsDxe/PlatformBdsDxe.inf\r
168INF MdeModulePkg/Universal/FirmwareVolume/FaultTolerantWriteDxe/FtwLite.inf\r
169INF IntelFrameworkModulePkg/Universal/DataHubStdErrDxe/DataHubStdErrDxe.inf\r
170INF Nt32Pkg/MiscSubClassPlatformDxe/MiscSubClassPlatformDxe.inf\r
171INF Nt32Pkg/TimerDxe/TimerDxe.inf\r
172INF IntelFrameworkModulePkg/Universal/StatusCode/Dxe/DxeStatusCode.inf\r
173INF MdeModulePkg/Universal/Variable/RuntimeDxe/VariableRuntimeDxe.inf\r
174INF MdeModulePkg/Universal/WatchDogTimerDxe/WatchDogTimer.inf\r
175INF MdeModulePkg/Universal/MonotonicCounterRuntimeDxe/MonotonicCounterRuntimeDxe.inf\r
176INF MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf\r
177INF MdeModulePkg/Universal/Console/ConPlatformDxe/ConPlatformDxe.inf\r
178INF MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitterDxe.inf\r
179INF MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsoleDxe.inf\r
180INF MdeModulePkg/Universal/Console/TerminalDxe/TerminalDxe.inf\r
181INF MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf\r
182INF MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf\r
183INF MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf\r
184INF IntelFrameworkModulePkg/Universal/SetupBrowserDxe/SetupBrowser.inf\r
185INF MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf\r
a5b8a503 186INF IntelFrameworkModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf\r
187INF MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBusDxe.inf ##This driver follows UEFI specification definition\r
188INF MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDiskDxe.inf ##This driver follows UEFI specification definition\r
189INF IntelFrameworkModulePkg/Bus/Pci/IdeBusDxe/IdeBusDxe.inf\r
190INF Nt32Pkg/WinNtBusDriverDxe/WinNtBusDriverDxe.inf\r
191INF Nt32Pkg/WinNtBlockIoDxe/WinNtBlockIoDxe.inf\r
a5b8a503 192INF Nt32Pkg/WinNtSerialIoDxe/WinNtSerialIoDxe.inf\r
193INF Nt32Pkg/WinNtGopDxe/WinNtGopDxe.inf\r
194INF Nt32Pkg/WinNtSimpleFileSystemDxe/WinNtSimpleFileSystemDxe.inf\r
195INF IntelFrameworkModulePkg/Universal/DriverSampleDxe/DriverSampleDxe.inf\r
196INF MdeModulePkg/Application/HelloWorld/HelloWorld.inf\r
f5d74f6d
LG
197\r
198################################################################################\r
199#\r
7800ef49 200# FILE statements are provided so that a platform integrator can include\r
201# complete EFI FFS files, as well as a method for constructing FFS files\r
202# using curly "{}" brace scoping. The following three FILEs are\r
f5d74f6d
LG
203# for binary shell, binary fat and logo module.\r
204#\r
205################################################################################\r
29c3622c 206FILE APPLICATION = c57ad6b7-0515-40a8-9d21-551652854e37 {\r
04eced5b 207 SECTION COMPRESS PI_STD {\r
7800ef49 208 SECTION GUIDED {\r
04eced5b 209 SECTION PE32 = EdkShellBinPkg/FullShell/ia32/Shell_Full.efi\r
210 }\r
211 }\r
212 }\r
c47eca1a
LG
213FILE DRIVER = 961578FE-B6B7-44c3-AF35-6BC705CD2B1F {\r
214 SECTION COMPRESS PI_STD {\r
215 SECTION GUIDED {\r
216 SECTION PE32 = FatBinPkg/EnhancedFatDxe/Ia32/Fat.efi\r
217 }\r
218 }\r
219 }\r
220FILE FREEFORM = 7BB28B99-61BB-11D5-9A5D-0090273FC14D {\r
221 SECTION COMPRESS PI_STD {\r
222 SECTION GUIDED {\r
223 SECTION RAW = MdeModulePkg/Logo/Logo.bmp\r
224 }\r
225 }\r
226 }\r
227\r
f5d74f6d
LG
228\r
229################################################################################\r
230#\r
8df425cb 231# Rules are use with the [FV] section's module INF type to define\r
f5d74f6d
LG
232# how an FFS file is created for a given INF file. The following Rule are the default\r
233# rules for the different module type. User can add the customized rules to define the\r
234# content of the FFS file.\r
235#\r
236################################################################################\r
29c3622c 237\r
238\r
239############################################################################\r
240# Example of a DXE_DRIVER FFS file with a Checksum encapsulation section # \r
241############################################################################\r
242#\r
243#[Rule.Common.DXE_DRIVER]\r
c4396d66
LG
244# FILE DRIVER = $(NAMED_GUID) {\r
245# DXE_DEPEX DXE_DEPEX Optional |.depex\r
29c3622c 246# COMPRESS PI_STD {\r
247# GUIDED {\r
c4396d66
LG
248# PE32 PE32 |.efi\r
249# UI STRING="$(MODULE_NAME)" Optional\r
250# VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)\r
29c3622c 251# }\r
252# }\r
253# }\r
254#\r
255############################################################################\r
256\r
24491cf6 257[Rule.Common.PEI_CORE]\r
29c3622c 258 FILE PEI_CORE = $(NAMED_GUID) {\r
c4396d66
LG
259 PE32 PE32 |.efi\r
260 UI STRING ="$(MODULE_NAME)" Optional \r
261 VERSION STRING ="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER) \r
24491cf6
LG
262 }\r
263\r
264[Rule.Common.PEIM]\r
29c3622c 265 FILE PEIM = $(NAMED_GUID) {\r
c4396d66 266 PEI_DEPEX PEI_DEPEX Optional |.depex\r
c47eca1a 267 PE32 PE32 |.efi\r
c4396d66
LG
268 UI STRING="$(MODULE_NAME)" Optional \r
269 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER) \r
7800ef49 270 }\r
24491cf6
LG
271\r
272[Rule.Common.DXE_CORE]\r
29c3622c 273 FILE DXE_CORE = $(NAMED_GUID) {\r
24491cf6 274 COMPRESS PI_STD {\r
c4396d66
LG
275 PE32 PE32 |.efi\r
276 UI STRING="$(MODULE_NAME)" Optional\r
277 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)\r
7800ef49 278 }\r
24491cf6
LG
279 }\r
280\r
281[Rule.Common.UEFI_DRIVER]\r
29c3622c 282 FILE DRIVER = $(NAMED_GUID) {\r
c4396d66 283 DXE_DEPEX DXE_DEPEX Optional |.depex\r
24491cf6
LG
284 COMPRESS PI_STD {\r
285 GUIDED {\r
c4396d66
LG
286 PE32 PE32 |.efi\r
287 UI STRING="$(MODULE_NAME)" Optional\r
288 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)\r
24491cf6
LG
289 }\r
290 }\r
7800ef49 291 }\r
24491cf6
LG
292\r
293[Rule.Common.DXE_DRIVER]\r
29c3622c 294 FILE DRIVER = $(NAMED_GUID) {\r
c4396d66 295 DXE_DEPEX DXE_DEPEX Optional |.depex\r
24491cf6
LG
296 COMPRESS PI_STD {\r
297 GUIDED {\r
c4396d66
LG
298 PE32 PE32 |.efi\r
299 UI STRING="$(MODULE_NAME)" Optional\r
300 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)\r
24491cf6
LG
301 }\r
302 }\r
7800ef49 303 }\r
24491cf6
LG
304\r
305[Rule.Common.DXE_RUNTIME_DRIVER]\r
29c3622c 306 FILE DRIVER = $(NAMED_GUID) {\r
c4396d66 307 DXE_DEPEX DXE_DEPEX Optional |.depex\r
24491cf6
LG
308 COMPRESS PI_STD {\r
309 GUIDED {\r
c4396d66
LG
310 PE32 PE32 |.efi\r
311 UI STRING="$(MODULE_NAME)" Optional\r
312 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)\r
24491cf6
LG
313 }\r
314 }\r
7800ef49 315 }\r
24491cf6
LG
316\r
317[Rule.Common.UEFI_APPLICATION]\r
29c3622c 318 FILE APPLICATION = $(NAMED_GUID) {\r
24491cf6
LG
319 COMPRESS PI_STD {\r
320 GUIDED {\r
c4396d66
LG
321 PE32 PE32 |.efi\r
322 UI STRING="$(MODULE_NAME)" Optional\r
323 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)\r
24491cf6
LG
324 }\r
325 }\r
7800ef49 326 }\r