]> git.proxmox.com Git - mirror_edk2.git/blob - CorebootPayloadPkg/CorebootPayloadPkgIa32X64.dsc
CorebootPayloadPkg: Make serial I/O configurable
[mirror_edk2.git] / CorebootPayloadPkg / CorebootPayloadPkgIa32X64.dsc
1 ## @file
2 # Coreboot Payload Package
3 #
4 # Provides drivers and definitions to create uefi payload for coreboot.
5 #
6 # Copyright (c) 2014 - 2016, Intel Corporation. All rights reserved.<BR>
7 # This program and the accompanying materials are licensed and made available under
8 # the terms and conditions of the BSD License that accompanies this distribution.
9 # The full text of the license may be found at
10 # http://opensource.org/licenses/bsd-license.php.
11 #
12 # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
13 # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
14 #
15 ##
16
17 ################################################################################
18 #
19 # Defines Section - statements that will be processed to create a Makefile.
20 #
21 ################################################################################
22 [Defines]
23 PLATFORM_NAME = CorebootPayloadPkg
24 PLATFORM_GUID = F71608AB-D63D-4491-B744-A99998C8CD96
25 PLATFORM_VERSION = 0.1
26 DSC_SPECIFICATION = 0x00010005
27 SUPPORTED_ARCHITECTURES = IA32|X64
28 BUILD_TARGETS = DEBUG|RELEASE|NOOPT
29 SKUID_IDENTIFIER = DEFAULT
30 OUTPUT_DIRECTORY = Build/CorebootPayloadPkgX64
31 FLASH_DEFINITION = CorebootPayloadPkg/CorebootPayloadPkg.fdf
32
33 DEFINE SECURE_BOOT_ENABLE = FALSE
34 DEFINE SOURCE_DEBUG_ENABLE = FALSE
35
36 #
37 # Serial port set up
38 #
39 DEFINE BAUD_RATE = 115200
40 DEFINE SERIAL_CLOCK_RATE = 1843200
41 DEFINE SERIAL_LINE_CONTROL = 3 # 8-bits, no parity
42 DEFINE SERIAL_HARDWARE_FLOW_CONTROL = FALSE
43 DEFINE SERIAL_DETECT_CABLE = FALSE
44 DEFINE SERIAL_FIFO_CONTROL = 7 # Enable FIFO
45 DEFINE SERIAL_EXTENDED_TX_FIFO_SIZE = 16
46 DEFINE UART_DEFAULT_BAUD_RATE = $(BAUD_RATE)
47 DEFINE UART_DEFAULT_DATA_BITS = 8
48 DEFINE UART_DEFAULT_PARITY = 1
49 DEFINE UART_DEFAULT_STOP_BITS = 1
50 DEFINE DEFAULT_TERMINAL_TYPE = 0
51
52 #
53 # typedef struct {
54 # UINT16 VendorId; ///< Vendor ID to match the PCI device. The value 0xFFFF terminates the list of entries.
55 # UINT16 DeviceId; ///< Device ID to match the PCI device
56 # UINT32 ClockRate; ///< UART clock rate. Set to 0 for default clock rate of 1843200 Hz
57 # UINT64 Offset; ///< The byte offset into to the BAR
58 # UINT8 BarIndex; ///< Which BAR to get the UART base address
59 # UINT8 RegisterStride; ///< UART register stride in bytes. Set to 0 for default register stride of 1 byte.
60 # UINT16 ReceiveFifoDepth; ///< UART receive FIFO depth in bytes. Set to 0 for a default FIFO depth of 16 bytes.
61 # UINT16 TransmitFifoDepth; ///< UART transmit FIFO depth in bytes. Set to 0 for a default FIFO depth of 16 bytes.
62 # UINT8 Reserved[2];
63 # } PCI_SERIAL_PARAMETER;
64 #
65 # Vendor 0000 Device 0000 Prog Interface 1, BAR #0, Offset 0, Stride = 1, Clock 1843200 (0x1c2000)
66 #
67 # [Vendor] [Device] [----ClockRate---] [------------Offset-----------] [Bar] [Stride] [RxFifo] [TxFifo] [Rsvd] [Vendor]
68 DEFINE PCI_SERIAL_PARAMETERS = {0x00,0x00, 0x00,0x00, 0x0,0x20,0x1c,0x00, 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 0x00, 0x01, 0x0,0x0, 0x0,0x0, 0x0,0x0, 0xff,0xff}
69
70 #
71 # Shell options: [BUILD_SHELL, FULL_BIN, MIN_BIN, NONE, UEFI]
72 #
73 DEFINE SHELL_TYPE = FULL_BIN
74
75 [BuildOptions]
76 GCC:DEBUG_*_*_CC_FLAGS = -Og -flto
77 GCC:DEBUG_*_*_DLINK_FLAGS = -flto
78 GCC:*_UNIXGCC_*_CC_FLAGS = -DMDEPKG_NDEBUG
79 GCC:RELEASE_*_*_CC_FLAGS = -DMDEPKG_NDEBUG
80 INTEL:RELEASE_*_*_CC_FLAGS = /D MDEPKG_NDEBUG
81 MSFT:RELEASE_*_*_CC_FLAGS = /D MDEPKG_NDEBUG
82
83 ################################################################################
84 #
85 # SKU Identification section - list of all SKU IDs supported by this Platform.
86 #
87 ################################################################################
88 [SkuIds]
89 0|DEFAULT
90
91 ################################################################################
92 #
93 # Library Class section - list of all Library Classes needed by this Platform.
94 #
95 ################################################################################
96 [LibraryClasses]
97 #
98 # Entry point
99 #
100 PeiCoreEntryPoint|MdePkg/Library/PeiCoreEntryPoint/PeiCoreEntryPoint.inf
101 PeimEntryPoint|MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf
102 DxeCoreEntryPoint|MdePkg/Library/DxeCoreEntryPoint/DxeCoreEntryPoint.inf
103 UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
104 UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf
105
106 #
107 # Basic
108 #
109 BaseLib|MdePkg/Library/BaseLib/BaseLib.inf
110 BaseMemoryLib|MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf
111 SynchronizationLib|MdePkg/Library/BaseSynchronizationLib/BaseSynchronizationLib.inf
112 PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
113 CpuLib|MdePkg/Library/BaseCpuLib/BaseCpuLib.inf
114 IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf
115 PciLib|MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf
116 PciCf8Lib|MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf
117 PeCoffLib|MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf
118 PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf
119 CacheMaintenanceLib|MdePkg/Library/BaseCacheMaintenanceLib/BaseCacheMaintenanceLib.inf
120
121 #
122 # UEFI & PI
123 #
124 UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
125 UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
126 UefiRuntimeLib|MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf
127 UefiLib|MdePkg/Library/UefiLib/UefiLib.inf
128 UefiHiiServicesLib|MdeModulePkg/Library/UefiHiiServicesLib/UefiHiiServicesLib.inf
129 HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf
130 DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
131 UefiDecompressLib|MdePkg/Library/BaseUefiDecompressLib/BaseUefiDecompressLib.inf
132 PeiServicesTablePointerLib|MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf
133 PeiServicesLib|MdePkg/Library/PeiServicesLib/PeiServicesLib.inf
134 DxeServicesLib|MdePkg/Library/DxeServicesLib/DxeServicesLib.inf
135 DxeServicesTableLib|MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf
136 UefiCpuLib|UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib.inf
137
138 #
139 # Generic Modules
140 #
141 UefiUsbLib|MdePkg/Library/UefiUsbLib/UefiUsbLib.inf
142 UefiScsiLib|MdePkg/Library/UefiScsiLib/UefiScsiLib.inf
143 OemHookStatusCodeLib|MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf
144 CapsuleLib|MdeModulePkg/Library/DxeCapsuleLibNull/DxeCapsuleLibNull.inf
145 SecurityManagementLib|MdeModulePkg/Library/DxeSecurityManagementLib/DxeSecurityManagementLib.inf
146 GenericBdsLib|IntelFrameworkModulePkg/Library/GenericBdsLib/GenericBdsLib.inf
147 CustomizedDisplayLib|MdeModulePkg/Library/CustomizedDisplayLib/CustomizedDisplayLib.inf
148
149 #
150 # CPU
151 #
152 MtrrLib|UefiCpuPkg/Library/MtrrLib/MtrrLib.inf
153 LocalApicLib|UefiCpuPkg/Library/BaseXApicLib/BaseXApicLib.inf
154
155 #
156 # Platform
157 #
158 TimerLib|CorebootPayloadPkg/Library/AcpiTimerLib/AcpiTimerLib.inf
159 ResetSystemLib|CorebootPayloadPkg/Library/ResetSystemLib/ResetSystemLib.inf
160 SerialPortLib|MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf
161 PlatformHookLib|CorebootPayloadPkg/Library/PlatformHookLib/PlatformHookLib.inf
162 PlatformBdsLib|CorebootPayloadPkg/Library/PlatformBdsLib/PlatformBdsLib.inf
163
164 #
165 # Misc
166 #
167 DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf
168 PerformanceLib|MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf
169 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
170 !if $(SOURCE_DEBUG_ENABLE) == TRUE
171 PeCoffExtraActionLib|SourceLevelDebugPkg/Library/PeCoffExtraActionLibDebug/PeCoffExtraActionLibDebug.inf
172 DebugCommunicationLib|SourceLevelDebugPkg/Library/DebugCommunicationLibSerialPort/DebugCommunicationLibSerialPort.inf
173 !else
174 PeCoffExtraActionLib|MdePkg/Library/BasePeCoffExtraActionLibNull/BasePeCoffExtraActionLibNull.inf
175 DebugAgentLib|MdeModulePkg/Library/DebugAgentLibNull/DebugAgentLibNull.inf
176 !endif
177 CbParseLib|CorebootModulePkg/Library/CbParseLib/CbParseLib.inf
178 DebugLib|IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf
179 LockBoxLib|MdeModulePkg/Library/LockBoxNullLib/LockBoxNullLib.inf
180
181 [LibraryClasses.IA32.SEC]
182 DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
183 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
184 HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf
185 MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf
186 DebugAgentLib|MdeModulePkg/Library/DebugAgentLibNull/DebugAgentLibNull.inf
187 ReportStatusCodeLib|MdePkg/Library/BaseReportStatusCodeLibNull/BaseReportStatusCodeLibNull.inf
188
189 [LibraryClasses.IA32.PEI_CORE, LibraryClasses.IA32.PEIM]
190 PcdLib|MdePkg/Library/PeiPcdLib/PeiPcdLib.inf
191 HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf
192 MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf
193 ReportStatusCodeLib|MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf
194 ExtractGuidedSectionLib|MdePkg/Library/PeiExtractGuidedSectionLib/PeiExtractGuidedSectionLib.inf
195 !if $(SOURCE_DEBUG_ENABLE)
196 DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/SecPeiDebugAgentLib.inf
197 !endif
198
199 [LibraryClasses.common.DXE_CORE]
200 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
201 HobLib|MdePkg/Library/DxeCoreHobLib/DxeCoreHobLib.inf
202 MemoryAllocationLib|MdeModulePkg/Library/DxeCoreMemoryAllocationLib/DxeCoreMemoryAllocationLib.inf
203 ExtractGuidedSectionLib|MdePkg/Library/DxeExtractGuidedSectionLib/DxeExtractGuidedSectionLib.inf
204 ReportStatusCodeLib|MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf
205 !if $(SOURCE_DEBUG_ENABLE)
206 DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/DxeDebugAgentLib.inf
207 !endif
208 CpuExceptionHandlerLib|UefiCpuPkg/Library/CpuExceptionHandlerLib/DxeCpuExceptionHandlerLib.inf
209
210 [LibraryClasses.common.DXE_DRIVER]
211 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
212 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
213 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
214 ExtractGuidedSectionLib|MdePkg/Library/DxeExtractGuidedSectionLib/DxeExtractGuidedSectionLib.inf
215 ReportStatusCodeLib|MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf
216 CpuExceptionHandlerLib|UefiCpuPkg/Library/CpuExceptionHandlerLib/DxeCpuExceptionHandlerLib.inf
217
218 [LibraryClasses.common.DXE_RUNTIME_DRIVER]
219 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
220 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
221 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
222 ReportStatusCodeLib|MdeModulePkg/Library/RuntimeDxeReportStatusCodeLib/RuntimeDxeReportStatusCodeLib.inf
223
224 [LibraryClasses.common.UEFI_DRIVER,LibraryClasses.common.UEFI_APPLICATION]
225 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
226 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
227 ReportStatusCodeLib|MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf
228 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
229
230 ################################################################################
231 #
232 # Pcd Section - list of all EDK II PCD Entries defined by this Platform.
233 #
234 ################################################################################
235 [PcdsFeatureFlag]
236 gEfiMdeModulePkgTokenSpaceGuid.PcdStatusCodeUseSerial|TRUE
237 gEfiMdeModulePkgTokenSpaceGuid.PcdStatusCodeUseMemory|FALSE
238 gEfiMdeModulePkgTokenSpaceGuid.PcdDxeIplSwitchToLongMode|TRUE
239 gEfiMdeModulePkgTokenSpaceGuid.PcdConOutGopSupport|TRUE
240 gEfiMdeModulePkgTokenSpaceGuid.PcdConOutUgaSupport|FALSE
241
242 [PcdsFixedAtBuild]
243 gEfiMdeModulePkgTokenSpaceGuid.PcdMaxVariableSize|0x10000
244 gEfiMdeModulePkgTokenSpaceGuid.PcdMaxHardwareErrorVariableSize|0x8000
245 gEfiMdeModulePkgTokenSpaceGuid.PcdVariableStoreSize|0x10000
246
247 gEfiMdeModulePkgTokenSpaceGuid.PcdVpdBaseAddress|0x0
248 gEfiMdeModulePkgTokenSpaceGuid.PcdUse1GPageTable|TRUE
249
250 !if $(SOURCE_DEBUG_ENABLE)
251 gEfiSourceLevelDebugPkgTokenSpaceGuid.PcdDebugLoadImageMethod|0x2
252 !endif
253
254 [PcdsPatchableInModule.common]
255 gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|0x7
256
257 gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x8000004F
258 !if $(SOURCE_DEBUG_ENABLE)
259 gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x17
260 !else
261 gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x2F
262 !endif
263
264 #
265 # The following parameters are set by Library/PlatformHookLib
266 #
267 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialUseMmio|FALSE
268 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialRegisterBase|0x3f8
269 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialBaudRate|$(BAUD_RATE)
270 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialRegisterStride|1
271
272 #
273 # Enable these parameters to be set on the command line
274 #
275 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialClockRate|$(SERIAL_CLOCK_RATE)
276 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialLineControl|$(SERIAL_LINE_CONTROL)
277 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialUseHardwareFlowControl|$(SERIAL_HARDWARE_FLOW_CONTROL)
278 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialDetectCable|$(SERIAL_DETECT_CABLE)
279 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialFifoControl|$(SERIAL_FIFO_CONTROL)
280 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialExtendedTxFifoSize|$(SERIAL_EXTENDED_TX_FIFO_SIZE)
281
282 gEfiMdePkgTokenSpaceGuid.PcdUartDefaultBaudRate|$(UART_DEFAULT_BAUD_RATE)
283 gEfiMdePkgTokenSpaceGuid.PcdUartDefaultDataBits|$(UART_DEFAULT_DATA_BITS)
284 gEfiMdePkgTokenSpaceGuid.PcdUartDefaultParity|$(UART_DEFAULT_PARITY)
285 gEfiMdePkgTokenSpaceGuid.PcdUartDefaultStopBits|$(UART_DEFAULT_STOP_BITS)
286 gEfiMdePkgTokenSpaceGuid.PcdDefaultTerminalType|$(DEFAULT_TERMINAL_TYPE)
287 gEfiMdeModulePkgTokenSpaceGuid.PcdPciSerialParameters|$(PCI_SERIAL_PARAMETERS)
288
289 ################################################################################
290 #
291 # Pcd Dynamic Section - list of all EDK II PCD Entries defined by this Platform
292 #
293 ################################################################################
294
295 [PcdsDynamicDefault]
296 gEfiMdeModulePkgTokenSpaceGuid.PcdEmuVariableNvStoreReserved|0
297 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableBase64|0
298 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingBase|0
299 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareBase|0
300
301
302 ################################################################################
303 #
304 # Components Section - list of all EDK II Modules needed by this Platform.
305 #
306 ################################################################################
307 [Components.IA32]
308 #
309 # SEC Core
310 #
311 CorebootModulePkg/SecCore/SecCore.inf
312
313 #
314 # PEI Core
315 #
316 MdeModulePkg/Core/Pei/PeiMain.inf
317
318 #
319 # PEIM
320 #
321 MdeModulePkg/Universal/PCD/Pei/Pcd.inf {
322 <LibraryClasses>
323 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
324 }
325 IntelFrameworkModulePkg/Universal/StatusCode/Pei/StatusCodePei.inf
326
327 CorebootModulePkg/CbSupportPei/CbSupportPei.inf
328 MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf
329
330 [Components.X64]
331 #
332 # DXE Core
333 #
334 MdeModulePkg/Core/Dxe/DxeMain.inf {
335 <LibraryClasses>
336 NULL|IntelFrameworkModulePkg/Library/LzmaCustomDecompressLib/LzmaCustomDecompressLib.inf
337 }
338
339 #
340 # Components that produce the architectural protocols
341 #
342 MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf
343 UefiCpuPkg/CpuDxe/CpuDxe.inf
344 IntelFrameworkModulePkg/Universal/BdsDxe/BdsDxe.inf
345 PcAtChipsetPkg/8254TimerDxe/8254Timer.inf
346 MdeModulePkg/Universal/Metronome/Metronome.inf
347 MdeModulePkg/Universal/WatchdogTimerDxe/WatchdogTimer.inf
348 MdeModulePkg/Core/RuntimeDxe/RuntimeDxe.inf
349 MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf
350 MdeModulePkg/Universal/MonotonicCounterRuntimeDxe/MonotonicCounterRuntimeDxe.inf
351 MdeModulePkg/Universal/ResetSystemRuntimeDxe/ResetSystemRuntimeDxe.inf
352 PcAtChipsetPkg/PcatRealTimeClockRuntimeDxe/PcatRealTimeClockRuntimeDxe.inf
353 MdeModulePkg/Universal/Variable/EmuRuntimeDxe/EmuVariableRuntimeDxe.inf
354
355 #
356 # Following are the DXE drivers
357 #
358 MdeModulePkg/Universal/PCD/Dxe/Pcd.inf {
359 <LibraryClasses>
360 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
361 }
362
363 IntelFrameworkModulePkg/Universal/StatusCode/RuntimeDxe/StatusCodeRuntimeDxe.inf
364 UefiCpuPkg/CpuIo2Dxe/CpuIo2Dxe.inf
365 MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf
366 MdeModulePkg/Universal/MemoryTest/NullMemoryTestDxe/NullMemoryTestDxe.inf
367 PcAtChipsetPkg/8259InterruptControllerDxe/8259.inf
368 MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf
369 MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf
370 MdeModulePkg/Universal/DisplayEngineDxe/DisplayEngineDxe.inf
371
372 CorebootModulePkg/CbSupportDxe/CbSupportDxe.inf
373
374 #
375 # SMBIOS Support
376 #
377 MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.inf
378
379 #
380 # ACPI Support
381 #
382 MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf
383
384 #
385 # PCI Support
386 #
387 CorebootModulePkg/PciRootBridgeNoEnumerationDxe/PciRootBridgeNoEnumeration.inf
388 CorebootModulePkg/PciBusNoEnumerationDxe/PciBusNoEnumeration.inf
389
390 #
391 # SCSI/ATA/IDE/DISK Support
392 #
393 MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf
394 MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf
395 MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf
396 FatPkg/EnhancedFatDxe/Fat.inf
397 CorebootModulePkg/SataControllerDxe/SataControllerDxe.inf
398 MdeModulePkg/Bus/Ata/AtaBusDxe/AtaBusDxe.inf
399 MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.inf
400 MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBusDxe.inf
401 MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDiskDxe.inf
402
403 #
404 # Usb Support
405 #
406 MdeModulePkg/Bus/Pci/UhciDxe/UhciDxe.inf
407 MdeModulePkg/Bus/Pci/EhciDxe/EhciDxe.inf
408 MdeModulePkg/Bus/Pci/XhciDxe/XhciDxe.inf
409 MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBusDxe.inf
410 MdeModulePkg/Bus/Usb/UsbKbDxe/UsbKbDxe.inf
411 MdeModulePkg/Bus/Usb/UsbMassStorageDxe/UsbMassStorageDxe.inf
412
413 #
414 # ISA Support
415 #
416 MdeModulePkg/Universal/SerialDxe/SerialDxe.inf
417
418 #
419 # Console Support
420 #
421 MdeModulePkg/Universal/Console/ConPlatformDxe/ConPlatformDxe.inf
422 MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitterDxe.inf
423 MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsoleDxe.inf
424 MdeModulePkg/Universal/Console/TerminalDxe/TerminalDxe.inf
425
426
427 #
428 # Framebuffer Gop
429 #
430 CorebootPayloadPkg/FbGop/FbGop.inf
431
432 #------------------------------
433 # Build the shell
434 #------------------------------
435
436 !if $(SHELL_TYPE) == BUILD_SHELL
437
438 [PcdsFixedAtBuild]
439 ## This flag is used to control initialization of the shell library
440 # This should be FALSE for compiling the shell application itself only.
441 gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
442
443 #
444 # Shell Lib
445 #
446 [LibraryClasses]
447 BcfgCommandLib|ShellPkg/Library/UefiShellBcfgCommandLib/UefiShellBcfgCommandLib.inf
448 DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
449 FileHandleLib|MdePkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf
450
451 [Components.X64]
452 ShellPkg/Application/Shell/Shell.inf {
453
454 #------------------------------
455 # Basic commands
456 #------------------------------
457
458 <LibraryClasses>
459 NULL|ShellPkg/Library/UefiShellLevel1CommandsLib/UefiShellLevel1CommandsLib.inf
460 NULL|ShellPkg/Library/UefiShellLevel2CommandsLib/UefiShellLevel2CommandsLib.inf
461 NULL|ShellPkg/Library/UefiShellLevel3CommandsLib/UefiShellLevel3CommandsLib.inf
462 NULL|ShellPkg/Library/UefiShellDriver1CommandsLib/UefiShellDriver1CommandsLib.inf
463 NULL|ShellPkg/Library/UefiShellInstall1CommandsLib/UefiShellInstall1CommandsLib.inf
464 NULL|ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1CommandsLib.inf
465
466 #------------------------------
467 # Networking commands
468 #------------------------------
469
470 <LibraryClasses>
471 NULL|ShellPkg/Library/UefiShellNetwork1CommandsLib/UefiShellNetwork1CommandsLib.inf
472 NULL|ShellPkg/Library/UefiShellTftpCommandLib/UefiShellTftpCommandLib.inf
473
474 #------------------------------
475 # Performance command
476 #------------------------------
477
478 <LibraryClasses>
479 NULL|ShellPkg/Library/UefiDpLib/UefiDpLib.inf
480
481 #------------------------------
482 # Support libraries
483 #------------------------------
484
485 <LibraryClasses>
486 DebugLib|MdePkg/Library/UefiDebugLibConOut/UefiDebugLibConOut.inf
487 DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
488 FileHandleLib|MdePkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf
489 HandleParsingLib|ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.inf
490 NetLib|MdeModulePkg/Library/DxeNetLib/DxeNetLib.inf
491 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
492 ShellCEntryLib|ShellPkg/Library/UefiShellCEntryLib/UefiShellCEntryLib.inf
493 ShellCommandLib|ShellPkg/Library/UefiShellCommandLib/UefiShellCommandLib.inf
494 ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf
495 SortLib|MdeModulePkg/Library/UefiSortLib/UefiSortLib.inf
496 }
497
498 !endif