]> git.proxmox.com Git - mirror_edk2.git/blobdiff - EdkModulePkg/Core/DxeIplPeim/DxeIpl.msa
Set default value of DxeIplBuildShareCodeHob to FALSE.
[mirror_edk2.git] / EdkModulePkg / Core / DxeIplPeim / DxeIpl.msa
index 2aed7a1460371de7951e08d044d997efda3eb91f..20dc8bc751818613baf9835b5d78deedd6091ec1 100644 (file)
@@ -1,21 +1,13 @@
 <?xml version="1.0" encoding="UTF-8"?>\r
-<!--Copyright (c) 2006, Intel Corporation
-All rights reserved. This program and the accompanying materials
-are licensed and made available under the terms and conditions of the BSD License
-which accompanies this distribution.  The full text of the license may be found at
-http://opensource.org/licenses/bsd-license.php
-
-THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
-WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.-->\r
-<ModuleSurfaceArea  xmlns="http://www.TianoCore.org/2006/Edk2.0">\r
+<ModuleSurfaceArea xmlns="http://www.TianoCore.org/2006/Edk2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">\r
   <MsaHeader>\r
     <ModuleName>DxeIpl</ModuleName>\r
     <ModuleType>PEIM</ModuleType>\r
     <GuidValue>86D70125-BAA3-4296-A62F-602BEBBB9081</GuidValue>\r
     <Version>1.0</Version>\r
     <Abstract>Component description file for DxeIpl module</Abstract>\r
-    <Description>FIX ME!</Description>\r
-    <Copyright>Copyright (c) 2004-2006, Intel Corporation</Copyright>\r
+    <Description>The responsibility of this module is to load the DXE Core from a Firmware Volume.  This implementation i used to load a 32-bit DXE Core.</Description>\r
+    <Copyright>Copyright (c) 2006, Intel Corporation</Copyright>\r
     <License>All rights reserved. This program and the accompanying materials
       are licensed and made available under the terms and conditions of the BSD License
       which accompanies this distribution.  The full text of the license may be found at
@@ -75,70 +67,104 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.-->
     <LibraryClass Usage="ALWAYS_CONSUMED">\r
       <Keyword>MemoryAllocationLib</Keyword>\r
     </LibraryClass>\r
+    <LibraryClass Usage="ALWAYS_CONSUMED">\r
+      <Keyword>PcdLib</Keyword>\r
+    </LibraryClass>\r
   </LibraryClassDefinitions>\r
   <SourceFiles>\r
     <Filename>DxeLoad.c</Filename>\r
+    <Filename>DxeIpl.h</Filename>\r
     <Filename>DxeIpl.dxs</Filename>\r
-    <Filename SupArchList="IA32">Ia32/ImageRead.c</Filename>\r
+    <Filename SupArchList="IA32 X64 EBC">Ia32/ImageRead.c</Filename>\r
     <Filename SupArchList="IA32">Ia32/DxeLoadFunc.c</Filename>\r
-    <Filename SupArchList="X64">Ia32/ImageRead.c</Filename>\r
-    <Filename SupArchList="X64">Ia32/DxeLoadFunc.c</Filename>\r
+    <Filename SupArchList="IA32">Ia32/LongMode.asm</Filename>\r
+    <Filename ToolChainFamily="GCC" SupArchList="IA32">Ia32/LongMode.S</Filename>\r
+    <Filename SupArchList="IA32">Ia32/VirtualMemory.c</Filename>\r
+    <Filename SupArchList="IA32">Ia32/VirtualMemory.h</Filename>\r
+    <Filename SupArchList="X64 EBC">X64/DxeLoadFunc.c</Filename>\r
     <Filename SupArchList="IPF">ipf/ImageRead.c</Filename>\r
     <Filename SupArchList="IPF">ipf/DxeLoadFunc.c</Filename>\r
-    <Filename SupArchList="EBC">Ia32/ImageRead.c</Filename>\r
-    <Filename SupArchList="EBC">Ia32/DxeLoadFunc.c</Filename>\r
   </SourceFiles>\r
   <PackageDependencies>\r
     <Package PackageGuid="5e0e9358-46b6-4ae2-8218-4ab8b9bbdcec"/>\r
-    <Package PackageGuid="B6EC423C-21D2-490D-85C6-DD5864EAA674"/>\r
+    <Package PackageGuid="68169ab0-d41b-4009-9060-292c253ac43d"/>\r
   </PackageDependencies>\r
   <Protocols>\r
     <Protocol Usage="SOMETIMES_PRODUCED">\r
-      <ProtocolCName>Decompress</ProtocolCName>\r
+      <ProtocolCName>gEfiDecompressProtocolGuid</ProtocolCName>\r
     </Protocol>\r
     <Protocol Usage="SOMETIMES_PRODUCED">\r
-      <ProtocolCName>TianoDecompress</ProtocolCName>\r
+      <ProtocolCName>gEfiTianoDecompressProtocolGuid</ProtocolCName>\r
     </Protocol>\r
     <Protocol Usage="SOMETIMES_PRODUCED">\r
-      <ProtocolCName>CustomizedDecompress</ProtocolCName>\r
+      <ProtocolCName>gEfiCustomizedDecompressProtocolGuid</ProtocolCName>\r
     </Protocol>\r
   </Protocols>\r
   <PPIs>\r
     <Ppi Usage="SOMETIMES_PRODUCED">\r
-      <PpiCName>DxeIpl</PpiCName>\r
+      <PpiCName>gEfiDxeIplPpiGuid</PpiCName>\r
     </Ppi>\r
     <Ppi Usage="SOMETIMES_PRODUCED">\r
-      <PpiCName>FvFileLoader</PpiCName>\r
+      <PpiCName>gEfiPeiFvFileLoaderPpiGuid</PpiCName>\r
     </Ppi>\r
     <Ppi Usage="SOMETIMES_PRODUCED">\r
-      <PpiCName>EndOfPeiSignal</PpiCName>\r
+      <PpiCName>gEfiEndOfPeiSignalPpiGuid</PpiCName>\r
     </Ppi>\r
     <Ppi Usage="SOMETIMES_CONSUMED">\r
-      <PpiCName>RecoveryModule</PpiCName>\r
+      <PpiCName>gEfiPeiRecoveryModulePpiGuid</PpiCName>\r
     </Ppi>\r
     <Ppi Usage="SOMETIMES_CONSUMED">\r
-      <PpiCName>S3Resume</PpiCName>\r
+      <PpiCName>gEfiPeiS3ResumePpiGuid</PpiCName>\r
     </Ppi>\r
     <Ppi Usage="SOMETIMES_CONSUMED">\r
-      <PpiCName>SectionExtraction</PpiCName>\r
+      <PpiCName>gEfiPeiSectionExtractionPpiGuid</PpiCName>\r
     </Ppi>\r
     <Ppi Usage="SOMETIMES_CONSUMED">\r
-      <PpiCName>Security</PpiCName>\r
-    </Ppi>\r
-    <Ppi Usage="PRIVATE">\r
-      <PpiCName>PeiInMemory</PpiCName>\r
+      <PpiCName>gEfiPeiSecurityPpiGuid</PpiCName>\r
     </Ppi>\r
   </PPIs>\r
   <Guids>\r
     <GuidCNames Usage="SOMETIMES_CONSUMED">\r
-      <GuidCName>PeiPeCoffLoader</GuidCName>\r
+      <GuidCName>gEfiPeiPeCoffLoaderGuid</GuidCName>\r
     </GuidCNames>\r
   </Guids>\r
   <Externs>\r
-    <Specification>EFI_SPECIFICATION_VERSION 0x00000000</Specification>\r
-    <Specification>EDK_RELEASE_VERSION 0x00090000</Specification>\r
+    <Specification>EFI_SPECIFICATION_VERSION 0x00020000</Specification>\r
+    <Specification>EDK_RELEASE_VERSION 0x00020000</Specification>\r
     <Extern>\r
       <ModuleEntryPoint>PeimInitializeDxeIpl</ModuleEntryPoint>\r
     </Extern>\r
   </Externs>\r
+  <PcdCoded>\r
+    <PcdEntry PcdItemType="FEATURE_FLAG" Usage="ALWAYS_CONSUMED">\r
+      <C_Name>PcdDxeIplSwitchToLongMode</C_Name>\r
+      <TokenSpaceGuidCName>gEfiEdkModulePkgTokenSpaceGuid</TokenSpaceGuidCName>\r
+      <DefaultValue>TRUE</DefaultValue>\r
+      <HelpText>If this feature is enabled, then the DXE IPL will load a 64-bit DxeCore.</HelpText>\r
+    </PcdEntry>\r
+    <PcdEntry PcdItemType="FEATURE_FLAG" Usage="ALWAYS_CONSUMED">\r
+      <C_Name>PcdDxeIplBuildShareCodeHobs</C_Name>\r
+      <TokenSpaceGuidCName>gEfiEdkModulePkgTokenSpaceGuid</TokenSpaceGuidCName>\r
+      <DefaultValue>TRUE</DefaultValue>\r
+      <HelpText>If this feature is enabled, DXE IPL will build a series of HOBs to share code with DXE Core.</HelpText>\r
+    </PcdEntry>\r
+    <PcdEntry PcdItemType="FEATURE_FLAG" Usage="ALWAYS_CONSUMED">\r
+      <C_Name>PcdDxeIplSupportEfiDecompress</C_Name>\r
+      <TokenSpaceGuidCName>gEfiEdkModulePkgTokenSpaceGuid</TokenSpaceGuidCName>\r
+      <DefaultValue>FALSE</DefaultValue>\r
+      <HelpText>If this feature is enabled, then the DXE IPL must support decompressing files compressed with the EFI Compression algorithm</HelpText>\r
+    </PcdEntry>\r
+    <PcdEntry PcdItemType="FEATURE_FLAG" Usage="ALWAYS_CONSUMED">\r
+      <C_Name>PcdDxeIplSupportTianoDecompress</C_Name>\r
+      <TokenSpaceGuidCName>gEfiEdkModulePkgTokenSpaceGuid</TokenSpaceGuidCName>\r
+      <DefaultValue>TRUE</DefaultValue>\r
+      <HelpText>If this feature is enabled, then the DXE IPL must support decompressing files compressed with the Tiano Compression algorithm</HelpText>\r
+    </PcdEntry>\r
+    <PcdEntry PcdItemType="FEATURE_FLAG" Usage="ALWAYS_CONSUMED">\r
+      <C_Name>PcdDxeIplSupportCustomDecompress</C_Name>\r
+      <TokenSpaceGuidCName>gEfiEdkModulePkgTokenSpaceGuid</TokenSpaceGuidCName>\r
+      <DefaultValue>TRUE</DefaultValue>\r
+      <HelpText>If this feature is enabled, then the DXE IPL must support decompressing files compressed with the Custom Compression algorithm</HelpText>\r
+    </PcdEntry>\r
+  </PcdCoded>\r
 </ModuleSurfaceArea>
\ No newline at end of file