2 # Fault Tolerant Write Smm Driver.
4 # This driver installs SMM Fault Tolerant Write (FTW) protocol, which provides fault
5 # tolerant write capability in SMM environment for block devices. Its implementation
6 # depends on the full functionality SMM FVB protocol that support read, write/erase
9 # Copyright (c) 2010 - 2018, Intel Corporation. All rights reserved.<BR>
11 # SPDX-License-Identifier: BSD-2-Clause-Patent
16 INF_VERSION = 0x00010005
17 BASE_NAME = SmmFaultTolerantWriteDxe
18 MODULE_UNI_FILE = SmmFaultTolerantWriteDxe.uni
19 FILE_GUID = 470CB248-E8AC-473c-BB4F-81069A1FE6FD
20 MODULE_TYPE = DXE_SMM_DRIVER
22 PI_SPECIFICATION_VERSION = 0x0001000A
23 ENTRY_POINT = SmmFaultTolerantWriteInitialize
26 # The following information is for reference only and not required by the build tools.
28 # VALID_ARCHITECTURES = IA32 X64
35 FaultTolerantWriteTraditionalMm.c
36 FaultTolerantWriteSmm.c
38 FaultTolerantWriteSmmCommon.h
42 MdeModulePkg/MdeModulePkg.dec
60 # Signature in EFI_FAULT_TOLERANT_WORKING_BLOCK_HEADER
64 gEdkiiWorkingBlockSignatureGuid
67 gEfiSmmSwapAddressRangeProtocolGuid | gEfiMdeModulePkgTokenSpaceGuid.PcdFullFtwServiceEnable ## SOMETIMES_CONSUMES
70 gEfiSmmFirmwareVolumeBlockProtocolGuid
72 ## UNDEFINED # SmiHandlerRegister
73 gEfiSmmFaultTolerantWriteProtocolGuid
74 gEfiMmEndOfDxeProtocolGuid ## CONSUMES
77 gEfiMdeModulePkgTokenSpaceGuid.PcdFullFtwServiceEnable ## CONSUMES
80 # gBS->CalculateCrc32() is consumed in EntryPoint.
81 # PI spec said: When the DXE Foundation is notified that the EFI_RUNTIME_ARCH_PROTOCOL
82 # has been installed, then the Boot Service CalculateCrc32() is available.
83 # So add gEfiRuntimeArchProtocolGuid Depex here.
86 gEfiSmmFirmwareVolumeBlockProtocolGuid AND gEfiRuntimeArchProtocolGuid
88 [UserExtensions.TianoCore."ExtraFiles"]
89 SmmFaultTolerantWriteDxeExtra.uni