Fix the wrong checking for UnixSerialIo
[mirror_edk2.git] / EdkUnixPkg / EdkUnixPkg.spd
CommitLineData
febc6433 1<?xml version="1.0" encoding="UTF-8"?>\r
c9093a06 2<!--\r
421954ef 3Copyright (c) 2006 - 2007, Intel Corporation\r
c9093a06 4All rights reserved. This program and the accompanying materials\r
5are licensed and made available under the terms and conditions of the BSD License\r
6which accompanies this distribution. The full text of the license may be found at\r
7http://opensource.org/licenses/bsd-license.php\r
8\r
9THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
10WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
11-->\r
12<PackageSurfaceArea xmlns="http://www.TianoCore.org/2006/Edk2.0">\r
13 <SpdHeader>\r
14 <PackageName>EdkUnixPkg</PackageName>\r
15 <GuidValue>f2805c44-8985-11db-9e98-0040d02b1835</GuidValue>\r
16 <Version>0.3</Version>\r
17 <Abstract>This is the Unix Emulation Environment Platform</Abstract>\r
18 <Description>Reference platform implementation using an emulator.</Description>\r
19 <Copyright>Copyright (c) 2006, Intel Corporation.</Copyright>\r
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>\r
26 <Specification>FRAMEWORK_BUILD_PACKAGING_SPECIFICATION 0x00000052</Specification>\r
27 </SpdHeader>\r
28 <PackageDefinitions>\r
29 <ReadOnly>true</ReadOnly>\r
30 <RePackage>false</RePackage>\r
31 </PackageDefinitions>\r
32 <LibraryClassDeclarations>\r
c9093a06 33 <LibraryClass Name="UnixLib">\r
34 <IncludeHeader>Include/Library/UnixLib.h</IncludeHeader>\r
35 <HelpText/>\r
36 </LibraryClass>\r
37 </LibraryClassDeclarations>\r
38 <IndustryStdIncludes>\r
39 <IndustryStdHeader Name="UnixInclude">\r
40 <IncludeHeader>Include/Common/UnixInclude.h</IncludeHeader>\r
41 <HelpText/>\r
42 </IndustryStdHeader>\r
c9093a06 43 <IndustryStdHeader Name="UnixLib">\r
f480b240 44 <IncludeHeader>Include/Library/UnixLib.h</IncludeHeader>\r
c9093a06 45 <HelpText/>\r
46 </IndustryStdHeader>\r
f480b240 47 <IndustryStdHeader Name="UnixAutoScan">\r
48 <IncludeHeader>Include/Ppi/UnixAutoScan.h</IncludeHeader>\r
c9093a06 49 <HelpText/>\r
50 </IndustryStdHeader>\r
f480b240 51 <IndustryStdHeader Name="UnixFwh">\r
52 <IncludeHeader>Include/Ppi/UnixFwh.h</IncludeHeader>\r
c9093a06 53 <HelpText/>\r
54 </IndustryStdHeader>\r
f480b240 55 <IndustryStdHeader Name="UnixPeiLoadFile">\r
56 <IncludeHeader>Include/Ppi/UnixPeiLoadFile.h</IncludeHeader>\r
c9093a06 57 <HelpText/>\r
58 </IndustryStdHeader>\r
f480b240 59 <IndustryStdHeader Name="UnixThunk">\r
60 <IncludeHeader>Include/Ppi/UnixThunk.h</IncludeHeader>\r
c9093a06 61 <HelpText/>\r
62 </IndustryStdHeader>\r
63 <IndustryStdHeader Name="UnixIo">\r
64 <IncludeHeader>Include/Protocol/UnixIo.h</IncludeHeader>\r
65 <HelpText/>\r
66 </IndustryStdHeader>\r
67 <IndustryStdHeader Name="UnixThunk">\r
68 <IncludeHeader>Include/Protocol/UnixThunk.h</IncludeHeader>\r
69 <HelpText/>\r
70 </IndustryStdHeader>\r
71 <IndustryStdHeader Name="UnixUgaIo">\r
72 <IncludeHeader>Include/Protocol/UnixUgaIo.h</IncludeHeader>\r
73 <HelpText/>\r
74 </IndustryStdHeader>\r
75 <IndustryStdHeader Name="FlashLayout">\r
76 <IncludeHeader>Include/FlashLayout.h</IncludeHeader>\r
77 <HelpText/>\r
78 </IndustryStdHeader>\r
79 <IndustryStdHeader Name="UnixDxe">\r
80 <IncludeHeader>Include/UnixDxe.h</IncludeHeader>\r
81 <HelpText/>\r
82 </IndustryStdHeader>\r
83 <IndustryStdHeader Name="UnixPeim">\r
84 <IncludeHeader>Include/UnixPeim.h</IncludeHeader>\r
85 <HelpText/>\r
86 </IndustryStdHeader>\r
87 </IndustryStdIncludes>\r
88 <MsaFiles>\r
89 <Filename>Dxe/UnixPlatform/MiscSubclass/MiscSubclassDriver.msa</Filename>\r
90 <Filename>Dxe/PlatformBds/PlatformBds.msa</Filename>\r
91 <Filename>Dxe/UnixThunk/Bus/BlockIo/UnixBlockIo.msa</Filename>\r
92 <Filename>Dxe/UnixThunk/Bus/Console/UnixConsole.msa</Filename>\r
93 <Filename>Dxe/UnixThunk/Bus/SimpleFileSystem/UnixSimpleFileSystem.msa</Filename>\r
94 <Filename>Dxe/UnixThunk/Bus/Uga/UnixUga.msa</Filename>\r
95 <Filename>Dxe/UnixThunk/Bus/UnixBusDriver/UnixBusDriver.msa</Filename>\r
96 <Filename>Dxe/UnixThunk/Chipset/Metronome/Metronome.msa</Filename>\r
97 <Filename>Dxe/UnixThunk/Chipset/RealTimeClock/RealTimeClock.msa</Filename>\r
98 <Filename>Dxe/UnixThunk/Chipset/Reset/Reset.msa</Filename>\r
99 <Filename>Dxe/UnixThunk/Chipset/Timer/Timer.msa</Filename>\r
100 <Filename>Dxe/UnixThunk/Cpu/Cpu.msa</Filename>\r
101 <Filename>Dxe/UnixThunk/UnixThunk/UnixThunk.msa</Filename>\r
102 <Filename>Library/DxeUnixLib/DxeUnixLib.msa</Filename>\r
c9093a06 103 <Filename>Library/EdkUnixPeiPeCoffGetEntryPointLib/EdkUnixPeiPeCoffGetEntryPointLib.msa</Filename>\r
104 <Filename>Library/UnixPeCoffLoaderLib/UnixPeCoffLoaderLib.msa</Filename>\r
318275b2 105 <Filename>Library/PeiUnixOemHookStatusCodeLib/PeiUnixOemHookStatusCodeLib.msa</Filename>\r
106 <Filename>Library/DxeUnixOemHookStatusCodeLib/DxeUnixOemHookStatusCodeLib.msa</Filename>\r
c9093a06 107 <Filename>Pei/AutoScan/UnixAutoScan.msa</Filename>\r
108 <Filename>Pei/BootMode/BootMode.msa</Filename>\r
109 <Filename>Pei/FirmwareVolume/UnixFwh.msa</Filename>\r
110 <Filename>Pei/FlashMap/FlashMap.msa</Filename>\r
111 <Filename>Pei/UnixStuff/UnixStuff.msa</Filename>\r
112 <Filename>RuntimeDxe/FvbServices/UnixFwh.msa</Filename>\r
113 <Filename>Sec/SecMain.msa</Filename>\r
114 </MsaFiles>\r
115 <PackageHeaders>\r
116 <IncludePkgHeader ModuleType="SEC">Include/UnixPeim.h</IncludePkgHeader>\r
117 <IncludePkgHeader ModuleType="PEIM">Include/UnixPeim.h</IncludePkgHeader>\r
118 <IncludePkgHeader ModuleType="DXE_DRIVER">Include/UnixDxe.h</IncludePkgHeader>\r
119 <IncludePkgHeader ModuleType="DXE_RUNTIME_DRIVER">Include/UnixDxe.h</IncludePkgHeader>\r
120 <IncludePkgHeader ModuleType="DXE_SMM_DRIVER">Include/UnixDxe.h</IncludePkgHeader>\r
121 <IncludePkgHeader ModuleType="DXE_SAL_DRIVER">Include/UnixDxe.h</IncludePkgHeader>\r
122 <IncludePkgHeader ModuleType="UEFI_DRIVER">Include/UnixDxe.h</IncludePkgHeader>\r
c9093a06 123 </PackageHeaders>\r
124 <GuidDeclarations>\r
125 <Entry Name="EdkUnixPkgTokenSpace">\r
126 <C_Name>gEfiEdkUnixPkgTokenSpaceGuid</C_Name>\r
127 <GuidValue>f2b6838c-8985-11db-9d1c-0040d02b1835</GuidValue>\r
128 <HelpText>All PCD define in EdkUnixPkg is in this token space scope</HelpText>\r
421954ef 129 </Entry>\r
c9093a06 130 <Entry Name="UnixVirtualDisks">\r
131 <C_Name>gEfiUnixVirtualDisksGuid</C_Name>\r
132 <GuidValue>f2ba331a-8985-11db-a406-0040d02b1835</GuidValue>\r
133 <HelpText/>\r
134 </Entry>\r
135 <Entry Name="UnixPhysicalDisks">\r
136 <C_Name>gEfiUnixPhysicalDisksGuid</C_Name>\r
137 <GuidValue>f2bdcc96-8985-11db-8719-0040d02b1835</GuidValue>\r
138 <HelpText/>\r
139 </Entry>\r
140 <Entry Name="UnixFileSystem">\r
141 <C_Name>gEfiUnixFileSystemGuid</C_Name>\r
142 <GuidValue>f2c16b9e-8985-11db-92c8-0040d02b1835</GuidValue>\r
143 <HelpText/>\r
144 </Entry>\r
145 <Entry Name="UnixUga">\r
146 <C_Name>gEfiUnixUgaGuid</C_Name>\r
147 <GuidValue>f2c8b80e-8985-11db-93f1-0040d02b1835</GuidValue>\r
148 <HelpText/>\r
149 </Entry>\r
150 <Entry Name="UnixConsole">\r
151 <C_Name>gEfiUnixConsoleGuid</C_Name>\r
152 <GuidValue>f2cc5d06-8985-11db-bb19-0040d02b1835</GuidValue>\r
153 <HelpText/>\r
154 </Entry>\r
155 <Entry Name="UnixMemory">\r
156 <C_Name>gEfiUnixMemoryGuid</C_Name>\r
157 <GuidValue>f2d006cc-8985-11db-a472-0040d02b1835</GuidValue>\r
158 <HelpText/>\r
159 </Entry>\r
160 <Entry Name="UnixCPUModel">\r
161 <C_Name>gEfiUnixCPUModelGuid</C_Name>\r
162 <GuidValue>f2d3b330-8985-11db-8aa3-0040d02b1835</GuidValue>\r
163 <HelpText/>\r
164 </Entry>\r
165 <Entry Name="UnixCPUSpeed">\r
166 <C_Name>gEfiUnixCPUSpeedGuid</C_Name>\r
167 <GuidValue>f2d74e5a-8985-11db-9705-0040d02b1835</GuidValue>\r
168 <HelpText/>\r
169 </Entry>\r
170 <Entry Name="PcdHob">\r
171 <C_Name>gPcdHobGuid</C_Name>\r
172 <GuidValue>f2de8f12-8985-11db-aabc-0040d02b1835</GuidValue>\r
173 <HelpText/>\r
174 </Entry>\r
175 </GuidDeclarations>\r
176 <ProtocolDeclarations>\r
177 <Entry Name="UnixIo">\r
178 <C_Name>gEfiUnixIoProtocolGuid</C_Name>\r
179 <GuidValue>f2e23f54-8985-11db-ac79-0040d02b1835</GuidValue>\r
180 <HelpText/>\r
181 </Entry>\r
182 <Entry Name="UnixUgaIo">\r
183 <C_Name>gEfiUnixUgaIoProtocolGuid</C_Name>\r
184 <GuidValue>f2e5e2c6-8985-11db-a191-0040d02b1835</GuidValue>\r
185 <HelpText/>\r
186 </Entry>\r
187 <Entry Name="UnixThunk">\r
188 <C_Name>gEfiUnixThunkProtocolGuid</C_Name>\r
189 <GuidValue>f2e98868-8985-11db-9a59-0040d02b1835</GuidValue>\r
190 <HelpText/>\r
191 </Entry>\r
192 </ProtocolDeclarations>\r
193 <PpiDeclarations>\r
194 <Entry Name="UnixAutoScan">\r
195 <C_Name>gPeiUnixAutoScanPpiGuid</C_Name>\r
196 <GuidValue>f2ed3d14-8985-11db-b057-0040d02b1835</GuidValue>\r
197 <HelpText/>\r
198 </Entry>\r
199 <Entry Name="UnixFwh">\r
200 <C_Name>gUnixFwhPpiGuid</C_Name>\r
201 <GuidValue>f2f0dc30-8985-11db-a15b-0040d02b1835</GuidValue>\r
202 <HelpText/>\r
203 </Entry>\r
204 <Entry Name="UnixPeiLoadFile">\r
205 <C_Name>gUnixPeiLoadFilePpiGuid</C_Name>\r
206 <GuidValue>f2f48768-8985-11db-b8da-0040d02b1835</GuidValue>\r
207 <HelpText/>\r
208 </Entry>\r
209 <Entry Name="UnixThunk">\r
210 <C_Name>gPeiUnixThunkPpiGuid</C_Name>\r
211 <GuidValue>f2f830f2-8985-11db-806b-0040d02b1835</GuidValue>\r
212 <HelpText/>\r
213 </Entry>\r
214 </PpiDeclarations>\r
215 <PcdDeclarations>\r
216 <PcdEntry>\r
217 <C_Name>PcdUnixPhysicalDisk</C_Name>\r
218 <Token>0x00001000</Token>\r
219 <TokenSpaceGuidCName>gEfiEdkUnixPkgTokenSpaceGuid</TokenSpaceGuidCName>\r
220 <DatumType>VOID*</DatumType>\r
221 <ValidUsage>DYNAMIC</ValidUsage>\r
222 <DefaultValue>L"E:RW;245760;512"</DefaultValue>\r
223 <HelpText>This PCD defines physical disk which will be simualted as a \r
224 harddisk in simulator. The item type of this PCD can only be "DYNAMIC".</HelpText>\r
225 </PcdEntry>\r
226 <PcdEntry>\r
227 <C_Name>PcdUnixVirtualDisk</C_Name>\r
228 <Token>0x00001001</Token>\r
229 <TokenSpaceGuidCName>gEfiEdkUnixPkgTokenSpaceGuid</TokenSpaceGuidCName>\r
230 <DatumType>VOID*</DatumType>\r
231 <ValidUsage>DYNAMIC</ValidUsage>\r
232 <DefaultValue>L"FW;40960;512"</DefaultValue>\r
233 <HelpText>This PCD defines the devices which use a file to emulate a hard disk or \r
234 removable media device.The item type of this PCD can only be "DYNAMIC".</HelpText>\r
235 </PcdEntry>\r
236 <PcdEntry>\r
237 <C_Name>PcdUnixUga</C_Name>\r
238 <Token>0x00001003</Token>\r
239 <TokenSpaceGuidCName>gEfiEdkUnixPkgTokenSpaceGuid</TokenSpaceGuidCName>\r
240 <DatumType>VOID*</DatumType>\r
241 <ValidUsage>DYNAMIC</ValidUsage>\r
242 <DefaultValue>L"UGA Window"</DefaultValue>\r
243 <HelpText>This PCD declares the resolutions for the UGA windows.\r
244 The item type of this PCD can only be "DYNAMIC".</HelpText>\r
245 </PcdEntry>\r
246 <PcdEntry>\r
247 <C_Name>PcdUnixFileSystem</C_Name>\r
248 <Token>0x00001004</Token>\r
249 <TokenSpaceGuidCName>gEfiEdkUnixPkgTokenSpaceGuid</TokenSpaceGuidCName>\r
250 <DatumType>VOID*</DatumType>\r
251 <ValidUsage>DYNAMIC</ValidUsage>\r
252 <DefaultValue>L".!..\\..\\..\\..\\..\\EdkShellBinPkg\\bin\\ia32\\Apps"</DefaultValue>\r
377fc2ae 253 <HelpText>This PCD defines the host directory who will be mounted as \r
c9093a06 254 harddisk in simulator.\r
255 The item type of this PCD can only be "DYNAMIC".</HelpText>\r
256 </PcdEntry>\r
257 <PcdEntry>\r
258 <C_Name>PcdUnixMemorySize</C_Name>\r
259 <Token>0x00001005</Token>\r
260 <TokenSpaceGuidCName>gEfiEdkUnixPkgTokenSpaceGuid</TokenSpaceGuidCName>\r
261 <DatumType>VOID*</DatumType>\r
262 <ValidUsage>DYNAMIC</ValidUsage>\r
263 <DefaultValue>L"64!64"</DefaultValue>\r
264 <HelpText>This PCD defines the memory size of simulated machine. Simulator will allocate\r
377fc2ae 265 the size of PcdUnixMemorySize in host platform.\r
c9093a06 266 The item type of this PCD can only be "DYNAMIC".</HelpText>\r
267 </PcdEntry>\r
268 <PcdEntry>\r
269 <C_Name>PcdUnixBootMode</C_Name>\r
270 <Token>0x00001006</Token>\r
271 <TokenSpaceGuidCName>gEfiEdkUnixPkgTokenSpaceGuid</TokenSpaceGuidCName>\r
272 <DatumType>UINT32</DatumType>\r
273 <ValidUsage>FIXED_AT_BUILD PATCHABLE_IN_MODULE</ValidUsage>\r
274 <DefaultValue>1</DefaultValue>\r
275 <HelpText>This PCD defines the boot mode for simualtor. \r
276 The boot mode can be set as following value:\r
277 0x0: Boot with full configuration.\r
278 0x1: Boot with minimal configuration.\r
279 0x2: Boot assume no configuration changes.\r
280 0x3: Boot with full configuration plus diagnostics.\r
281 0x4: Boot with default settings.\r
282 0x5: Boot on S4 resume.\r
283 0x6: Boot on S5 resume.\r
284 0x10: Boot on S2 resume. \r
285 0x11: Boot on S3 resume.\r
286 0x12: Boot on flash update.\r
287 0x20: Boot in reovery mode.</HelpText>\r
288 </PcdEntry>\r
289 <PcdEntry>\r
290 <C_Name>PcdUnixCpuModel</C_Name>\r
291 <Token>0x00001007</Token>\r
292 <TokenSpaceGuidCName>gEfiEdkUnixPkgTokenSpaceGuid</TokenSpaceGuidCName>\r
293 <DatumType>VOID*</DatumType>\r
294 <ValidUsage>DYNAMIC</ValidUsage>\r
295 <DefaultValue>L"Intel(R) Processor Model"</DefaultValue>\r
296 <HelpText>This PCD defines simulated CPU model string.\r
297 The item type of this PCD can only be "DYNAMIC".</HelpText>\r
298 </PcdEntry>\r
299 <PcdEntry>\r
300 <C_Name>PcdUnixCpuSpeed</C_Name>\r
301 <Token>0x00001008</Token>\r
302 <TokenSpaceGuidCName>gEfiEdkUnixPkgTokenSpaceGuid</TokenSpaceGuidCName>\r
303 <DatumType>VOID*</DatumType>\r
304 <ValidUsage>DYNAMIC</ValidUsage>\r
305 <DefaultValue>L"3000"</DefaultValue>\r
306 <HelpText>This PCD defines simulated CPU speed string.\r
307 The item type of this PCD can only be "DYNAMIC".</HelpText>\r
308 </PcdEntry>\r
309 <PcdEntry>\r
310 <C_Name>PcdUnixFirmwareVolume</C_Name>\r
311 <Token>0x00001009</Token>\r
312 <TokenSpaceGuidCName>gEfiEdkUnixPkgTokenSpaceGuid</TokenSpaceGuidCName>\r
313 <DatumType>VOID*</DatumType>\r
314 <ValidUsage>FIXED_AT_BUILD PATCHABLE_IN_MODULE</ValidUsage>\r
315 <DefaultValue>L"..\\Fv\\Fv_Recovery.fd"</DefaultValue>\r
377fc2ae 316 <HelpText>This PCD defines the FD file path string. Simulator will load the FD file and execute.</HelpText>\r
c9093a06 317 </PcdEntry>\r
318 <PcdEntry>\r
319 <C_Name>PcdUnixConsole</C_Name>\r
320 <Token>0x0000100a</Token>\r
321 <TokenSpaceGuidCName>gEfiEdkUnixPkgTokenSpaceGuid</TokenSpaceGuidCName>\r
322 <DatumType>VOID*</DatumType>\r
323 <ValidUsage>DYNAMIC</ValidUsage>\r
324 <DefaultValue>L"Bus Driver Console Window"</DefaultValue>\r
325 <HelpText>This PCD declares the title string of the text console window. \r
326 such as "My EFI Console".\r
327 The item type of this PCD can only be "DYNAMIC".</HelpText>\r
328 </PcdEntry>\r
c9093a06 329 <PcdEntry>\r
330 <C_Name>PcdUnixMemorySizeForSecMain</C_Name>\r
331 <Token>0x0000100c</Token>\r
332 <TokenSpaceGuidCName>gEfiEdkUnixPkgTokenSpaceGuid</TokenSpaceGuidCName>\r
333 <DatumType>VOID*</DatumType>\r
334 <ValidUsage>FIXED_AT_BUILD PATCHABLE_IN_MODULE</ValidUsage>\r
335 <DefaultValue>L"64!64"</DefaultValue>\r
336 <HelpText>This PCD defines the memory size of simulated machine. Simulator will allocate\r
377fc2ae 337 the size of PcdUnixMemorySizeForSecMain in host platform.</HelpText>\r
c9093a06 338 </PcdEntry>\r
339 </PcdDeclarations>\r
340</PackageSurfaceArea>