]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdePkg/MdePkg.fpd
Add IPF support in Base IO Lib, and related change in fpd file
[mirror_edk2.git] / MdePkg / MdePkg.fpd
index 8d3e78a246b6c5c3570199c4fe9d7861f9c92f0e..f7188e114fa5812d3d201627e2e2ad40f132d156 100644 (file)
@@ -1,15 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!--
-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.
--->
-<PlatformSurfaceArea xmlns="http://www.TianoCore.org/2006/Edk2.0">
+<PlatformSurfaceArea xmlns="http://www.TianoCore.org/2006/Edk2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
   <PlatformHeader>
     <PlatformName>MdePkgAll</PlatformName>
     <GuidValue>0fe7dd3e-0969-48c3-8cd2-de9a190088e2</GuidValue>
@@ -28,9 +18,12 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
   </PlatformHeader>
   <PlatformDefinitions>
     <SupportedArchitectures>IA32 X64 IPF EBC</SupportedArchitectures>
-    <BuildTargets>DEBUG</BuildTargets>
+    <BuildTargets>DEBUG RELEASE</BuildTargets>\r
     <IntermediateDirectories>UNIFIED</IntermediateDirectories>
     <OutputDirectory>Build/Mde</OutputDirectory>
+    <SkuInfo>
+      <UiSkuName SkuID="0">DEFAULT</UiSkuName>
+    </SkuInfo>
   </PlatformDefinitions>
   <Flash>
     <FlashDefinitionFile>dummy.fdf</FlashDefinitionFile>
@@ -107,12 +100,32 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
       </ModuleSaBuildOptions>
     </ModuleSA>
     <ModuleSA SupArchList="IA32" PackageGuid="5e0e9358-46b6-4ae2-8218-4ab8b9bbdcec" ModuleGuid="926c9cd0-4bb8-479b-9ac4-8a2a23f85307">
+      <PcdBuildDefinition>
+        <PcdData ItemType="FIXED_AT_BUILD">
+          <C_Name>PcdIoBlockBaseAddressForIpf</C_Name>
+          <Token>0x0000000c</Token>
+          <TokenSpaceGuidCName>gEfiMdePkgTokenSpaceGuid</TokenSpaceGuidCName>
+          <DatumType>UINT64</DatumType>
+          <MaxDatumSize>8</MaxDatumSize>
+          <Value>0x0ffffc000000</Value>
+        </PcdData>
+      </PcdBuildDefinition>
       <ModuleSaBuildOptions>
         <FvBinding>NULL</FvBinding>
         <FfsFormatKey>LIBRARY</FfsFormatKey>
       </ModuleSaBuildOptions>
     </ModuleSA>
     <ModuleSA SupArchList="IA32" PackageGuid="5e0e9358-46b6-4ae2-8218-4ab8b9bbdcec" ModuleGuid="b5a05743-9b71-489b-a0ed-a0eb3950d23b">
+      <PcdBuildDefinition>
+        <PcdData ItemType="FIXED_AT_BUILD">
+          <C_Name>PcdFSBClock</C_Name>
+          <Token>0x0000000c</Token>
+          <TokenSpaceGuidCName>gEfiMdePkgTokenSpaceGuid</TokenSpaceGuidCName>
+          <DatumType>UINT32</DatumType>
+          <MaxDatumSize>4</MaxDatumSize>
+          <Value>200000000</Value>
+        </PcdData>
+      </PcdBuildDefinition>
       <ModuleSaBuildOptions>
         <FvBinding>NULL</FvBinding>
         <FfsFormatKey>LIBRARY</FfsFormatKey>
@@ -388,22 +401,6 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
         <FfsFormatKey>LIBRARY</FfsFormatKey>
       </ModuleSaBuildOptions>
     </ModuleSA>
-    <ModuleSA SupArchList="IA32" PackageGuid="5e0e9358-46b6-4ae2-8218-4ab8b9bbdcec" ModuleGuid="55c61087-7367-4546-bc32-4937c5e6aff3">
-      <PcdBuildDefinition>
-        <PcdData ItemType="FIXED_AT_BUILD">
-          <C_Name>PcdReportStatusCodePropertyMask</C_Name>
-          <Token>0x00000007</Token>
-          <TokenSpaceGuidCName>gEfiMdePkgTokenSpaceGuid</TokenSpaceGuidCName>
-          <DatumType>UINT8</DatumType>
-          <MaxDatumSize>1</MaxDatumSize>
-          <Value>0x07</Value>
-        </PcdData>
-      </PcdBuildDefinition>
-      <ModuleSaBuildOptions>
-        <FvBinding>NULL</FvBinding>
-        <FfsFormatKey>LIBRARY</FfsFormatKey>
-      </ModuleSaBuildOptions>
-    </ModuleSA>
     <ModuleSA SupArchList="IA32" PackageGuid="5e0e9358-46b6-4ae2-8218-4ab8b9bbdcec" ModuleGuid="b6e9a733-eb75-41b6-b30c-009bcf3801c8">
       <PcdBuildDefinition>
         <PcdData ItemType="FIXED_AT_BUILD">
@@ -676,13 +673,17 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
         <FfsFormatKey>LIBRARY</FfsFormatKey>
       </ModuleSaBuildOptions>
     </ModuleSA>
-    <ModuleSA SupArchList="IPF" PackageGuid="5e0e9358-46b6-4ae2-8218-4ab8b9bbdcec" ModuleGuid="926c9cd0-4bb8-479b-9ac4-8a2a23f85307">
-      <ModuleSaBuildOptions>
-        <FvBinding>NULL</FvBinding>
-        <FfsFormatKey>LIBRARY</FfsFormatKey>
-      </ModuleSaBuildOptions>
-    </ModuleSA>
     <ModuleSA SupArchList="IPF" PackageGuid="5e0e9358-46b6-4ae2-8218-4ab8b9bbdcec" ModuleGuid="b5a05743-9b71-489b-a0ed-a0eb3950d23b">
+      <PcdBuildDefinition>
+        <PcdData ItemType="FIXED_AT_BUILD">
+          <C_Name>PcdFSBClock</C_Name>
+          <Token>0x0000000c</Token>
+          <TokenSpaceGuidCName>gEfiMdePkgTokenSpaceGuid</TokenSpaceGuidCName>
+          <DatumType>UINT32</DatumType>
+          <MaxDatumSize>4</MaxDatumSize>
+          <Value>200000000</Value>
+        </PcdData>
+      </PcdBuildDefinition>
       <ModuleSaBuildOptions>
         <FvBinding>NULL</FvBinding>
         <FfsFormatKey>LIBRARY</FfsFormatKey>
@@ -958,22 +959,6 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
         <FfsFormatKey>LIBRARY</FfsFormatKey>
       </ModuleSaBuildOptions>
     </ModuleSA>
-    <ModuleSA SupArchList="IPF" PackageGuid="5e0e9358-46b6-4ae2-8218-4ab8b9bbdcec" ModuleGuid="55c61087-7367-4546-bc32-4937c5e6aff3">
-      <PcdBuildDefinition>
-        <PcdData ItemType="FIXED_AT_BUILD">
-          <C_Name>PcdReportStatusCodePropertyMask</C_Name>
-          <Token>0x00000007</Token>
-          <TokenSpaceGuidCName>gEfiMdePkgTokenSpaceGuid</TokenSpaceGuidCName>
-          <DatumType>UINT8</DatumType>
-          <MaxDatumSize>1</MaxDatumSize>
-          <Value>0x07</Value>
-        </PcdData>
-      </PcdBuildDefinition>
-      <ModuleSaBuildOptions>
-        <FvBinding>NULL</FvBinding>
-        <FfsFormatKey>LIBRARY</FfsFormatKey>
-      </ModuleSaBuildOptions>
-    </ModuleSA>
     <ModuleSA SupArchList="IPF" PackageGuid="5e0e9358-46b6-4ae2-8218-4ab8b9bbdcec" ModuleGuid="b6e9a733-eb75-41b6-b30c-009bcf3801c8">
       <PcdBuildDefinition>
         <PcdData ItemType="FIXED_AT_BUILD">
@@ -1253,12 +1238,32 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
       </ModuleSaBuildOptions>
     </ModuleSA>
     <ModuleSA SupArchList="X64" PackageGuid="5e0e9358-46b6-4ae2-8218-4ab8b9bbdcec" ModuleGuid="926c9cd0-4bb8-479b-9ac4-8a2a23f85307">
+      <PcdBuildDefinition>
+        <PcdData ItemType="FIXED_AT_BUILD">
+          <C_Name>PcdIoBlockBaseAddressForIpf</C_Name>
+          <Token>0x0000000c</Token>
+          <TokenSpaceGuidCName>gEfiMdePkgTokenSpaceGuid</TokenSpaceGuidCName>
+          <DatumType>UINT64</DatumType>
+          <MaxDatumSize>8</MaxDatumSize>
+          <Value>0x0ffffc000000</Value>
+        </PcdData>
+      </PcdBuildDefinition>
       <ModuleSaBuildOptions>
         <FvBinding>NULL</FvBinding>
         <FfsFormatKey>LIBRARY</FfsFormatKey>
       </ModuleSaBuildOptions>
     </ModuleSA>
     <ModuleSA SupArchList="X64" PackageGuid="5e0e9358-46b6-4ae2-8218-4ab8b9bbdcec" ModuleGuid="b5a05743-9b71-489b-a0ed-a0eb3950d23b">
+      <PcdBuildDefinition>
+        <PcdData ItemType="FIXED_AT_BUILD">
+          <C_Name>PcdFSBClock</C_Name>
+          <Token>0x0000000c</Token>
+          <TokenSpaceGuidCName>gEfiMdePkgTokenSpaceGuid</TokenSpaceGuidCName>
+          <DatumType>UINT32</DatumType>
+          <MaxDatumSize>4</MaxDatumSize>
+          <Value>200000000</Value>
+        </PcdData>
+      </PcdBuildDefinition>
       <ModuleSaBuildOptions>
         <FvBinding>NULL</FvBinding>
         <FfsFormatKey>LIBRARY</FfsFormatKey>
@@ -1534,22 +1539,6 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
         <FfsFormatKey>LIBRARY</FfsFormatKey>
       </ModuleSaBuildOptions>
     </ModuleSA>
-    <ModuleSA SupArchList="X64" PackageGuid="5e0e9358-46b6-4ae2-8218-4ab8b9bbdcec" ModuleGuid="55c61087-7367-4546-bc32-4937c5e6aff3">
-      <PcdBuildDefinition>
-        <PcdData ItemType="FIXED_AT_BUILD">
-          <C_Name>PcdReportStatusCodePropertyMask</C_Name>
-          <Token>0x00000007</Token>
-          <TokenSpaceGuidCName>gEfiMdePkgTokenSpaceGuid</TokenSpaceGuidCName>
-          <DatumType>UINT8</DatumType>
-          <MaxDatumSize>1</MaxDatumSize>
-          <Value>0x07</Value>
-        </PcdData>
-      </PcdBuildDefinition>
-      <ModuleSaBuildOptions>
-        <FvBinding>NULL</FvBinding>
-        <FfsFormatKey>LIBRARY</FfsFormatKey>
-      </ModuleSaBuildOptions>
-    </ModuleSA>
     <ModuleSA SupArchList="X64" PackageGuid="5e0e9358-46b6-4ae2-8218-4ab8b9bbdcec" ModuleGuid="b6e9a733-eb75-41b6-b30c-009bcf3801c8">
       <PcdBuildDefinition>
         <PcdData ItemType="FIXED_AT_BUILD">
@@ -1822,13 +1811,17 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
         <FfsFormatKey>LIBRARY</FfsFormatKey>
       </ModuleSaBuildOptions>
     </ModuleSA>
-    <ModuleSA SupArchList="EBC" PackageGuid="5e0e9358-46b6-4ae2-8218-4ab8b9bbdcec" ModuleGuid="926c9cd0-4bb8-479b-9ac4-8a2a23f85307">
-      <ModuleSaBuildOptions>
-        <FvBinding>NULL</FvBinding>
-        <FfsFormatKey>LIBRARY</FfsFormatKey>
-      </ModuleSaBuildOptions>
-    </ModuleSA>
     <ModuleSA SupArchList="EBC" PackageGuid="5e0e9358-46b6-4ae2-8218-4ab8b9bbdcec" ModuleGuid="b5a05743-9b71-489b-a0ed-a0eb3950d23b">
+      <PcdBuildDefinition>
+        <PcdData ItemType="FIXED_AT_BUILD">
+          <C_Name>PcdFSBClock</C_Name>
+          <Token>0x0000000c</Token>
+          <TokenSpaceGuidCName>gEfiMdePkgTokenSpaceGuid</TokenSpaceGuidCName>
+          <DatumType>UINT32</DatumType>
+          <MaxDatumSize>4</MaxDatumSize>
+          <Value>200000000</Value>
+        </PcdData>
+      </PcdBuildDefinition>
       <ModuleSaBuildOptions>
         <FvBinding>NULL</FvBinding>
         <FfsFormatKey>LIBRARY</FfsFormatKey>
@@ -2104,22 +2097,6 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
         <FfsFormatKey>LIBRARY</FfsFormatKey>
       </ModuleSaBuildOptions>
     </ModuleSA>
-    <ModuleSA SupArchList="EBC" PackageGuid="5e0e9358-46b6-4ae2-8218-4ab8b9bbdcec" ModuleGuid="55c61087-7367-4546-bc32-4937c5e6aff3">
-      <PcdBuildDefinition>
-        <PcdData ItemType="FIXED_AT_BUILD">
-          <C_Name>PcdReportStatusCodePropertyMask</C_Name>
-          <Token>0x00000007</Token>
-          <TokenSpaceGuidCName>gEfiMdePkgTokenSpaceGuid</TokenSpaceGuidCName>
-          <DatumType>UINT8</DatumType>
-          <MaxDatumSize>1</MaxDatumSize>
-          <Value>0x07</Value>
-        </PcdData>
-      </PcdBuildDefinition>
-      <ModuleSaBuildOptions>
-        <FvBinding>NULL</FvBinding>
-        <FfsFormatKey>LIBRARY</FfsFormatKey>
-      </ModuleSaBuildOptions>
-    </ModuleSA>
     <ModuleSA SupArchList="EBC" PackageGuid="5e0e9358-46b6-4ae2-8218-4ab8b9bbdcec" ModuleGuid="b6e9a733-eb75-41b6-b30c-009bcf3801c8">
       <PcdBuildDefinition>
         <PcdData ItemType="FIXED_AT_BUILD">
@@ -2330,227 +2307,135 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
     </ModuleSA>
   </FrameworkModules>
   <BuildOptions>
-    <Options>
-      <!-- MSFT tool chain options definition : IA32 -->
-      <Option ToolChainFamily="MSFT" SupArchList="IA32" ToolCode="CC">
-        "/nologo", "/W3", "/WX", "/GX", "/Gy", "/Gs-", "/c", "/D EFI32", "/D UNICODE", "/FI${DEST_DIR_DEBUG}/AutoGen.h"
-      </Option>
-      <Option ToolChainFamily="MSFT" SupArchList="IA32" ToolCode="SLINK"> "/NOLOGO" </Option>
-      <Option ToolChainFamily="MSFT" SupArchList="IA32" ToolCode="DLINK">
-        "/NOLOGO", "/NODEFAULTLIB", "/IGNORE:4086", "/MAP", "/OPT:REF", "/MACHINE:I386", "/ALIGN:32", "/DLL", "/LTCG", "/ENTRY:${ENTRYPOINT}", "/SUBSYSTEM:${SUBSYSTEM}"
-      </Option>
-      <Option ToolChainFamily="MSFT" SupArchList="IA32" ToolCode="ASM">
-        "/nologo", "/W3", "/WX", "/c", "/coff", "/DEFI32", "/Fl${DEST_DIR_OUTPUT}/${FILE_PATH}/${FILE_BASENAME}.lst"
-      </Option>
-      <Option ToolChainFamily="MSFT" SupArchList="IA32" ToolCode="ASMLINK"/>
-      <Option ToolChainFamily="MSFT" SupArchList="IA32" ToolCode="PP"> "/nologo", "/P", "/TC", "/FI${DEST_DIR_DEBUG}/AutoGen.h" </Option>
-      <Option ToolChainFamily="MSFT" SupArchList="IA32" ToolCode="ASL"> "/nologo" </Option>
-      
-      <!-- GCC tool chain options definition : IA32 -->
-      <Option ToolChainFamily="GCC" SupArchList="IA32" ToolCode="CC">
-        "-Os", "-fshort-wchar", "-fno-strict-aliasing", "-Wall", "-Werror", "-c", "-include ${DEST_DIR_DEBUG}/AutoGen.h"
-      </Option>
-      <Option ToolChainFamily="GCC" SupArchList="IA32" ToolCode="ASM"> "-c", "-imacros ${DEST_DIR_DEBUG}/AutoGen.h" </Option>
-      <Option ToolChainFamily="GCC" SupArchList="IA32" ToolCode="SLINK"> </Option>
-      <Option ToolChainFamily="GCC" SupArchList="IA32" ToolCode="DLINK">
-        "-nostdlib", "-O2", "--gc-sections", "--dll", "--export-all-symbols", "--entry _${ENTRYPOINT}"
-      </Option>
-      <!-- MSFT tool chain options definition : X64 -->
-      <Option ToolChainFamily="MSFT" SupArchList="X64" ToolCode="CC">
-        "/nologo", "/X", "/W4", "/WX", "/Gy", "/c", "/Gs8192", "/GS-", "/D EFIx64", "/O1i", "/FAcs", "/FI${DEST_DIR_DEBUG}/AutoGen.h"
-      </Option>
-      <Option ToolChainFamily="MSFT" SupArchList="X64" ToolCode="SLINK">
-        "/NOLOGO"
-      </Option>
-      <Option ToolChainFamily="MSFT" SupArchList="X64" ToolCode="DLINK">
-        "/NOLOGO", "/Machine:AMD64", "/ALIGN:32", "/DLL", "/NODEFAULTLIB", "/OPT:REF", "/ENTRY:${ENTRYPOINT}", "/SUBSYSTEM:${SUBSYSTEM}"
-      </Option>
-      <Option ToolChainFamily="MSFT" SupArchList="X64" ToolCode="ASM">
-        "/nologo", "/W3", "/WX", "/c", "/DEFI32"
-      </Option>
-      <Option ToolChainFamily="MSFT" SupArchList="X64" ToolCode="ASMLINK"> </Option>
-      <Option ToolChainFamily="MSFT" SupArchList="X64" ToolCode="PP">
-        "/nologo", "/P", "/TC", "/FI${DEST_DIR_DEBUG}/AutoGen.h"
-      </Option>
-      <Option ToolChainFamily="MSFT" SupArchList="X64" ToolCode="ASL"> "/nologo" </Option>
-      
-      <!-- MSFT tool chain options definition : IPF -->
-      <Option ToolChainFamily="MSFT" SupArchList="IPF" ToolCode="CC">
-        "/nologo", "/W4", "/WX", "/EHsc", "/Gy", "/c", "/GS-", "/D EFI64", "/O1i", "/FI${DEST_DIR_DEBUG}/AutoGen.h"
-      </Option>
-      <Option ToolChainFamily="MSFT" SupArchList="IPF" ToolCode="SLINK"> "/NOLOGO" </Option>
-      <Option ToolChainFamily="MSFT" SupArchList="IPF" ToolCode="DLINK">
-        "/NOLOGO", "/NODEFAULTLIB", "/IGNORE:4086", "/MAP", "/OPT:REF", "/MACHINE:IA64", "/ENTRY:${ENTRYPOINT}", "/SUBSYSTEM:${SUBSYSTEM}"
-      </Option>
-      <Option ToolChainFamily="MSFT" SupArchList="IPF" ToolCode="ASM">
-        "-N us", "-X explicit", "-M ilp64", "-N so", "-W4"
-      </Option>
-      <Option ToolChainFamily="MSFT" SupArchList="IPF" ToolCode="ASMLINK"> </Option>
-      <Option ToolChainFamily="MSFT" SupArchList="IPF" ToolCode="PP"> "/nologo", "/P", "/TC" </Option>
-      <Option ToolChainFamily="MSFT" SupArchList="IPF" ToolCode="ASL"> "/nologo" </Option>
-      
-      <!-- INTEL tool chain options definition : EBC -->
-      <Option ToolChainFamily="INTEL" SupArchList="EBC" ToolCode="CC">
-        "-nologo", "-FAcs", "-c", "-W3", "-WX", "-FI${DEST_DIR_DEBUG}/AutoGen.h"
-      </Option>
-      <Option ToolChainFamily="INTEL" SupArchList="EBC" ToolCode="SLINK">
-        "/lib", "/NOLOGO", "/MACHINE:EBC"
-      </Option>
-      <Option ToolChainFamily="INTEL" SupArchList="EBC" ToolCode="DLINK">
-        "/NOLOGO", "/MACHINE:EBC", "/SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER", "/OPT:REF", "/NODEFAULTLIB", "/ENTRY:${ENTRYPOINT}", "/SUBSYSTEM:${SUBSYSTEM}"
-      </Option>
-      <Option ToolChainFamily="GCC" SupArchList="IA32" ToolCode="ASMLINK"/>
-      <Option ToolChainFamily="GCC" SupArchList="IA32" ToolCode="PP"> "-E", "-x assembler-with-cpp", "-include ${DEST_DIR_DEBUG}/AutoGen.h" </Option>
-      <Option ToolChainFamily="INTEL" SupArchList="EBC" ToolCode="PP"> "-nologo", "-P", "-TC" </Option>
-    </Options>    
-
-         <Ffs FfsKey="APPLICATION">
-           <Attribute Name="FFS_FILETYPE" Value="EFI_FV_FILETYPE_APPLICATION" />
-           <Attribute Name="FFS_ATTRIB_CHECKSUM" Value="TRUE" />
-           <Sections EncapsulationType="Compress">
-             <Sections EncapsulationType="Guid-Defined">
-               <Section SectionType="EFI_SECTION_PE32" /> 
-               <Section SectionType="EFI_SECTION_USER_INTERFACE" />
-               <Section SectionType="EFI_SECTION_VERSION" /> 
-             </Sections>
-           </Sections>
-         </Ffs>
-       
-         <Ffs FfsKey="BINARY">
-           <Attribute Name="FFS_FILETYPE" Value="EFI_FV_FILETYPE_FREEFORM" />
-           <Attribute Name="FFS_ATTRIB_CHECKSUM" Value="TRUE" />
-           <Sections  EncapsulationType="Compress">
-             <Sections EncapsulationType="Guid-Defined">
-               <Section SectionType="EFI_SECTION_RAW" /> 
-             </Sections>
-           </Sections>
-         </Ffs>
-         
-         <Ffs FfsKey="FILE">
-           <Attribute Name="FFS_FILETYPE" Value="EFI_FV_FILETYPE_FREEFORM" />
-           <Attribute Name="FFS_ATTRIB_CHECKSUM" Value="TRUE" />
-           <Sections>
-             <Section SectionType="EFI_SECTION_RAW"/> 
-           </Sections>
-         </Ffs>
-         
-         <Ffs FfsKey="PE32_PEIM_CompressPEIM">
-           <Attribute Name="FFS_FILETYPE" Value="EFI_FV_FILETYPE_PEIM" /> 
-           <Attribute Name="FFS_ATTRIB_CHECKSUM" Value="TRUE" /> 
-       
-           <Sections>
-             <Section SectionType="EFI_SECTION_PEI_DEPEX" />
-             <Sections EncapsulationType="Compress">
-               <Section SectionType="EFI_SECTION_PE32" /> 
-               <Section SectionType="EFI_SECTION_USER_INTERFACE" />
-               <Section SectionType="EFI_SECTION_VERSION" /> 
-             </Sections>
-           </Sections>
-         </Ffs>
-       
-         <Ffs FfsKey="PEI_CORE">
-           <Attribute Name="FFS_FILETYPE" Value="EFI_FV_FILETYPE_PEI_CORE" />
-           <Attribute Name="FFS_ATTRIB_CHECKSUM" Value="TRUE" />
-           <Sections>
-             <Section SectionType="EFI_SECTION_PE32"/>
-             <Section SectionType="EFI_SECTION_USER_INTERFACE"/>
-             <Section SectionType="EFI_SECTION_VERSION"/>
-           </Sections>
-         </Ffs>
-       
-         <Ffs FfsKey="PE32_PEIM_Relocatable">
-           <Attribute Name="FFS_FILETYPE" Value="EFI_FV_FILETYPE_PEIM" />
-           <Attribute Name="FFS_ATTRIB_CHECKSUM" Value="TRUE" />
-           <Sections>
-             <Section SectionType="EFI_SECTION_PEI_DEPEX"/> 
-             <Section SectionType="EFI_SECTION_PE32"/> 
-           </Sections>
-         </Ffs>
-       
-         <Ffs FfsKey="DXE_CORE">
-           <Attribute Name="FFS_FILETYPE" Value="EFI_FV_FILETYPE_DXE_CORE" />
-           <Attribute Name="FFS_ATTRIB_CHECKSUM" Value="TRUE" />
-           <Sections EncapsulationType="Compress">
-             <Section SectionType="EFI_SECTION_PE32" /> 
-             <Section SectionType="EFI_SECTION_USER_INTERFACE" />
-             <Section SectionType="EFI_SECTION_VERSION" /> 
-           </Sections>
-         </Ffs>
-       
-       
-         <Ffs FfsKey="BS_DRIVER">
-           <Attribute Name="FFS_FILETYPE" Value="EFI_FV_FILETYPE_DRIVER" /> 
-           <Attribute Name="FFS_ATTRIB_CHECKSUM" Value="TRUE" /> 
-       
-           <Sections EncapsulationType="Compress">
-             <Sections EncapsulationType="Guid-Defined">
-               <Section SectionType="EFI_SECTION_PEI_DEPEX" />
-               <Section SectionType="EFI_SECTION_PE32" />
-               <Section SectionType="EFI_SECTION_USER_INTERFACE" />
-               <Section SectionType="EFI_SECTION_VERSION" />
-             </Sections>
-           </Sections>
-         </Ffs>
-         
-         <Ffs FfsKey="RT_DRIVER">
-           <Attribute Name="FFS_FILETYPE" Value="EFI_FV_FILETYPE_DRIVER" /> 
-           <Attribute Name="FFS_ATTRIB_CHECKSUM" Value="TRUE" /> 
-       
-           <Sections EncapsulationType="Compress">
-             <Sections EncapsulationType="Guid-Defined">
-               <Section SectionType="EFI_SECTION_PEI_DEPEX" />
-               <Section SectionType="EFI_SECTION_PE32" />
-               <Section SectionType="EFI_SECTION_USER_INTERFACE" />
-               <Section SectionType="EFI_SECTION_VERSION" />
-             </Sections>
-           </Sections>
-         </Ffs>
-         
-         <Ffs FfsKey="SAL_RT_DRIVER">
-           <Attribute Name="FFS_FILETYPE" Value="EFI_FV_FILETYPE_DRIVER" /> 
-           <Attribute Name="FFS_ATTRIB_CHECKSUM" Value="TRUE" /> 
-       
-           <Sections EncapsulationType="Compress">
-             <Sections EncapsulationType="Guid-Defined">
-               <Section SectionType="EFI_SECTION_PEI_DEPEX" />
-               <Section SectionType="EFI_SECTION_PE32" />
-               <Section SectionType="EFI_SECTION_USER_INTERFACE" />
-               <Section SectionType="EFI_SECTION_VERSION" />
-             </Sections>
-           </Sections>
-         </Ffs>
-               
-         <Ffs FfsKey="COMBINED_PEIM_DRIVER">
-           <Attribute Name="FFS_FILETYPE" Value="EFI_FV_FILETYPE_COMBINED_PEIM_DRIVER" />
-           <Attribute Name="FFS_ATTRIB_CHECKSUM" Value="TRUE" />
-           <Sections>
-             <Section SectionType="EFI_SECTION_PEI_DEPEX"/> 
-             <Section SectionType="EFI_SECTION_PE32"/> 
-             <Section SectionType="EFI_SECTION_USER_INTERFACE"/>
-             <Section SectionType="EFI_SECTION_VERSION"/> 
-           </Sections>
-         </Ffs>
-       
-         <Ffs FfsKey="PE32_PEIM">
-           <Attribute Name="FFS_FILETYPE" Value="EFI_FV_FILETYPE_PEIM" />
-           <Attribute Name="FFS_ATTRIB_CHECKSUM" Value="TRUE" />
-           <Sections>
-             <Section SectionType="EFI_SECTION_PEI_DEPEX"/> 
-             <Section SectionType="EFI_SECTION_PE32"/> 
-             <Section SectionType="EFI_SECTION_USER_INTERFACE"/>
-             <Section SectionType="EFI_SECTION_VERSION"/> 
-           </Sections>
-         </Ffs>
-       
-         <Ffs FfsKey="Logo">
-           <Attribute Name="FFS_FILETYPE" Value="EFI_FV_FILETYPE_FREEFORM" />
-           <Attribute Name="FFS_ATTRIB_CHECKSUM" Value="TRUE" />
-           <Sections EncapsulationType="Compress">
-             <Sections EncapsulationType="Guid-Defined">
-               <Section SectionType="EFI_SECTION_RAW" /> 
-             </Sections>
-           </Sections>
-         </Ffs>
-         
+    <Ffs FfsKey="APPLICATION">
+      <Attribute Name="FFS_FILETYPE" Value="EFI_FV_FILETYPE_APPLICATION"/>
+      <Attribute Name="FFS_ATTRIB_CHECKSUM" Value="TRUE"/>
+      <Sections EncapsulationType="Compress">
+        <Sections EncapsulationType="Guid-Defined">
+          <Section SectionType="EFI_SECTION_PE32"/>
+          <Section SectionType="EFI_SECTION_USER_INTERFACE"/>
+          <Section SectionType="EFI_SECTION_VERSION"/>
+        </Sections>
+      </Sections>
+    </Ffs>
+    <Ffs FfsKey="BINARY">
+      <Attribute Name="FFS_FILETYPE" Value="EFI_FV_FILETYPE_FREEFORM"/>
+      <Attribute Name="FFS_ATTRIB_CHECKSUM" Value="TRUE"/>
+      <Sections EncapsulationType="Compress">
+        <Sections EncapsulationType="Guid-Defined">
+          <Section SectionType="EFI_SECTION_RAW"/>
+        </Sections>
+      </Sections>
+    </Ffs>
+    <Ffs FfsKey="FILE">
+      <Attribute Name="FFS_FILETYPE" Value="EFI_FV_FILETYPE_FREEFORM"/>
+      <Attribute Name="FFS_ATTRIB_CHECKSUM" Value="TRUE"/>
+      <Sections>
+        <Section SectionType="EFI_SECTION_RAW"/>
+      </Sections>
+    </Ffs>
+    <Ffs FfsKey="PE32_PEIM_CompressPEIM">
+      <Attribute Name="FFS_FILETYPE" Value="EFI_FV_FILETYPE_PEIM"/>
+      <Attribute Name="FFS_ATTRIB_CHECKSUM" Value="TRUE"/>
+      <Sections>
+        <Section SectionType="EFI_SECTION_PEI_DEPEX"/>
+        <Sections EncapsulationType="Compress">
+          <Section SectionType="EFI_SECTION_PE32"/>
+          <Section SectionType="EFI_SECTION_USER_INTERFACE"/>
+          <Section SectionType="EFI_SECTION_VERSION"/>
+        </Sections>
+      </Sections>
+    </Ffs>
+    <Ffs FfsKey="PEI_CORE">
+      <Attribute Name="FFS_FILETYPE" Value="EFI_FV_FILETYPE_PEI_CORE"/>
+      <Attribute Name="FFS_ATTRIB_CHECKSUM" Value="TRUE"/>
+      <Sections>
+        <Section SectionType="EFI_SECTION_PE32"/>
+        <Section SectionType="EFI_SECTION_USER_INTERFACE"/>
+        <Section SectionType="EFI_SECTION_VERSION"/>
+      </Sections>
+    </Ffs>
+    <Ffs FfsKey="PE32_PEIM_Relocatable">
+      <Attribute Name="FFS_FILETYPE" Value="EFI_FV_FILETYPE_PEIM"/>
+      <Attribute Name="FFS_ATTRIB_CHECKSUM" Value="TRUE"/>
+      <Sections>
+        <Section SectionType="EFI_SECTION_PEI_DEPEX"/>
+        <Section SectionType="EFI_SECTION_PE32"/>
+      </Sections>
+    </Ffs>
+    <Ffs FfsKey="DXE_CORE">
+      <Attribute Name="FFS_FILETYPE" Value="EFI_FV_FILETYPE_DXE_CORE"/>
+      <Attribute Name="FFS_ATTRIB_CHECKSUM" Value="TRUE"/>
+      <Sections EncapsulationType="Compress">
+        <Section SectionType="EFI_SECTION_PE32"/>
+        <Section SectionType="EFI_SECTION_USER_INTERFACE"/>
+        <Section SectionType="EFI_SECTION_VERSION"/>
+      </Sections>
+    </Ffs>
+    <Ffs FfsKey="BS_DRIVER">
+      <Attribute Name="FFS_FILETYPE" Value="EFI_FV_FILETYPE_DRIVER"/>
+      <Attribute Name="FFS_ATTRIB_CHECKSUM" Value="TRUE"/>
+      <Sections EncapsulationType="Compress">
+        <Sections EncapsulationType="Guid-Defined">
+          <Section SectionType="EFI_SECTION_PEI_DEPEX"/>
+          <Section SectionType="EFI_SECTION_PE32"/>
+          <Section SectionType="EFI_SECTION_USER_INTERFACE"/>
+          <Section SectionType="EFI_SECTION_VERSION"/>
+        </Sections>
+      </Sections>
+    </Ffs>
+    <Ffs FfsKey="RT_DRIVER">
+      <Attribute Name="FFS_FILETYPE" Value="EFI_FV_FILETYPE_DRIVER"/>
+      <Attribute Name="FFS_ATTRIB_CHECKSUM" Value="TRUE"/>
+      <Sections EncapsulationType="Compress">
+        <Sections EncapsulationType="Guid-Defined">
+          <Section SectionType="EFI_SECTION_PEI_DEPEX"/>
+          <Section SectionType="EFI_SECTION_PE32"/>
+          <Section SectionType="EFI_SECTION_USER_INTERFACE"/>
+          <Section SectionType="EFI_SECTION_VERSION"/>
+        </Sections>
+      </Sections>
+    </Ffs>
+    <Ffs FfsKey="SAL_RT_DRIVER">
+      <Attribute Name="FFS_FILETYPE" Value="EFI_FV_FILETYPE_DRIVER"/>
+      <Attribute Name="FFS_ATTRIB_CHECKSUM" Value="TRUE"/>
+      <Sections EncapsulationType="Compress">
+        <Sections EncapsulationType="Guid-Defined">
+          <Section SectionType="EFI_SECTION_PEI_DEPEX"/>
+          <Section SectionType="EFI_SECTION_PE32"/>
+          <Section SectionType="EFI_SECTION_USER_INTERFACE"/>
+          <Section SectionType="EFI_SECTION_VERSION"/>
+        </Sections>
+      </Sections>
+    </Ffs>
+    <Ffs FfsKey="COMBINED_PEIM_DRIVER">
+      <Attribute Name="FFS_FILETYPE" Value="EFI_FV_FILETYPE_COMBINED_PEIM_DRIVER"/>
+      <Attribute Name="FFS_ATTRIB_CHECKSUM" Value="TRUE"/>
+      <Sections>
+        <Section SectionType="EFI_SECTION_PEI_DEPEX"/>
+        <Section SectionType="EFI_SECTION_PE32"/>
+        <Section SectionType="EFI_SECTION_USER_INTERFACE"/>
+        <Section SectionType="EFI_SECTION_VERSION"/>
+      </Sections>
+    </Ffs>
+    <Ffs FfsKey="PE32_PEIM">
+      <Attribute Name="FFS_FILETYPE" Value="EFI_FV_FILETYPE_PEIM"/>
+      <Attribute Name="FFS_ATTRIB_CHECKSUM" Value="TRUE"/>
+      <Sections>
+        <Section SectionType="EFI_SECTION_PEI_DEPEX"/>
+        <Section SectionType="EFI_SECTION_PE32"/>
+        <Section SectionType="EFI_SECTION_USER_INTERFACE"/>
+        <Section SectionType="EFI_SECTION_VERSION"/>
+      </Sections>
+    </Ffs>
+    <Ffs FfsKey="Logo">
+      <Attribute Name="FFS_FILETYPE" Value="EFI_FV_FILETYPE_FREEFORM"/>
+      <Attribute Name="FFS_ATTRIB_CHECKSUM" Value="TRUE"/>
+      <Sections EncapsulationType="Compress">
+        <Sections EncapsulationType="Guid-Defined">
+          <Section SectionType="EFI_SECTION_RAW"/>
+        </Sections>
+      </Sections>
+    </Ffs>
   </BuildOptions>
 </PlatformSurfaceArea>