]> git.proxmox.com Git - mirror_edk2.git/blobdiff - EdkModulePkg/Universal/PCD/Pei/Pcd.msa
Add in feature flag PcdPeiPcdDatabaseSetEnabled, PcdPeiPcdDatabaseGetSizeEnabled...
[mirror_edk2.git] / EdkModulePkg / Universal / PCD / Pei / Pcd.msa
index 14454323dfada1d6ebb2169834683c26ea6cd861..0ae491a85a27ce31e6d421f6d11bc2edb3b72006 100644 (file)
@@ -1,26 +1,18 @@
 <?xml version="1.0" encoding="UTF-8"?>\r
-<!--Copyright (c) 2006, Intel Corporation\r
-All rights reserved. This program and the accompanying materials\r
-are licensed and made available under the terms and conditions of the BSD License\r
-which accompanies this distribution.  The full text of the license may be found at\r
-http://opensource.org/licenses/bsd-license.php\r
-\r
-THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
-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>PcdPeim</ModuleName>\r
     <ModuleType>PEIM</ModuleType>\r
     <GuidValue>9B3ADA4F-AE56-4c24-8DEA-F03B7558AE50</GuidValue>\r
     <Version>1.0</Version>\r
     <Abstract>Component description file for Pcd Database PEIM module</Abstract>\r
-    <Description>FIX ME!</Description>\r
-    <Copyright>Copyright (c) 2004-2006, Intel Corporation</Copyright>\r
-    <License>All rights reserved. This program and the accompanying materials\r
-      are licensed and made available under the terms and conditions of the BSD License\r
-      which accompanies this distribution.  The full text of the license may be found at\r
-      http://opensource.org/licenses/bsd-license.php\r
-      THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
+    <Description>This DXE driver implement and produce the PCD PPI.</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
+      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.</License>\r
     <Specification>FRAMEWORK_BUILD_PACKAGING_SPECIFICATION   0x00000052</Specification>\r
   </MsaHeader>\r
@@ -61,6 +53,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.-->
   <SourceFiles>\r
     <Filename>Pcd.dxs</Filename>\r
     <Filename>Pcd.c</Filename>\r
+    <Filename>Service.h</Filename>\r
     <Filename>Service.c</Filename>\r
   </SourceFiles>\r
   <PackageDependencies>\r
@@ -69,21 +62,22 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.-->
   </PackageDependencies>\r
   <PPIs>\r
     <Ppi Usage="ALWAYS_PRODUCED">\r
-      <PpiCName>PcdPpi</PpiCName>\r
+      <PpiCName>gPcdPpiGuid</PpiCName>\r
     </Ppi>\r
     <Ppi Usage="ALWAYS_CONSUMED">\r
-      <PpiCName>ReadOnlyVariable</PpiCName>\r
+      <PpiCName>gEfiPeiReadOnlyVariablePpiGuid</PpiCName>\r
     </Ppi>\r
   </PPIs>\r
   <Guids>\r
     <GuidCNames Usage="ALWAYS_CONSUMED">\r
-      <GuidCName>PcdDataBaseHob</GuidCName>\r
+      <GuidCName>gPcdDataBaseHobGuid</GuidCName>\r
     </GuidCNames>\r
     <GuidCNames Usage="ALWAYS_CONSUMED">\r
-      <GuidCName>PcdPeiCallbackFnTable</GuidCName>\r
+      <GuidCName>gPcdPeiCallbackFnTableHobGuid</GuidCName>\r
     </GuidCNames>\r
   </Guids>\r
   <Externs>\r
+    <PcdIsDriver>PEI_PCD_DRIVER</PcdIsDriver>\r
     <Specification>EFI_SPECIFICATION_VERSION 0x00020000</Specification>\r
     <Specification>EDK_RELEASE_VERSION 0x00020000</Specification>\r
     <Extern>\r
@@ -91,17 +85,47 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.-->
     </Extern>\r
   </Externs>\r
   <PcdCoded>\r
-    <PcdEntry PcdItemType="FIXED_AT_BUILD">\r
+    <PcdEntry PcdItemType="FIXED_AT_BUILD" Usage="ALWAYS_CONSUMED">\r
       <C_Name>PcdMaxPeiPcdCallBackNumberPerPcdEntry</C_Name>\r
-          <TokenSpaceGuidCName>gEfiEdkModulePkgTokenSpaceGuid</TokenSpaceGuidCName>\r
-\r
-      <HelpText/>\r
+      <TokenSpaceGuidCName>gEfiEdkModulePkgTokenSpaceGuid</TokenSpaceGuidCName>\r
+      <HelpText>The maximum number of callback function, which will be triggered when 
+        a PCD entry is been set, can be registered for a single PCD entry in PEI phase.</HelpText>\r
     </PcdEntry>\r
-    <PcdEntry PcdItemType="FIXED_AT_BUILD">\r
+    <PcdEntry PcdItemType="FIXED_AT_BUILD" Usage="ALWAYS_CONSUMED">\r
       <C_Name>PcdVpdBaseAddress</C_Name>\r
-          <TokenSpaceGuidCName>gEfiEdkModulePkgTokenSpaceGuid</TokenSpaceGuidCName>\r
-\r
-      <HelpText/>\r
+      <TokenSpaceGuidCName>gEfiEdkModulePkgTokenSpaceGuid</TokenSpaceGuidCName>\r
+      <HelpText>The base address of the VPD (Vital Product Data) region. It is 
+        normally a region reserved on flash.</HelpText>\r
+    </PcdEntry>\r
+    <PcdEntry PcdItemType="FEATURE_FLAG" Usage="ALWAYS_CONSUMED">\r
+      <C_Name>PcdPeiPcdDatabaseTraverseEnabled</C_Name>\r
+      <TokenSpaceGuidCName>gEfiEdkModulePkgTokenSpaceGuid</TokenSpaceGuidCName>\r
+      <HelpText>This feature flag can be used to enable or disable the Pcd PEIM database 
+        traverse capability. Disable it can reduce the size of final image generated.</HelpText>\r
+    </PcdEntry>\r
+    <PcdEntry PcdItemType="FEATURE_FLAG" Usage="ALWAYS_CONSUMED">\r
+      <C_Name>PcdPeiPcdDatabaseCallbackOnSetEnabled</C_Name>\r
+      <TokenSpaceGuidCName>gEfiEdkModulePkgTokenSpaceGuid</TokenSpaceGuidCName>\r
+      <DefaultValue>FALSE</DefaultValue>\r
+      <HelpText>This feature flag can be used to enable or disable the Callback On SET capability of PCD service PEIM. If a platform does not register any callback on set  in PEI phase. This flag can be set to DISABLE to save size.</HelpText>\r
+    </PcdEntry>\r
+    <PcdEntry PcdItemType="FEATURE_FLAG" Usage="ALWAYS_CONSUMED">\r
+      <C_Name>PcdPeiPcdDatabaseExEnabled</C_Name>\r
+      <TokenSpaceGuidCName>gEfiEdkModulePkgTokenSpaceGuid</TokenSpaceGuidCName>\r
+      <DefaultValue>FALSE</DefaultValue>\r
+      <HelpText>This feature flag can be used to enable or disable the PCD service PEIM to handle DynamicEX PCD. If a platform has no module to use DynamicEX  in PEI phase. This flag can be set to DISABLE to save size.</HelpText>\r
+    </PcdEntry>\r
+    <PcdEntry PcdItemType="FEATURE_FLAG" Usage="ALWAYS_CONSUMED">\r
+      <C_Name>PcdPeiPcdDatabaseGetSizeEnabled</C_Name>\r
+      <TokenSpaceGuidCName>gEfiEdkModulePkgTokenSpaceGuid</TokenSpaceGuidCName>\r
+      <DefaultValue>FALSE</DefaultValue>\r
+      <HelpText>This feature flag can be used to enable or disable the GET size capability of PCD service PEIM. If a platform does not do PCD get size operation in PEI phase. This flag can be set to DISABLE to save size.</HelpText>\r
+    </PcdEntry>\r
+    <PcdEntry PcdItemType="FEATURE_FLAG" Usage="ALWAYS_CONSUMED">\r
+      <C_Name>PcdPeiPcdDatabaseSetEnabled</C_Name>\r
+      <TokenSpaceGuidCName>gEfiEdkModulePkgTokenSpaceGuid</TokenSpaceGuidCName>\r
+      <DefaultValue>FALSE</DefaultValue>\r
+      <HelpText>This feature flag can be used to enable or disable the SET capability of PCD service PEIM. If a platform does not do PCD SET operation in PEI phase. This flag can be set to DISABLE to save size.</HelpText>\r
     </PcdEntry>\r
   </PcdCoded>\r
 </ModuleSurfaceArea>
\ No newline at end of file