<?xml version="1.0" encoding="UTF-8"?> | |
<ModuleSurfaceArea xmlns="http://www.TianoCore.org/2006/Edk2.0"> | |
<MsaHeader> | |
<ModuleName>PeiFlashMap</ModuleName> | |
<ModuleType>PEIM</ModuleType> | |
<GuidValue>f417814a-8985-11db-8983-0040d02b1835</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, 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>PeiServicesTablePointerLib</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="f2805c44-8985-11db-9e98-0040d02b1835"/> | |
</PackageDependencies> | |
<Protocols> | |
<Protocol Usage="ALWAYS_CONSUMED"> | |
<ProtocolCName>gEfiFirmwareVolumeBlockProtocolGuid</ProtocolCName> | |
</Protocol> | |
</Protocols> | |
<PPIs> | |
<Ppi Usage="ALWAYS_PRODUCED"> | |
<PpiCName>gPeiFlashMapPpiGuid</PpiCName> | |
</Ppi> | |
<Ppi Usage="ALWAYS_CONSUMED"> | |
<PpiCName>gUnixFwhPpiGuid</PpiCName> | |
</Ppi> | |
</PPIs> | |
<Guids> | |
<GuidCNames Usage="ALWAYS_CONSUMED"> | |
<GuidCName>gEfiFlashMapHobGuid</GuidCName> | |
</GuidCNames> | |
<GuidCNames Usage="ALWAYS_CONSUMED"> | |
<GuidCName>gEfiFirmwareFileSystemGuid</GuidCName> | |
</GuidCNames> | |
<GuidCNames Usage="ALWAYS_CONSUMED"> | |
<GuidCName>gEfiSystemNvDataHobGuid</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> |