Porting SecMain module for Nt32Pkg, but not enable PI, so it currently dependent...
[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)/Nt32Pkg/BootModePei/BootMode.inf
113 INF $(WORKSPACE)/Nt32Pkg/WinNtThunkDxe/WinNtThunk.inf
114 #INF $(WORKSPACE)/Nt32Pkg/MiscSubClassPlatformDxe/MiscSubclassDriver.inf
115 INF $(WORKSPACE)/Nt32Pkg/WinNtThunkPPIToProtocolPei/WinNtThunkPPIToProtocol.inf
116 INF $(WORKSPACE)/Nt32Pkg/WinNtAutoScanPei/WinNtAutoScan.inf
117 INF $(WORKSPACE)/Nt32Pkg/WinNtBlockIoDxe/WinNtBlockIo.inf
118 INF $(WORKSPACE)/Nt32Pkg/WinNtBusDriverDxe/WinNtBusDriver.inf
119 INF $(WORKSPACE)/Nt32Pkg/WinNtConsoleDxe/WinNtConsole.inf
120 INF $(WORKSPACE)/Nt32Pkg/WinNtSimpleFileSystemDxe/WinNtSimpleFileSystem.inf
121 INF $(WORKSPACE)/Nt32Pkg/WinNtGopDxe/WinNtGop.inf
122 INF $(WORKSPACE)/Nt32Pkg/WinNtSerialIoDxe/WinNtSerialIo.inf
123 INF $(WORKSPACE)/Nt32Pkg/TimerDxe/Timer.inf
124 INF $(WORKSPACE)/Nt32Pkg/ResetRuntimeDxe/Reset.inf
125 INF $(WORKSPACE)/Nt32Pkg/RealTimeClockRuntimeDxe/RealTimeClock.inf
126 INF $(WORKSPACE)/Nt32Pkg/MetronomeDxe/Metronome.inf
127 INF $(WORKSPACE)/Nt32Pkg/CpuRuntimeDxe/Cpu.inf
128 INF $(WORKSPACE)/Nt32Pkg/FvbServicesRuntimeDxe/Nt32Fwh.inf
129 #INF $(WORKSPACE)/Nt32Pkg/PlatformBdsDxe/PlatformBds.inf
130 INF $(WORKSPACE)/MdeModulePkg/Application/HelloWorld/HelloWorld.inf
131 INF $(WORKSPACE)/MdeModulePkg/Universal/Disk/DiskIo/Dxe/DiskIo.inf
132 INF $(WORKSPACE)/MdeModulePkg/Universal/Disk/Partition/Dxe/Partition.inf
133 INF $(WORKSPACE)/MdeModulePkg/Universal/Disk/UnicodeCollation/English/Dxe/English.inf
134 INF $(WORKSPACE)/MdeModulePkg/Universal/SecurityStubDxe/SecurityStub.inf
135 INF $(WORKSPACE)/MdeModulePkg/Universal/Capsule/RuntimeDxe/CapsuleRuntime.inf
136 INF $(WORKSPACE)/MdeModulePkg/Universal/Ebc/Dxe/Ebc.inf
137 INF $(WORKSPACE)/MdeModulePkg/Universal/GenericMemoryTest/Dxe/NullMemoryTest.inf
138 INF $(WORKSPACE)/MdeModulePkg/Universal/FirmwareVolume/FaultTolerantWriteLite/Dxe/FtwLite.inf
139 INF $(WORKSPACE)/MdeModulePkg/Universal/BaseMemoryTestPei/BaseMemoryTest.inf
140 INF $(WORKSPACE)/MdeModulePkg/Universal/FirmwareVolume/GuidedSectionExtraction/Crc32SectionExtract/Dxe/Crc32SectionExtract.inf
141 INF $(WORKSPACE)/MdeModulePkg/Universal/VariableRuntimeDxe/Variable.inf
142 INF $(WORKSPACE)/MdeModulePkg/Universal/RuntimeDxe/Runtime.inf
143 INF $(WORKSPACE)/MdeModulePkg/Bus/Pci/AtapiPassThruDxe/AtapiPassThru.inf
144 INF $(WORKSPACE)/MdeModulePkg/Universal/WatchDogTimerDxe/WatchDogTimer.inf
145 INF $(WORKSPACE)/MdeModulePkg/Universal/VariablePei/Variable.inf
146 INF $(WORKSPACE)/MdeModulePkg/Universal/VariableRuntimeDxe/Variable.inf
147 INF $(WORKSPACE)/MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBus.inf
148 INF $(WORKSPACE)/MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDisk.inf
149 INF $(WORKSPACE)/IntelFrameworkModulePkg/Bus/Pci/PciBus/Dxe/PciBus.inf
150 INF $(WORKSPACE)/IntelFrameworkModulePkg/Bus/Pci/IdeBus/Dxe/IdeBus.inf
151 INF $(WORKSPACE)/IntelFrameworkModulePkg/Universal/DataHub/DataHub/Dxe/DataHub.inf
152 INF $(WORKSPACE)/IntelFrameworkModulePkg/Universal/DataHub/DataHubStdErr/Dxe/DataHubStdErr.inf
153 INF $(WORKSPACE)/IntelFrameworkModulePkg/Universal/StatusCode/Dxe/DxeStatusCode.inf
154 INF $(WORKSPACE)/IntelFrameworkModulePkg/Universal/StatusCode/Pei/PeiStatusCode.inf
155 INF $(WORKSPACE)/IntelFrameworkModulePkg/Universal/HiiDataBaseDxe/HiiDatabase.inf
156 INF $(WORKSPACE)/IntelFrameworkModulePkg/Universal/SetupBrowserDxe/SetupBrowser.inf
157 #INF $(WORKSPACE)/IntelFrameworkModulePkg/Universal/DriverSampleDxe/DriverSample.inf
158 INF $(WORKSPACE)/MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBus.inf ##This driver follows UEFI specification definition
159 INF $(WORKSPACE)/MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDisk.inf ##This driver follows UEFI specification definition
160
161 ################################################################################
162 #
163 # FILE statements are provided so that a platform integrator can include
164 # complete EFI FFS files, as well as a method for constructing FFS files
165 # using curly "{}" brace scoping. The following three FILEs are
166 # for binary shell, binary fat and logo module.
167 #
168 ################################################################################
169 FILE APPLICATION = c57ad6b7-0515-40a8-9d21-551652854e37 CHECKSUM {
170 SECTION COMPRESS PI_STD {
171 SECTION GUIDED {
172 SECTION PE32 = EdkShellBinPkg/FullShell/ia32/Shell_Full.efi
173 }
174 }
175 }
176 FILE DRIVER = 961578FE-B6B7-44c3-AF35-6BC705CD2B1F CHECKSUM {
177 SECTION COMPRESS PI_STD {
178 SECTION GUIDED {
179 SECTION PE32 = FatBinPkg/Fat/Ia32/Fat.efi
180 }
181 }
182 }
183 FILE FREEFORM = 7BB28B99-61BB-11D5-9A5D-0090273FC14D CHECKSUM {
184 SECTION COMPRESS PI_STD {
185 SECTION GUIDED {
186 SECTION RAW = EdkNt32Pkg/Logo/Logo.bmp
187 }
188 }
189 }
190
191
192 ################################################################################
193 #
194 # Rules are use with the [FV] section¡¯s module INF type to define
195 # how an FFS file is created for a given INF file. The following Rule are the default
196 # rules for the different module type. User can add the customized rules to define the
197 # content of the FFS file.
198 #
199 ################################################################################
200 [Rule.Common.PEI_CORE]
201 FILE PEI_CORE = $(NAMED_GUID) CheckSum {
202 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
203 UI Optional $(MODULE_NAME)
204 VERSION Optional BUILD_NUM=$(BUILD_NUMBER) $(INF_VERSION)
205 }
206
207 [Rule.Common.PEIM]
208 FILE PEIM = $(NAMED_GUID) CheckSum {
209 PEI_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).Depex
210 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
211 UI Optional $(MODULE_NAME)
212 VERSION Optional BUILD_NUM=$(BUILD_NUMBER) $(INF_VERSION)
213 }
214
215 [Rule.Common.DXE_CORE]
216 FILE DXE_CORE = $(NAMED_GUID) CheckSum {
217 COMPRESS PI_STD {
218 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
219 UI Optional $(MODULE_NAME)
220 VERSION Optional BUILD_NUM=$(BUILD_NUMBER) $(INF_VERSION)
221 }
222 }
223
224 [Rule.Common.UEFI_DRIVER]
225 FILE DRIVER = $(NAMED_GUID) CheckSum {
226 COMPRESS PI_STD {
227 GUIDED {
228 DXE_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)
232 }
233 }
234 }
235
236 [Rule.Common.DXE_DRIVER]
237 FILE DRIVER = $(NAMED_GUID) CheckSum {
238 COMPRESS PI_STD {
239 GUIDED {
240 DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex
241 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
242 UI Optional $(MODULE_NAME)
243 VERSION Optional BUILD_NUM=$(BUILD_NUMBER) $(INF_VERSION)
244 }
245 }
246 }
247
248 [Rule.Common.DXE_RUNTIME_DRIVER]
249 FILE DRIVER = $(NAMED_GUID) CheckSum {
250 COMPRESS PI_STD {
251 GUIDED {
252 DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex
253 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
254 UI Optional $(MODULE_NAME)
255 VERSION Optional BUILD_NUM=$(BUILD_NUMBER) $(INF_VERSION)
256 }
257 }
258 }
259
260 [Rule.Common.UEFI_APPLICATION]
261 FILE APPLICATION = $(NAMED_GUID) CheckSum {
262 COMPRESS PI_STD {
263 GUIDED {
264 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
265 UI Optional $(MODULE_NAME)
266 VERSION Optional BUILD_NUM=$(BUILD_NUMBER) $(INF_VERSION)
267 }
268 }
269 }
270