EmbeddedPkg.dsc 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257
  1. #/** @file
  2. # Embedded Package
  3. #
  4. #
  5. # Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved.<BR>
  6. # Copyright (c) 2012-2015, ARM Ltd. All rights reserved.<BR>
  7. # Copyright (c) 2016, Linaro Ltd. All rights reserved.<BR>
  8. #
  9. # This program and the accompanying materials
  10. # are licensed and made available under the terms and conditions of the BSD License
  11. # which accompanies this distribution. The full text of the license may be found at
  12. # http://opensource.org/licenses/bsd-license.php
  13. #
  14. # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
  15. # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
  16. #
  17. #**/
  18. ################################################################################
  19. #
  20. # Defines Section - statements that will be processed to create a Makefile.
  21. #
  22. ################################################################################
  23. [Defines]
  24. PLATFORM_NAME = Embedded
  25. PLATFORM_GUID = 8DBB580B-CF89-4D57-95C6-DFE96C44686E
  26. PLATFORM_VERSION = 0.1
  27. DSC_SPECIFICATION = 0x00010005
  28. OUTPUT_DIRECTORY = Build/Embedded
  29. SUPPORTED_ARCHITECTURES = IA32|X64|ARM|AARCH64
  30. BUILD_TARGETS = DEBUG|RELEASE|NOOPT
  31. SKUID_IDENTIFIER = DEFAULT
  32. ################################################################################
  33. #
  34. # SKU Identification section - list of all SKU IDs supported by this
  35. # Platform.
  36. #
  37. ################################################################################
  38. [SkuIds]
  39. 0|DEFAULT # The entry: 0|DEFAULT is reserved and always required.
  40. ################################################################################
  41. #
  42. # Library Class section - list of all Library Classes needed by this Platform.
  43. #
  44. ################################################################################
  45. [LibraryClasses.common]
  46. # DebugLib|MdePkg/Library/UefiDebugLibConOut/UefiDebugLibConOut.inf
  47. DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
  48. AndroidBootImgLib|EmbeddedPkg/Library/AndroidBootImgLib/AndroidBootImgLib.inf
  49. BaseLib|MdePkg/Library/BaseLib/BaseLib.inf
  50. BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf
  51. PciLib|MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf
  52. PerformanceLib|MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf
  53. PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
  54. UefiDecompressLib|MdePkg/Library/BaseUefiDecompressLib/BaseUefiDecompressLib.inf
  55. ReportStatusCodeLib|MdeModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf
  56. PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf
  57. PeCoffLib|MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf
  58. PeCoffExtraActionLib|MdePkg/Library/BasePeCoffExtraActionLibNull/BasePeCoffExtraActionLibNull.inf
  59. CacheMaintenanceLib|MdePkg/Library/BaseCacheMaintenanceLib/BaseCacheMaintenanceLib.inf
  60. PrePiLib|EmbeddedPkg/Library/PrePiLib/PrePiLib.inf
  61. SerialPortLib|MdePkg/Library/BaseSerialPortLibNull/BaseSerialPortLibNull.inf
  62. RealTimeClockLib|EmbeddedPkg/Library/TemplateRealTimeClockLib/TemplateRealTimeClockLib.inf
  63. EfiResetSystemLib|EmbeddedPkg/Library/TemplateResetSystemLib/TemplateResetSystemLib.inf
  64. GdbSerialLib|EmbeddedPkg/Library/GdbSerialLib/GdbSerialLib.inf
  65. #
  66. # Need to change this for IPF
  67. #
  68. IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf
  69. MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
  70. UefiLib|MdePkg/Library/UefiLib/UefiLib.inf
  71. HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
  72. UefiRuntimeLib|MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf
  73. UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
  74. DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
  75. UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
  76. ExtractGuidedSectionLib|MdePkg/Library/DxeExtractGuidedSectionLib/DxeExtractGuidedSectionLib.inf
  77. DxeServicesTableLib|MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf
  78. UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
  79. UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf
  80. PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
  81. AcpiLib|EmbeddedPkg/Library/AcpiLib/AcpiLib.inf
  82. FdtLib|EmbeddedPkg/Library/FdtLib/FdtLib.inf
  83. # Shell libraries
  84. ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf
  85. FileHandleLib|MdePkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf
  86. SortLib|MdeModulePkg/Library/UefiSortLib/UefiSortLib.inf
  87. # Networking Requirements
  88. NetLib|MdeModulePkg/Library/DxeNetLib/DxeNetLib.inf
  89. HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf
  90. UefiHiiServicesLib|MdeModulePkg/Library/UefiHiiServicesLib/UefiHiiServicesLib.inf
  91. DxeServicesLib|MdePkg/Library/DxeServicesLib/DxeServicesLib.inf
  92. DtPlatformDtbLoaderLib|EmbeddedPkg/Library/DxeDtPlatformDtbLoaderLibDefault/DxeDtPlatformDtbLoaderLibDefault.inf
  93. [LibraryClasses.common.DXE_DRIVER]
  94. PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
  95. ReportStatusCodeLib|IntelFrameworkModulePkg/Library/DxeReportStatusCodeLibFramework/DxeReportStatusCodeLib.inf
  96. [LibraryClasses.common.UEFI_APPLICATION]
  97. PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
  98. ReportStatusCodeLib|IntelFrameworkModulePkg/Library/DxeReportStatusCodeLibFramework/DxeReportStatusCodeLib.inf
  99. [LibraryClasses.common.UEFI_DRIVER]
  100. PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
  101. ReportStatusCodeLib|IntelFrameworkModulePkg/Library/DxeReportStatusCodeLibFramework/DxeReportStatusCodeLib.inf
  102. [LibraryClasses.common.SEC]
  103. ExtractGuidedSectionLib|EmbeddedPkg/Library/PrePiExtractGuidedSectionLib/PrePiExtractGuidedSectionLib.inf
  104. [LibraryClasses.ARM, LibraryClasses.AARCH64]
  105. ArmGicLib|ArmPkg/Drivers/ArmGic/ArmGicLib.inf
  106. ArmSmcLib|ArmPkg/Library/ArmSmcLib/ArmSmcLib.inf
  107. SemihostLib|ArmPkg/Library/SemihostLib/SemihostLib.inf
  108. NULL|ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf
  109. # Add support for GCC stack protector
  110. NULL|MdePkg/Library/BaseStackCheckLib/BaseStackCheckLib.inf
  111. ArmLib|ArmPkg/Library/ArmLib/ArmBaseLib.inf
  112. ################################################################################
  113. #
  114. # Pcd Section - list of all PCD Entries defined by this Platform
  115. #
  116. ################################################################################
  117. [PcdsFeatureFlag.common]
  118. gEfiMdePkgTokenSpaceGuid.PcdComponentNameDisable|FALSE
  119. gEfiMdePkgTokenSpaceGuid.PcdDriverDiagnosticsDisable|FALSE
  120. gEfiMdePkgTokenSpaceGuid.PcdComponentName2Disable|FALSE
  121. gEfiMdePkgTokenSpaceGuid.PcdDriverDiagnostics2Disable|FALSE
  122. gEmbeddedTokenSpaceGuid.PcdPrePiProduceMemoryTypeInformationHob|FALSE
  123. [PcdsFixedAtBuild.common]
  124. gEfiMdePkgTokenSpaceGuid.PcdMaximumUnicodeStringLength|1000000
  125. gEfiMdePkgTokenSpaceGuid.PcdMaximumAsciiStringLength|1000000
  126. gEfiMdePkgTokenSpaceGuid.PcdMaximumLinkedListLength|1000000
  127. gEfiMdePkgTokenSpaceGuid.PcdSpinLockTimeout|10000000
  128. gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x0f
  129. gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80000000
  130. gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|0x06
  131. gEfiMdePkgTokenSpaceGuid.PcdDebugClearMemoryValue|0xAF
  132. gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyMask|0
  133. gEfiMdePkgTokenSpaceGuid.PcdPostCodePropertyMask|0
  134. gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0xE0000000
  135. gEfiMdePkgTokenSpaceGuid.PcdFSBClock|200000000
  136. gEfiMdePkgTokenSpaceGuid.PcdUefiLibMaxPrintBufferSize|320
  137. gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80000000
  138. gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0xE0000000
  139. gEfiMdePkgTokenSpaceGuid.PcdFSBClock|200000000
  140. gEmbeddedTokenSpaceGuid.PcdPrePiStackBase|0
  141. gEmbeddedTokenSpaceGuid.PcdPrePiStackSize|0
  142. #
  143. # Optinal feature to help prevent EFI memory map fragments
  144. # Turned on and off via: PcdPrePiProduceMemoryTypeInformationHob
  145. # Values are in EFI Pages (4K). DXE Core will make sure that
  146. # at least this much of each type of memory can be allocated
  147. # from a single memory range. This way you only end up with
  148. # maximum of two fragements for each type in the memory map
  149. # (the memory used, and the free memory that was prereserved
  150. # but not used).
  151. #
  152. gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiACPIReclaimMemory|0
  153. gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiACPIMemoryNVS|0
  154. gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiReservedMemoryType|0
  155. gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiRuntimeServicesData|0
  156. gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiRuntimeServicesCode|0
  157. gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiBootServicesCode|0
  158. gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiBootServicesData|0
  159. gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiLoaderCode|0
  160. gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiLoaderData|0
  161. #
  162. # Timer config for this platform
  163. #
  164. gEmbeddedTokenSpaceGuid.PcdTimerBaseAddress|0x3c700000
  165. gEmbeddedTokenSpaceGuid.PcdTimerVector|7
  166. gEmbeddedTokenSpaceGuid.PcdTimerPeriod|100000
  167. [BuildOptions]
  168. RVCT:*_*_ARM_PLATFORM_FLAGS == --cpu=7-A.security
  169. *_*_*_CC_FLAGS = -DDISABLE_NEW_DEPRECATED_INTERFACES
  170. ################################################################################
  171. #
  172. # Components Section - list of all Modules needed by this Platform
  173. #
  174. ################################################################################
  175. [Components.common]
  176. EmbeddedPkg/Library/GdbSerialDebugPortLib/GdbSerialDebugPortLib.inf
  177. EmbeddedPkg/Library/GdbSerialLib/GdbSerialLib.inf
  178. EmbeddedPkg/Library/PrePiExtractGuidedSectionLib/PrePiExtractGuidedSectionLib.inf
  179. EmbeddedPkg/Library/PrePiLib/PrePiLib.inf
  180. EmbeddedPkg/Library/TemplateResetSystemLib/TemplateResetSystemLib.inf
  181. EmbeddedPkg/Library/TemplateRealTimeClockLib/TemplateRealTimeClockLib.inf
  182. EmbeddedPkg/Library/CoherentDmaLib/CoherentDmaLib.inf
  183. EmbeddedPkg/Library/NonCoherentDmaLib/NonCoherentDmaLib.inf
  184. EmbeddedPkg/Library/DxeDtPlatformDtbLoaderLibDefault/DxeDtPlatformDtbLoaderLibDefault.inf
  185. EmbeddedPkg/Library/VirtualRealTimeClockLib/VirtualRealTimeClockLib.inf
  186. EmbeddedPkg/EmbeddedMonotonicCounter/EmbeddedMonotonicCounter.inf
  187. EmbeddedPkg/RealTimeClockRuntimeDxe/RealTimeClockRuntimeDxe.inf
  188. EmbeddedPkg/ResetRuntimeDxe/ResetRuntimeDxe.inf
  189. EmbeddedPkg/SimpleTextInOutSerial/SimpleTextInOutSerial.inf
  190. EmbeddedPkg/MetronomeDxe/MetronomeDxe.inf {
  191. <LibraryClasses>
  192. TimerLib|MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.inf
  193. }
  194. EmbeddedPkg/Universal/MmcDxe/MmcDxe.inf
  195. # Drivers
  196. EmbeddedPkg/Drivers/Lan9118Dxe/Lan9118Dxe.inf
  197. EmbeddedPkg/Drivers/SataSiI3132Dxe/SataSiI3132Dxe.inf
  198. EmbeddedPkg/Library/AcpiLib/AcpiLib.inf
  199. EmbeddedPkg/Library/DebugAgentTimerLibNull/DebugAgentTimerLibNull.inf
  200. EmbeddedPkg/Library/FdtLib/FdtLib.inf
  201. EmbeddedPkg/Library/PrePiHobLib/PrePiHobLib.inf
  202. EmbeddedPkg/Library/PrePiMemoryAllocationLib/PrePiMemoryAllocationLib.inf
  203. EmbeddedPkg/Drivers/ConsolePrefDxe/ConsolePrefDxe.inf
  204. EmbeddedPkg/Drivers/DtPlatformDxe/DtPlatformDxe.inf
  205. [Components.ARM]
  206. EmbeddedPkg/Drivers/Isp1761UsbDxe/Isp1761UsbDxe.inf
  207. [Components.ARM, Components.AARCH64]
  208. EmbeddedPkg/Application/AndroidBoot/AndroidBootApp.inf
  209. EmbeddedPkg/Application/AndroidFastboot/AndroidFastbootApp.inf
  210. EmbeddedPkg/Drivers/AndroidFastbootTransportUsbDxe/FastbootTransportUsbDxe.inf
  211. EmbeddedPkg/Drivers/AndroidFastbootTransportTcpDxe/FastbootTransportTcpDxe.inf
  212. [Components.IA32, Components.X64, Components.ARM]
  213. EmbeddedPkg/GdbStub/GdbStub.inf