]> git.proxmox.com Git - mirror_edk2.git/blame - UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.inf
Uninstall LoadedImage protocol if SMM driver returns error and is unloaded.
[mirror_edk2.git] / UefiCpuPkg / PiSmmCpuDxeSmm / PiSmmCpuDxeSmm.inf
CommitLineData
529a5a86
MK
1## @file\r
2# CPU SMM driver.\r
3#\r
4# This SMM driver performs SMM initialization, deploy SMM Entry Vector,\r
5# provides CPU specific services in SMM.\r
6#\r
7# Copyright (c) 2009 - 2015, Intel Corporation. All rights reserved.<BR>\r
8#\r
9# This program and the accompanying materials\r
10# are licensed and made available under the terms and conditions of the BSD License\r
11# which accompanies this distribution. The full text of the license may be found at\r
12# http://opensource.org/licenses/bsd-license.php\r
13#\r
14# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
15# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
16#\r
17##\r
18\r
19[Defines]\r
20 INF_VERSION = 0x00010005\r
21 BASE_NAME = PiSmmCpuDxeSmm\r
22 MODULE_UNI_FILE = PiSmmCpuDxeSmm.uni\r
23 FILE_GUID = A3FF0EF5-0C28-42f5-B544-8C7DE1E80014\r
24 MODULE_TYPE = DXE_SMM_DRIVER\r
25 VERSION_STRING = 1.0\r
26 PI_SPECIFICATION_VERSION = 0x0001000A\r
27 ENTRY_POINT = PiCpuSmmEntry\r
28\r
29#\r
30# The following information is for reference only and not required by the build tools.\r
31#\r
32# VALID_ARCHITECTURES = IA32 X64\r
33#\r
34\r
35[Sources]\r
36 PiSmmCpuDxeSmm.c\r
37 PiSmmCpuDxeSmm.h\r
38 MpService.c\r
39 SyncTimer.c\r
40 CpuS3.c\r
41 CpuService.c\r
42 CpuService.h\r
43 SmmProfile.c\r
44 SmmProfile.h\r
45 SmmProfileInternal.h\r
46 SmramSaveState.c\r
47\r
48[Sources.Ia32]\r
49 Ia32/Semaphore.c\r
50 Ia32/PageTbl.c\r
51 Ia32/SmmProfileArch.c\r
52 Ia32/SmmProfileArch.h\r
53 Ia32/SmmInit.asm | MSFT\r
54 Ia32/SmiEntry.asm | MSFT\r
55 Ia32/SmiException.asm | MSFT\r
56 Ia32/MpFuncs.asm | MSFT\r
57\r
58 Ia32/SmmInit.asm | INTEL\r
59 Ia32/SmiEntry.asm | INTEL\r
60 Ia32/SmiException.asm | INTEL\r
61 Ia32/MpFuncs.asm | INTEL\r
62\r
63 Ia32/SmmInit.S | GCC\r
64 Ia32/SmiEntry.S | GCC\r
65 Ia32/SmiException.S | GCC\r
66 Ia32/MpFuncs.S | GCC\r
67\r
68[Sources.X64]\r
69 X64/Semaphore.c\r
70 X64/PageTbl.c\r
71 X64/SmmProfileArch.c\r
72 X64/SmmProfileArch.h\r
73 X64/SmmInit.asm | MSFT\r
74 X64/SmiEntry.asm | MSFT\r
75 X64/SmiException.asm | MSFT\r
76 X64/MpFuncs.asm | MSFT\r
77\r
78 X64/SmmInit.asm | INTEL\r
79 X64/SmiEntry.asm | INTEL\r
80 X64/SmiException.asm | INTEL\r
81 X64/MpFuncs.asm | INTEL\r
82\r
83 X64/SmmInit.S | GCC\r
84 X64/SmiEntry.S | GCC\r
85 X64/SmiException.S | GCC\r
86 X64/MpFuncs.S | GCC\r
87\r
88[Packages]\r
89 MdePkg/MdePkg.dec\r
90 MdeModulePkg/MdeModulePkg.dec\r
91 UefiCpuPkg/UefiCpuPkg.dec\r
529a5a86
MK
92\r
93[LibraryClasses]\r
94 UefiDriverEntryPoint\r
95 UefiRuntimeServicesTableLib\r
96 CacheMaintenanceLib\r
97 PcdLib\r
98 DebugLib\r
99 BaseLib\r
100 SynchronizationLib\r
101 BaseMemoryLib\r
102 MtrrLib\r
529a5a86
MK
103 IoLib\r
104 TimerLib\r
105 SmmServicesTableLib\r
106 MemoryAllocationLib\r
107 DebugAgentLib\r
108 HobLib\r
109 PciLib\r
110 LocalApicLib\r
111 UefiCpuLib\r
112 SmmCpuPlatformHookLib\r
113 CpuExceptionHandlerLib\r
114 UefiLib\r
115 DxeServicesTableLib\r
116 CpuLib\r
117 ReportStatusCodeLib\r
118 SmmCpuFeaturesLib\r
119 PeCoffGetEntryPointLib\r
120\r
121[Protocols]\r
122 gEfiSmmAccess2ProtocolGuid ## CONSUMES\r
123 gEfiMpServiceProtocolGuid ## CONSUMES\r
124 gEfiSmmConfigurationProtocolGuid ## PRODUCES\r
125 gEfiSmmCpuProtocolGuid ## PRODUCES\r
126 gEfiSmmReadyToLockProtocolGuid ## NOTIFY\r
127 gEfiSmmCpuServiceProtocolGuid ## PRODUCES\r
529a5a86
MK
128\r
129[Guids]\r
130 gEfiAcpiVariableGuid ## SOMETIMES_CONSUMES ## HOB # it is used for S3 boot.\r
131 gEfiGlobalVariableGuid ## SOMETIMES_PRODUCES ## Variable:L"SmmProfileData"\r
132 gEfiAcpi20TableGuid ## SOMETIMES_CONSUMES ## SystemTable\r
133 gEfiAcpi10TableGuid ## SOMETIMES_CONSUMES ## SystemTable\r
134\r
135[FeaturePcd]\r
529a5a86
MK
136 gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmDebug ## CONSUMES\r
137 gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmBlockStartupThisAp ## CONSUMES\r
138 gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmEnableBspElection ## CONSUMES\r
139 gUefiCpuPkgTokenSpaceGuid.PcdCpuHotPlugSupport ## CONSUMES\r
140 gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmStackGuard ## CONSUMES\r
141 gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmProfileEnable ## CONSUMES\r
142 gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmProfileRingBuffer ## CONSUMES\r
143 gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmFeatureControlMsrLock ## CONSUMES\r
144\r
145[Pcd]\r
146 gUefiCpuPkgTokenSpaceGuid.PcdCpuMaxLogicalProcessorNumber ## SOMETIMES_CONSUMES\r
147 gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmProfileSize ## SOMETIMES_CONSUMES\r
148 gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmStackSize ## CONSUMES\r
149 gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmApSyncTimeout ## CONSUMES\r
150 gUefiCpuPkgTokenSpaceGuid.PcdCpuS3DataAddress ## SOMETIMES_CONSUMES\r
151 gUefiCpuPkgTokenSpaceGuid.PcdCpuHotPlugDataAddress ## SOMETIMES_PRODUCES\r
152 gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmCodeAccessCheckEnable ## CONSUMES\r
153 gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmSyncMode ## CONSUMES\r
154\r
155[Depex]\r
156 gEfiMpServiceProtocolGuid\r
157\r
158[UserExtensions.TianoCore."ExtraFiles"]\r
159 PiSmmCpuDxeSmmExtra.uni\r