]> git.proxmox.com Git - mirror_edk2.git/blame - MdeModulePkg/Universal/Variable/RuntimeDxe/VariableSmmRuntimeDxe.inf
MdeModulePkg/Variable: Add RT GetNextVariableName() cache support
[mirror_edk2.git] / MdeModulePkg / Universal / Variable / RuntimeDxe / VariableSmmRuntimeDxe.inf
CommitLineData
8a2d4996 1## @file\r
fa0737a8 2# Runtime DXE part corresponding to SMM authenticated variable module.\r
8a2d4996 3#\r
fa0737a8
SZ
4# This module installs variable arch protocol and variable write arch protocol to provide\r
5# variable service. This module need work together with SMM authenticated variable module.\r
6036e94d 6#\r
18a7dbbc
SZ
7# Caution: This module requires additional review when modified.\r
8# This driver will have external input - variable data.\r
9# This external input must be validated carefully to avoid security issues such as\r
10# buffer overflow or integer overflow.\r
fa0737a8
SZ
11# The whole SMM authentication variable design relies on the integrity of flash part and SMM.\r
12# which is assumed to be protected by platform. All variable code and metadata in flash/SMM Memory\r
13# may not be modified without authorization. If platform fails to protect these resources,\r
14# the authentication service provided in this driver will be broken, and the behavior is undefined.\r
18a7dbbc 15#\r
aab3b9b9 16# Copyright (c) 2010 - 2019, Intel Corporation. All rights reserved.<BR>\r
9d510e61 17# SPDX-License-Identifier: BSD-2-Clause-Patent\r
8a2d4996 18#\r
19##\r
20\r
21[Defines]\r
22 INF_VERSION = 0x00010005\r
23 BASE_NAME = VariableSmmRuntimeDxe\r
6036e94d 24 MODULE_UNI_FILE = VariableSmmRuntimeDxe.uni\r
8a2d4996 25 FILE_GUID = 9F7DCADE-11EA-448a-A46F-76E003657DD1\r
26 MODULE_TYPE = DXE_RUNTIME_DRIVER\r
27 VERSION_STRING = 1.0\r
28 ENTRY_POINT = VariableSmmRuntimeInitialize\r
29\r
30#\r
31# The following information is for reference only and not required by the build tools.\r
32#\r
33# VALID_ARCHITECTURES = IA32 X64\r
34#\r
35# VIRTUAL_ADDRESS_MAP_CALLBACK = VariableAddressChangeEvent\r
36#\r
37\r
38[Sources]\r
39 VariableSmmRuntimeDxe.c\r
00663d04 40 PrivilegePolymorphic.h\r
fa0737a8 41 Measurement.c\r
aab3b9b9
MK
42 VariableParsing.c\r
43 VariableParsing.h\r
8a2d4996 44\r
45[Packages]\r
46 MdePkg/MdePkg.dec\r
47 MdeModulePkg/MdeModulePkg.dec\r
8a2d4996 48\r
49[LibraryClasses]\r
50 MemoryAllocationLib\r
fa0737a8 51 BaseLib\r
8a2d4996 52 UefiBootServicesTableLib\r
53 DebugLib\r
54 UefiRuntimeLib\r
55 DxeServicesTableLib\r
56 UefiDriverEntryPoint\r
fa0737a8 57 TpmMeasurementLib\r
8a2d4996 58\r
59[Protocols]\r
6036e94d
SZ
60 gEfiVariableWriteArchProtocolGuid ## PRODUCES\r
61 gEfiVariableArchProtocolGuid ## PRODUCES\r
62 gEfiSmmCommunicationProtocolGuid ## CONSUMES\r
63 ## CONSUMES\r
64 ## NOTIFY\r
65 ## UNDEFINED # Used to do smm communication\r
8a2d4996 66 gEfiSmmVariableProtocolGuid\r
6036e94d 67 gEdkiiVariableLockProtocolGuid ## PRODUCES\r
efb01a10 68 gEdkiiVarCheckProtocolGuid ## PRODUCES\r
8a2d4996 69\r
aab3b9b9
MK
70[FeaturePcd]\r
71 gEfiMdeModulePkgTokenSpaceGuid.PcdEnableVariableRuntimeCache ## CONSUMES\r
72 gEfiMdeModulePkgTokenSpaceGuid.PcdVariableCollectStatistics ## CONSUMES\r
73\r
8a2d4996 74[Guids]\r
aab3b9b9
MK
75 ## PRODUCES ## GUID # Signature of Variable store header\r
76 ## CONSUMES ## GUID # Signature of Variable store header\r
77 ## SOMETIMES_PRODUCES ## SystemTable\r
78 gEfiAuthenticatedVariableGuid\r
79\r
80 ## PRODUCES ## GUID # Signature of Variable store header\r
81 ## CONSUMES ## GUID # Signature of Variable store header\r
82 ## SOMETIMES_PRODUCES ## SystemTable\r
83 gEfiVariableGuid\r
84\r
6036e94d
SZ
85 gEfiEventVirtualAddressChangeGuid ## CONSUMES ## Event\r
86 gEfiEventExitBootServicesGuid ## CONSUMES ## Event\r
87 ## CONSUMES ## GUID # Locate protocol\r
88 ## CONSUMES ## GUID # Protocol notify\r
d00ed85e 89 gSmmVariableWriteGuid\r
8a2d4996 90\r
fa0737a8
SZ
91 ## SOMETIMES_CONSUMES ## Variable:L"PK"\r
92 ## SOMETIMES_CONSUMES ## Variable:L"KEK"\r
93 ## SOMETIMES_CONSUMES ## Variable:L"SecureBoot"\r
94 gEfiGlobalVariableGuid\r
95\r
dc9bd6ed
ZC
96 ## SOMETIMES_CONSUMES ## Variable:L"db"\r
97 ## SOMETIMES_CONSUMES ## Variable:L"dbx"\r
98 ## SOMETIMES_CONSUMES ## Variable:L"dbt"\r
fa0737a8
SZ
99 gEfiImageSecurityDatabaseGuid\r
100\r
8a2d4996 101[Depex]\r
102 gEfiSmmCommunicationProtocolGuid\r
6036e94d
SZ
103\r
104[UserExtensions.TianoCore."ExtraFiles"]\r
105 VariableSmmRuntimeDxeExtra.uni\r