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