<?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>Variable</ModuleName>
    <ModuleType>DXE_RUNTIME_DRIVER</ModuleType>
    <GuidValue>CBD2E4D5-7068-4FF5-B462-9822B4AD8D60</GuidValue>
    <Version>1.0</Version>
    <Abstract>Component description file for Variable module.</Abstract>
    <Description>This module installs three EFI_RUNTIME_SERVICES: SetVariable, GetVariable, GetNextVariableName.</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</SupportedArchitectures>
    <BinaryModule>false</BinaryModule>
    <OutputFileBasename>Variable</OutputFileBasename>
  </ModuleDefinitions>
  <LibraryClassDefinitions>
    <LibraryClass Usage="ALWAYS_CONSUMED">
      <Keyword>PcdLib</Keyword>
    </LibraryClass>
    <LibraryClass Usage="ALWAYS_CONSUMED">
      <Keyword>UefiDriverEntryPoint</Keyword>
    </LibraryClass>
    <LibraryClass Usage="ALWAYS_CONSUMED">
      <Keyword>DxeServicesTableLib</Keyword>
    </LibraryClass>
    <LibraryClass Usage="ALWAYS_CONSUMED">
      <Keyword>UefiRuntimeLib</Keyword>
    </LibraryClass>
    <LibraryClass Usage="ALWAYS_CONSUMED">
      <Keyword>DebugLib</Keyword>
    </LibraryClass>
    <LibraryClass Usage="ALWAYS_CONSUMED">
      <Keyword>BaseMemoryLib</Keyword>
    </LibraryClass>
    <LibraryClass Usage="ALWAYS_CONSUMED">
      <Keyword>EdkFvbServiceLib</Keyword>
    </LibraryClass>
    <LibraryClass Usage="ALWAYS_CONSUMED">
      <Keyword>UefiBootServicesTableLib</Keyword>
    </LibraryClass>
    <LibraryClass Usage="ALWAYS_CONSUMED">
      <Keyword>UefiLib</Keyword>
    </LibraryClass>
    <LibraryClass Usage="ALWAYS_CONSUMED">
      <Keyword>BaseLib</Keyword>
    </LibraryClass>
    <LibraryClass Usage="ALWAYS_CONSUMED">
      <Keyword>MemoryAllocationLib</Keyword>
    </LibraryClass>
  </LibraryClassDefinitions>
  <SourceFiles>
    <Filename>Variable.h</Filename>
    <Filename>Variable.c</Filename>
    <Filename>reclaim.h</Filename>
    <Filename>reclaim.c</Filename>
    <Filename>InitVariable.c</Filename>
    <Filename>Variable.dxs</Filename>
  </SourceFiles>
  <PackageDependencies>
    <Package PackageGuid="5e0e9358-46b6-4ae2-8218-4ab8b9bbdcec"/>
    <Package PackageGuid="68169ab0-d41b-4009-9060-292c253ac43d"/>
  </PackageDependencies>
  <Protocols>
    <Protocol Usage="ALWAYS_PRODUCED">
      <ProtocolCName>gEfiVariableArchProtocolGuid</ProtocolCName>
    </Protocol>
    <Protocol Usage="ALWAYS_PRODUCED">
      <ProtocolCName>gEfiVariableWriteArchProtocolGuid</ProtocolCName>
    </Protocol>
    <Protocol Usage="SOMETIMES_CONSUMED">
      <ProtocolCName>gEfiFaultTolerantWriteLiteProtocolGuid</ProtocolCName>
    </Protocol>
    <Protocol Usage="SOMETIMES_CONSUMED">
      <ProtocolCName>gEfiFirmwareVolumeBlockProtocolGuid</ProtocolCName>
    </Protocol>
  </Protocols>
  <Externs>
    <Specification>EFI_SPECIFICATION_VERSION 0x00020000</Specification>
    <Specification>EDK_RELEASE_VERSION 0x00020000</Specification>
    <Extern>
      <ModuleEntryPoint>VariableServiceInitialize</ModuleEntryPoint>
    </Extern>
    <Extern>
      <SetVirtualAddressMapCallBack>VariableClassAddressChangeEvent</SetVirtualAddressMapCallBack>
    </Extern>
  </Externs>
  <PcdCoded>
    <PcdEntry PcdItemType="DYNAMIC">
      <C_Name>PcdFlashNvStorageVariableBase</C_Name>
      <TokenSpaceGuidCName>gEfiGenericPlatformTokenSpaceGuid</TokenSpaceGuidCName>
      <HelpText>The driver gets the Variable store base address from this PCD.  This base address point to
        an EFI_FIRMWARE_VOLUMN_HEADER struct.</HelpText>
    </PcdEntry>
    <PcdEntry PcdItemType="DYNAMIC">
      <C_Name>PcdFlashNvStorageVariableSize</C_Name>
      <TokenSpaceGuidCName>gEfiGenericPlatformTokenSpaceGuid</TokenSpaceGuidCName>
      <HelpText>The driver gets the NvStorage Variable Size from this PCD.</HelpText>
    </PcdEntry>
  </PcdCoded>
</ModuleSurfaceArea>