Add the following Pcds declaration in EdkModulePkg.spd file. EdkModulePkg PeiVariable...
[mirror_edk2.git] / EdkModulePkg / Universal / FirmwareVolume / FaultTolerantWriteLite / Dxe / FtwLite.msa
CommitLineData
878ddf1f 1<?xml version="1.0" encoding="UTF-8"?>\r
53b86193 2<!--Copyright (c) 2006, Intel Corporation
3All rights reserved. This program and the accompanying materials
4are licensed and made available under the terms and conditions of the BSD License
5which accompanies this distribution. The full text of the license may be found at
6http://opensource.org/licenses/bsd-license.php
7
8THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
1f86f081 9WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.-->\r
53b86193 10<ModuleSurfaceArea xmlns="http://www.TianoCore.org/2006/Edk2.0">\r
878ddf1f 11 <MsaHeader>\r
1f86f081 12 <ModuleName>FtwLite</ModuleName>\r
878ddf1f 13 <ModuleType>DXE_DRIVER</ModuleType>\r
1f86f081 14 <GuidValue>4C862FC6-0E54-4e36-8C8F-FF6F3167951F</GuidValue>\r
15 <Version>1.0</Version>\r
47a16b84
LG
16 <Abstract>Component description file for FtwLite module.</Abstract>\r
17 <Description>This driver provides fault tolerant write capability for block devices.</Description>\r
15f3b1d4 18 <Copyright>Copyright (c) 2006, Intel Corporation</Copyright>\r
53b86193 19 <License>All rights reserved. This program and the accompanying materials
20 are licensed and made available under the terms and conditions of the BSD License
21 which accompanies this distribution. The full text of the license may be found at
22 http://opensource.org/licenses/bsd-license.php
23 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
1f86f081 24 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.</License>\r
25 <Specification>FRAMEWORK_BUILD_PACKAGING_SPECIFICATION 0x00000052</Specification>\r
878ddf1f 26 </MsaHeader>\r
1f86f081 27 <ModuleDefinitions>\r
28 <SupportedArchitectures>IA32 X64 IPF EBC</SupportedArchitectures>\r
29 <BinaryModule>false</BinaryModule>\r
30 <OutputFileBasename>FtwLite</OutputFileBasename>\r
31 </ModuleDefinitions>\r
878ddf1f 32 <LibraryClassDefinitions>\r
202c5d55 33 <LibraryClass Usage="ALWAYS_CONSUMED">\r
34 <Keyword>PcdLib</Keyword>\r
35 </LibraryClass> \r
1f86f081 36 <LibraryClass Usage="ALWAYS_CONSUMED">\r
37 <Keyword>DebugLib</Keyword>\r
38 </LibraryClass>\r
39 <LibraryClass Usage="ALWAYS_CONSUMED">\r
40 <Keyword>UefiDriverEntryPoint</Keyword>\r
41 </LibraryClass>\r
42 <LibraryClass Usage="ALWAYS_CONSUMED">\r
43 <Keyword>UefiLib</Keyword>\r
44 </LibraryClass>\r
45 <LibraryClass Usage="ALWAYS_CONSUMED">\r
46 <Keyword>BaseLib</Keyword>\r
47 </LibraryClass>\r
48 <LibraryClass Usage="ALWAYS_CONSUMED">\r
49 <Keyword>HobLib</Keyword>\r
50 </LibraryClass>\r
51 <LibraryClass Usage="ALWAYS_CONSUMED">\r
52 <Keyword>BaseMemoryLib</Keyword>\r
53 </LibraryClass>\r
54 <LibraryClass Usage="ALWAYS_CONSUMED">\r
55 <Keyword>MemoryAllocationLib</Keyword>\r
56 </LibraryClass>\r
57 <LibraryClass Usage="ALWAYS_CONSUMED">\r
58 <Keyword>UefiBootServicesTableLib</Keyword>\r
59 </LibraryClass>\r
878ddf1f 60 </LibraryClassDefinitions>\r
61 <SourceFiles>\r
5094fb09 62 <Filename>FtwLite.h</Filename>\r
878ddf1f 63 <Filename>FtwLite.c</Filename>\r
64 <Filename>FtwMisc.c</Filename>\r
65 <Filename>FtwWorkSpace.c</Filename>\r
66 <Filename>FtwLite.dxs</Filename>\r
1f86f081 67 <Filename SupArchList="IA32">Ia32/Ia32FtwMisc.c</Filename>\r
68 <Filename SupArchList="X64">x64/x64FtwMisc.c</Filename>\r
69 <Filename SupArchList="IPF">Ipf/IpfFtwMisc.c</Filename>\r
70 <Filename SupArchList="EBC">Ia32/Ia32FtwMisc.c</Filename>\r
878ddf1f 71 </SourceFiles>\r
1f86f081 72 <PackageDependencies>\r
73 <Package PackageGuid="5e0e9358-46b6-4ae2-8218-4ab8b9bbdcec"/>\r
74 <Package PackageGuid="B6EC423C-21D2-490D-85C6-DD5864EAA674"/>\r
75 </PackageDependencies>\r
878ddf1f 76 <Protocols>\r
1f86f081 77 <Protocol Usage="ALWAYS_PRODUCED">\r
53b86193 78 <ProtocolCName>gEfiFaultTolerantWriteLiteProtocolGuid</ProtocolCName>\r
1f86f081 79 </Protocol>\r
80 <Protocol Usage="SOMETIMES_CONSUMED">\r
53b86193 81 <ProtocolCName>gEfiPciRootBridgeIoProtocolGuid</ProtocolCName>\r
1f86f081 82 </Protocol>\r
83 <Protocol Usage="ALWAYS_CONSUMED">\r
53b86193 84 <ProtocolCName>gEfiFirmwareVolumeBlockProtocolGuid</ProtocolCName>\r
1f86f081 85 </Protocol>\r
878ddf1f 86 </Protocols>\r
878ddf1f 87 <Guids>\r
1f86f081 88 <GuidCNames Usage="ALWAYS_CONSUMED">\r
53b86193 89 <GuidCName>gEfiFlashMapHobGuid</GuidCName>\r
1f86f081 90 </GuidCNames>\r
91 <GuidCNames Usage="ALWAYS_CONSUMED">\r
53b86193 92 <GuidCName>gEfiSystemNvDataFvGuid</GuidCName>\r
1f86f081 93 </GuidCNames>\r
878ddf1f 94 </Guids>\r
95 <Externs>\r
1f86f081 96 <Specification>EFI_SPECIFICATION_VERSION 0x00020000</Specification>\r
15b06e58 97 <Specification>EDK_RELEASE_VERSION 0x00020000</Specification>\r
878ddf1f 98 <Extern>\r
99 <ModuleEntryPoint>InitializeFtwLite</ModuleEntryPoint>\r
100 </Extern>\r
101 </Externs>\r
202c5d55 102 <PcdCoded>\r
42ef7fcd 103 <PcdEntry PcdItemType="DYNAMIC" Usage="ALWAYS_CONSUMED">\r
202c5d55 104 <C_Name>PcdFlashNvStorageFtwSpareBase</C_Name>\r
105 <TokenSpaceGuidCName>gEfiGenericPlatformTokenSpaceGuid</TokenSpaceGuidCName>\r
106 <HelpText>To get base address of the FTW spare block section in NV firmware volume.</HelpText>\r
107 </PcdEntry>\r
42ef7fcd 108 <PcdEntry PcdItemType="DYNAMIC" Usage="ALWAYS_CONSUMED">\r
202c5d55 109 <C_Name>PcdFlashNvStorageFtwSpareSize</C_Name>\r
110 <TokenSpaceGuidCName>gEfiGenericPlatformTokenSpaceGuid</TokenSpaceGuidCName>\r
111 <HelpText>To get size of the FTW spare block section in NV firmware volume.</HelpText>\r
112 </PcdEntry>\r
42ef7fcd 113 <PcdEntry PcdItemType="DYNAMIC" Usage="ALWAYS_CONSUMED">\r
202c5d55 114 <C_Name>PcdFlashNvStorageFtwWorkingBase</C_Name>\r
115 <TokenSpaceGuidCName>gEfiGenericPlatformTokenSpaceGuid</TokenSpaceGuidCName>\r
116 <HelpText>To get base address of the FTW working block section in NV firmware volume.</HelpText>\r
117 </PcdEntry>\r
42ef7fcd 118 <PcdEntry PcdItemType="DYNAMIC" Usage="ALWAYS_CONSUMED">\r
202c5d55 119 <C_Name>PcdFlashNvStorageFtwWorkingSize</C_Name>\r
120 <TokenSpaceGuidCName>gEfiGenericPlatformTokenSpaceGuid</TokenSpaceGuidCName>\r
121 <HelpText>To get size of the FTW working block section in NV firmware volume.</HelpText>\r
122 </PcdEntry>\r
123 </PcdCoded>\r
1f86f081 124</ModuleSurfaceArea>