| <?xml version="1.0" encoding="UTF-8"?> | |
| <ModuleSurfaceArea xmlns="http://www.TianoCore.org/2006/Edk2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> | |
| <MsaHeader> | |
| <ModuleName>PeiFlashMap</ModuleName> | |
| <ModuleType>PEIM</ModuleType> | |
| <GuidValue>681F3771-6F1D-42DE-9AA2-F82BBCDBC5F9</GuidValue> | |
| <Version>1.0</Version> | |
| <Abstract>Component description file for FlashMap PEI module</Abstract> | |
| <Description>This module installs FlashMap PPI which is used to get flash layout information.</Description> | |
| <Copyright>Copyright (c) 2006 - 2007, Intel Corporation</Copyright> | |
| <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> | |
| <Specification>FRAMEWORK_BUILD_PACKAGING_SPECIFICATION 0x00000052</Specification> | |
| </MsaHeader> | |
| <ModuleDefinitions> | |
| <SupportedArchitectures>IA32 X64 IPF EBC</SupportedArchitectures> | |
| <BinaryModule>false</BinaryModule> | |
| <OutputFileBasename>PeiFlashMap</OutputFileBasename> | |
| </ModuleDefinitions> | |
| <LibraryClassDefinitions> | |
| <LibraryClass Usage="ALWAYS_CONSUMED"> | |
| <Keyword>DebugLib</Keyword> | |
| </LibraryClass> | |
| <LibraryClass Usage="ALWAYS_CONSUMED"> | |
| <Keyword>PeimEntryPoint</Keyword> | |
| </LibraryClass> | |
| <LibraryClass Usage="ALWAYS_CONSUMED"> | |
| <Keyword>HobLib</Keyword> | |
| </LibraryClass> | |
| <LibraryClass Usage="ALWAYS_CONSUMED"> | |
| <Keyword>PeiServicesLib</Keyword> | |
| </LibraryClass> | |
| <LibraryClass Usage="ALWAYS_CONSUMED"> | |
| <Keyword>BaseMemoryLib</Keyword> | |
| </LibraryClass> | |
| <LibraryClass Usage="ALWAYS_CONSUMED"> | |
| <Keyword>PcdLib</Keyword> | |
| </LibraryClass> | |
| </LibraryClassDefinitions> | |
| <SourceFiles> | |
| <Filename>FlashMap.c</Filename> | |
| <Filename>FlashMap.dxs</Filename> | |
| </SourceFiles> | |
| <PackageDependencies> | |
| <Package PackageGuid="5e0e9358-46b6-4ae2-8218-4ab8b9bbdcec"/> | |
| <Package PackageGuid="68169ab0-d41b-4009-9060-292c253ac43d"/> | |
| <Package PackageGuid="0fb2aa2d-10d5-40a5-a9dc-060c12a4a3f3"/> | |
| </PackageDependencies> | |
| <Protocols> | |
| <Protocol Usage="ALWAYS_CONSUMED"> | |
| <ProtocolCName>gEfiFirmwareVolumeBlockProtocolGuid</ProtocolCName> | |
| </Protocol> | |
| </Protocols> | |
| <Hobs> | |
| <HobTypes HobGuidCName="gEfiFlashMapHobGuid" Usage="ALWAYS_CONSUMED"> | |
| <HobType>GUID_EXTENSION</HobType> | |
| </HobTypes> | |
| </Hobs> | |
| <PPIs> | |
| <Ppi Usage="ALWAYS_PRODUCED"> | |
| <PpiCName>gPeiFlashMapPpiGuid</PpiCName> | |
| </Ppi> | |
| <Ppi Usage="ALWAYS_CONSUMED"> | |
| <PpiCName>gNtFwhPpiGuid</PpiCName> | |
| </Ppi> | |
| </PPIs> | |
| <Guids> | |
| <GuidCNames Usage="ALWAYS_CONSUMED"> | |
| <GuidCName>gEfiFirmwareFileSystemGuid</GuidCName> | |
| </GuidCNames> | |
| </Guids> | |
| <Externs> | |
| <Specification>EFI_SPECIFICATION_VERSION 0x00020000</Specification> | |
| <Specification>EDK_RELEASE_VERSION 0x00020000</Specification> | |
| <Extern> | |
| <ModuleEntryPoint>PeimInitializeFlashMap</ModuleEntryPoint> | |
| </Extern> | |
| </Externs> | |
| <PcdCoded> | |
| <PcdEntry PcdItemType="DYNAMIC"> | |
| <C_Name>PcdFlashNvStorageVariableBase</C_Name> | |
| <TokenSpaceGuidCName>gEfiGenericPlatformTokenSpaceGuid</TokenSpaceGuidCName> | |
| <HelpText>The driver sets the NV Storage FV base address defined by this PCD. | |
| This base address point to an EFI_FIRMWARE_VOLUMN_HEADER struct. Variable PEIM | |
| will get the base address from this PCD. In NT emulator, this PCD is a DYNAMIC | |
| type, as FD is mapped to process space by WinNT OS. On real platform, it is | |
| normally a FIXED_AT_BUILD type as system memory map is fixed to BIOS.</HelpText> | |
| </PcdEntry> | |
| <PcdEntry PcdItemType="DYNAMIC"> | |
| <C_Name>PcdFlashNvStorageVariableSize</C_Name> | |
| <TokenSpaceGuidCName>gEfiGenericPlatformTokenSpaceGuid</TokenSpaceGuidCName> | |
| <HelpText>To get the NvStorage Variable size from this PCD.</HelpText> | |
| </PcdEntry> | |
| <PcdEntry PcdItemType="DYNAMIC" Usage="ALWAYS_CONSUMED"> | |
| <C_Name>PcdFlashNvStorageFtwSpareBase</C_Name> | |
| <TokenSpaceGuidCName>gEfiGenericPlatformTokenSpaceGuid</TokenSpaceGuidCName> | |
| <HelpText>To get base address of the FTW spare block section in NV firmware volume.</HelpText> | |
| </PcdEntry> | |
| <PcdEntry PcdItemType="DYNAMIC" Usage="ALWAYS_CONSUMED"> | |
| <C_Name>PcdFlashNvStorageFtwSpareSize</C_Name> | |
| <TokenSpaceGuidCName>gEfiGenericPlatformTokenSpaceGuid</TokenSpaceGuidCName> | |
| <HelpText>To get size of the FTW spare block section in NV firmware volume.</HelpText> | |
| </PcdEntry> | |
| <PcdEntry PcdItemType="DYNAMIC" Usage="ALWAYS_CONSUMED"> | |
| <C_Name>PcdFlashNvStorageFtwWorkingBase</C_Name> | |
| <TokenSpaceGuidCName>gEfiGenericPlatformTokenSpaceGuid</TokenSpaceGuidCName> | |
| <HelpText>To get base address of the FTW working block section in NV firmware volume.</HelpText> | |
| </PcdEntry> | |
| <PcdEntry PcdItemType="DYNAMIC" Usage="ALWAYS_CONSUMED"> | |
| <C_Name>PcdFlashNvStorageFtwWorkingSize</C_Name> | |
| <TokenSpaceGuidCName>gEfiGenericPlatformTokenSpaceGuid</TokenSpaceGuidCName> | |
| <HelpText>To get size of the FTW working block section in NV firmware volume.</HelpText> | |
| </PcdEntry> | |
| </PcdCoded> | |
| </ModuleSurfaceArea> |