<?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">\r
<MsaHeader>\r
<ModuleName>PeiFlashMap</ModuleName>\r
<ModuleType>PEIM</ModuleType>\r
<GuidValue>681F3771-6F1D-42DE-9AA2-F82BBCDBC5F9</GuidValue>\r
<Version>1.0</Version>\r
<Abstract>Component description file for FlashMap PEI 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
- 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,
+ <Description>This module installs FlashMap PPI which is used to get flash layout information.</Description>\r
+ <Copyright>Copyright (c) 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
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.</License>\r
<Specification>FRAMEWORK_BUILD_PACKAGING_SPECIFICATION 0x00000052</Specification>\r
</MsaHeader>\r
<LibraryClass Usage="ALWAYS_CONSUMED">\r
<Keyword>BaseMemoryLib</Keyword>\r
</LibraryClass>\r
+ <LibraryClass Usage="ALWAYS_CONSUMED">\r
+ <Keyword>PcdLib</Keyword>\r
+ </LibraryClass>\r
</LibraryClassDefinitions>\r
<SourceFiles>\r
<Filename>FlashMap.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
<Package PackageGuid="0fb2aa2d-10d5-40a5-a9dc-060c12a4a3f3"/>\r
</PackageDependencies>\r
<Protocols>\r
<Protocol Usage="ALWAYS_CONSUMED">\r
- <ProtocolCName>FirmwareVolumeBlock</ProtocolCName>\r
+ <ProtocolCName>gEfiFirmwareVolumeBlockProtocolGuid</ProtocolCName>\r
</Protocol>\r
</Protocols>\r
<PPIs>\r
<Ppi Usage="ALWAYS_PRODUCED">\r
- <PpiCName>FlashMap</PpiCName>\r
+ <PpiCName>gPeiFlashMapPpiGuid</PpiCName>\r
</Ppi>\r
<Ppi Usage="ALWAYS_CONSUMED">\r
- <PpiCName>NtFwh</PpiCName>\r
+ <PpiCName>gNtFwhPpiGuid</PpiCName>\r
</Ppi>\r
</PPIs>\r
<Guids>\r
<GuidCNames Usage="ALWAYS_CONSUMED">\r
- <GuidCName>FlashMapHob</GuidCName>\r
+ <GuidCName>gEfiFlashMapHobGuid</GuidCName>\r
</GuidCNames>\r
<GuidCNames Usage="ALWAYS_CONSUMED">\r
- <GuidCName>FirmwareFileSystem</GuidCName>\r
+ <GuidCName>gEfiFirmwareFileSystemGuid</GuidCName>\r
</GuidCNames>\r
<GuidCNames Usage="ALWAYS_CONSUMED">\r
- <GuidCName>SystemNvDataHob</GuidCName>\r
+ <GuidCName>gEfiSystemNvDataHobGuid</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>PeimInitializeFlashMap</ModuleEntryPoint>\r
</Extern>\r
</Externs>\r
-</ModuleSurfaceArea>
\ No newline at end of file
+ <PcdCoded>\r
+ <PcdEntry PcdItemType="DYNAMIC">\r
+ <C_Name>PcdFlashNvStorageVariableBase</C_Name>\r
+ <TokenSpaceGuidCName>gEfiGenericPlatformTokenSpaceGuid</TokenSpaceGuidCName>\r
+ <HelpText>The driver sets the NV Storage FV base address defined by this PCD. \r
+ This base address point to an EFI_FIRMWARE_VOLUMN_HEADER struct. Variable PEIM\r
+ will get the base address from this PCD. In NT emulator, this PCD is a DYNAMIC\r
+ type, as FD is mapped to process space by WinNT OS. On real platform, it is \r
+ normally a FIXED_AT_BUILD type as system memory map is fixed to BIOS.\r
+ </HelpText>\r
+ </PcdEntry>\r
+ <PcdEntry PcdItemType="DYNAMIC">\r
+ <C_Name>PcdFlashNvStorageVariableSize</C_Name>\r
+ <TokenSpaceGuidCName>gEfiGenericPlatformTokenSpaceGuid</TokenSpaceGuidCName>\r
+ <HelpText>\r
+ To get the NvStorage Variable size from this PCD.\r
+ </HelpText>\r
+ </PcdEntry>\r
+ <PcdEntry PcdItemType="DYNAMIC" Usage="ALWAYS_CONSUMED">\r
+ <C_Name>PcdFlashNvStorageFtwSpareBase</C_Name>\r
+ <TokenSpaceGuidCName>gEfiGenericPlatformTokenSpaceGuid</TokenSpaceGuidCName>\r
+ <HelpText>To get base address of the FTW spare block section in NV firmware volume.</HelpText>\r
+ </PcdEntry>\r
+ <PcdEntry PcdItemType="DYNAMIC" Usage="ALWAYS_CONSUMED">\r
+ <C_Name>PcdFlashNvStorageFtwSpareSize</C_Name>\r
+ <TokenSpaceGuidCName>gEfiGenericPlatformTokenSpaceGuid</TokenSpaceGuidCName>\r
+ <HelpText>To get size of the FTW spare block section in NV firmware volume.</HelpText>\r
+ </PcdEntry>\r
+ <PcdEntry PcdItemType="DYNAMIC" Usage="ALWAYS_CONSUMED">\r
+ <C_Name>PcdFlashNvStorageFtwWorkingBase</C_Name>\r
+ <TokenSpaceGuidCName>gEfiGenericPlatformTokenSpaceGuid</TokenSpaceGuidCName>\r
+ <HelpText>To get base address of the FTW working block section in NV firmware volume.</HelpText>\r
+ </PcdEntry>\r
+ <PcdEntry PcdItemType="DYNAMIC" Usage="ALWAYS_CONSUMED">\r
+ <C_Name>PcdFlashNvStorageFtwWorkingSize</C_Name>\r
+ <TokenSpaceGuidCName>gEfiGenericPlatformTokenSpaceGuid</TokenSpaceGuidCName>\r
+ <HelpText>To get size of the FTW working block section in NV firmware volume.</HelpText>\r
+ </PcdEntry>\r
+ </PcdCoded>\r
+</ModuleSurfaceArea>\r