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