]> git.proxmox.com Git - mirror_edk2.git/blame - Nt32Pkg/Nt32Pkg.fdf
Update the return status to comply to PI spec.
[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
24491cf6 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
f5d74f6d
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
7800ef49 116# The component or module type is used to reference the standard rules\r
f5d74f6d
LG
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
04eced5b 123 ##\r
124 # PEI Phase modules\r
125 ##\r
9c7aa186 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
132 }\r
133\r
a5b8a503 134INF MdeModulePkg/Core/Pei/PeiMain.inf\r
135INF MdeModulePkg/Universal/PCD/Pei/Pcd.inf\r
136INF IntelFrameworkModulePkg/Universal/StatusCode/Pei/PeiStatusCode.inf\r
137INF Nt32Pkg/BootModePei/BootModePei.inf\r
138INF Nt32Pkg/WinNtFlashMapPei/WinNtFlashMapPei.inf\r
139INF MdeModulePkg/Universal/MemoryTest/BaseMemoryTestPei/BaseMemoryTestPei.inf\r
140INF MdeModulePkg/Universal/Variable/Pei/VariablePei.inf\r
141INF Nt32Pkg/WinNtAutoScanPei/WinNtAutoScanPei.inf\r
142INF Nt32Pkg/WinNtFirmwareVolumePei/WinNtFirmwareVolumePei.inf\r
143INF Nt32Pkg/WinNtThunkPPIToProtocolPei/WinNtThunkPPIToProtocolPei.inf\r
144INF MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf\r
7800ef49 145\r
04eced5b 146 ##\r
147 # DXE Phase modules\r
148 ##\r
a5b8a503 149INF MdeModulePkg/Core/Dxe/DxeMain.inf\r
150INF MdeModulePkg/Universal/PCD/Dxe/Pcd.inf\r
151INF Nt32Pkg/MetronomeDxe/MetronomeDxe.inf\r
152INF Nt32Pkg/RealTimeClockRuntimeDxe/RealTimeClockRuntimeDxe.inf\r
153INF Nt32Pkg/ResetRuntimeDxe/ResetRuntimeDxe.inf\r
154INF MdeModulePkg/Core/RuntimeDxe/RuntimeDxe.inf\r
155INF Nt32Pkg/FvbServicesRuntimeDxe/FvbServicesRuntimeDxe.inf\r
156INF MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf\r
157INF IntelFrameworkModulePkg/Universal/DataHubDxe/DataHubDxe.inf\r
158INF MdeModulePkg/Universal/EbcDxe/EbcDxe.inf\r
159INF MdeModulePkg/Universal/MemoryTest/NullMemoryTestDxe/NullMemoryTestDxe.inf\r
160INF IntelFrameworkModulePkg/Universal/HiiDataBaseDxe/HiiDatabase.inf\r
161INF Nt32Pkg/WinNtThunkDxe/WinNtThunkDxe.inf\r
a5b8a503 162INF Nt32Pkg/CpuRuntimeDxe/CpuRuntimeDxe.inf\r
163INF Nt32Pkg/PlatformBdsDxe/PlatformBdsDxe.inf\r
164INF MdeModulePkg/Universal/FirmwareVolume/FaultTolerantWriteDxe/FtwLite.inf\r
165INF IntelFrameworkModulePkg/Universal/DataHubStdErrDxe/DataHubStdErrDxe.inf\r
166INF Nt32Pkg/MiscSubClassPlatformDxe/MiscSubClassPlatformDxe.inf\r
167INF Nt32Pkg/TimerDxe/TimerDxe.inf\r
168INF IntelFrameworkModulePkg/Universal/StatusCode/Dxe/DxeStatusCode.inf\r
169INF MdeModulePkg/Universal/Variable/RuntimeDxe/VariableRuntimeDxe.inf\r
170INF MdeModulePkg/Universal/WatchDogTimerDxe/WatchDogTimer.inf\r
171INF MdeModulePkg/Universal/MonotonicCounterRuntimeDxe/MonotonicCounterRuntimeDxe.inf\r
172INF MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf\r
173INF MdeModulePkg/Universal/Console/ConPlatformDxe/ConPlatformDxe.inf\r
174INF MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitterDxe.inf\r
175INF MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsoleDxe.inf\r
176INF MdeModulePkg/Universal/Console/TerminalDxe/TerminalDxe.inf\r
177INF MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf\r
178INF MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf\r
179INF MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf\r
180INF IntelFrameworkModulePkg/Universal/SetupBrowserDxe/SetupBrowser.inf\r
181INF MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf\r
182INF MdeModulePkg/Bus/Pci/AtapiPassThruDxe/AtapiPassThru.inf\r
183INF IntelFrameworkModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf\r
184INF MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBusDxe.inf ##This driver follows UEFI specification definition\r
185INF MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDiskDxe.inf ##This driver follows UEFI specification definition\r
186INF IntelFrameworkModulePkg/Bus/Pci/IdeBusDxe/IdeBusDxe.inf\r
187INF Nt32Pkg/WinNtBusDriverDxe/WinNtBusDriverDxe.inf\r
188INF Nt32Pkg/WinNtBlockIoDxe/WinNtBlockIoDxe.inf\r
189INF Nt32Pkg/WinNtConsoleDxe/WinNtConsoleDxe.inf\r
190INF Nt32Pkg/WinNtSerialIoDxe/WinNtSerialIoDxe.inf\r
191INF Nt32Pkg/WinNtGopDxe/WinNtGopDxe.inf\r
192INF Nt32Pkg/WinNtSimpleFileSystemDxe/WinNtSimpleFileSystemDxe.inf\r
193INF IntelFrameworkModulePkg/Universal/DriverSampleDxe/DriverSampleDxe.inf\r
194INF MdeModulePkg/Application/HelloWorld/HelloWorld.inf\r
f5d74f6d
LG
195\r
196################################################################################\r
197#\r
7800ef49 198# FILE statements are provided so that a platform integrator can include\r
199# complete EFI FFS files, as well as a method for constructing FFS files\r
200# using curly "{}" brace scoping. The following three FILEs are\r
f5d74f6d
LG
201# for binary shell, binary fat and logo module.\r
202#\r
203################################################################################\r
29c3622c 204FILE APPLICATION = c57ad6b7-0515-40a8-9d21-551652854e37 {\r
04eced5b 205 SECTION COMPRESS PI_STD {\r
7800ef49 206 SECTION GUIDED {\r
04eced5b 207 SECTION PE32 = EdkShellBinPkg/FullShell/ia32/Shell_Full.efi\r
208 }\r
209 }\r
210 }\r
29c3622c 211FILE DRIVER = 961578FE-B6B7-44c3-AF35-6BC705CD2B1F {\r
e0086b58 212 SECTION COMPRESS PI_STD {\r
213 SECTION GUIDED {\r
d4b81622 214 SECTION PE32 = FatBinPkg/EnhancedFatDxe/Ia32/Fat.efi\r
e0086b58 215 }\r
216 }\r
217 }\r
29c3622c 218FILE FREEFORM = 7BB28B99-61BB-11D5-9A5D-0090273FC14D {\r
7800ef49 219 SECTION COMPRESS PI_STD {\r
04eced5b 220 SECTION GUIDED {\r
49ddf612 221 SECTION RAW = MdeModulePkg/Logo/Logo.bmp\r
04eced5b 222 }\r
7800ef49 223 }\r
224 }\r
24491cf6 225\r
f5d74f6d
LG
226\r
227################################################################################\r
228#\r
8df425cb 229# Rules are use with the [FV] section's module INF type to define\r
f5d74f6d
LG
230# how an FFS file is created for a given INF file. The following Rule are the default\r
231# rules for the different module type. User can add the customized rules to define the\r
232# content of the FFS file.\r
233#\r
234################################################################################\r
29c3622c 235\r
236\r
237############################################################################\r
238# Example of a DXE_DRIVER FFS file with a Checksum encapsulation section # \r
239############################################################################\r
240#\r
241#[Rule.Common.DXE_DRIVER]\r
c4396d66
LG
242# FILE DRIVER = $(NAMED_GUID) {\r
243# DXE_DEPEX DXE_DEPEX Optional |.depex\r
29c3622c 244# COMPRESS PI_STD {\r
245# GUIDED {\r
c4396d66
LG
246# PE32 PE32 |.efi\r
247# UI STRING="$(MODULE_NAME)" Optional\r
248# VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)\r
29c3622c 249# }\r
250# }\r
251# }\r
252#\r
253############################################################################\r
254\r
24491cf6 255[Rule.Common.PEI_CORE]\r
29c3622c 256 FILE PEI_CORE = $(NAMED_GUID) {\r
c4396d66
LG
257 PE32 PE32 |.efi\r
258 UI STRING ="$(MODULE_NAME)" Optional \r
259 VERSION STRING ="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER) \r
24491cf6
LG
260 }\r
261\r
262[Rule.Common.PEIM]\r
29c3622c 263 FILE PEIM = $(NAMED_GUID) {\r
c4396d66
LG
264 PEI_DEPEX PEI_DEPEX Optional |.depex\r
265 PE32 PE32 |.efi\r
266 UI STRING="$(MODULE_NAME)" Optional \r
267 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER) \r
7800ef49 268 }\r
24491cf6
LG
269\r
270[Rule.Common.DXE_CORE]\r
29c3622c 271 FILE DXE_CORE = $(NAMED_GUID) {\r
24491cf6 272 COMPRESS PI_STD {\r
c4396d66
LG
273 PE32 PE32 |.efi\r
274 UI STRING="$(MODULE_NAME)" Optional\r
275 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)\r
7800ef49 276 }\r
24491cf6
LG
277 }\r
278\r
279[Rule.Common.UEFI_DRIVER]\r
29c3622c 280 FILE DRIVER = $(NAMED_GUID) {\r
c4396d66 281 DXE_DEPEX DXE_DEPEX Optional |.depex\r
24491cf6
LG
282 COMPRESS PI_STD {\r
283 GUIDED {\r
c4396d66
LG
284 PE32 PE32 |.efi\r
285 UI STRING="$(MODULE_NAME)" Optional\r
286 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)\r
24491cf6
LG
287 }\r
288 }\r
7800ef49 289 }\r
24491cf6
LG
290\r
291[Rule.Common.DXE_DRIVER]\r
29c3622c 292 FILE DRIVER = $(NAMED_GUID) {\r
c4396d66 293 DXE_DEPEX DXE_DEPEX Optional |.depex\r
24491cf6
LG
294 COMPRESS PI_STD {\r
295 GUIDED {\r
c4396d66
LG
296 PE32 PE32 |.efi\r
297 UI STRING="$(MODULE_NAME)" Optional\r
298 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)\r
24491cf6
LG
299 }\r
300 }\r
7800ef49 301 }\r
24491cf6
LG
302\r
303[Rule.Common.DXE_RUNTIME_DRIVER]\r
29c3622c 304 FILE DRIVER = $(NAMED_GUID) {\r
c4396d66 305 DXE_DEPEX DXE_DEPEX Optional |.depex\r
24491cf6
LG
306 COMPRESS PI_STD {\r
307 GUIDED {\r
c4396d66
LG
308 PE32 PE32 |.efi\r
309 UI STRING="$(MODULE_NAME)" Optional\r
310 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)\r
24491cf6
LG
311 }\r
312 }\r
7800ef49 313 }\r
24491cf6
LG
314\r
315[Rule.Common.UEFI_APPLICATION]\r
29c3622c 316 FILE APPLICATION = $(NAMED_GUID) {\r
24491cf6
LG
317 COMPRESS PI_STD {\r
318 GUIDED {\r
c4396d66
LG
319 PE32 PE32 |.efi\r
320 UI STRING="$(MODULE_NAME)" Optional\r
321 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)\r
24491cf6
LG
322 }\r
323 }\r
7800ef49 324 }\r