1 | ## @file
|
---|
2 | # This driver installs SMM Fault Tolerant Write (FTW) protocol, which provides fault
|
---|
3 | # tolerant write capability in SMM environment for block devices. Its implementation
|
---|
4 | # depends on the full functionality SMM FVB protocol that support read, write/erase
|
---|
5 | # flash access.
|
---|
6 | #
|
---|
7 | # Copyright (c) 2010 - 2011, Intel Corporation. All rights reserved.<BR>
|
---|
8 | #
|
---|
9 | # This program and the accompanying materials
|
---|
10 | # are licensed and made available under the terms and conditions of the BSD License
|
---|
11 | # which accompanies this distribution. The full text of the license may be found at
|
---|
12 | # http://opensource.org/licenses/bsd-license.php
|
---|
13 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
---|
14 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
---|
15 | #
|
---|
16 | ##
|
---|
17 |
|
---|
18 | [Defines]
|
---|
19 | INF_VERSION = 0x00010005
|
---|
20 | BASE_NAME = SmmFaultTolerantWriteDxe
|
---|
21 | FILE_GUID = 470CB248-E8AC-473c-BB4F-81069A1FE6FD
|
---|
22 | MODULE_TYPE = DXE_SMM_DRIVER
|
---|
23 | VERSION_STRING = 1.0
|
---|
24 | PI_SPECIFICATION_VERSION = 0x0001000A
|
---|
25 | ENTRY_POINT = SmmFaultTolerantWriteInitialize
|
---|
26 |
|
---|
27 | #
|
---|
28 | # The following information is for reference only and not required by the build tools.
|
---|
29 | #
|
---|
30 | # VALID_ARCHITECTURES = IA32 X64
|
---|
31 | #
|
---|
32 |
|
---|
33 | [Sources]
|
---|
34 | FtwMisc.c
|
---|
35 | UpdateWorkingBlock.c
|
---|
36 | FaultTolerantWrite.c
|
---|
37 | FaultTolerantWriteSmm.c
|
---|
38 | FaultTolerantWrite.h
|
---|
39 | FaultTolerantWriteSmmCommon.h
|
---|
40 |
|
---|
41 | [Packages]
|
---|
42 | MdePkg/MdePkg.dec
|
---|
43 | MdeModulePkg/MdeModulePkg.dec
|
---|
44 |
|
---|
45 | [LibraryClasses]
|
---|
46 | SmmServicesTableLib
|
---|
47 | MemoryAllocationLib
|
---|
48 | BaseMemoryLib
|
---|
49 | UefiDriverEntryPoint
|
---|
50 | DebugLib
|
---|
51 | UefiLib
|
---|
52 |
|
---|
53 | [Guids]
|
---|
54 | gEfiSystemNvDataFvGuid ## CONSUMES ## FV Signature of Working Space Header
|
---|
55 |
|
---|
56 | [Protocols]
|
---|
57 | gEfiSmmSwapAddressRangeProtocolGuid | gEfiMdeModulePkgTokenSpaceGuid.PcdFullFtwServiceEnable ## CONSUMES
|
---|
58 | gEfiSmmFirmwareVolumeBlockProtocolGuid ## CONSUMES
|
---|
59 | gEfiSmmFaultTolerantWriteProtocolGuid ## PRODUCES
|
---|
60 |
|
---|
61 | [FeaturePcd]
|
---|
62 | gEfiMdeModulePkgTokenSpaceGuid.PcdFullFtwServiceEnable
|
---|
63 |
|
---|
64 | [Pcd]
|
---|
65 | gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingBase
|
---|
66 | gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingBase64
|
---|
67 | gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingSize
|
---|
68 | gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareBase
|
---|
69 | gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareBase64
|
---|
70 | gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareSize
|
---|
71 |
|
---|
72 | [Depex]
|
---|
73 | gEfiSmmFirmwareVolumeBlockProtocolGuid
|
---|
74 |
|
---|