]> git.proxmox.com Git - mirror_edk2.git/blame - MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteSmm.inf
MdeModulePkg/FaultTolerantWriteDxe: implement standalone MM version
[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
11# This program and the accompanying materials\r
12# are licensed and made available under the terms and conditions of the BSD License\r
13# which accompanies this distribution. The full text of the license may be found at\r
14# http://opensource.org/licenses/bsd-license.php\r
15# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
16# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
17#\r
18##\r
19\r
20[Defines]\r
21 INF_VERSION = 0x00010005\r
22 BASE_NAME = SmmFaultTolerantWriteDxe\r
6036e94d 23 MODULE_UNI_FILE = SmmFaultTolerantWriteDxe.uni\r
8a2d4996 24 FILE_GUID = 470CB248-E8AC-473c-BB4F-81069A1FE6FD\r
25 MODULE_TYPE = DXE_SMM_DRIVER\r
26 VERSION_STRING = 1.0\r
27 PI_SPECIFICATION_VERSION = 0x0001000A\r
28 ENTRY_POINT = SmmFaultTolerantWriteInitialize\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\r
36[Sources]\r
37 FtwMisc.c\r
38 UpdateWorkingBlock.c\r
39 FaultTolerantWrite.c\r
22cedf5b 40 FaultTolerantWriteTraditionalMm.c\r
8a2d4996 41 FaultTolerantWriteSmm.c\r
42 FaultTolerantWrite.h\r
3fee5868 43 FaultTolerantWriteSmmCommon.h\r
8a2d4996 44\r
45[Packages]\r
46 MdePkg/MdePkg.dec\r
47 MdeModulePkg/MdeModulePkg.dec\r
48\r
49[LibraryClasses]\r
22cedf5b 50 MmServicesTableLib\r
8a2d4996 51 MemoryAllocationLib\r
52 BaseMemoryLib\r
53 UefiDriverEntryPoint\r
54 DebugLib\r
55 UefiLib\r
a326830d 56 PcdLib\r
2c4b18e0 57 ReportStatusCodeLib\r
842b1242 58 SmmMemLib\r
cb54cd24 59 BaseLib\r
8a2d4996 60\r
61[Guids]\r
6036e94d
SZ
62 #\r
63 # Signature in EFI_FAULT_TOLERANT_WORKING_BLOCK_HEADER\r
64 #\r
65 ## CONSUMES ## GUID\r
66 ## PRODUCES ## GUID\r
67 gEdkiiWorkingBlockSignatureGuid\r
8a2d4996 68\r
69[Protocols]\r
6036e94d
SZ
70 gEfiSmmSwapAddressRangeProtocolGuid | gEfiMdeModulePkgTokenSpaceGuid.PcdFullFtwServiceEnable ## SOMETIMES_CONSUMES\r
71 ## NOTIFY\r
72 ## CONSUMES\r
73 gEfiSmmFirmwareVolumeBlockProtocolGuid\r
74 ## PRODUCES\r
75 ## UNDEFINED # SmiHandlerRegister\r
76 gEfiSmmFaultTolerantWriteProtocolGuid\r
22cedf5b 77 gEfiMmEndOfDxeProtocolGuid ## CONSUMES\r
8a2d4996 78\r
79[FeaturePcd]\r
6036e94d 80 gEfiMdeModulePkgTokenSpaceGuid.PcdFullFtwServiceEnable ## CONSUMES\r
8a2d4996 81\r
82[Pcd]\r
6036e94d
SZ
83 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingBase ## SOMETIMES_CONSUMES\r
84 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingBase64 ## CONSUMES\r
85 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingSize ## CONSUMES\r
86 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareBase ## SOMETIMES_CONSUMES\r
87 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareBase64 ## CONSUMES\r
88 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareSize ## CONSUMES\r
8a2d4996 89\r
bad2be3e
SZ
90#\r
91# gBS->CalculateCrc32() is consumed in EntryPoint.\r
92# PI spec said: When the DXE Foundation is notified that the EFI_RUNTIME_ARCH_PROTOCOL\r
93# has been installed, then the Boot Service CalculateCrc32() is available.\r
94# So add gEfiRuntimeArchProtocolGuid Depex here.\r
95#\r
8a2d4996 96[Depex]\r
bad2be3e 97 gEfiSmmFirmwareVolumeBlockProtocolGuid AND gEfiRuntimeArchProtocolGuid\r
8a2d4996 98\r
6036e94d
SZ
99[UserExtensions.TianoCore."ExtraFiles"]\r
100 SmmFaultTolerantWriteDxeExtra.uni\r