]> git.proxmox.com Git - mirror_edk2.git/blob - MdeModulePkg/Universal/Variable/RuntimeDxe/VariableRuntimeDxe.inf
273067753c25c22a3d9cfac303f0649f619e901e
[mirror_edk2.git] / MdeModulePkg / Universal / Variable / RuntimeDxe / VariableRuntimeDxe.inf
1 ## @file
2 # Provides variable service.
3 #
4 # This module installs variable arch protocol and variable write arch protocol to provide
5 # variable services: SetVariable, GetVariable, GetNextVariableName and QueryVariableInfo.
6 #
7 # Caution: This module requires additional review when modified.
8 # This driver will have external input - variable data.
9 # This external input must be validated carefully to avoid security issues such as
10 # buffer overflow or integer overflow.
11 #
12 # Copyright (c) 2006 - 2019, Intel Corporation. All rights reserved.<BR>
13 # This program and the accompanying materials
14 # are licensed and made available under the terms and conditions of the BSD License
15 # which accompanies this distribution. The full text of the license may be found at
16 # http://opensource.org/licenses/bsd-license.php
17 # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
18 # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
19 #
20 ##
21
22 [Defines]
23 INF_VERSION = 0x00010005
24 BASE_NAME = VariableRuntimeDxe
25 MODULE_UNI_FILE = VariableRuntimeDxe.uni
26 FILE_GUID = CBD2E4D5-7068-4FF5-B462-9822B4AD8D60
27 MODULE_TYPE = DXE_RUNTIME_DRIVER
28 VERSION_STRING = 1.0
29 ENTRY_POINT = VariableServiceInitialize
30
31 #
32 # The following information is for reference only and not required by the build tools.
33 #
34 # VALID_ARCHITECTURES = IA32 X64 EBC
35 #
36 # VIRTUAL_ADDRESS_MAP_CALLBACK = VariableClassAddressChangeEvent
37 #
38
39 [Sources]
40 Reclaim.c
41 Variable.c
42 VariableDxe.c
43 Variable.h
44 PrivilegePolymorphic.h
45 Measurement.c
46 TcgMorLockDxe.c
47 VarCheck.c
48 VariableExLib.c
49 SpeculationBarrierDxe.c
50
51 [Packages]
52 MdePkg/MdePkg.dec
53 MdeModulePkg/MdeModulePkg.dec
54
55 [LibraryClasses]
56 MemoryAllocationLib
57 BaseLib
58 SynchronizationLib
59 UefiLib
60 UefiBootServicesTableLib
61 BaseMemoryLib
62 DebugLib
63 UefiRuntimeLib
64 DxeServicesTableLib
65 UefiDriverEntryPoint
66 PcdLib
67 HobLib
68 TpmMeasurementLib
69 AuthVariableLib
70 VarCheckLib
71
72 [Protocols]
73 gEfiFirmwareVolumeBlockProtocolGuid ## CONSUMES
74 ## CONSUMES
75 ## NOTIFY
76 gEfiFaultTolerantWriteProtocolGuid
77 gEfiVariableWriteArchProtocolGuid ## PRODUCES
78 gEfiVariableArchProtocolGuid ## PRODUCES
79 gEdkiiVariableLockProtocolGuid ## PRODUCES
80 gEdkiiVarCheckProtocolGuid ## PRODUCES
81
82 [Guids]
83 ## SOMETIMES_CONSUMES ## GUID # Signature of Variable store header
84 ## SOMETIMES_PRODUCES ## GUID # Signature of Variable store header
85 ## SOMETIMES_CONSUMES ## HOB
86 ## SOMETIMES_PRODUCES ## SystemTable
87 gEfiAuthenticatedVariableGuid
88
89 ## SOMETIMES_CONSUMES ## GUID # Signature of Variable store header
90 ## SOMETIMES_PRODUCES ## GUID # Signature of Variable store header
91 ## SOMETIMES_CONSUMES ## HOB
92 ## SOMETIMES_PRODUCES ## SystemTable
93 gEfiVariableGuid
94
95 ## SOMETIMES_CONSUMES ## Variable:L"PlatformLang"
96 ## SOMETIMES_PRODUCES ## Variable:L"PlatformLang"
97 ## SOMETIMES_CONSUMES ## Variable:L"Lang"
98 ## SOMETIMES_PRODUCES ## Variable:L"Lang"
99 ## SOMETIMES_CONSUMES ## Variable:L"PK"
100 ## SOMETIMES_CONSUMES ## Variable:L"KEK"
101 ## SOMETIMES_CONSUMES ## Variable:L"SecureBoot"
102 gEfiGlobalVariableGuid
103
104 gEfiMemoryOverwriteControlDataGuid ## SOMETIMES_CONSUMES ## Variable:L"MemoryOverwriteRequestControl"
105 gEfiMemoryOverwriteRequestControlLockGuid ## SOMETIMES_PRODUCES ## Variable:L"MemoryOverwriteRequestControlLock"
106
107 gEfiEventVirtualAddressChangeGuid ## CONSUMES ## Event
108 gEfiSystemNvDataFvGuid ## CONSUMES ## GUID
109 gEfiEndOfDxeEventGroupGuid ## CONSUMES ## Event
110 gEdkiiFaultTolerantWriteGuid ## SOMETIMES_CONSUMES ## HOB
111
112 ## SOMETIMES_CONSUMES ## Variable:L"VarErrorFlag"
113 ## SOMETIMES_PRODUCES ## Variable:L"VarErrorFlag"
114 gEdkiiVarErrorFlagGuid
115
116 ## SOMETIMES_CONSUMES ## Variable:L"db"
117 ## SOMETIMES_CONSUMES ## Variable:L"dbx"
118 ## SOMETIMES_CONSUMES ## Variable:L"dbt"
119 gEfiImageSecurityDatabaseGuid
120
121 [Pcd]
122 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableSize ## CONSUMES
123 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableBase ## SOMETIMES_CONSUMES
124 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableBase64 ## CONSUMES
125 gEfiMdeModulePkgTokenSpaceGuid.PcdMaxVariableSize ## CONSUMES
126 gEfiMdeModulePkgTokenSpaceGuid.PcdMaxAuthVariableSize ## CONSUMES
127 gEfiMdeModulePkgTokenSpaceGuid.PcdMaxVolatileVariableSize ## CONSUMES
128 gEfiMdeModulePkgTokenSpaceGuid.PcdMaxHardwareErrorVariableSize ## CONSUMES
129 gEfiMdeModulePkgTokenSpaceGuid.PcdVariableStoreSize ## CONSUMES
130 gEfiMdeModulePkgTokenSpaceGuid.PcdHwErrStorageSize ## CONSUMES
131 gEfiMdeModulePkgTokenSpaceGuid.PcdMaxUserNvVariableSpaceSize ## CONSUMES
132 gEfiMdeModulePkgTokenSpaceGuid.PcdBoottimeReservedNvVariableSpaceSize ## CONSUMES
133 gEfiMdeModulePkgTokenSpaceGuid.PcdReclaimVariableSpaceAtEndOfDxe ## CONSUMES
134 gEfiMdeModulePkgTokenSpaceGuid.PcdEmuVariableNvModeEnable ## SOMETIMES_CONSUMES
135 gEfiMdeModulePkgTokenSpaceGuid.PcdEmuVariableNvStoreReserved ## SOMETIMES_CONSUMES
136
137 [FeaturePcd]
138 gEfiMdeModulePkgTokenSpaceGuid.PcdVariableCollectStatistics ## CONSUMES # statistic the information of variable.
139 gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultLangDeprecate ## CONSUMES # Auto update PlatformLang/Lang
140
141 [Depex]
142 TRUE
143
144 [UserExtensions.TianoCore."ExtraFiles"]
145 VariableRuntimeDxeExtra.uni