]> git.proxmox.com Git - mirror_edk2.git/blob - MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteSmm.inf
MdeModulePkg: Fix coding style issues
[mirror_edk2.git] / MdeModulePkg / Universal / FaultTolerantWriteDxe / FaultTolerantWriteSmm.inf
1 ## @file
2 # Fault Tolerant Write Smm Driver.
3 #
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
7 # flash access.
8 #
9 # Copyright (c) 2010 - 2018, Intel Corporation. All rights reserved.<BR>
10 #
11 # This program and the accompanying materials
12 # are licensed and made available under the terms and conditions of the BSD License
13 # which accompanies this distribution. The full text of the license may be found at
14 # http://opensource.org/licenses/bsd-license.php
15 # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
16 # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
17 #
18 ##
19
20 [Defines]
21 INF_VERSION = 0x00010005
22 BASE_NAME = SmmFaultTolerantWriteDxe
23 MODULE_UNI_FILE = SmmFaultTolerantWriteDxe.uni
24 FILE_GUID = 470CB248-E8AC-473c-BB4F-81069A1FE6FD
25 MODULE_TYPE = DXE_SMM_DRIVER
26 VERSION_STRING = 1.0
27 PI_SPECIFICATION_VERSION = 0x0001000A
28 ENTRY_POINT = SmmFaultTolerantWriteInitialize
29
30 #
31 # The following information is for reference only and not required by the build tools.
32 #
33 # VALID_ARCHITECTURES = IA32 X64
34 #
35
36 [Sources]
37 FtwMisc.c
38 UpdateWorkingBlock.c
39 FaultTolerantWrite.c
40 FaultTolerantWriteTraditionalMm.c
41 FaultTolerantWriteSmm.c
42 FaultTolerantWrite.h
43 FaultTolerantWriteSmmCommon.h
44
45 [Packages]
46 MdePkg/MdePkg.dec
47 MdeModulePkg/MdeModulePkg.dec
48
49 [LibraryClasses]
50 MmServicesTableLib
51 MemoryAllocationLib
52 BaseMemoryLib
53 UefiDriverEntryPoint
54 DebugLib
55 UefiLib
56 PcdLib
57 ReportStatusCodeLib
58 SmmMemLib
59 BaseLib
60
61 [Guids]
62 #
63 # Signature in EFI_FAULT_TOLERANT_WORKING_BLOCK_HEADER
64 #
65 ## CONSUMES ## GUID
66 ## PRODUCES ## GUID
67 gEdkiiWorkingBlockSignatureGuid
68
69 [Protocols]
70 gEfiSmmSwapAddressRangeProtocolGuid | gEfiMdeModulePkgTokenSpaceGuid.PcdFullFtwServiceEnable ## SOMETIMES_CONSUMES
71 ## NOTIFY
72 ## CONSUMES
73 gEfiSmmFirmwareVolumeBlockProtocolGuid
74 ## PRODUCES
75 ## UNDEFINED # SmiHandlerRegister
76 gEfiSmmFaultTolerantWriteProtocolGuid
77 gEfiMmEndOfDxeProtocolGuid ## CONSUMES
78
79 [FeaturePcd]
80 gEfiMdeModulePkgTokenSpaceGuid.PcdFullFtwServiceEnable ## CONSUMES
81
82 [Pcd]
83 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingBase ## SOMETIMES_CONSUMES
84 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingBase64 ## CONSUMES
85 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingSize ## CONSUMES
86 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareBase ## SOMETIMES_CONSUMES
87 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareBase64 ## CONSUMES
88 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareSize ## CONSUMES
89
90 #
91 # gBS->CalculateCrc32() is consumed in EntryPoint.
92 # PI spec said: When the DXE Foundation is notified that the EFI_RUNTIME_ARCH_PROTOCOL
93 # has been installed, then the Boot Service CalculateCrc32() is available.
94 # So add gEfiRuntimeArchProtocolGuid Depex here.
95 #
96 [Depex]
97 gEfiSmmFirmwareVolumeBlockProtocolGuid AND gEfiRuntimeArchProtocolGuid
98
99 [UserExtensions.TianoCore."ExtraFiles"]
100 SmmFaultTolerantWriteDxeExtra.uni