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 - 2018, Intel Corporation. All rights reserved.<BR>
|
---|
9 | #
|
---|
10 | # SPDX-License-Identifier: BSD-2-Clause-Patent
|
---|
11 | #
|
---|
12 | ##
|
---|
13 |
|
---|
14 | [Defines]
|
---|
15 | INF_VERSION = 0x00010005
|
---|
16 | BASE_NAME = FaultTolerantWriteDxe
|
---|
17 | MODULE_UNI_FILE = FaultTolerantWriteDxe.uni
|
---|
18 | FILE_GUID = FE5CEA76-4F72-49e8-986F-2CD899DFFE5D
|
---|
19 | MODULE_TYPE = DXE_DRIVER
|
---|
20 | VERSION_STRING = 1.0
|
---|
21 | ENTRY_POINT = FaultTolerantWriteInitialize
|
---|
22 |
|
---|
23 | #
|
---|
24 | # The following information is for reference only and not required by the build tools.
|
---|
25 | #
|
---|
26 | # VALID_ARCHITECTURES = IA32 X64 EBC
|
---|
27 | #
|
---|
28 |
|
---|
29 | [Sources]
|
---|
30 | FtwMisc.c
|
---|
31 | UpdateWorkingBlock.c
|
---|
32 | FaultTolerantWrite.c
|
---|
33 | FaultTolerantWriteDxe.c
|
---|
34 | FaultTolerantWrite.h
|
---|
35 |
|
---|
36 | [Packages]
|
---|
37 | MdePkg/MdePkg.dec
|
---|
38 | MdeModulePkg/MdeModulePkg.dec
|
---|
39 |
|
---|
40 | [LibraryClasses]
|
---|
41 | UefiBootServicesTableLib
|
---|
42 | MemoryAllocationLib
|
---|
43 | BaseMemoryLib
|
---|
44 | UefiDriverEntryPoint
|
---|
45 | DebugLib
|
---|
46 | UefiLib
|
---|
47 | PcdLib
|
---|
48 | ReportStatusCodeLib
|
---|
49 | SafeIntLib
|
---|
50 | VariableFlashInfoLib
|
---|
51 |
|
---|
52 | [Guids]
|
---|
53 | #
|
---|
54 | # Signature in EFI_FAULT_TOLERANT_WORKING_BLOCK_HEADER
|
---|
55 | #
|
---|
56 | ## CONSUMES ## GUID
|
---|
57 | ## PRODUCES ## GUID
|
---|
58 | gEdkiiWorkingBlockSignatureGuid
|
---|
59 |
|
---|
60 | [Protocols]
|
---|
61 | gEfiSwapAddressRangeProtocolGuid | gEfiMdeModulePkgTokenSpaceGuid.PcdFullFtwServiceEnable ## SOMETIMES_CONSUMES
|
---|
62 | ## NOTIFY
|
---|
63 | ## CONSUMES
|
---|
64 | gEfiFirmwareVolumeBlockProtocolGuid
|
---|
65 | gEfiFaultTolerantWriteProtocolGuid ## PRODUCES
|
---|
66 |
|
---|
67 | [FeaturePcd]
|
---|
68 | gEfiMdeModulePkgTokenSpaceGuid.PcdFullFtwServiceEnable ## CONSUMES
|
---|
69 |
|
---|
70 | #
|
---|
71 | # gBS->CalculateCrc32() is consumed in EntryPoint.
|
---|
72 | # PI spec said: When the DXE Foundation is notified that the EFI_RUNTIME_ARCH_PROTOCOL
|
---|
73 | # has been installed, then the Boot Service CalculateCrc32() is available.
|
---|
74 | # So add gEfiRuntimeArchProtocolGuid Depex here.
|
---|
75 | #
|
---|
76 | [Depex]
|
---|
77 | gEfiFirmwareVolumeBlockProtocolGuid AND gEfiRuntimeArchProtocolGuid
|
---|
78 |
|
---|
79 | [UserExtensions.TianoCore."ExtraFiles"]
|
---|
80 | FaultTolerantWriteDxeExtra.uni
|
---|