Add PeiCore
[mirror_edk2.git] / Nt32Pkg / Nt32Pkg.fdf
1 # This is NT32 FDF file
2
3 ################################################################################
4 #
5 # FD Section
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.
14 #
15 ################################################################################
16 [FD.Fv_Recovery]
17 BaseAddress = 0x0|PcdFdBaseAddress #The base address of the FLASH Device.
18 Size = 0x002a0000 #The size in bytes of the FLASH Device
19 ErasePolarity = 1
20 BlockSize = 0x10000
21 NumBlocks = 0x2a
22
23 ################################################################################
24 #
25 # Following are lists of FD Region layout which correspond to the locations of different
26 # images within the flash device.
27 #
28 # Regions must be defined in ascending order and may not overlap.
29 #
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:
33 # Offset|Size
34 # PcdOffsetCName|PcdSizeCName
35 # RegionType <FV, DATA, or FILE>
36 #
37 ################################################################################
38 0x00000000|0x00280000
39 PcdFlashFvRecoveryBase|PcdFlashFvRecoverySize
40 FV = FvRecovery
41
42 0x00280000|0x0000c000
43 PcdFlashNvStorageBase|PcdFlashNvStorageSize
44 DATA = {
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
56 }
57
58 0x0028c000|0x00002000
59 PcdFlashNvStorageEventLogBase|PcdFlashNvStorageEventLogSize
60
61 0x0028e000|0x00002000
62 PcdFlashNvStorageFtwWorkingBase|PcdFlashNvStorageFtwWorkingSize
63 DATA = {
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
68 }
69
70 0x00290000|0x00010000
71 PcdFlashNvStorageFtwSpareBase|PcdFlashNvStorageFtwSpareBase
72
73 ################################################################################
74 #
75 # FV Section
76 #
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
80 # module statements.
81 #
82 ################################################################################
83 [FV.FvRecovery]
84 FvAlignment = 16 #FV alignment and FV attributes setting.
85 ERASE_POLARITY = 1
86 MEMORY_MAPPED = TRUE
87 STICKY_WRITE = TRUE
88 LOCK_CAP = TRUE
89 LOCK_STATUS = TRUE
90 WRITE_DISABLED_CAP = TRUE
91 WRITE_ENABLED_CAP = TRUE
92 WRITE_STATUS = TRUE
93 WRITE_LOCK_CAP = TRUE
94 WRITE_LOCK_STATUS = TRUE
95 READ_DISABLED_CAP = TRUE
96 READ_ENABLED_CAP = TRUE
97 READ_STATUS = TRUE
98 READ_LOCK_CAP = TRUE
99 READ_LOCK_STATUS = TRUE
100
101 ################################################################################
102 #
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.
107 #
108 # The format for INF statements is:
109 # INF $(PathAndInfFileName)
110 #
111 ################################################################################
112 INF $(WORKSPACE)/MdeModulePkg/Core/Pei/PeiMain.inf
113 INF $(WORKSPACE)/Nt32Pkg/BootModePei/BootMode.inf
114 INF $(WORKSPACE)/Nt32Pkg/WinNtThunkDxe/WinNtThunk.inf
115 #INF $(WORKSPACE)/Nt32Pkg/MiscSubClassPlatformDxe/MiscSubclassDriver.inf
116 INF $(WORKSPACE)/Nt32Pkg/WinNtThunkPPIToProtocolPei/WinNtThunkPPIToProtocol.inf
117 INF $(WORKSPACE)/Nt32Pkg/WinNtAutoScanPei/WinNtAutoScan.inf
118 INF $(WORKSPACE)/Nt32Pkg/WinNtBlockIoDxe/WinNtBlockIo.inf
119 INF $(WORKSPACE)/Nt32Pkg/WinNtBusDriverDxe/WinNtBusDriver.inf
120 INF $(WORKSPACE)/Nt32Pkg/WinNtConsoleDxe/WinNtConsole.inf
121 INF $(WORKSPACE)/Nt32Pkg/WinNtSimpleFileSystemDxe/WinNtSimpleFileSystem.inf
122 INF $(WORKSPACE)/Nt32Pkg/WinNtGopDxe/WinNtGop.inf
123 INF $(WORKSPACE)/Nt32Pkg/WinNtSerialIoDxe/WinNtSerialIo.inf
124 INF $(WORKSPACE)/Nt32Pkg/TimerDxe/Timer.inf
125 INF $(WORKSPACE)/Nt32Pkg/ResetRuntimeDxe/Reset.inf
126 INF $(WORKSPACE)/Nt32Pkg/RealTimeClockRuntimeDxe/RealTimeClock.inf
127 INF $(WORKSPACE)/Nt32Pkg/MetronomeDxe/Metronome.inf
128 INF $(WORKSPACE)/Nt32Pkg/CpuRuntimeDxe/Cpu.inf
129 INF $(WORKSPACE)/Nt32Pkg/FvbServicesRuntimeDxe/Nt32Fwh.inf
130 #INF $(WORKSPACE)/Nt32Pkg/PlatformBdsDxe/PlatformBds.inf
131 INF $(WORKSPACE)/MdeModulePkg/Application/HelloWorld/HelloWorld.inf
132 INF $(WORKSPACE)/MdeModulePkg/Universal/Disk/DiskIo/Dxe/DiskIo.inf
133 INF $(WORKSPACE)/MdeModulePkg/Universal/Disk/Partition/Dxe/Partition.inf
134 INF $(WORKSPACE)/MdeModulePkg/Universal/Disk/UnicodeCollation/English/Dxe/English.inf
135 INF $(WORKSPACE)/MdeModulePkg/Universal/SecurityStubDxe/SecurityStub.inf
136 INF $(WORKSPACE)/MdeModulePkg/Universal/Capsule/RuntimeDxe/CapsuleRuntime.inf
137 INF $(WORKSPACE)/MdeModulePkg/Universal/Ebc/Dxe/Ebc.inf
138 INF $(WORKSPACE)/MdeModulePkg/Universal/GenericMemoryTest/Dxe/NullMemoryTest.inf
139 INF $(WORKSPACE)/MdeModulePkg/Universal/FirmwareVolume/FaultTolerantWriteLite/Dxe/FtwLite.inf
140 INF $(WORKSPACE)/MdeModulePkg/Universal/BaseMemoryTestPei/BaseMemoryTest.inf
141 INF $(WORKSPACE)/MdeModulePkg/Universal/FirmwareVolume/GuidedSectionExtraction/Crc32SectionExtract/Dxe/Crc32SectionExtract.inf
142 INF $(WORKSPACE)/MdeModulePkg/Universal/VariableRuntimeDxe/Variable.inf
143 INF $(WORKSPACE)/MdeModulePkg/Universal/RuntimeDxe/Runtime.inf
144 INF $(WORKSPACE)/MdeModulePkg/Bus/Pci/AtapiPassThruDxe/AtapiPassThru.inf
145 INF $(WORKSPACE)/MdeModulePkg/Universal/WatchDogTimerDxe/WatchDogTimer.inf
146 INF $(WORKSPACE)/MdeModulePkg/Universal/VariablePei/Variable.inf
147 INF $(WORKSPACE)/MdeModulePkg/Universal/VariableRuntimeDxe/Variable.inf
148 INF $(WORKSPACE)/MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBus.inf
149 INF $(WORKSPACE)/MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDisk.inf
150 INF $(WORKSPACE)/IntelFrameworkModulePkg/Bus/Pci/PciBus/Dxe/PciBus.inf
151 INF $(WORKSPACE)/IntelFrameworkModulePkg/Bus/Pci/IdeBus/Dxe/IdeBus.inf
152 INF $(WORKSPACE)/IntelFrameworkModulePkg/Universal/DataHub/DataHub/Dxe/DataHub.inf
153 INF $(WORKSPACE)/IntelFrameworkModulePkg/Universal/DataHub/DataHubStdErr/Dxe/DataHubStdErr.inf
154 INF $(WORKSPACE)/IntelFrameworkModulePkg/Universal/StatusCode/Dxe/DxeStatusCode.inf
155 INF $(WORKSPACE)/IntelFrameworkModulePkg/Universal/StatusCode/Pei/PeiStatusCode.inf
156 INF $(WORKSPACE)/IntelFrameworkModulePkg/Universal/HiiDataBaseDxe/HiiDatabase.inf
157 INF $(WORKSPACE)/IntelFrameworkModulePkg/Universal/SetupBrowserDxe/SetupBrowser.inf
158 #INF $(WORKSPACE)/IntelFrameworkModulePkg/Universal/DriverSampleDxe/DriverSample.inf
159 INF $(WORKSPACE)/MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBus.inf ##This driver follows UEFI specification definition
160 INF $(WORKSPACE)/MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDisk.inf ##This driver follows UEFI specification definition
161
162 ################################################################################
163 #
164 # FILE statements are provided so that a platform integrator can include
165 # complete EFI FFS files, as well as a method for constructing FFS files
166 # using curly "{}" brace scoping. The following three FILEs are
167 # for binary shell, binary fat and logo module.
168 #
169 ################################################################################
170 FILE APPLICATION = c57ad6b7-0515-40a8-9d21-551652854e37 CHECKSUM {
171 SECTION COMPRESS PI_STD {
172 SECTION GUIDED {
173 SECTION PE32 = EdkShellBinPkg/FullShell/ia32/Shell_Full.efi
174 }
175 }
176 }
177 FILE DRIVER = 961578FE-B6B7-44c3-AF35-6BC705CD2B1F CHECKSUM {
178 SECTION COMPRESS PI_STD {
179 SECTION GUIDED {
180 SECTION PE32 = FatBinPkg/Fat/Ia32/Fat.efi
181 }
182 }
183 }
184 FILE FREEFORM = 7BB28B99-61BB-11D5-9A5D-0090273FC14D CHECKSUM {
185 SECTION COMPRESS PI_STD {
186 SECTION GUIDED {
187 SECTION RAW = EdkNt32Pkg/Logo/Logo.bmp
188 }
189 }
190 }
191
192
193 ################################################################################
194 #
195 # Rules are use with the [FV] section¡¯s module INF type to define
196 # how an FFS file is created for a given INF file. The following Rule are the default
197 # rules for the different module type. User can add the customized rules to define the
198 # content of the FFS file.
199 #
200 ################################################################################
201 [Rule.Common.PEI_CORE]
202 FILE PEI_CORE = $(NAMED_GUID) CheckSum {
203 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
204 UI Optional $(MODULE_NAME)
205 VERSION Optional BUILD_NUM=$(BUILD_NUMBER) $(INF_VERSION)
206 }
207
208 [Rule.Common.PEIM]
209 FILE PEIM = $(NAMED_GUID) CheckSum {
210 PEI_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).Depex
211 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
212 UI Optional $(MODULE_NAME)
213 VERSION Optional BUILD_NUM=$(BUILD_NUMBER) $(INF_VERSION)
214 }
215
216 [Rule.Common.DXE_CORE]
217 FILE DXE_CORE = $(NAMED_GUID) CheckSum {
218 COMPRESS PI_STD {
219 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
220 UI Optional $(MODULE_NAME)
221 VERSION Optional BUILD_NUM=$(BUILD_NUMBER) $(INF_VERSION)
222 }
223 }
224
225 [Rule.Common.UEFI_DRIVER]
226 FILE DRIVER = $(NAMED_GUID) CheckSum {
227 COMPRESS PI_STD {
228 GUIDED {
229 DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex
230 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
231 UI Optional $(MODULE_NAME)
232 VERSION Optional BUILD_NUM=$(BUILD_NUMBER) $(INF_VERSION)
233 }
234 }
235 }
236
237 [Rule.Common.DXE_DRIVER]
238 FILE DRIVER = $(NAMED_GUID) CheckSum {
239 COMPRESS PI_STD {
240 GUIDED {
241 DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex
242 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
243 UI Optional $(MODULE_NAME)
244 VERSION Optional BUILD_NUM=$(BUILD_NUMBER) $(INF_VERSION)
245 }
246 }
247 }
248
249 [Rule.Common.DXE_RUNTIME_DRIVER]
250 FILE DRIVER = $(NAMED_GUID) CheckSum {
251 COMPRESS PI_STD {
252 GUIDED {
253 DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex
254 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
255 UI Optional $(MODULE_NAME)
256 VERSION Optional BUILD_NUM=$(BUILD_NUMBER) $(INF_VERSION)
257 }
258 }
259 }
260
261 [Rule.Common.UEFI_APPLICATION]
262 FILE APPLICATION = $(NAMED_GUID) CheckSum {
263 COMPRESS PI_STD {
264 GUIDED {
265 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
266 UI Optional $(MODULE_NAME)
267 VERSION Optional BUILD_NUM=$(BUILD_NUMBER) $(INF_VERSION)
268 }
269 }
270 }
271