Migrate GOP driver from R8.6 for NT32. Add a new PCD "PcdWinNtGop". Setting NT32...
[mirror_edk2.git] / EdkNt32Pkg / EdkNt32Pkg.spd
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!--
3 Copyright (c) 2006, Intel Corporation
4 All rights reserved. This program and the accompanying materials
5 are licensed and made available under the terms and conditions of the BSD License
6 which accompanies this distribution. The full text of the license may be found at
7 http://opensource.org/licenses/bsd-license.php
8
9 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
10 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
11 -->
12 <PackageSurfaceArea xmlns="http://www.TianoCore.org/2006/Edk2.0">
13 <SpdHeader>
14 <PackageName>EdkNt32Pkg</PackageName>
15 <GuidValue>0fb2aa2d-10d5-40a5-a9dc-060c12a4a3f3</GuidValue>
16 <Version>0.3</Version>
17 <Abstract>This is the NT32 Emulation Environment Platform</Abstract>
18 <Description>Reference platform implementation using an emulator.</Description>
19 <Copyright>Copyright (c) 2006, Intel Corporation.</Copyright>
20 <License>All rights reserved.
21 This program and the accompanying materials are licensed and made available
22 under the terms and conditions of the BSD License which accompanies this distribution.
23 The full text of the license may be found at http://opensource.org/licenses/bsd-license.php
24 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, WITHOUT WARRANTIES
25 OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.</License>
26 <Specification>FRAMEWORK_BUILD_PACKAGING_SPECIFICATION 0x00000052</Specification>
27 </SpdHeader>
28 <PackageDefinitions>
29 <ReadOnly>true</ReadOnly>
30 <RePackage>false</RePackage>
31 </PackageDefinitions>
32 <LibraryClassDeclarations>
33 <LibraryClass Name="EdkGenericBdsLib">
34 <IncludeHeader>Include/Library/EdkGenericBdsLib.h</IncludeHeader>
35 <HelpText/>
36 </LibraryClass>
37 <LibraryClass Name="WinNtLib">
38 <IncludeHeader>Include/Library/WinNtLib.h</IncludeHeader>
39 <HelpText/>
40 </LibraryClass>
41 </LibraryClassDeclarations>
42 <IndustryStdIncludes>
43 <IndustryStdHeader Name="WinNTInclude">
44 <IncludeHeader>Include/Common/WinNTInclude.h</IncludeHeader>
45 <HelpText/>
46 </IndustryStdHeader>
47 <IndustryStdHeader Name="EdkGenericBdsLib">
48 <IncludeHeader>Include/Library/EdkGenericBdsLib.h</IncludeHeader>
49 <HelpText/>
50 </IndustryStdHeader>
51 <IndustryStdHeader Name="WinNtLib">
52 <IncludeHeader>Include/Library/WinNtLib.h</IncludeHeader>
53 <HelpText/>
54 </IndustryStdHeader>
55 <IndustryStdHeader Name="NtAutoscan">
56 <IncludeHeader>Include/Ppi/NtAutoscan.h</IncludeHeader>
57 <HelpText/>
58 </IndustryStdHeader>
59 <IndustryStdHeader Name="NtFwh">
60 <IncludeHeader>Include/Ppi/NtFwh.h</IncludeHeader>
61 <HelpText/>
62 </IndustryStdHeader>
63 <IndustryStdHeader Name="NtPeiLoadFile">
64 <IncludeHeader>Include/Ppi/NtPeiLoadFile.h</IncludeHeader>
65 <HelpText/>
66 </IndustryStdHeader>
67 <IndustryStdHeader Name="NtThunk">
68 <IncludeHeader>Include/Ppi/NtThunk.h</IncludeHeader>
69 <HelpText/>
70 </IndustryStdHeader>
71 <IndustryStdHeader Name="WinNtIo">
72 <IncludeHeader>Include/Protocol/WinNtIo.h</IncludeHeader>
73 <HelpText/>
74 </IndustryStdHeader>
75 <IndustryStdHeader Name="WinNtThunk">
76 <IncludeHeader>Include/Protocol/WinNtThunk.h</IncludeHeader>
77 <HelpText/>
78 </IndustryStdHeader>
79 <IndustryStdHeader Name="FlashLayout">
80 <IncludeHeader>Include/FlashLayout.h</IncludeHeader>
81 <HelpText/>
82 </IndustryStdHeader>
83 <IndustryStdHeader Name="WinNtDxe">
84 <IncludeHeader>Include/WinNtDxe.h</IncludeHeader>
85 <HelpText/>
86 </IndustryStdHeader>
87 <IndustryStdHeader Name="WinNtPeim">
88 <IncludeHeader>Include/WinNtPeim.h</IncludeHeader>
89 <HelpText/>
90 </IndustryStdHeader>
91 </IndustryStdIncludes>
92 <MsaFiles>
93 <Filename>Dxe/Nt32Platform/MiscSubclass/MiscSubclassDriver.msa</Filename>
94 <Filename>Dxe/PlatformBds/PlatformBds.msa</Filename>
95 <Filename>Dxe/WinNtThunk/Bus/BlockIo/WinNtBlockIo.msa</Filename>
96 <Filename>Dxe/WinNtThunk/Bus/Console/WinNtConsole.msa</Filename>
97 <Filename>Dxe/WinNtThunk/Bus/SerialIo/WinNtSerialIo.msa</Filename>
98 <Filename>Dxe/WinNtThunk/Bus/SimpleFileSystem/WinNtSimpleFileSystem.msa</Filename>
99 <Filename>Dxe/WinNtThunk/Bus/Uga/WinNtUga.msa</Filename>
100 <Filename>Dxe/WinNtThunk/Bus/Gop/WinNtGop.msa</Filename>
101 <Filename>Dxe/WinNtThunk/Bus/WinNtBusDriver/WinNtBusDriver.msa</Filename>
102 <Filename>Dxe/WinNtThunk/Chipset/Metronome/Metronome.msa</Filename>
103 <Filename>Dxe/WinNtThunk/Chipset/RealTimeClock/RealTimeClock.msa</Filename>
104 <Filename>Dxe/WinNtThunk/Chipset/Reset/Reset.msa</Filename>
105 <Filename>Dxe/WinNtThunk/Chipset/Timer/Timer.msa</Filename>
106 <Filename>Dxe/WinNtThunk/Cpu/Cpu.msa</Filename>
107 <Filename>Dxe/WinNtThunk/WinNtThunk/WinNtThunk.msa</Filename>
108 <Filename>Library/DxeWinNtLib/DxeWinNtLib.msa</Filename>
109 <Filename>Library/Nt32TimerLibNull/Nt32TimerLib.msa</Filename>
110 <Filename>Library/EdkGenericBdsLib/EdkGenericBdsLib.msa</Filename>
111 <Filename>Library/EdkNt32PeiPeCoffGetEntryPointLib/EdkNt32PeiPeCoffGetEntryPointLib.msa</Filename>
112 <Filename>Library/Nt32PeCoffLoaderLib/Nt32PeCoffLoaderLib.msa</Filename>
113 <Filename>Library/Nt32OemHookStatusCodeLib/Nt32OemHookStatusCodeLib.msa</Filename>
114 <Filename>Logo/Logo.msa</Filename>
115 <Filename>Pei/Autoscan/WinNtAutoScan.msa</Filename>
116 <Filename>Pei/BootMode/BootMode.msa</Filename>
117 <Filename>Pei/FirmwareVolume/WinNtFwh.msa</Filename>
118 <Filename>Pei/FlashMap/FlashMap.msa</Filename>
119 <Filename>Pei/WinNtStuff/WinNtStuff.msa</Filename>
120 <Filename>RuntimeDxe/FvbServices/Nt32Fwh.msa</Filename>
121 <Filename>Sec/SecMain.msa</Filename>
122 </MsaFiles>
123 <PackageHeaders>
124 <IncludePkgHeader ModuleType="SEC">Include/WinNtPeim.h</IncludePkgHeader>
125 <IncludePkgHeader ModuleType="PEIM">Include/WinNtPeim.h</IncludePkgHeader>
126 <IncludePkgHeader ModuleType="DXE_DRIVER">Include/WinNtDxe.h</IncludePkgHeader>
127 <IncludePkgHeader ModuleType="DXE_RUNTIME_DRIVER">Include/WinNtDxe.h</IncludePkgHeader>
128 <IncludePkgHeader ModuleType="DXE_SMM_DRIVER">Include/WinNtDxe.h</IncludePkgHeader>
129 <IncludePkgHeader ModuleType="DXE_SAL_DRIVER">Include/WinNtDxe.h</IncludePkgHeader>
130 <IncludePkgHeader ModuleType="UEFI_DRIVER">Include/WinNtDxe.h</IncludePkgHeader>
131 <IncludePkgHeader ModuleType="USER_DEFINED">Include/WinNtPeim.h</IncludePkgHeader>
132 </PackageHeaders>
133 <GuidDeclarations>
134 <Entry Name="EdkNt32PkgTokenSpace">
135 <C_Name>gEfiEdkNt32PkgTokenSpaceGuid</C_Name>
136 <GuidValue>0D79A645-1D91-40a6-A81F-61E6982B32B4</GuidValue>
137 <HelpText>All PCD define in EdkNt32Pkg is in this token space scope</HelpText>
138 </Entry>
139 <Entry Name="WinNtVirtualDisks">
140 <C_Name>gEfiWinNtVirtualDisksGuid</C_Name>
141 <GuidValue>0C95A928-A006-11D4-BCFA-0080C73C8881</GuidValue>
142 <HelpText/>
143 </Entry>
144 <Entry Name="WinNtPhysicalDisks">
145 <C_Name>gEfiWinNtPhysicalDisksGuid</C_Name>
146 <GuidValue>0C95A92F-A006-11D4-BCFA-0080C73C8881</GuidValue>
147 <HelpText/>
148 </Entry>
149 <Entry Name="WinNtFileSystem">
150 <C_Name>gEfiWinNtFileSystemGuid</C_Name>
151 <GuidValue>0C95A935-A006-11D4-BCFA-0080C73C8881</GuidValue>
152 <HelpText/>
153 </Entry>
154 <Entry Name="WinNtSerialPort">
155 <C_Name>gEfiWinNtSerialPortGuid</C_Name>
156 <GuidValue>0C95A93D-A006-11D4-BCFA-0080C73C8881</GuidValue>
157 <HelpText/>
158 </Entry>
159 <Entry Name="WinNtGop">
160 <C_Name>gEfiWinNtGopGuid</C_Name>
161 <GuidValue>4e11e955-ccca-11d4-bd0d-0080c73c8881</GuidValue>
162 <HelpText/>
163 </Entry>
164 <Entry Name="WinNtUga">
165 <C_Name>gEfiWinNtUgaGuid</C_Name>
166 <GuidValue>AB248E99-ABE1-11D4-BD0D-0080C73C8881</GuidValue>
167 <HelpText/>
168 </Entry>
169 <Entry Name="WinNtConsole">
170 <C_Name>gEfiWinNtConsoleGuid</C_Name>
171 <GuidValue>BA73672C-A5D3-11D4-BD00-0080C73C8881</GuidValue>
172 <HelpText/>
173 </Entry>
174 <Entry Name="WinNtMemory">
175 <C_Name>gEfiWinNtMemoryGuid</C_Name>
176 <GuidValue>99042912-122A-11D4-BD0D-0080C73C8881</GuidValue>
177 <HelpText/>
178 </Entry>
179 <Entry Name="WinNtCPUModel">
180 <C_Name>gEfiWinNtCPUModelGuid</C_Name>
181 <GuidValue>BEE9B6CE-2F8A-11D4-BD0D-0080C73C8881</GuidValue>
182 <HelpText/>
183 </Entry>
184 <Entry Name="WinNtCPUSpeed">
185 <C_Name>gEfiWinNtCPUSpeedGuid</C_Name>
186 <GuidValue>D4F29055-E1FB-11D4-BD0D-0080C73C8881</GuidValue>
187 <HelpText/>
188 </Entry>
189 <Entry Name="WinNPassThrough">
190 <C_Name>gEfiWinNtPassThroughGuid</C_Name>
191 <GuidValue>CC664EB8-3C24-4086-B6F6-34E856BCE36E</GuidValue>
192 <HelpText/>
193 </Entry>
194 <Entry Name="PcdHob">
195 <C_Name>gPcdHobGuid</C_Name>
196 <GuidValue>582E7CA1-68CD-4D44-B43B-F298ED587BA6</GuidValue>
197 <HelpText/>
198 </Entry>
199 </GuidDeclarations>
200 <ProtocolDeclarations>
201 <Entry Name="WinNtIo">
202 <C_Name>gEfiWinNtIoProtocolGuid</C_Name>
203 <GuidValue>96EB4AD6-A32A-11D4-BCFD-0080C73C8881</GuidValue>
204 <HelpText/>
205 </Entry>
206 <Entry Name="WinNtThunk">
207 <C_Name>gEfiWinNtThunkProtocolGuid</C_Name>
208 <GuidValue>58C518B1-76F3-11D4-BCEA-0080C73C8881</GuidValue>
209 <HelpText/>
210 </Entry>
211 </ProtocolDeclarations>
212 <PpiDeclarations>
213 <Entry Name="NtAutoScan">
214 <C_Name>gPeiNtAutoScanPpiGuid</C_Name>
215 <GuidValue>0DCE384D-007C-4BA5-94BD-0F6EB64D2AA9</GuidValue>
216 <HelpText/>
217 </Entry>
218 <Entry Name="NtFwh">
219 <C_Name>gNtFwhPpiGuid</C_Name>
220 <GuidValue>4E76928F-50AD-4334-B06B-A84213108A57</GuidValue>
221 <HelpText/>
222 </Entry>
223 <Entry Name="NtPeiLoadFile">
224 <C_Name>gNtPeiLoadFilePpiGuid</C_Name>
225 <GuidValue>FD0C65EB-0405-4CD2-8AEE-F400EF13BAC2</GuidValue>
226 <HelpText/>
227 </Entry>
228 <Entry Name="NtThunk">
229 <C_Name>gPeiNtThunkPpiGuid</C_Name>
230 <GuidValue>98C281E5-F906-43DD-A92B-B003BF2765DA</GuidValue>
231 <HelpText/>
232 </Entry>
233 </PpiDeclarations>
234 <PcdDeclarations>
235 <PcdEntry>
236 <C_Name>PcdWinNtPhysicalDisk</C_Name>
237 <Token>0x00001000</Token>
238 <TokenSpaceGuidCName>gEfiEdkNt32PkgTokenSpaceGuid</TokenSpaceGuidCName>
239 <DatumType>VOID*</DatumType>
240 <ValidUsage>DYNAMIC</ValidUsage>
241 <DefaultValue>L"E:RW;245760;512"</DefaultValue>
242 <HelpText>This PCD defines physical disk which will be simualted as a
243 harddisk in simulator. The item type of this PCD can only be "DYNAMIC".</HelpText>
244 </PcdEntry>
245 <PcdEntry>
246 <C_Name>PcdWinNtVirtualDisk</C_Name>
247 <Token>0x00001001</Token>
248 <TokenSpaceGuidCName>gEfiEdkNt32PkgTokenSpaceGuid</TokenSpaceGuidCName>
249 <DatumType>VOID*</DatumType>
250 <ValidUsage>DYNAMIC</ValidUsage>
251 <DefaultValue>L"FW;40960;512"</DefaultValue>
252 <HelpText>This PCD defines the devices which use a file to emulate a hard disk or
253 removable media device.The item type of this PCD can only be "DYNAMIC".</HelpText>
254 </PcdEntry>
255 <PcdEntry>
256 <C_Name>PcdWinNtSerialPort</C_Name>
257 <Token>0x00001002</Token>
258 <TokenSpaceGuidCName>gEfiEdkNt32PkgTokenSpaceGuid</TokenSpaceGuidCName>
259 <DatumType>VOID*</DatumType>
260 <ValidUsage>DYNAMIC</ValidUsage>
261 <DefaultValue>L"COM1!COM2"</DefaultValue>
262 <HelpText>This Pcd declares two serial port for simulated environment.
263 The item type of this PCD can only be "DYNAMIC".</HelpText>
264 </PcdEntry>
265 <PcdEntry>
266 <C_Name>PcdWinNtUga</C_Name>
267 <Token>0x00001003</Token>
268 <TokenSpaceGuidCName>gEfiEdkNt32PkgTokenSpaceGuid</TokenSpaceGuidCName>
269 <DatumType>VOID*</DatumType>
270 <ValidUsage>DYNAMIC</ValidUsage>
271 <DefaultValue>L"UGA Window 1!UGA Window 2"</DefaultValue>
272 <HelpText>This PCD declares the resolutions for the UGA windows.
273 The item type of this PCD can only be "DYNAMIC".</HelpText>
274 </PcdEntry>
275 <PcdEntry>
276 <C_Name>PcdWinNtFileSystem</C_Name>
277 <Token>0x00001004</Token>
278 <TokenSpaceGuidCName>gEfiEdkNt32PkgTokenSpaceGuid</TokenSpaceGuidCName>
279 <DatumType>VOID*</DatumType>
280 <ValidUsage>DYNAMIC</ValidUsage>
281 <DefaultValue>L".!..\\..\\..\\..\\..\\EdkShellBinPkg\\bin\\ia32\\Apps"</DefaultValue>
282 <HelpText>This PCD defines the windows directory who will be mounted as
283 harddisk in simulator.
284 The item type of this PCD can only be "DYNAMIC".</HelpText>
285 </PcdEntry>
286 <PcdEntry>
287 <C_Name>PcdWinNtMemorySize</C_Name>
288 <Token>0x00001005</Token>
289 <TokenSpaceGuidCName>gEfiEdkNt32PkgTokenSpaceGuid</TokenSpaceGuidCName>
290 <DatumType>VOID*</DatumType>
291 <ValidUsage>DYNAMIC</ValidUsage>
292 <DefaultValue>L"64!64"</DefaultValue>
293 <HelpText>This PCD defines the memory size of simulated machine. Simulator will allocate
294 the size of PcdWinNtMemorySize in windows platform.
295 The item type of this PCD can only be "DYNAMIC".</HelpText>
296 </PcdEntry>
297 <PcdEntry>
298 <C_Name>PcdWinNtBootMode</C_Name>
299 <Token>0x00001006</Token>
300 <TokenSpaceGuidCName>gEfiEdkNt32PkgTokenSpaceGuid</TokenSpaceGuidCName>
301 <DatumType>UINT32</DatumType>
302 <ValidUsage>FIXED_AT_BUILD PATCHABLE_IN_MODULE</ValidUsage>
303 <DefaultValue>1</DefaultValue>
304 <HelpText>This PCD defines the boot mode for simualtor.
305 The boot mode can be set as following value:
306 0x0: Boot with full configuration.
307 0x1: Boot with minimal configuration.
308 0x2: Boot assume no configuration changes.
309 0x3: Boot with full configuration plus diagnostics.
310 0x4: Boot with default settings.
311 0x5: Boot on S4 resume.
312 0x6: Boot on S5 resume.
313 0x10: Boot on S2 resume.
314 0x11: Boot on S3 resume.
315 0x12: Boot on flash update.
316 0x20: Boot in reovery mode.</HelpText>
317 </PcdEntry>
318 <PcdEntry>
319 <C_Name>PcdWinNtCpuModel</C_Name>
320 <Token>0x00001007</Token>
321 <TokenSpaceGuidCName>gEfiEdkNt32PkgTokenSpaceGuid</TokenSpaceGuidCName>
322 <DatumType>VOID*</DatumType>
323 <ValidUsage>DYNAMIC</ValidUsage>
324 <DefaultValue>L"Intel(R) Processor Model"</DefaultValue>
325 <HelpText>This PCD defines simulated CPU model string.
326 The item type of this PCD can only be "DYNAMIC".</HelpText>
327 </PcdEntry>
328 <PcdEntry>
329 <C_Name>PcdWinNtCpuSpeed</C_Name>
330 <Token>0x00001008</Token>
331 <TokenSpaceGuidCName>gEfiEdkNt32PkgTokenSpaceGuid</TokenSpaceGuidCName>
332 <DatumType>VOID*</DatumType>
333 <ValidUsage>DYNAMIC</ValidUsage>
334 <DefaultValue>L"3000"</DefaultValue>
335 <HelpText>This PCD defines simulated CPU speed string.
336 The item type of this PCD can only be "DYNAMIC".</HelpText>
337 </PcdEntry>
338 <PcdEntry>
339 <C_Name>PcdWinNtFirmwareVolume</C_Name>
340 <Token>0x00001009</Token>
341 <TokenSpaceGuidCName>gEfiEdkNt32PkgTokenSpaceGuid</TokenSpaceGuidCName>
342 <DatumType>VOID*</DatumType>
343 <ValidUsage>FIXED_AT_BUILD PATCHABLE_IN_MODULE</ValidUsage>
344 <DefaultValue>L"..\\Fv\\Fv_Recovery.fd"</DefaultValue>
345 <HelpText>This PCD defines the FD file windows path string. Simulator will load the FD file and execute.</HelpText>
346 </PcdEntry>
347 <PcdEntry>
348 <C_Name>PcdWinNtConsole</C_Name>
349 <Token>0x0000100a</Token>
350 <TokenSpaceGuidCName>gEfiEdkNt32PkgTokenSpaceGuid</TokenSpaceGuidCName>
351 <DatumType>VOID*</DatumType>
352 <ValidUsage>DYNAMIC</ValidUsage>
353 <DefaultValue>L"Bus Driver Console Window"</DefaultValue>
354 <HelpText>This PCD declares the title string of the text console window.
355 such as "My EFI Console".
356 The item type of this PCD can only be "DYNAMIC".</HelpText>
357 </PcdEntry>
358 <PcdEntry>
359 <C_Name>PcdNt32StatusCodeLibUseForPei</C_Name>
360 <Token>0x0000100b</Token>
361 <TokenSpaceGuidCName>gEfiEdkNt32PkgTokenSpaceGuid</TokenSpaceGuidCName>
362 <DatumType>BOOLEAN</DatumType>
363 <ValidUsage>FEATURE_FLAG</ValidUsage>
364 <DefaultValue>FALSE</DefaultValue>
365 <HelpText>Select which type of driver the library links against.</HelpText>
366 </PcdEntry>
367 <PcdEntry>
368 <C_Name>PcdWinNtMemorySizeForSecMain</C_Name>
369 <Token>0x0000100c</Token>
370 <TokenSpaceGuidCName>gEfiEdkNt32PkgTokenSpaceGuid</TokenSpaceGuidCName>
371 <DatumType>VOID*</DatumType>
372 <ValidUsage>FIXED_AT_BUILD PATCHABLE_IN_MODULE</ValidUsage>
373 <DefaultValue>L"64!64"</DefaultValue>
374 <HelpText>This PCD defines the memory size of simulated machine. Simulator will allocate
375 the size of PcdWinNtMemorySizeForSecMain in windows platform.</HelpText>
376 </PcdEntry>
377 <PcdEntry>
378 <C_Name>PcdWinNtGop</C_Name>
379 <Token>0x0000100d</Token>
380 <TokenSpaceGuidCName>gEfiEdkNt32PkgTokenSpaceGuid</TokenSpaceGuidCName>
381 <DatumType>VOID*</DatumType>
382 <ValidUsage>DYNAMIC</ValidUsage>
383 <DefaultValue>L"UGA Window 1!UGA Window 2"</DefaultValue>
384 <HelpText>This PCD declares the resolutions for the GOP windows.
385 The item type of this PCD can only be "DYNAMIC".</HelpText>
386 </PcdEntry>
387 </PcdDeclarations>
388 </PackageSurfaceArea>