]> git.proxmox.com Git - mirror_edk2.git/blame - MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteSmm.inf
MdeModulePkg/FaultTolerantWrite: Consume Variable Flash Info
[mirror_edk2.git] / MdeModulePkg / Universal / FaultTolerantWriteDxe / FaultTolerantWriteSmm.inf
CommitLineData
8a2d4996 1## @file\r
6036e94d
SZ
2# Fault Tolerant Write Smm Driver.\r
3#\r
d1102dba
LG
4# This driver installs SMM Fault Tolerant Write (FTW) protocol, which provides fault\r
5# tolerant write capability in SMM environment for block devices. Its implementation\r
6# depends on the full functionality SMM FVB protocol that support read, write/erase\r
8a2d4996 7# flash access.\r
8#\r
d1102dba 9# Copyright (c) 2010 - 2018, Intel Corporation. All rights reserved.<BR>\r
8a2d4996 10#\r
9d510e61 11# SPDX-License-Identifier: BSD-2-Clause-Patent\r
8a2d4996 12#\r
13##\r
14\r
15[Defines]\r
16 INF_VERSION = 0x00010005\r
17 BASE_NAME = SmmFaultTolerantWriteDxe\r
6036e94d 18 MODULE_UNI_FILE = SmmFaultTolerantWriteDxe.uni\r
8a2d4996 19 FILE_GUID = 470CB248-E8AC-473c-BB4F-81069A1FE6FD\r
20 MODULE_TYPE = DXE_SMM_DRIVER\r
21 VERSION_STRING = 1.0\r
22 PI_SPECIFICATION_VERSION = 0x0001000A\r
23 ENTRY_POINT = SmmFaultTolerantWriteInitialize\r
24\r
25#\r
26# The following information is for reference only and not required by the build tools.\r
27#\r
28# VALID_ARCHITECTURES = IA32 X64\r
29#\r
30\r
31[Sources]\r
32 FtwMisc.c\r
33 UpdateWorkingBlock.c\r
34 FaultTolerantWrite.c\r
22cedf5b 35 FaultTolerantWriteTraditionalMm.c\r
8a2d4996 36 FaultTolerantWriteSmm.c\r
37 FaultTolerantWrite.h\r
3fee5868 38 FaultTolerantWriteSmmCommon.h\r
8a2d4996 39\r
40[Packages]\r
41 MdePkg/MdePkg.dec\r
42 MdeModulePkg/MdeModulePkg.dec\r
43\r
44[LibraryClasses]\r
22cedf5b 45 MmServicesTableLib\r
8a2d4996 46 MemoryAllocationLib\r
47 BaseMemoryLib\r
48 UefiDriverEntryPoint\r
49 DebugLib\r
50 UefiLib\r
a326830d 51 PcdLib\r
2c4b18e0 52 ReportStatusCodeLib\r
842b1242 53 SmmMemLib\r
cb54cd24 54 BaseLib\r
8db39c60
MK
55 SafeIntLib\r
56 VariableFlashInfoLib\r
8a2d4996 57\r
58[Guids]\r
6036e94d
SZ
59 #\r
60 # Signature in EFI_FAULT_TOLERANT_WORKING_BLOCK_HEADER\r
61 #\r
62 ## CONSUMES ## GUID\r
63 ## PRODUCES ## GUID\r
64 gEdkiiWorkingBlockSignatureGuid\r
8a2d4996 65\r
66[Protocols]\r
6036e94d
SZ
67 gEfiSmmSwapAddressRangeProtocolGuid | gEfiMdeModulePkgTokenSpaceGuid.PcdFullFtwServiceEnable ## SOMETIMES_CONSUMES\r
68 ## NOTIFY\r
69 ## CONSUMES\r
70 gEfiSmmFirmwareVolumeBlockProtocolGuid\r
71 ## PRODUCES\r
72 ## UNDEFINED # SmiHandlerRegister\r
73 gEfiSmmFaultTolerantWriteProtocolGuid\r
22cedf5b 74 gEfiMmEndOfDxeProtocolGuid ## CONSUMES\r
8a2d4996 75\r
76[FeaturePcd]\r
6036e94d 77 gEfiMdeModulePkgTokenSpaceGuid.PcdFullFtwServiceEnable ## CONSUMES\r
8a2d4996 78\r
bad2be3e
SZ
79#\r
80# gBS->CalculateCrc32() is consumed in EntryPoint.\r
81# PI spec said: When the DXE Foundation is notified that the EFI_RUNTIME_ARCH_PROTOCOL\r
82# has been installed, then the Boot Service CalculateCrc32() is available.\r
83# So add gEfiRuntimeArchProtocolGuid Depex here.\r
84#\r
8a2d4996 85[Depex]\r
bad2be3e 86 gEfiSmmFirmwareVolumeBlockProtocolGuid AND gEfiRuntimeArchProtocolGuid\r
8a2d4996 87\r
6036e94d
SZ
88[UserExtensions.TianoCore."ExtraFiles"]\r
89 SmmFaultTolerantWriteDxeExtra.uni\r