PlatformPayloadFeaturePkg.dsc 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134
  1. ## @file
  2. # platform Payload Package
  3. #
  4. # Provides platform specific drivers and definitions to create a platform FV
  5. # to work with universal UEFI payload to provide support for common Intel platforms.
  6. #
  7. # Copyright (c) 2022, Intel Corporation. All rights reserved.<BR>
  8. # SPDX-License-Identifier: BSD-2-Clause-Patent
  9. #
  10. ##
  11. ################################################################################
  12. #
  13. # Defines Section - statements that will be processed to create a Makefile.
  14. #
  15. ################################################################################
  16. [Defines]
  17. PLATFORM_NAME = PlatformPayloadFeaturePkg
  18. PLATFORM_GUID = D3C551BE-9BC6-48F5-AA8A-F49425C28CA9
  19. PLATFORM_VERSION = 0.1
  20. DSC_SPECIFICATION = 0x00010005
  21. SUPPORTED_ARCHITECTURES = X64
  22. BUILD_TARGETS = DEBUG|RELEASE|NOOPT
  23. SKUID_IDENTIFIER = DEFAULT
  24. OUTPUT_DIRECTORY = Build/$(PLATFORM_NAME)
  25. FLASH_DEFINITION = $(PLATFORM_NAME)/PlatformPayloadFeaturePkg.fdf
  26. PCD_DYNAMIC_AS_DYNAMICEX = TRUE
  27. DXE_ARCH = X64
  28. !ifndef SMM_VARIABLE
  29. DEFINE SMM_VARIABLE = TRUE
  30. !endif
  31. [Packages]
  32. MinPlatformPkg/MinPlatformPkg.dec
  33. ################################################################################
  34. #
  35. # SKU Identification section - list of all SKU IDs supported by this Platform.
  36. #
  37. ################################################################################
  38. [SkuIds]
  39. 0|DEFAULT
  40. ################################################################################
  41. #
  42. # Library Class section - list of all Library Classes needed by this Platform.
  43. #
  44. ################################################################################
  45. #
  46. # MinPlatform common include for required feature PCD
  47. # These PCD must be set before the core include files, CoreCommonLib,
  48. # CorePeiLib, and CoreDxeLib.
  49. # Optional MinPlatformPkg features should be enabled after this
  50. #
  51. !include MinPlatformPkg/Include/Dsc/MinPlatformFeaturesPcd.dsc.inc
  52. [PcdsPatchableInModule]
  53. gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|0x7
  54. gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x8000004F
  55. !if $(SOURCE_DEBUG_ENABLE)
  56. gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x17
  57. !else
  58. gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x2F
  59. !endif
  60. #
  61. # The following parameters are set by Library/PlatformHookLib
  62. #
  63. gEfiMdeModulePkgTokenSpaceGuid.PcdSerialUseMmio|FALSE
  64. gEfiMdeModulePkgTokenSpaceGuid.PcdSerialRegisterBase|0
  65. gEfiMdeModulePkgTokenSpaceGuid.PcdSerialBaudRate|115200
  66. gEfiMdeModulePkgTokenSpaceGuid.PcdSerialRegisterStride|1
  67. ################################################################################
  68. #
  69. # Pcd DynamicEx Section - list of all EDK II PCD Entries defined by this Platform
  70. #
  71. ################################################################################
  72. [PcdsDynamicExDefault]
  73. gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0
  74. gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseSize|0
  75. #
  76. # Include common libraries
  77. #
  78. !include MinPlatformPkg/Include/Dsc/CoreCommonLib.dsc
  79. !include MinPlatformPkg/Include/Dsc/CorePeiLib.dsc
  80. !include MinPlatformPkg/Include/Dsc/CoreDxeLib.dsc
  81. #
  82. # For standalone platform payload package build there are specific library requirements
  83. #
  84. [LibraryClasses]
  85. !if $(SMM_VARIABLE) == TRUE
  86. PciLib|MdePkg/Library/BasePciLibPciExpress/BasePciLibPciExpress.inf
  87. PciExpressLib|MdePkg/Library/BasePciExpressLib/BasePciExpressLib.inf
  88. #
  89. # Optional for variable modules debug output
  90. #
  91. DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf
  92. PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
  93. DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
  94. !endif
  95. [LibraryClasses.common.DXE_SMM_DRIVER,LibraryClasses.common.DXE_RUNTIME_DRIVER]
  96. !if $(SMM_VARIABLE) == TRUE
  97. HobLib|UefiPayloadPkg/Library/DxeHobLib/DxeHobLib.inf
  98. TimerLib|UefiCpuPkg/Library/CpuTimerLib/BaseCpuTimerLib.inf
  99. !endif
  100. #
  101. # This package always builds the feature.
  102. #
  103. !include Include/PlatformPayloadFeature.dsc
  104. [BuildOptions]
  105. *_*_*_CC_FLAGS = -D DISABLE_NEW_DEPRECATED_INTERFACES
  106. GCC:*_UNIXGCC_*_CC_FLAGS = -DMDEPKG_NDEBUG
  107. GCC:RELEASE_*_*_CC_FLAGS = -DMDEPKG_NDEBUG
  108. INTEL:RELEASE_*_*_CC_FLAGS = /D MDEPKG_NDEBUG
  109. MSFT:RELEASE_*_*_CC_FLAGS = /D MDEPKG_NDEBUG
  110. [BuildOptions.common.EDKII.DXE_RUNTIME_DRIVER]
  111. GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000
  112. XCODE:*_*_*_DLINK_FLAGS = -seg1addr 0x1000 -segalign 0x1000
  113. XCODE:*_*_*_MTOC_FLAGS = -align 0x1000
  114. CLANGPDB:*_*_*_DLINK_FLAGS = /ALIGN:4096
  115. MSFT:*_*_*_DLINK_FLAGS = /ALIGN:4096