422 lines
23 KiB
Plaintext
Executable File
422 lines
23 KiB
Plaintext
Executable File
## @file
|
|
# Provides driver and definitions to build bootloader.
|
|
#
|
|
# Copyright (c) 2016 - 2019, Intel Corporation. All rights reserved.<BR>
|
|
# SPDX-License-Identifier: BSD-2-Clause-Patent
|
|
#
|
|
##
|
|
|
|
################################################################################
|
|
#
|
|
# Defines Section - statements that will be processed to create a Makefile.
|
|
#
|
|
################################################################################
|
|
[Defines]
|
|
PLATFORM_NAME = BootloaderCorePkg
|
|
PLATFORM_GUID = 0E8F73FA-CF73-4AA2-A406-1610CCF49EF1
|
|
PLATFORM_VERSION = 0.1
|
|
DSC_SPECIFICATION = 0x00010005
|
|
OUTPUT_DIRECTORY = Build/$(PLATFORM_NAME)
|
|
SUPPORTED_ARCHITECTURES = IA32|X64|ARC
|
|
BUILD_TARGETS = DEBUG|RELEASE|NOOPT
|
|
SKUID_IDENTIFIER = DEFAULT
|
|
FLASH_DEFINITION = $(PLATFORM_NAME)/$(PLATFORM_NAME).fdf
|
|
|
|
#
|
|
# Set platform specific package/folder names, same as passed from PREBUILD script.
|
|
# PLATFORM_PACKAGE would be the same as PLATFORM_NAME as well as package build folder
|
|
# The CORE_PACKAGES value could be set to '.' if Core packages get moved to Workspace root
|
|
#
|
|
DEFINE PLATFORM_PACKAGE = $(PLATFORM_NAME)
|
|
|
|
!include Platform.dsc
|
|
|
|
################################################################################
|
|
#
|
|
# SKU Identification section - list of all SKU IDs supported by this Platform.
|
|
#
|
|
################################################################################
|
|
[SkuIds]
|
|
0|DEFAULT # The entry: 0|DEFAULT is reserved and always required.
|
|
|
|
################################################################################
|
|
#
|
|
# Library Class section - list of all Library Classes needed by this Platform.
|
|
#
|
|
################################################################################
|
|
[LibraryClasses]
|
|
PcdLib|BootloaderCommonPkg/Library/PcdLib/PcdLib.inf
|
|
BaseLib|MdePkg/Library/BaseLib/BaseLib.inf
|
|
IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf
|
|
PciLib|MdePkg/Library/BasePciLibPciExpress/BasePciLibPciExpress.inf
|
|
PciCf8Lib|MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf
|
|
PciExpressLib|MdePkg/Library/BasePciExpressLib/BasePciExpressLib.inf
|
|
DebugPrintErrorLevelLib|$(PLATFORM_PACKAGE)/Library/DebugPrintErrorLevelLib/DebugPrintErrorLevelLib.inf
|
|
PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
|
|
BaseMemoryLib|MdePkg/Library/BaseMemoryLibSse2/BaseMemoryLibSse2.inf
|
|
SynchronizationLib|MdePkg/Library/BaseSynchronizationLib/BaseSynchronizationLib.inf
|
|
TimeStampLib|BootloaderCommonPkg/Library/TimeStampLib/TimeStampLib.inf
|
|
ExtraBaseLib|BootloaderCommonPkg/Library/ExtraBaseLib/ExtraBaseLib.inf
|
|
ModuleEntryLib|BootloaderCommonPkg/Library/ModuleEntryLib/ModuleEntryLib.inf
|
|
LzmaDecompressLib|BootloaderCommonPkg/Library/LzmaCustomDecompressLib/LzmaCustomDecompressLib.inf
|
|
Lz4DecompressLib|BootloaderCommonPkg/Library/Lz4DecompressLib/Lz4DecompressLib.inf
|
|
DecompressLib|BootloaderCommonPkg/Library/DecompressLib/DecompressLib.inf
|
|
RleCompressLib|BootloaderCommonPkg/Library/RleCompressLib/RleCompressLib.inf
|
|
FspSupportLib|$(PLATFORM_PACKAGE)/Library/FspSupportLib/FspSupportLib.inf
|
|
BootloaderLib|$(PLATFORM_PACKAGE)/Library/BootloaderLib/BootloaderLib.inf
|
|
BootloaderCoreLib|$(PLATFORM_PACKAGE)/Library/BootloaderCoreLib/BootloaderCoreLib.inf
|
|
PciEnumerationLib|$(PLATFORM_PACKAGE)/Library/PciEnumerationLib/PciEnumerationLib.inf
|
|
AcpiInitLib|$(PLATFORM_PACKAGE)/Library/AcpiInitLib/AcpiInitLib.inf
|
|
SmbiosInitLib|$(PLATFORM_PACKAGE)/Library/SmbiosInitLib/SmbiosInitLib.inf
|
|
LitePeCoffLib|BootloaderCommonPkg/Library/LitePeCoffLib/LitePeCoffLib.inf
|
|
HobLib|BootloaderCommonPkg/Library/HobLib/HobLib.inf
|
|
HobBuildLib|$(PLATFORM_PACKAGE)/Library/HobBuildLib/HobBuildLib.inf
|
|
LiteFvLib|BootloaderCommonPkg/Library/LiteFvLib/LiteFvLib.inf
|
|
LoaderPerformanceLib|BootloaderCommonPkg/Library/LoaderPerformanceLib/LoaderPerformanceLib.inf
|
|
MemoryAllocationLib|$(PLATFORM_PACKAGE)/Library/MemoryAllocationLib/MemoryAllocationLib.inf
|
|
MpInitLib|$(PLATFORM_PACKAGE)/Library/MpInitLib/MpInitLib.inf
|
|
LocalApicLib|BootloaderCommonPkg/Library/BaseXApicLib/BaseXApicLib.inf
|
|
SecureBootLib|BootloaderCommonPkg/Library/SecureBootLib/SecureBootLib.inf
|
|
TpmLib|BootloaderCommonPkg/Library/TpmLib/TpmLib.inf
|
|
BootloaderCommonLib|BootloaderCommonPkg/Library/BootloaderCommonLib/BootloaderCommonLib.inf
|
|
ConfigDataLib|BootloaderCommonPkg/Library/ConfigDataLib/ConfigDataLib.inf
|
|
MmcAccessLib|BootloaderCommonPkg/Library/MmcAccessLib/MmcAccessLib.inf
|
|
GraphicsLib|BootloaderCommonPkg/Library/GraphicsLib/GraphicsLib.inf
|
|
Crc32Lib|BootloaderCommonPkg/Library/Crc32Lib/Crc32Lib.inf
|
|
VariableLib|BootloaderCommonPkg/Library/LiteVariableLib/LiteVariableLib.inf
|
|
DebugDataLib|$(PLATFORM_PACKAGE)/Library/DebugDataLib/DebugDataLib.inf
|
|
CpuExceptionLib|$(PLATFORM_PACKAGE)/Library/CpuExceptionLib/CpuExceptionLib.inf
|
|
FileSystemLib|BootloaderCommonPkg/Library/FileSystemLib/FileSystemLib.inf
|
|
FatLib|BootloaderCommonPkg/Library/FatLib/FatLib.inf
|
|
PartitionLib|BootloaderCommonPkg/Library/PartitionLib/PartitionLib.inf
|
|
Ext23Lib|BootloaderCommonPkg/Library/Ext23Lib/Ext23Lib.inf
|
|
ShellLib|BootloaderCommonPkg/Library/ShellLib/ShellLib.inf
|
|
SpiBlockIoLib|BootloaderCommonPkg/Library/SpiBlockIoLib/SpiBlockIoLib.inf
|
|
UfsBlockIoLib|BootloaderCommonPkg/Library/UfsBlockIoLib/UfsBlockIoLib.inf
|
|
MmcAccessLib|BootloaderCommonPkg/Library/MmcAccessLib/MmcAccessLib.inf
|
|
MmcTuningLib|BootloaderCommonPkg/Library/MmcTuningLib/MmcTuningLib.inf
|
|
RpmbLib|BootloaderCommonPkg/Library/RpmbLib/RpmbLib.inf
|
|
NvmExpressLib|BootloaderCommonPkg/Library/NvmExpressLib/NvmExpressLib.inf
|
|
MemoryDeviceBlockIoLib|BootloaderCommonPkg/Library/MemoryDeviceBlockIoLib/MemoryDeviceBlockIoLib.inf
|
|
AhciLib|BootloaderCommonPkg/Library/AhciLib/AhciLib.inf
|
|
UsbInitLib|BootloaderCommonPkg/Library/UsbInitLib/UsbInitLib.inf
|
|
UsbKbLib|BootloaderCommonPkg/Library/UsbKbLib/UsbKbLib.inf
|
|
UsbHostCtrlLib|BootloaderCommonPkg/Library/XhciLib/XhciLib.inf
|
|
UsbBusLib|BootloaderCommonPkg/Library/UsbBusLib/UsbBusLib.inf
|
|
UsbBlockIoLib|BootloaderCommonPkg/Library/UsbBlockIoLib/UsbBlockIoLib.inf
|
|
IasImageLib|BootloaderCommonPkg/Library/IasImageLib/IasImageLib.inf
|
|
MultibootLib|BootloaderCommonPkg/Library/MultibootLib/MultibootLib.inf
|
|
MediaAccessLib|BootloaderCommonPkg/Library/MediaAccessLib/MediaAccessLib.inf
|
|
ResetSystemLib|BootloaderCommonPkg/Library/ResetSystemLib/ResetSystemLib.inf
|
|
BootOptionLib|BootloaderCommonPkg/Library/BootOptionLib/BootOptionLib.inf
|
|
RngLib|MdePkg/Library/BaseRngLib/BaseRngLib.inf
|
|
SeedListInfoLib|BootloaderCommonPkg/Library/SeedListInfoLib/SeedListInfoLib.inf
|
|
CryptoLib|BootloaderCommonPkg/Library/IppCryptoLib/IppCryptoLib.inf
|
|
ShellExtensionLib|BootloaderCommonPkg/Library/ShellExtensionLibNull/ShellExtensionLibNull.inf
|
|
DebugLogBufferLib|BootloaderCommonPkg/Library/DebugLogBufferLib/DebugLogBufferLib.inf
|
|
DebugLib|BootloaderCommonPkg/Library/BootloaderDebugLib/BootloaderDebugLib.inf
|
|
ConsoleInLib|BootloaderCommonPkg/Library/ConsoleInLib/ConsoleInLib.inf
|
|
ConsoleOutLib|BootloaderCommonPkg/Library/ConsoleOutLib/ConsoleOutLib.inf
|
|
ContainerLib|BootloaderCommonPkg/Library/ContainerLib/ContainerLib.inf
|
|
LinuxLib|BootloaderCommonPkg/Library/LinuxLib/LinuxLib.inf
|
|
UefiVariableLib|BootloaderCommonPkg/Library/UefiVariableLib/UefiVariableLib.inf
|
|
SerialPortLib|BootloaderCommonPkg/Library/SerialPortLib/SerialPortLib.inf
|
|
|
|
!if $(HAVE_FSP_BIN)
|
|
FspApiLib|$(PLATFORM_PACKAGE)/Library/FspApiLib/FspApiLib.inf
|
|
!endif
|
|
!if $(ENABLE_SOURCE_DEBUG)
|
|
DebugAgentLib|BootloaderCommonPkg/Library/DebugAgentLib/DebugAgentLib.inf
|
|
!else
|
|
DebugAgentLib|BootloaderCommonPkg/Library/DebugAgentLib/DebugAgentLibNull.inf
|
|
!endif
|
|
ElfLib|BootloaderCommonPkg/Library/ElfLib/ElfLib.inf
|
|
S3SaveRestoreLib|$(PLATFORM_PACKAGE)/Library/S3SaveRestoreLib/S3SaveRestoreLib.inf
|
|
|
|
BoardSupportLib|Platform/CommonBoardPkg/Library/BoardSupportLib/BoardSupportLib.inf
|
|
|
|
[LibraryClasses.IA32]
|
|
PagingLib|$(PLATFORM_PACKAGE)/Library/PagingLib/PagingLib.inf
|
|
TimerLib|BootloaderCommonPkg/Library/AcpiTimerLib/AcpiTimerLib.inf
|
|
|
|
################################################################################
|
|
#
|
|
# Pcd Section - list of all EDK II PCD Entries defined by this Platform
|
|
#
|
|
################################################################################
|
|
[PcdsFixedAtBuild]
|
|
!if $(TARGET) == RELEASE
|
|
# Use this PCD to control the debug message that goes into binary image
|
|
gEfiMdePkgTokenSpaceGuid.PcdFixedDebugPrintErrorLevel | 0x80080003
|
|
gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask | 0x23
|
|
!else
|
|
gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask | 0x27
|
|
!endif
|
|
|
|
# Limit DEBUG output device to be serial port (BIT1) and log buffer (BIT0) for stages.
|
|
# Once in payload, more debug devices can be enabled, such as frame buffer.
|
|
gPlatformCommonLibTokenSpaceGuid.PcdDebugOutputDeviceMask | $(DEBUG_OUTPUT_DEVICE_MASK) & 3
|
|
|
|
gPlatformModuleTokenSpaceGuid.PcdDebugInterfaceFlags | $(DEBUG_INTERFACE_FLAGS)
|
|
|
|
gPlatformModuleTokenSpaceGuid.PcdPciMmcfgBase | $(PCI_EXPRESS_BASE)
|
|
gPlatformModuleTokenSpaceGuid.PcdPciResourceIoBase | $(PCI_IO_BASE)
|
|
gPlatformModuleTokenSpaceGuid.PcdPciResourceMem32Base | $(PCI_MEM32_BASE)
|
|
|
|
gPlatformModuleTokenSpaceGuid.PcdLoaderReservedMemSize | $(LOADER_RSVD_MEM_SIZE)
|
|
gPlatformModuleTokenSpaceGuid.PcdLoaderAcpiNvsSize | $(LOADER_ACPI_NVS_MEM_SIZE)
|
|
gPlatformModuleTokenSpaceGuid.PcdLoaderAcpiReclaimSize | $(LOADER_ACPI_RECLAIM_MEM_SIZE)
|
|
|
|
gPlatformModuleTokenSpaceGuid.PcdFlashBaseAddress | $(FLASH_BASE)
|
|
gPlatformModuleTokenSpaceGuid.PcdFlashSize | $(FLASH_SIZE)
|
|
|
|
gPlatformModuleTokenSpaceGuid.PcdStage1ABase | $(STAGE1A_BASE)
|
|
gPlatformModuleTokenSpaceGuid.PcdStage1ASize | $(STAGE1A_SIZE)
|
|
gPlatformModuleTokenSpaceGuid.PcdStage1ALoadBase | $(STAGE1A_LOAD_BASE)
|
|
gPlatformModuleTokenSpaceGuid.PcdStage1AFdBase | $(STAGE1A_FD_BASE)
|
|
gPlatformModuleTokenSpaceGuid.PcdStage1AFdSize | $(STAGE1A_FD_SIZE)
|
|
gPlatformModuleTokenSpaceGuid.PcdStage1AFvSize | $(STAGE1A_FV_SIZE)
|
|
|
|
gPlatformModuleTokenSpaceGuid.PcdStage1BBase | $(STAGE1B_BASE)
|
|
gPlatformModuleTokenSpaceGuid.PcdStage1BSize | $(STAGE1B_SIZE)
|
|
gPlatformModuleTokenSpaceGuid.PcdStage1BLoadBase | $(STAGE1B_LOAD_BASE)
|
|
gPlatformModuleTokenSpaceGuid.PcdStage1BFdBase | $(STAGE1B_FD_BASE)
|
|
gPlatformModuleTokenSpaceGuid.PcdStage1BFdSize | $(STAGE1B_FD_SIZE)
|
|
gPlatformModuleTokenSpaceGuid.PcdStage1BFvSize | $(STAGE1B_FV_SIZE)
|
|
|
|
gPlatformModuleTokenSpaceGuid.PcdStage2Base | $(STAGE2_BASE)
|
|
gPlatformModuleTokenSpaceGuid.PcdStage2Size | $(STAGE2_SIZE)
|
|
gPlatformModuleTokenSpaceGuid.PcdStage2LoadBase | $(STAGE2_LOAD_BASE)
|
|
gPlatformModuleTokenSpaceGuid.PcdStage2FdBase | $(STAGE2_FD_BASE)
|
|
gPlatformModuleTokenSpaceGuid.PcdStage2FdSize | $(STAGE2_FD_SIZE)
|
|
gPlatformModuleTokenSpaceGuid.PcdStage2FvSize | $(STAGE2_FV_SIZE)
|
|
|
|
gPlatformModuleTokenSpaceGuid.PcdStage1StackSize | $(STAGE1_STACK_SIZE)
|
|
gPlatformModuleTokenSpaceGuid.PcdStage1DataSize | $(STAGE1_DATA_SIZE)
|
|
gPlatformModuleTokenSpaceGuid.PcdStage2LoadHigh | $(STAGE2_LOAD_HIGH)
|
|
|
|
gPlatformModuleTokenSpaceGuid.PcdPayloadLoadHigh | $(PAYLOAD_LOAD_HIGH)
|
|
gPlatformModuleTokenSpaceGuid.PcdPayloadExeBase | $(PAYLOAD_EXE_BASE)
|
|
gPlatformModuleTokenSpaceGuid.PcdPayloadLoadBase | $(PAYLOAD_LOAD_BASE)
|
|
gPlatformModuleTokenSpaceGuid.PcdPayloadBase | $(PAYLOAD_BASE)
|
|
gPlatformModuleTokenSpaceGuid.PcdPayloadSize | $(PAYLOAD_SIZE)
|
|
gPlatformModuleTokenSpaceGuid.PcdFwuPayloadSize | $(FWUPDATE_SIZE)
|
|
gPlatformModuleTokenSpaceGuid.PcdFwuPayloadBase | $(FWUPDATE_BASE)
|
|
gPlatformModuleTokenSpaceGuid.PcdFwuPayloadLoadBase | $(FWUPDATE_LOAD_BASE)
|
|
gPlatformModuleTokenSpaceGuid.PcdCfgDataBase | $(CFGDATA_BASE)
|
|
gPlatformModuleTokenSpaceGuid.PcdCfgDataSize | $(CFGDATA_SIZE)
|
|
gPlatformModuleTokenSpaceGuid.PcdMrcDataBase | $(MRCDATA_BASE)
|
|
gPlatformModuleTokenSpaceGuid.PcdMrcDataSize | $(MRCDATA_SIZE)
|
|
gPlatformModuleTokenSpaceGuid.PcdUcodeBase | $(UCODE_BASE)
|
|
gPlatformModuleTokenSpaceGuid.PcdUcodeSize | $(UCODE_SIZE)
|
|
gPlatformModuleTokenSpaceGuid.PcdVariableRegionBase | $(VARIABLE_BASE)
|
|
gPlatformModuleTokenSpaceGuid.PcdVariableRegionSize | $(VARIABLE_SIZE)
|
|
|
|
gPlatformModuleTokenSpaceGuid.PcdFSPTBase | $(FSP_T_BASE)
|
|
gPlatformModuleTokenSpaceGuid.PcdFSPTSize | $(FSP_T_SIZE)
|
|
gPlatformModuleTokenSpaceGuid.PcdFSPTUpdSize | $(FSP_T_UPD_SIZE)
|
|
gPlatformModuleTokenSpaceGuid.PcdFSPMBase | $(FSP_M_BASE)
|
|
gPlatformModuleTokenSpaceGuid.PcdFSPMSize | $(FSP_M_SIZE)
|
|
gPlatformModuleTokenSpaceGuid.PcdFSPMUpdSize | $(FSP_M_UPD_SIZE)
|
|
gPlatformModuleTokenSpaceGuid.PcdFSPSSize | $(FSP_S_SIZE)
|
|
gPlatformModuleTokenSpaceGuid.PcdFSPSUpdSize | $(FSP_S_UPD_SIZE)
|
|
|
|
gPlatformModuleTokenSpaceGuid.PcdTopSwapRegionSize | $(TOP_SWAP_SIZE)
|
|
gPlatformModuleTokenSpaceGuid.PcdRedundantRegionSize | $(REDUNDANT_SIZE)
|
|
gPlatformModuleTokenSpaceGuid.PcdCfgDataLoadSource | $(CFGDATA_REGION_TYPE)
|
|
gPlatformModuleTokenSpaceGuid.PcdCfgDatabaseSize | $(CFG_DATABASE_SIZE)
|
|
|
|
gPlatformModuleTokenSpaceGuid.PcdCpuMaxLogicalProcessorNumber | $(CPU_MAX_LOGICAL_PROCESSOR_NUMBER)
|
|
|
|
gPlatformCommonLibTokenSpaceGuid.PcdConsoleInDeviceMask | $(CONSOLE_IN_DEVICE_MASK)
|
|
gPlatformCommonLibTokenSpaceGuid.PcdConsoleOutDeviceMask | $(CONSOLE_OUT_DEVICE_MASK)
|
|
|
|
gPlatformModuleTokenSpaceGuid.PcdVerifiedBootHashMask | $(VERIFIED_BOOT_HASH_MASK)
|
|
gPlatformCommonLibTokenSpaceGuid.PcdCryptoShaNiEnabled | $(ENABLE_CRYPTO_SHA_NI)
|
|
|
|
gPlatformCommonLibTokenSpaceGuid.PcdSpiIasImageRegionType | $(SPI_IAS_REGION_TYPE)
|
|
gPlatformCommonLibTokenSpaceGuid.PcdSpiIasImage1RegionBase | $(SPI_IAS1_BASE)
|
|
gPlatformCommonLibTokenSpaceGuid.PcdSpiIasImage1RegionSize | $(SPI_IAS1_SIZE)
|
|
gPlatformCommonLibTokenSpaceGuid.PcdSpiIasImage2RegionBase | $(SPI_IAS2_BASE)
|
|
gPlatformCommonLibTokenSpaceGuid.PcdSpiIasImage2RegionSize | $(SPI_IAS2_SIZE)
|
|
|
|
gPlatformCommonLibTokenSpaceGuid.PcdSupportedMediaTypeMask | $(BOOT_MEDIA_SUPPORT_MASK)
|
|
gPlatformCommonLibTokenSpaceGuid.PcdSupportedFileSystemMask | $(FILE_SYSTEM_SUPPORT_MASK)
|
|
|
|
gPlatformCommonLibTokenSpaceGuid.PcdSeedListEnabled | $(HAVE_SEED_LIST)
|
|
gPlatformCommonLibTokenSpaceGuid.PcdUsbKeyboardPollingTimeout | $(USB_KB_POLLING_TIMEOUT)
|
|
gPlatformCommonLibTokenSpaceGuid.PcdLowestSupportedFwVer | $(LOWEST_SUPPORTED_FW_VER)
|
|
|
|
[PcdsPatchableInModule]
|
|
gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel | 0x8000004F
|
|
gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress | $(PCI_EXPRESS_BASE)
|
|
gPlatformModuleTokenSpaceGuid.PcdAcpiTablesRsdp | 0xFF000000
|
|
gPlatformModuleTokenSpaceGuid.PcdAcpiTablesAddress | 0xFF000000
|
|
gPlatformModuleTokenSpaceGuid.PcdAcpiGnvsAddress | 0xFF000000
|
|
gPlatformModuleTokenSpaceGuid.PcdGraphicsVbtAddress| 0xFF000000
|
|
gPlatformModuleTokenSpaceGuid.PcdDeviceTreeBase | 0xFF000000
|
|
gPlatformCommonLibTokenSpaceGuid.PcdAcpiPmTimerBase | $(ACPI_PM_TIMER_BASE)
|
|
gPlatformModuleTokenSpaceGuid.PcdHashStoreBase | 0xFF000000
|
|
gPlatformModuleTokenSpaceGuid.PcdVerInfoBase | 0xFF000000
|
|
gPlatformModuleTokenSpaceGuid.PcdFileDataBase | 0xFF000000
|
|
gPlatformModuleTokenSpaceGuid.PcdFSPSBase | $(FSP_S_BASE)
|
|
gPlatformModuleTokenSpaceGuid.PcdSplashLogoAddress | 0xFF000000
|
|
gPlatformCommonLibTokenSpaceGuid.PcdEmmcMaxRwBlockNumber | 0xFFFF
|
|
gPlatformModuleTokenSpaceGuid.PcdPayloadReservedMemSize | $(PLD_RSVD_MEM_SIZE)
|
|
gPlatformModuleTokenSpaceGuid.PcdSmramTsegBase | 0xFF000000
|
|
gPlatformModuleTokenSpaceGuid.PcdSmramTsegSize | 0x00000000
|
|
|
|
gPayloadTokenSpaceGuid.PcdPayloadHobList | 0x00000000
|
|
gPayloadTokenSpaceGuid.PcdPayloadHeapSize | $(PLD_HEAP_SIZE)
|
|
gPayloadTokenSpaceGuid.PcdPayloadStackSize | $(PLD_STACK_SIZE)
|
|
gPayloadTokenSpaceGuid.PcdGlobalDataAddress | 0x00000000
|
|
|
|
gPlatformModuleTokenSpaceGuid.PcdSmmRebaseMode | $(ENABLE_SMM_REBASE)
|
|
|
|
gPlatformModuleTokenSpaceGuid.PcdSmbiosTablesBase | 0x00000000
|
|
gPlatformModuleTokenSpaceGuid.PcdSmbiosStringsPtr | 0x00000000
|
|
gPlatformModuleTokenSpaceGuid.PcdSmbiosStringsCnt | 0x0000
|
|
gPlatformModuleTokenSpaceGuid.PcdFuncCpuInitHook | 0x00000000
|
|
|
|
[PcdsFeatureFlag]
|
|
gPlatformCommonLibTokenSpaceGuid.PcdMinDecompression | FALSE
|
|
gPlatformCommonLibTokenSpaceGuid.PcdMeasuredBootEnabled | $(HAVE_MEASURED_BOOT)
|
|
gPlatformCommonLibTokenSpaceGuid.PcdVerifiedBootEnabled | $(HAVE_VERIFIED_BOOT)
|
|
gPlatformModuleTokenSpaceGuid.PcdIntelGfxEnabled | $(HAVE_VBT_BIN)
|
|
gPlatformModuleTokenSpaceGuid.PcdAcpiEnabled | $(HAVE_ACPI_TABLE)
|
|
gPlatformModuleTokenSpaceGuid.PcdSmpEnabled | $(ENABLE_SMP_INIT)
|
|
gPlatformModuleTokenSpaceGuid.PcdPciEnumEnabled | $(ENABLE_PCI_ENUM)
|
|
gPlatformModuleTokenSpaceGuid.PcdStage1AXip | $(STAGE1A_XIP)
|
|
gPlatformModuleTokenSpaceGuid.PcdStage1BXip | $(STAGE1B_XIP)
|
|
gPlatformModuleTokenSpaceGuid.PcdLoadImageUseFsp | $(ENABLE_FSP_LOAD_IMAGE)
|
|
gPlatformModuleTokenSpaceGuid.PcdSplashEnabled | $(ENABLE_SPLASH)
|
|
gPlatformModuleTokenSpaceGuid.PcdFramebufferInitEnabled | $(ENABLE_FRAMEBUFFER_INIT)
|
|
gPlatformModuleTokenSpaceGuid.PcdVtdEnabled | $(ENABLE_VTD)
|
|
gPlatformModuleTokenSpaceGuid.PcdFlashMapEnabled | $(HAVE_FLASH_MAP)
|
|
gPlatformModuleTokenSpaceGuid.PcdPsdBiosEnabled | $(HAVE_PSD_TABLE)
|
|
gPayloadTokenSpaceGuid.PcdGrubBootCfgEnabled | $(ENABLE_GRUB_CONFIG)
|
|
gPlatformModuleTokenSpaceGuid.PcdSmbiosEnabled | $(ENABLE_SMBIOS)
|
|
gPlatformModuleTokenSpaceGuid.PcdLinuxPayloadEnabled | $(ENABLE_LINUX_PAYLOAD)
|
|
gPlatformCommonLibTokenSpaceGuid.PcdContainerBootEnabled| $(ENABLE_CONTAINER_BOOT)
|
|
gPayloadTokenSpaceGuid.PcdCsmeUpdateEnabled | $(ENABLE_CSME_UPDATE)
|
|
gPlatformCommonLibTokenSpaceGuid.PcdEmmcHs400SupportEnabled | $(ENABLE_EMMC_HS400)
|
|
gPlatformCommonLibTokenSpaceGuid.PcdPreOsCheckerEnabled | $(ENABLE_PRE_OS_CHECKER)
|
|
|
|
!ifdef $(S3_DEBUG)
|
|
gPlatformModuleTokenSpaceGuid.PcdS3DebugEnabled | $(S3_DEBUG)
|
|
!endif
|
|
gPlatformCommonLibTokenSpaceGuid.PcdSourceDebugEnabled | $(ENABLE_SOURCE_DEBUG)
|
|
|
|
[PcdsDynamicDefault]
|
|
gEfiMdePkgTokenSpaceGuid.PcdPlatformBootTimeOut | 2
|
|
|
|
###############################################################################
|
|
##
|
|
## Because of some odd behavior with current EDKII build tools,
|
|
## putting the !if around the [Section Header] does not work quite right.
|
|
## For example, the below will only work when the !if evaluates to false.
|
|
## !if $(X64_CONFIG) == TRUE
|
|
## [Components.X64]
|
|
## !else
|
|
## [Components.IA32]
|
|
## !endif
|
|
## !include Path/to/file.dsc
|
|
##
|
|
## This is needed since Components sections must specify and Arch (ie no Common)
|
|
###############################################################################
|
|
|
|
[Components]
|
|
#
|
|
# SEC
|
|
#
|
|
$(PLATFORM_PACKAGE)/PcdData/PcdData.inf
|
|
|
|
$(PLATFORM_PACKAGE)/Stage1A/Stage1A.inf {
|
|
<PcdsFeatureFlag>
|
|
gPlatformCommonLibTokenSpaceGuid.PcdMinDecompression | TRUE
|
|
<LibraryClasses>
|
|
BaseMemoryLib| MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf
|
|
SocInitLib | Silicon/$(SILICON_PKG_NAME)/Library/Stage1ASocInitLib/Stage1ASocInitLib.inf
|
|
BoardInitLib | Platform/$(BOARD_PKG_NAME)/Library/Stage1ABoardInitLib/Stage1ABoardInitLib.inf
|
|
!if $(SKIP_STAGE1A_SOURCE_DEBUG)
|
|
DebugAgentLib| BootloaderCommonPkg/Library/DebugAgentLib/DebugAgentLibNull.inf
|
|
!endif
|
|
}
|
|
|
|
$(PLATFORM_PACKAGE)/Stage1B/Stage1B.inf {
|
|
<LibraryClasses>
|
|
BaseMemoryLib| MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf
|
|
SocInitLib | Silicon/$(SILICON_PKG_NAME)/Library/Stage1BSocInitLib/Stage1BSocInitLib.inf
|
|
BoardInitLib | Platform/$(BOARD_PKG_NAME)/Library/Stage1BBoardInitLib/Stage1BBoardInitLib.inf
|
|
}
|
|
|
|
$(PLATFORM_PACKAGE)/Stage2/Stage2.inf {
|
|
<LibraryClasses>
|
|
SocInitLib | Silicon/$(SILICON_PKG_NAME)/Library/Stage2SocInitLib/Stage2SocInitLib.inf
|
|
BoardInitLib | Platform/$(BOARD_PKG_NAME)/Library/Stage2BoardInitLib/Stage2BoardInitLib.inf
|
|
}
|
|
|
|
PayloadPkg/OsLoader/OsLoader.inf {
|
|
<PcdsFixedAtBuild>
|
|
gPlatformCommonLibTokenSpaceGuid.PcdDebugOutputDeviceMask | $(DEBUG_OUTPUT_DEVICE_MASK)
|
|
<LibraryClasses>
|
|
MemoryAllocationLib | BootloaderCommonPkg/Library/FullMemoryAllocationLib/FullMemoryAllocationLib.inf
|
|
PayloadEntryLib | PayloadPkg/Library/PayloadEntryLib/PayloadEntryLib.inf
|
|
PayloadSupportLib | PayloadPkg/Library/PayloadSupportLib/PayloadSupportLib.inf
|
|
BootloaderLib | PayloadPkg/Library/PayloadLib/PayloadLib.inf
|
|
AbSupportLib | PayloadPkg/Library/AbSupportLib/AbSupportLib.inf
|
|
SblParameterLib | PayloadPkg/Library/SblParameterLib/SblParameterLib.inf
|
|
TrustyBootLib | PayloadPkg/Library/TrustyBootLib/TrustyBootLib.inf
|
|
}
|
|
|
|
!if $(ENABLE_FWU)
|
|
PayloadPkg/FirmwareUpdate/FirmwareUpdate.inf {
|
|
<PcdsFixedAtBuild>
|
|
gPlatformCommonLibTokenSpaceGuid.PcdDebugOutputDeviceMask | $(DEBUG_OUTPUT_DEVICE_MASK)
|
|
<LibraryClasses>
|
|
MemoryAllocationLib | BootloaderCommonPkg/Library/FullMemoryAllocationLib/FullMemoryAllocationLib.inf
|
|
PayloadEntryLib | PayloadPkg/Library/PayloadEntryLib/PayloadEntryLib.inf
|
|
PayloadSupportLib | PayloadPkg/Library/PayloadSupportLib/PayloadSupportLib.inf
|
|
BootloaderLib | PayloadPkg/Library/PayloadLib/PayloadLib.inf
|
|
FirmwareUpdateLib | Silicon/$(SILICON_PKG_NAME)/Library/FirmwareUpdateLib/FirmwareUpdateLib.inf
|
|
}
|
|
!endif
|
|
|
|
!if $(BUILD_CSME_UPDATE_DRIVER)
|
|
PayloadPkg/CsmeUpdateDriver/CsmeUpdateDriver.inf
|
|
!endif
|
|
|
|
!if $(HAVE_ACPI_TABLE)
|
|
Platform/$(BOARD_PKG_NAME)/AcpiTables/AcpiTables.inf
|
|
!endif
|
|
|
|
!if $(UCODE_SIZE) > 0
|
|
Silicon/$(SILICON_PKG_NAME)/Microcode/Microcode.inf
|
|
!endif
|
|
|
|
[BuildOptions.Common.EDKII]
|
|
# Enable link-time optimization when building with GCC49
|
|
*_GCC49_IA32_CC_FLAGS = -flto
|
|
*_GCC49_IA32_DLINK_FLAGS = -flto
|
|
*_GCC5_IA32_CC_FLAGS = -fno-pic
|
|
*_GCC5_IA32_DLINK_FLAGS = -no-pie
|
|
*_GCC5_IA32_ASLCC_FLAGS = -fno-pic
|
|
*_GCC5_IA32_ASLDLINK_FLAGS = -no-pie
|
|
# Force synchronous PDB writes for parallel builds
|
|
*_VS2015x86_IA32_CC_FLAGS = /FS
|
|
|
|
*_*_*_CC_FLAGS = -DDISABLE_NEW_DEPRECATED_INTERFACES
|
|
!if $(TARGET) == RELEASE
|
|
*_*_*_CC_FLAGS = -DLITE_PRINT
|
|
!endif
|
|
|
|
!if $(TARGET) == NOOPT
|
|
# GCC: -O0 results in too big size. Override it to -O1 with lto
|
|
*_GCC49_*_CC_FLAGS = -O1
|
|
*_GCC49_*_DLINK_FLAGS = -O1
|
|
*_GCC5_*_CC_FLAGS = -flto -O1
|
|
*_GCC5_*_DLINK_FLAGS = -flto -O1
|
|
# VS: Use default /Od for now
|
|
!endif
|
|
|