<?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 xsi:schemaLocation="http://www.TianoCore.org/2006/Edk2.0 http://www.TianoCore.org/2006/Edk2.0/SurfaceArea.xsd" xmlns="http://www.TianoCore.org/2006/Edk2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">\r
+<ModuleSurfaceArea xmlns="http://www.TianoCore.org/2006/Edk2.0">\r
<MsaHeader>\r
<ModuleName>Variable</ModuleName>\r
<ModuleType>DXE_RUNTIME_DRIVER</ModuleType>\r
<GuidValue>CBD2E4D5-7068-4FF5-B462-9822B4AD8D60</GuidValue>\r
<Version>1.0</Version>\r
- <Abstract>Component description file for DiskIo 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,
+ <Abstract>Component description file for Variable module.</Abstract>\r
+ <Description>This module installs three EFI_RUNTIME_SERVICES: SetVariable, GetVariable, GetNextVariableName.</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
<ModuleDefinitions>\r
- <SupportedArchitectures>IA32 X64 IPF EBC</SupportedArchitectures>\r
+ <SupportedArchitectures>IA32 X64</SupportedArchitectures>\r
<BinaryModule>false</BinaryModule>\r
<OutputFileBasename>Variable</OutputFileBasename>\r
</ModuleDefinitions>\r
<LibraryClassDefinitions>\r
+ <LibraryClass Usage="ALWAYS_CONSUMED">\r
+ <Keyword>PcdLib</Keyword>\r
+ </LibraryClass> \r
<LibraryClass Usage="ALWAYS_CONSUMED">\r
<Keyword>BaseLib</Keyword>\r
</LibraryClass>\r
<Keyword>DxeServicesTableLib</Keyword>\r
</LibraryClass>\r
<LibraryClass Usage="ALWAYS_CONSUMED">\r
- <Keyword>DxeRuntimeDriverLib</Keyword>\r
+ <Keyword>UefiRuntimeLib</Keyword>\r
</LibraryClass>\r
<LibraryClass Usage="ALWAYS_CONSUMED">\r
<Keyword>DebugLib</Keyword>\r
<LibraryClass Usage="ALWAYS_CONSUMED">\r
<Keyword>EdkFvbServiceLib</Keyword>\r
</LibraryClass>\r
- <LibraryClass Usage="ALWAYS_CONSUMED">\r
- <Keyword>EdkDxeSalLib</Keyword>\r
- </LibraryClass>\r
<LibraryClass Usage="ALWAYS_CONSUMED">\r
<Keyword>UefiBootServicesTableLib</Keyword>\r
</LibraryClass>\r
</LibraryClassDefinitions>\r
<SourceFiles>\r
+ <Filename>Variable.h</Filename>\r
<Filename>Variable.c</Filename>\r
+ <Filename>reclaim.h</Filename>\r
<Filename>reclaim.c</Filename>\r
- <Filename SupArchList="IA32">InitVariable.c</Filename>\r
- <Filename SupArchList="IA32">Ia32Variable.dxs</Filename>\r
- <Filename SupArchList="X64">InitVariable.c</Filename>\r
- <Filename SupArchList="X64">x64Variable.dxs</Filename>\r
- <Filename SupArchList="EBC">InitVariable.c</Filename>\r
- <Filename SupArchList="EBC">x64Variable.dxs</Filename>\r
- <Filename SupArchList="IPF">Ipf/InitVariable.c</Filename>\r
- <Filename SupArchList="IPF">IpfVariable.dxs</Filename>\r
+ <Filename>InitVariable.c</Filename>\r
+ <Filename>Variable.dxs</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
</PackageDependencies>\r
<Protocols>\r
- <Protocol Usage="ALWAYS_CONSUMED">\r
- <ProtocolCName>Variable</ProtocolCName>\r
+ <Protocol Usage="ALWAYS_PRODUCED">\r
+ <ProtocolCName>gEfiVariableArchProtocolGuid</ProtocolCName>\r
</Protocol>\r
- <Protocol Usage="ALWAYS_CONSUMED">\r
- <ProtocolCName>VariableWrite</ProtocolCName>\r
- </Protocol>\r
- <Protocol Usage="ALWAYS_CONSUMED">\r
- <ProtocolCName>FaultTolerantWriteLite</ProtocolCName>\r
+ <Protocol Usage="ALWAYS_PRODUCED">\r
+ <ProtocolCName>gEfiVariableWriteArchProtocolGuid</ProtocolCName>\r
</Protocol>\r
<Protocol Usage="ALWAYS_CONSUMED">\r
- <ProtocolCName>CpuIo</ProtocolCName>\r
+ <ProtocolCName>gEfiFaultTolerantWriteLiteProtocolGuid</ProtocolCName>\r
</Protocol>\r
<Protocol Usage="ALWAYS_CONSUMED">\r
- <ProtocolCName>FvbExtension</ProtocolCName>\r
+ <ProtocolCName>gEfiCpuIoProtocolGuid</ProtocolCName>\r
</Protocol>\r
<Protocol Usage="ALWAYS_CONSUMED">\r
- <ProtocolCName>FirmwareVolumeBlock</ProtocolCName>\r
+ <ProtocolCName>gEfiFvbExtensionProtocolGuid</ProtocolCName>\r
</Protocol>\r
<Protocol Usage="ALWAYS_CONSUMED">\r
- <ProtocolCName>Variable</ProtocolCName>\r
+ <ProtocolCName>gEfiFirmwareVolumeBlockProtocolGuid</ProtocolCName>\r
</Protocol>\r
<Protocol Usage="ALWAYS_CONSUMED">\r
- <ProtocolCName>VariableWrite</ProtocolCName>\r
+ <ProtocolCName>gEfiVariableArchProtocolGuid</ProtocolCName>\r
</Protocol>\r
<Protocol Usage="ALWAYS_CONSUMED">\r
- <ProtocolCName>FaultTolerantWriteLite</ProtocolCName>\r
+ <ProtocolCName>gEfiVariableWriteArchProtocolGuid</ProtocolCName>\r
</Protocol>\r
<Protocol Usage="ALWAYS_CONSUMED">\r
- <ProtocolCName>CpuIo</ProtocolCName>\r
+ <ProtocolCName>gEfiFaultTolerantWriteLiteProtocolGuid</ProtocolCName>\r
</Protocol>\r
<Protocol Usage="ALWAYS_CONSUMED">\r
- <ProtocolCName>FvbExtension</ProtocolCName>\r
+ <ProtocolCName>gEfiCpuIoProtocolGuid</ProtocolCName>\r
</Protocol>\r
<Protocol Usage="ALWAYS_CONSUMED">\r
- <ProtocolCName>FirmwareVolumeBlock</ProtocolCName>\r
+ <ProtocolCName>gEfiFvbExtensionProtocolGuid</ProtocolCName>\r
</Protocol>\r
<Protocol Usage="ALWAYS_CONSUMED">\r
- <ProtocolCName>ExtendedSalBootService</ProtocolCName>\r
- </Protocol>\r
- <Protocol Usage="ALWAYS_CONSUMED">\r
- <ProtocolCName>ExtendedSalVariableServices</ProtocolCName>\r
+ <ProtocolCName>gEfiFirmwareVolumeBlockProtocolGuid</ProtocolCName>\r
</Protocol>\r
</Protocols>\r
<Guids>\r
<GuidCNames Usage="ALWAYS_CONSUMED">\r
- <GuidCName>FlashMapHob</GuidCName>\r
+ <GuidCName>gEfiFlashMapHobGuid</GuidCName>\r
</GuidCNames>\r
- <GuidCNames Usage="ALWAYS_CONSUMED">\r
+ <!--<GuidCNames Usage="ALWAYS_CONSUMED">\r
<GuidCName>Hob</GuidCName>\r
- </GuidCNames>\r
- <GuidCNames Usage="ALWAYS_CONSUMED">\r
+ </GuidCNames>-->\r
+ <!--<GuidCNames Usage="ALWAYS_CONSUMED">\r
<GuidCName>SystemNvData</GuidCName>\r
- </GuidCNames>\r
+ </GuidCNames>-->\r
<GuidCNames Usage="ALWAYS_CONSUMED">\r
- <GuidCName>AlternateFvBlock</GuidCName>\r
+ <GuidCName>gEfiAlternateFvBlockGuid</GuidCName>\r
</GuidCNames>\r
</Guids>\r
<Externs>\r
<Specification>EFI_SPECIFICATION_VERSION 0x00020000</Specification>\r
- <Specification>EDK_RELEASE_VERSION 0x00090000</Specification>\r
+ <Specification>EDK_RELEASE_VERSION 0x00020000</Specification>\r
<Extern>\r
<ModuleEntryPoint>VariableServiceInitialize</ModuleEntryPoint>\r
</Extern>\r
<SetVirtualAddressMapCallBack>VariableClassAddressChangeEvent</SetVirtualAddressMapCallBack>\r
</Extern>\r
</Externs>\r
+ <PcdCoded>\r
+ <PcdEntry PcdItemType="DYNAMIC">\r
+ <C_Name>PcdFlashNvStorageVariableBase</C_Name>\r
+ <TokenSpaceGuidCName>gEfiGenericPlatformTokenSpaceGuid</TokenSpaceGuidCName>\r
+ <HelpText>\r
+ The driver gets the Variable store base address from this PCD. This base address point to\r
+ an EFI_FIRMWARE_VOLUMN_HEADER struct.\r
+ </HelpText>\r
+ </PcdEntry> \r
+ <PcdEntry PcdItemType="DYNAMIC">\r
+ <C_Name>PcdFlashNvStorageVariableSize</C_Name>\r
+ <TokenSpaceGuidCName>gEfiGenericPlatformTokenSpaceGuid</TokenSpaceGuidCName>\r
+ <HelpText>\r
+ The driver gets the NvStorage Variable Size from this PCD.\r
+ </HelpText> \r
+ </PcdEntry> \r
+ </PcdCoded> \r
</ModuleSurfaceArea>
\ No newline at end of file