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