]> git.proxmox.com Git - mirror_edk2.git/blame - MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteSmm.inf
MdeModulePkg: Replace BSD License with BSD+Patent License
[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
8a2d4996 55\r
56[Guids]\r
6036e94d
SZ
57 #\r
58 # Signature in EFI_FAULT_TOLERANT_WORKING_BLOCK_HEADER\r
59 #\r
60 ## CONSUMES ## GUID\r
61 ## PRODUCES ## GUID\r
62 gEdkiiWorkingBlockSignatureGuid\r
8a2d4996 63\r
64[Protocols]\r
6036e94d
SZ
65 gEfiSmmSwapAddressRangeProtocolGuid | gEfiMdeModulePkgTokenSpaceGuid.PcdFullFtwServiceEnable ## SOMETIMES_CONSUMES\r
66 ## NOTIFY\r
67 ## CONSUMES\r
68 gEfiSmmFirmwareVolumeBlockProtocolGuid\r
69 ## PRODUCES\r
70 ## UNDEFINED # SmiHandlerRegister\r
71 gEfiSmmFaultTolerantWriteProtocolGuid\r
22cedf5b 72 gEfiMmEndOfDxeProtocolGuid ## CONSUMES\r
8a2d4996 73\r
74[FeaturePcd]\r
6036e94d 75 gEfiMdeModulePkgTokenSpaceGuid.PcdFullFtwServiceEnable ## CONSUMES\r
8a2d4996 76\r
77[Pcd]\r
6036e94d
SZ
78 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingBase ## SOMETIMES_CONSUMES\r
79 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingBase64 ## CONSUMES\r
80 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingSize ## CONSUMES\r
81 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareBase ## SOMETIMES_CONSUMES\r
82 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareBase64 ## CONSUMES\r
83 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareSize ## CONSUMES\r
8a2d4996 84\r
bad2be3e
SZ
85#\r
86# gBS->CalculateCrc32() is consumed in EntryPoint.\r
87# PI spec said: When the DXE Foundation is notified that the EFI_RUNTIME_ARCH_PROTOCOL\r
88# has been installed, then the Boot Service CalculateCrc32() is available.\r
89# So add gEfiRuntimeArchProtocolGuid Depex here.\r
90#\r
8a2d4996 91[Depex]\r
bad2be3e 92 gEfiSmmFirmwareVolumeBlockProtocolGuid AND gEfiRuntimeArchProtocolGuid\r
8a2d4996 93\r
6036e94d
SZ
94[UserExtensions.TianoCore."ExtraFiles"]\r
95 SmmFaultTolerantWriteDxeExtra.uni\r