]> git.proxmox.com Git - mirror_edk2.git/blame - EdkModulePkg/Universal/Variable/RuntimeDxe/Variable.msa
Fix the issue that the variable Unicode string may be not aligned on 16-bit boundary...
[mirror_edk2.git] / EdkModulePkg / Universal / Variable / RuntimeDxe / Variable.msa
CommitLineData
878ddf1f 1<?xml version="1.0" encoding="UTF-8"?>\r
a298afce 2<ModuleSurfaceArea xmlns="http://www.TianoCore.org/2006/Edk2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">\r
878ddf1f 3 <MsaHeader>\r
1f86f081 4 <ModuleName>Variable</ModuleName>\r
878ddf1f 5 <ModuleType>DXE_RUNTIME_DRIVER</ModuleType>\r
1f86f081 6 <GuidValue>CBD2E4D5-7068-4FF5-B462-9822B4AD8D60</GuidValue>\r
7 <Version>1.0</Version>\r
47a16b84
LG
8 <Abstract>Component description file for Variable module.</Abstract>\r
9 <Description>This module installs three EFI_RUNTIME_SERVICES: SetVariable, GetVariable, GetNextVariableName.</Description>\r
a298afce 10 <Copyright>Copyright (c) 2006 - 2007, Intel Corporation</Copyright>\r
6ed71dcc 11 <License>All rights reserved. This program and the accompanying materials
12 are licensed and made available under the terms and conditions of the BSD License
13 which accompanies this distribution. The full text of the license may be found at
14 http://opensource.org/licenses/bsd-license.php
15 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
1f86f081 16 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.</License>\r
17 <Specification>FRAMEWORK_BUILD_PACKAGING_SPECIFICATION 0x00000052</Specification>\r
878ddf1f 18 </MsaHeader>\r
1f86f081 19 <ModuleDefinitions>\r
22613d6e 20 <SupportedArchitectures>IA32 X64</SupportedArchitectures>\r
1f86f081 21 <BinaryModule>false</BinaryModule>\r
22 <OutputFileBasename>Variable</OutputFileBasename>\r
23 </ModuleDefinitions>\r
878ddf1f 24 <LibraryClassDefinitions>\r
202c5d55 25 <LibraryClass Usage="ALWAYS_CONSUMED">\r
26 <Keyword>PcdLib</Keyword>\r
1f86f081 27 </LibraryClass>\r
28 <LibraryClass Usage="ALWAYS_CONSUMED">\r
29 <Keyword>UefiDriverEntryPoint</Keyword>\r
30 </LibraryClass>\r
31 <LibraryClass Usage="ALWAYS_CONSUMED">\r
32 <Keyword>DxeServicesTableLib</Keyword>\r
33 </LibraryClass>\r
34 <LibraryClass Usage="ALWAYS_CONSUMED">\r
3e48a192 35 <Keyword>UefiRuntimeLib</Keyword>\r
1f86f081 36 </LibraryClass>\r
37 <LibraryClass Usage="ALWAYS_CONSUMED">\r
38 <Keyword>DebugLib</Keyword>\r
39 </LibraryClass>\r
1f86f081 40 <LibraryClass Usage="ALWAYS_CONSUMED">\r
41 <Keyword>BaseMemoryLib</Keyword>\r
42 </LibraryClass>\r
43 <LibraryClass Usage="ALWAYS_CONSUMED">\r
44 <Keyword>EdkFvbServiceLib</Keyword>\r
45 </LibraryClass>\r
1f86f081 46 <LibraryClass Usage="ALWAYS_CONSUMED">\r
47 <Keyword>UefiBootServicesTableLib</Keyword>\r
48 </LibraryClass>\r
6ed71dcc 49 <LibraryClass Usage="ALWAYS_CONSUMED">\r
50 <Keyword>UefiLib</Keyword>\r
51 </LibraryClass>\r
bb60dd97 52 <LibraryClass Usage="ALWAYS_CONSUMED">\r
53 <Keyword>BaseLib</Keyword>\r
54 </LibraryClass>\r
878ddf1f 55 </LibraryClassDefinitions>\r
56 <SourceFiles>\r
5094fb09 57 <Filename>Variable.h</Filename>\r
878ddf1f 58 <Filename>Variable.c</Filename>\r
5094fb09 59 <Filename>reclaim.h</Filename>\r
aec91719 60 <Filename>reclaim.c</Filename>\r
22613d6e 61 <Filename>InitVariable.c</Filename>\r
62 <Filename>Variable.dxs</Filename>\r
878ddf1f 63 </SourceFiles>\r
1f86f081 64 <PackageDependencies>\r
65 <Package PackageGuid="5e0e9358-46b6-4ae2-8218-4ab8b9bbdcec"/>\r
62f84315 66 <Package PackageGuid="68169ab0-d41b-4009-9060-292c253ac43d"/>\r
1f86f081 67 </PackageDependencies>\r
878ddf1f 68 <Protocols>\r
1f86f081 69 <Protocol Usage="ALWAYS_CONSUMED">\r
53b86193 70 <ProtocolCName>gEfiVariableArchProtocolGuid</ProtocolCName>\r
1f86f081 71 </Protocol>\r
72 <Protocol Usage="ALWAYS_CONSUMED">\r
53b86193 73 <ProtocolCName>gEfiVariableWriteArchProtocolGuid</ProtocolCName>\r
1f86f081 74 </Protocol>\r
75 <Protocol Usage="ALWAYS_CONSUMED">\r
53b86193 76 <ProtocolCName>gEfiFaultTolerantWriteLiteProtocolGuid</ProtocolCName>\r
1f86f081 77 </Protocol>\r
1f86f081 78 <Protocol Usage="ALWAYS_CONSUMED">\r
53b86193 79 <ProtocolCName>gEfiFirmwareVolumeBlockProtocolGuid</ProtocolCName>\r
1f86f081 80 </Protocol>\r
878ddf1f 81 </Protocols>\r
878ddf1f 82 <Externs>\r
1f86f081 83 <Specification>EFI_SPECIFICATION_VERSION 0x00020000</Specification>\r
15b06e58 84 <Specification>EDK_RELEASE_VERSION 0x00020000</Specification>\r
878ddf1f 85 <Extern>\r
86 <ModuleEntryPoint>VariableServiceInitialize</ModuleEntryPoint>\r
87 </Extern>\r
88 <Extern>\r
89 <SetVirtualAddressMapCallBack>VariableClassAddressChangeEvent</SetVirtualAddressMapCallBack>\r
90 </Extern>\r
91 </Externs>\r
202c5d55 92 <PcdCoded>\r
93 <PcdEntry PcdItemType="DYNAMIC">\r
94 <C_Name>PcdFlashNvStorageVariableBase</C_Name>\r
95 <TokenSpaceGuidCName>gEfiGenericPlatformTokenSpaceGuid</TokenSpaceGuidCName>\r
6ed71dcc 96 <HelpText>The driver gets the Variable store base address from this PCD. This base address point to
a298afce 97 an EFI_FIRMWARE_VOLUMN_HEADER struct.</HelpText>\r
98 </PcdEntry>\r
202c5d55 99 <PcdEntry PcdItemType="DYNAMIC">\r
100 <C_Name>PcdFlashNvStorageVariableSize</C_Name>\r
101 <TokenSpaceGuidCName>gEfiGenericPlatformTokenSpaceGuid</TokenSpaceGuidCName>\r
a298afce 102 <HelpText>The driver gets the NvStorage Variable Size from this PCD.</HelpText>\r
103 </PcdEntry>\r
104 </PcdCoded>\r
1f86f081 105</ModuleSurfaceArea>