MdeModulePkg/PiSmmCore: Implement heap guard feature for SMM mode
[mirror_edk2.git] / MdeModulePkg / Core / PiSmmCore / PiSmmCore.inf
1 ## @file
2 # This module provide an SMM CIS compliant implementation of SMM Core.
3 #
4 # Copyright (c) 2009 - 2017, Intel Corporation. All rights reserved.<BR>
5 #
6 # This program and the accompanying materials
7 # are licensed and made available under the terms and conditions of the BSD License
8 # which accompanies this distribution. The full text of the license may be found at
9 # http://opensource.org/licenses/bsd-license.php
10 # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
11 # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
12 #
13 ##
14
15 [Defines]
16 INF_VERSION = 0x00010005
17 BASE_NAME = PiSmmCore
18 MODULE_UNI_FILE = PiSmmCore.uni
19 FILE_GUID = E94F54CD-81EB-47ed-AEC3-856F5DC157A9
20 MODULE_TYPE = SMM_CORE
21 VERSION_STRING = 1.0
22 PI_SPECIFICATION_VERSION = 0x0001000A
23 ENTRY_POINT = SmmMain
24
25 # VALID_ARCHITECTURES = IA32 X64
26
27 [Sources]
28 PiSmmCore.c
29 PiSmmCore.h
30 PiSmmCorePrivateData.h
31 Page.c
32 Pool.c
33 Handle.c
34 Locate.c
35 Notify.c
36 Dependency.c
37 Dispatcher.c
38 Smi.c
39 InstallConfigurationTable.c
40 SmramProfileRecord.c
41 MemoryAttributesTable.c
42 SmiHandlerProfile.c
43 HeapGuard.c
44
45 [Packages]
46 MdePkg/MdePkg.dec
47 MdeModulePkg/MdeModulePkg.dec
48
49 [LibraryClasses]
50 UefiDriverEntryPoint
51 BaseLib
52 BaseMemoryLib
53 PeCoffLib
54 PeCoffGetEntryPointLib
55 CacheMaintenanceLib
56 DebugLib
57 ReportStatusCodeLib
58 DevicePathLib
59 UefiLib
60 UefiBootServicesTableLib
61 MemoryAllocationLib
62 PcdLib
63 SmmCorePlatformHookLib
64 PerformanceLib
65 TimerLib
66 HobLib
67 SmmMemLib
68 DxeServicesLib
69
70 [Protocols]
71 gEfiDxeSmmReadyToLockProtocolGuid ## UNDEFINED # SmiHandlerRegister
72 gEfiSmmReadyToLockProtocolGuid ## PRODUCES
73 gEfiSmmCpuIo2ProtocolGuid ## CONSUMES
74 gEfiFirmwareVolume2ProtocolGuid ## CONSUMES
75 gEfiSmmEndOfDxeProtocolGuid ## PRODUCES
76 gEfiSecurityArchProtocolGuid ## SOMETIMES_CONSUMES
77 gEfiSecurity2ArchProtocolGuid ## SOMETIMES_CONSUMES
78 gEfiLoadedImageProtocolGuid ## PRODUCES
79 gEfiDevicePathProtocolGuid ## CONSUMES
80 gEdkiiSmmExitBootServicesProtocolGuid ## SOMETIMES_PRODUCES
81 gEdkiiSmmLegacyBootProtocolGuid ## SOMETIMES_PRODUCES
82 gEdkiiSmmReadyToBootProtocolGuid ## PRODUCES
83 gEdkiiSmmEndOfS3ResumeProtocolGuid ## SOMETIMES_PRODUCES
84
85 gEfiSmmSwDispatch2ProtocolGuid ## SOMETIMES_CONSUMES
86 gEfiSmmSxDispatch2ProtocolGuid ## SOMETIMES_CONSUMES
87 gEfiSmmPowerButtonDispatch2ProtocolGuid ## SOMETIMES_CONSUMES
88 gEfiSmmStandbyButtonDispatch2ProtocolGuid ## SOMETIMES_CONSUMES
89 gEfiSmmPeriodicTimerDispatch2ProtocolGuid ## SOMETIMES_CONSUMES
90 gEfiSmmGpiDispatch2ProtocolGuid ## SOMETIMES_CONSUMES
91 gEfiSmmIoTrapDispatch2ProtocolGuid ## SOMETIMES_CONSUMES
92 gEfiSmmUsbDispatch2ProtocolGuid ## SOMETIMES_CONSUMES
93 gEfiSmmCpuProtocolGuid ## SOMETIMES_CONSUMES
94 gEdkiiSmmMemoryAttributeProtocolGuid ## CONSUMES
95
96 [Pcd]
97 gEfiMdeModulePkgTokenSpaceGuid.PcdLoadFixAddressSmmCodePageNumber ## SOMETIMES_CONSUMES
98 gEfiMdeModulePkgTokenSpaceGuid.PcdLoadModuleAtFixAddressEnable ## CONSUMES
99 gEfiMdeModulePkgTokenSpaceGuid.PcdMemoryProfileMemoryType ## CONSUMES
100 gEfiMdeModulePkgTokenSpaceGuid.PcdMemoryProfilePropertyMask ## CONSUMES
101 gEfiMdeModulePkgTokenSpaceGuid.PcdMemoryProfileDriverPath ## CONSUMES
102 gEfiMdeModulePkgTokenSpaceGuid.PcdSmiHandlerProfilePropertyMask ## CONSUMES
103 gEfiMdeModulePkgTokenSpaceGuid.PcdHeapGuardPageType ## CONSUMES
104 gEfiMdeModulePkgTokenSpaceGuid.PcdHeapGuardPoolType ## CONSUMES
105 gEfiMdeModulePkgTokenSpaceGuid.PcdHeapGuardPropertyMask ## CONSUMES
106
107 [Guids]
108 gAprioriGuid ## SOMETIMES_CONSUMES ## File
109 gEfiEventDxeDispatchGuid ## PRODUCES ## GUID # SmiHandlerRegister
110 gEfiEventLegacyBootGuid ## PRODUCES ## GUID # SmiHandlerRegister
111 gEfiEventExitBootServicesGuid ## PRODUCES ## GUID # SmiHandlerRegister
112 gEfiEventReadyToBootGuid ## PRODUCES ## GUID # SmiHandlerRegister
113 gEfiEndOfDxeEventGroupGuid ## PRODUCES ## GUID # SmiHandlerRegister
114 ## SOMETIMES_CONSUMES ## GUID # Locate protocol
115 ## SOMETIMES_PRODUCES ## GUID # SmiHandlerRegister
116 gEdkiiMemoryProfileGuid
117 ## SOMETIMES_PRODUCES ## GUID # Install protocol
118 gEdkiiSmmMemoryProfileGuid
119 gEdkiiPiSmmMemoryAttributesTableGuid ## PRODUCES ## SystemTable
120 ## SOMETIMES_CONSUMES ## SystemTable
121 gLoadFixedAddressConfigurationTableGuid
122 ## SOMETIMES_PRODUCES ## GUID # Install protocol
123 ## SOMETIMES_PRODUCES ## GUID # SmiHandlerRegister
124 gSmiHandlerProfileGuid
125
126 [UserExtensions.TianoCore."ExtraFiles"]
127 PiSmmCoreExtra.uni