2 # This driver installs SMM Fault Tolerant Write (FTW) protocol, which provides fault
3 # tolerant write capability in SMM environment for block devices. Its implementation
4 # depends on the full functionality SMM FVB protocol that support read, write/erase
7 # Copyright (c) 2010 - 2014, Intel Corporation. All rights reserved.<BR>
9 # This program and the accompanying materials
10 # are licensed and made available under the terms and conditions of the BSD License
11 # which accompanies this distribution. The full text of the license may be found at
12 # http://opensource.org/licenses/bsd-license.php
13 # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
14 # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
19 INF_VERSION = 0x00010005
20 BASE_NAME = SmmFaultTolerantWriteDxe
21 FILE_GUID = 470CB248-E8AC-473c-BB4F-81069A1FE6FD
22 MODULE_TYPE = DXE_SMM_DRIVER
24 PI_SPECIFICATION_VERSION = 0x0001000A
25 ENTRY_POINT = SmmFaultTolerantWriteInitialize
28 # The following information is for reference only and not required by the build tools.
30 # VALID_ARCHITECTURES = IA32 X64
37 FaultTolerantWriteSmm.c
39 FaultTolerantWriteSmmCommon.h
43 MdeModulePkg/MdeModulePkg.dec
56 gEdkiiWorkingBlockSignatureGuid ## CONSUMES ## FV Signature of Working Space Header
59 gEfiSmmSwapAddressRangeProtocolGuid | gEfiMdeModulePkgTokenSpaceGuid.PcdFullFtwServiceEnable ## CONSUMES
60 gEfiSmmFirmwareVolumeBlockProtocolGuid ## CONSUMES
61 gEfiSmmFaultTolerantWriteProtocolGuid ## PRODUCES
62 gEfiSmmAccess2ProtocolGuid ## CONSUMES
63 gEfiSmmEndOfDxeProtocolGuid ## CONSUMES
66 gEfiMdeModulePkgTokenSpaceGuid.PcdFullFtwServiceEnable
69 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingBase
70 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingBase64
71 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingSize
72 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareBase
73 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareBase64
74 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareSize
77 # gBS->CalculateCrc32() is consumed in EntryPoint.
78 # PI spec said: When the DXE Foundation is notified that the EFI_RUNTIME_ARCH_PROTOCOL
79 # has been installed, then the Boot Service CalculateCrc32() is available.
80 # So add gEfiRuntimeArchProtocolGuid Depex here.
83 gEfiSmmFirmwareVolumeBlockProtocolGuid AND gEfiRuntimeArchProtocolGuid