]> git.proxmox.com Git - mirror_edk2.git/blob - UefiCpuPkg/UefiCpuPkg.dsc
UefiCpuPkg: Extend SMM CPU Service with rendezvous support.
[mirror_edk2.git] / UefiCpuPkg / UefiCpuPkg.dsc
1 ## @file
2 # UefiCpuPkg Package
3 #
4 # Copyright (c) 2007 - 2021, Intel Corporation. All rights reserved.<BR>
5 #
6 # SPDX-License-Identifier: BSD-2-Clause-Patent
7 #
8 ##
9
10 [Defines]
11 PLATFORM_NAME = UefiCpu
12 PLATFORM_GUID = a1b7be22-78b3-4260-9569-8649e8c17d49
13 PLATFORM_VERSION = 0.90
14 DSC_SPECIFICATION = 0x00010005
15 OUTPUT_DIRECTORY = Build/UefiCpu
16 SUPPORTED_ARCHITECTURES = IA32|X64
17 BUILD_TARGETS = DEBUG|RELEASE|NOOPT
18 SKUID_IDENTIFIER = DEFAULT
19
20 #
21 # External libraries to build package
22 #
23
24 !include MdePkg/MdeLibs.dsc.inc
25
26 [LibraryClasses]
27 BaseLib|MdePkg/Library/BaseLib/BaseLib.inf
28 BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf
29 CpuLib|MdePkg/Library/BaseCpuLib/BaseCpuLib.inf
30 DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
31 SerialPortLib|MdePkg/Library/BaseSerialPortLibNull/BaseSerialPortLibNull.inf
32 DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf
33 DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
34 UefiCpuLib|UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib.inf
35 IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf
36 MtrrLib|UefiCpuPkg/Library/MtrrLib/MtrrLib.inf
37 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
38 PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
39 UefiLib|MdePkg/Library/UefiLib/UefiLib.inf
40 UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
41 UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
42 UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
43 StandaloneMmDriverEntryPoint|MdePkg/Library/StandaloneMmDriverEntryPoint/StandaloneMmDriverEntryPoint.inf
44 DxeServicesTableLib|MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf
45 PeimEntryPoint|MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf
46 PeiServicesLib|MdePkg/Library/PeiServicesLib/PeiServicesLib.inf
47 PerformanceLib|MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf
48 TimerLib|MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.inf
49 DebugAgentLib|MdeModulePkg/Library/DebugAgentLibNull/DebugAgentLibNull.inf
50 LocalApicLib|UefiCpuPkg/Library/BaseXApicX2ApicLib/BaseXApicX2ApicLib.inf
51 ReportStatusCodeLib|MdePkg/Library/BaseReportStatusCodeLibNull/BaseReportStatusCodeLibNull.inf
52 SynchronizationLib|MdePkg/Library/BaseSynchronizationLib/BaseSynchronizationLib.inf
53 SmmMemLib|MdePkg/Library/SmmMemLib/SmmMemLib.inf
54 CacheMaintenanceLib|MdePkg/Library/BaseCacheMaintenanceLib/BaseCacheMaintenanceLib.inf
55 PciLib|MdePkg/Library/BasePciLibPciExpress/BasePciLibPciExpress.inf
56 PciExpressLib|MdePkg/Library/BasePciExpressLib/BasePciExpressLib.inf
57 SmmCpuPlatformHookLib|UefiCpuPkg/Library/SmmCpuPlatformHookLibNull/SmmCpuPlatformHookLibNull.inf
58 SmmCpuFeaturesLib|UefiCpuPkg/Library/SmmCpuFeaturesLib/SmmCpuFeaturesLib.inf
59 PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf
60 PeCoffExtraActionLib|MdePkg/Library/BasePeCoffExtraActionLibNull/BasePeCoffExtraActionLibNull.inf
61 TpmMeasurementLib|MdeModulePkg/Library/TpmMeasurementLibNull/TpmMeasurementLibNull.inf
62 VmgExitLib|UefiCpuPkg/Library/VmgExitLibNull/VmgExitLibNull.inf
63 MicrocodeLib|UefiCpuPkg/Library/MicrocodeLib/MicrocodeLib.inf
64 SmmCpuRendezvousLib|UefiCpuPkg/Library/SmmCpuRendezvousLib/SmmCpuRendezvousLib.inf
65
66 [LibraryClasses.common.SEC]
67 PlatformSecLib|UefiCpuPkg/Library/PlatformSecLibNull/PlatformSecLibNull.inf
68 !if $(TOOL_CHAIN_TAG) == "XCODE5"
69 CpuExceptionHandlerLib|UefiCpuPkg/Library/CpuExceptionHandlerLib/Xcode5SecPeiCpuExceptionHandlerLib.inf
70 !else
71 CpuExceptionHandlerLib|UefiCpuPkg/Library/CpuExceptionHandlerLib/SecPeiCpuExceptionHandlerLib.inf
72 !endif
73 HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf
74 PeiServicesTablePointerLib|MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf
75 MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf
76
77 [LibraryClasses.common.PEIM]
78 MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf
79 HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf
80 LockBoxLib|MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxPeiLib.inf
81 MpInitLib|UefiCpuPkg/Library/MpInitLib/PeiMpInitLib.inf
82 RegisterCpuFeaturesLib|UefiCpuPkg/Library/RegisterCpuFeaturesLib/PeiRegisterCpuFeaturesLib.inf
83 CpuCacheInfoLib|UefiCpuPkg/Library/CpuCacheInfoLib/PeiCpuCacheInfoLib.inf
84
85 [LibraryClasses.IA32.PEIM, LibraryClasses.X64.PEIM]
86 PeiServicesTablePointerLib|MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf
87 CpuExceptionHandlerLib|UefiCpuPkg/Library/CpuExceptionHandlerLib/PeiCpuExceptionHandlerLib.inf
88
89 [LibraryClasses.common.DXE_DRIVER]
90 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
91 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
92 CpuExceptionHandlerLib|UefiCpuPkg/Library/CpuExceptionHandlerLib/DxeCpuExceptionHandlerLib.inf
93 MpInitLib|UefiCpuPkg/Library/MpInitLib/DxeMpInitLib.inf
94 RegisterCpuFeaturesLib|UefiCpuPkg/Library/RegisterCpuFeaturesLib/DxeRegisterCpuFeaturesLib.inf
95 CpuCacheInfoLib|UefiCpuPkg/Library/CpuCacheInfoLib/DxeCpuCacheInfoLib.inf
96
97 [LibraryClasses.common.DXE_SMM_DRIVER]
98 SmmServicesTableLib|MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf
99 MmServicesTableLib|MdePkg/Library/MmServicesTableLib/MmServicesTableLib.inf
100 MemoryAllocationLib|MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf
101 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
102 CpuExceptionHandlerLib|UefiCpuPkg/Library/CpuExceptionHandlerLib/SmmCpuExceptionHandlerLib.inf
103
104 [LibraryClasses.common.MM_STANDALONE]
105 MmServicesTableLib|MdePkg/Library/StandaloneMmServicesTableLib/StandaloneMmServicesTableLib.inf
106
107 [LibraryClasses.common.UEFI_APPLICATION]
108 UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf
109 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
110
111 #
112 # Drivers/Libraries within this package
113 #
114
115 [Components]
116 UefiCpuPkg/CpuIo2Dxe/CpuIo2Dxe.inf
117 UefiCpuPkg/CpuIoPei/CpuIoPei.inf
118 UefiCpuPkg/Library/SecPeiDxeTimerLibUefiCpu/SecPeiDxeTimerLibUefiCpu.inf
119 UefiCpuPkg/Application/Cpuid/Cpuid.inf
120 UefiCpuPkg/Library/CpuTimerLib/BaseCpuTimerLib.inf
121 UefiCpuPkg/Library/CpuCacheInfoLib/PeiCpuCacheInfoLib.inf
122 UefiCpuPkg/Library/CpuCacheInfoLib/DxeCpuCacheInfoLib.inf
123 UefiCpuPkg/MicrocodeMeasurementDxe/MicrocodeMeasurementDxe.inf
124
125 [Components.IA32, Components.X64]
126 UefiCpuPkg/CpuDxe/CpuDxe.inf
127 UefiCpuPkg/CpuFeatures/CpuFeaturesPei.inf {
128 <LibraryClasses>
129 NULL|UefiCpuPkg/Library/CpuCommonFeaturesLib/CpuCommonFeaturesLib.inf
130 }
131 UefiCpuPkg/CpuFeatures/CpuFeaturesDxe.inf {
132 <LibraryClasses>
133 NULL|UefiCpuPkg/Library/CpuCommonFeaturesLib/CpuCommonFeaturesLib.inf
134 }
135 UefiCpuPkg/CpuIo2Smm/CpuIo2Smm.inf
136 UefiCpuPkg/CpuIo2Smm/CpuIo2StandaloneMm.inf
137 UefiCpuPkg/CpuMpPei/CpuMpPei.inf
138 UefiCpuPkg/CpuS3DataDxe/CpuS3DataDxe.inf
139 UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib.inf
140 UefiCpuPkg/Library/BaseXApicLib/BaseXApicLib.inf
141 UefiCpuPkg/Library/BaseXApicX2ApicLib/BaseXApicX2ApicLib.inf
142 UefiCpuPkg/Library/CpuCommonFeaturesLib/CpuCommonFeaturesLib.inf
143 UefiCpuPkg/Library/CpuExceptionHandlerLib/DxeCpuExceptionHandlerLib.inf
144 !if $(TOOL_CHAIN_TAG) != "XCODE5"
145 UefiCpuPkg/Library/CpuExceptionHandlerLib/SecPeiCpuExceptionHandlerLib.inf
146 !endif
147 UefiCpuPkg/Library/CpuExceptionHandlerLib/SmmCpuExceptionHandlerLib.inf
148 UefiCpuPkg/Library/CpuExceptionHandlerLib/PeiCpuExceptionHandlerLib.inf
149 UefiCpuPkg/Library/CpuExceptionHandlerLib/Xcode5SecPeiCpuExceptionHandlerLib.inf
150 UefiCpuPkg/Library/MpInitLib/PeiMpInitLib.inf
151 UefiCpuPkg/Library/MpInitLib/DxeMpInitLib.inf
152 UefiCpuPkg/Library/MpInitLibUp/MpInitLibUp.inf
153 UefiCpuPkg/Library/MicrocodeLib/MicrocodeLib.inf
154 UefiCpuPkg/Library/MtrrLib/MtrrLib.inf
155 UefiCpuPkg/Library/PlatformSecLibNull/PlatformSecLibNull.inf
156 UefiCpuPkg/Library/RegisterCpuFeaturesLib/PeiRegisterCpuFeaturesLib.inf
157 UefiCpuPkg/Library/RegisterCpuFeaturesLib/DxeRegisterCpuFeaturesLib.inf
158 UefiCpuPkg/Library/SmmCpuPlatformHookLibNull/SmmCpuPlatformHookLibNull.inf
159 UefiCpuPkg/Library/SmmCpuFeaturesLib/SmmCpuFeaturesLib.inf
160 UefiCpuPkg/Library/SmmCpuFeaturesLib/SmmCpuFeaturesLibStm.inf
161 UefiCpuPkg/Library/SmmCpuFeaturesLib/StandaloneMmCpuFeaturesLib.inf
162 UefiCpuPkg/Library/VmgExitLibNull/VmgExitLibNull.inf
163 UefiCpuPkg/PiSmmCommunication/PiSmmCommunicationPei.inf
164 UefiCpuPkg/PiSmmCommunication/PiSmmCommunicationSmm.inf
165 UefiCpuPkg/SecCore/SecCore.inf
166 UefiCpuPkg/SecCore/SecCoreNative.inf
167 UefiCpuPkg/SecMigrationPei/SecMigrationPei.inf
168 UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.inf
169 UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.inf {
170 <Defines>
171 FILE_GUID = D1D74FE9-7A4E-41D3-A0B3-67F13AD34D94
172 <LibraryClasses>
173 SmmCpuFeaturesLib|UefiCpuPkg/Library/SmmCpuFeaturesLib/SmmCpuFeaturesLibStm.inf
174 }
175 UefiCpuPkg/Universal/Acpi/S3Resume2Pei/S3Resume2Pei.inf
176 UefiCpuPkg/ResetVector/Vtf0/Bin/ResetVector.inf
177 UefiCpuPkg/Library/SmmCpuRendezvousLib/SmmCpuRendezvousLib.inf
178
179 [BuildOptions]
180 *_*_*_CC_FLAGS = -D DISABLE_NEW_DEPRECATED_INTERFACES