]> git.proxmox.com Git - mirror_edk2.git/blame - MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteSmm.inf
Use SmmMemLib to check communication buffer.
[mirror_edk2.git] / MdeModulePkg / Universal / FaultTolerantWriteDxe / FaultTolerantWriteSmm.inf
CommitLineData
8a2d4996 1## @file\r
6036e94d
SZ
2# Fault Tolerant Write Smm Driver.\r
3#\r
8a2d4996 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
7# flash access.\r
8#\r
842b1242 9# Copyright (c) 2010 - 2015, 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
40 FaultTolerantWriteSmm.c\r
41 FaultTolerantWrite.h\r
3fee5868 42 FaultTolerantWriteSmmCommon.h\r
8a2d4996 43\r
44[Packages]\r
45 MdePkg/MdePkg.dec\r
46 MdeModulePkg/MdeModulePkg.dec\r
47\r
48[LibraryClasses]\r
49 SmmServicesTableLib\r
50 MemoryAllocationLib\r
51 BaseMemoryLib\r
52 UefiDriverEntryPoint\r
53 DebugLib\r
54 UefiLib\r
a326830d 55 PcdLib\r
2c4b18e0 56 ReportStatusCodeLib\r
842b1242 57 SmmMemLib\r
8a2d4996 58\r
59[Guids]\r
6036e94d
SZ
60 #\r
61 # Signature in EFI_FAULT_TOLERANT_WORKING_BLOCK_HEADER\r
62 #\r
63 ## CONSUMES ## GUID\r
64 ## PRODUCES ## GUID\r
65 gEdkiiWorkingBlockSignatureGuid\r
8a2d4996 66\r
67[Protocols]\r
6036e94d
SZ
68 gEfiSmmSwapAddressRangeProtocolGuid | gEfiMdeModulePkgTokenSpaceGuid.PcdFullFtwServiceEnable ## SOMETIMES_CONSUMES\r
69 ## NOTIFY\r
70 ## CONSUMES\r
71 gEfiSmmFirmwareVolumeBlockProtocolGuid\r
72 ## PRODUCES\r
73 ## UNDEFINED # SmiHandlerRegister\r
74 gEfiSmmFaultTolerantWriteProtocolGuid\r
c219324c 75 gEfiSmmAccess2ProtocolGuid ## CONSUMES\r
f07268bd 76 gEfiSmmEndOfDxeProtocolGuid ## CONSUMES\r
8a2d4996 77\r
78[FeaturePcd]\r
6036e94d 79 gEfiMdeModulePkgTokenSpaceGuid.PcdFullFtwServiceEnable ## CONSUMES\r
8a2d4996 80\r
81[Pcd]\r
6036e94d
SZ
82 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingBase ## SOMETIMES_CONSUMES\r
83 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingBase64 ## CONSUMES\r
84 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingSize ## CONSUMES\r
85 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareBase ## SOMETIMES_CONSUMES\r
86 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareBase64 ## CONSUMES\r
87 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareSize ## CONSUMES\r
8a2d4996 88\r
bad2be3e
SZ
89#\r
90# gBS->CalculateCrc32() is consumed in EntryPoint.\r
91# PI spec said: When the DXE Foundation is notified that the EFI_RUNTIME_ARCH_PROTOCOL\r
92# has been installed, then the Boot Service CalculateCrc32() is available.\r
93# So add gEfiRuntimeArchProtocolGuid Depex here.\r
94#\r
8a2d4996 95[Depex]\r
bad2be3e 96 gEfiSmmFirmwareVolumeBlockProtocolGuid AND gEfiRuntimeArchProtocolGuid\r
8a2d4996 97\r
6036e94d
SZ
98[UserExtensions.TianoCore."ExtraFiles"]\r
99 SmmFaultTolerantWriteDxeExtra.uni\r