1## @file 2# Fault Tolerant Write Dxe Driver. 3# 4# This driver installs Fault Tolerant Write (FTW) protocol, 5# which provides fault tolerant write capability for block devices. 6# Its implementation depends on the full functionality FVB protocol that support read, write/erase flash access. 7# 8# Copyright (c) 2006 - 2014, Intel Corporation. All rights reserved.<BR> 9# 10# This program and the accompanying materials 11# are licensed and made available under the terms and conditions of the BSD License 12# which accompanies this distribution. The full text of the license may be found at 13# http://opensource.org/licenses/bsd-license.php 14# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 15# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 16# 17## 18 19[Defines] 20 INF_VERSION = 0x00010005 21 BASE_NAME = FaultTolerantWriteDxe 22 MODULE_UNI_FILE = FaultTolerantWriteDxe.uni 23 FILE_GUID = FE5CEA76-4F72-49e8-986F-2CD899DFFE5D 24 MODULE_TYPE = DXE_DRIVER 25 VERSION_STRING = 1.0 26 ENTRY_POINT = FaultTolerantWriteInitialize 27 28# 29# The following information is for reference only and not required by the build tools. 30# 31# VALID_ARCHITECTURES = IA32 X64 IPF EBC 32# 33 34[Sources] 35 FtwMisc.c 36 UpdateWorkingBlock.c 37 FaultTolerantWrite.c 38 FaultTolerantWriteDxe.c 39 FaultTolerantWrite.h 40 41[Packages] 42 MdePkg/MdePkg.dec 43 MdeModulePkg/MdeModulePkg.dec 44 45[LibraryClasses] 46 UefiBootServicesTableLib 47 MemoryAllocationLib 48 BaseMemoryLib 49 UefiDriverEntryPoint 50 DebugLib 51 UefiLib 52 PcdLib 53 ReportStatusCodeLib 54 55[Guids] 56 # 57 # Signature in EFI_FAULT_TOLERANT_WORKING_BLOCK_HEADER 58 # 59 ## CONSUMES ## GUID 60 ## PRODUCES ## GUID 61 gEdkiiWorkingBlockSignatureGuid 62 63[Protocols] 64 gEfiSwapAddressRangeProtocolGuid | gEfiMdeModulePkgTokenSpaceGuid.PcdFullFtwServiceEnable ## SOMETIMES_CONSUMES 65 ## NOTIFY 66 ## CONSUMES 67 gEfiFirmwareVolumeBlockProtocolGuid 68 gEfiFaultTolerantWriteProtocolGuid ## PRODUCES 69 70[FeaturePcd] 71 gEfiMdeModulePkgTokenSpaceGuid.PcdFullFtwServiceEnable ## CONSUMES 72 73[Pcd] 74 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingBase ## SOMETIMES_CONSUMES 75 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingBase64 ## CONSUMES 76 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingSize ## CONSUMES 77 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareBase ## SOMETIMES_CONSUMES 78 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareBase64 ## CONSUMES 79 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareSize ## CONSUMES 80 81# 82# gBS->CalculateCrc32() is consumed in EntryPoint. 83# PI spec said: When the DXE Foundation is notified that the EFI_RUNTIME_ARCH_PROTOCOL 84# has been installed, then the Boot Service CalculateCrc32() is available. 85# So add gEfiRuntimeArchProtocolGuid Depex here. 86# 87[Depex] 88 gEfiFirmwareVolumeBlockProtocolGuid AND gEfiRuntimeArchProtocolGuid 89 90[UserExtensions.TianoCore."ExtraFiles"] 91 FaultTolerantWriteDxeExtra.uni 92