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