Quark.dsc 43 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948
  1. ## @file
  2. # Clanton Peak CRB platform with 32-bit DXE for 4MB/8MB flash devices.
  3. #
  4. # This package provides Clanton Peak CRB platform specific modules.
  5. # Copyright (c) 2013 - 2019 Intel Corporation.
  6. #
  7. # SPDX-License-Identifier: BSD-2-Clause-Patent
  8. #
  9. ##
  10. ################################################################################
  11. #
  12. # Defines Section - statements that will be processed to create a Makefile.
  13. #
  14. ################################################################################
  15. [Defines]
  16. DSC_SPECIFICATION = 0x00010005
  17. PLATFORM_NAME = Quark
  18. PLATFORM_GUID = F6E7730E-0C7A-4741-9DFC-6BC8B86CD865
  19. PLATFORM_VERSION = 0.1
  20. FLASH_DEFINITION = QuarkPlatformPkg/Quark.fdf
  21. OUTPUT_DIRECTORY = Build/Quark
  22. SUPPORTED_ARCHITECTURES = IA32
  23. BUILD_TARGETS = DEBUG|RELEASE
  24. SKUID_IDENTIFIER = DEFAULT
  25. VPD_TOOL_GUID = 8C3D856A-9BE6-468E-850A-24F7A8D38E08
  26. #
  27. # Platform On/Off features are defined here
  28. #
  29. DEFINE SECURE_BOOT_ENABLE = FALSE
  30. DEFINE MEASURED_BOOT_ENABLE = FALSE
  31. DEFINE SOURCE_DEBUG_ENABLE = FALSE
  32. DEFINE PERFORMANCE_ENABLE = FALSE
  33. DEFINE LOGGING = FALSE
  34. DEFINE CAPSULE_ENABLE = FALSE
  35. DEFINE RECOVERY_ENABLE = FALSE
  36. #
  37. # Galileo board. Options are [GEN1, GEN2]
  38. #
  39. DEFINE GALILEO = GEN2
  40. #
  41. # TPM 1.2 Hardware. Options are [NONE, LPC, ATMEL_I2C, INFINEON_I2C]
  42. #
  43. DEFINE TPM_12_HARDWARE = NONE
  44. !if $(TARGET) == "DEBUG"
  45. DEFINE LOGGING = TRUE
  46. !endif
  47. !if $(PERFORMANCE_ENABLE)
  48. DEFINE SOURCE_DEBUG_ENABLE = FALSE
  49. DEFINE LOGGING = FALSE
  50. !endif
  51. ################################################################################
  52. #
  53. # SKU Identification section - list of all SKU IDs supported by this
  54. # Platform.
  55. #
  56. ################################################################################
  57. [SkuIds]
  58. 0|DEFAULT # The entry: 0|DEFAULT is reserved and always required.
  59. ################################################################################
  60. #
  61. # Library Class section - list of all Library Classes needed by this Platform.
  62. #
  63. ################################################################################
  64. [LibraryClasses]
  65. #
  66. # Entry point
  67. #
  68. PeiCoreEntryPoint|MdePkg/Library/PeiCoreEntryPoint/PeiCoreEntryPoint.inf
  69. PeimEntryPoint|MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf
  70. DxeCoreEntryPoint|MdePkg/Library/DxeCoreEntryPoint/DxeCoreEntryPoint.inf
  71. UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
  72. UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf
  73. #
  74. # Basic
  75. #
  76. BaseLib|MdePkg/Library/BaseLib/BaseLib.inf
  77. BaseMemoryLib|MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf
  78. PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
  79. CpuLib|MdePkg/Library/BaseCpuLib/BaseCpuLib.inf
  80. CpuExceptionHandlerLib|UefiCpuPkg/Library/CpuExceptionHandlerLib/DxeCpuExceptionHandlerLib.inf
  81. IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf
  82. PciLib|MdePkg/Library/BasePciLibPciExpress/BasePciLibPciExpress.inf
  83. PciSegmentLib|MdePkg/Library/BasePciSegmentLibPci/BasePciSegmentLibPci.inf
  84. PciCf8Lib|MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf
  85. PciExpressLib|MdePkg/Library/BasePciExpressLib/BasePciExpressLib.inf
  86. CacheMaintenanceLib|MdePkg/Library/BaseCacheMaintenanceLib/BaseCacheMaintenanceLib.inf
  87. PeCoffLib|MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf
  88. !if $(SOURCE_DEBUG_ENABLE)
  89. PeCoffExtraActionLib|SourceLevelDebugPkg/Library/PeCoffExtraActionLibDebug/PeCoffExtraActionLibDebug.inf
  90. DebugCommunicationLib|SourceLevelDebugPkg/Library/DebugCommunicationLibSerialPort/DebugCommunicationLibSerialPort.inf
  91. !else
  92. PeCoffExtraActionLib|MdePkg/Library/BasePeCoffExtraActionLibNull/BasePeCoffExtraActionLibNull.inf
  93. !endif
  94. DebugAgentLib|MdeModulePkg/Library/DebugAgentLibNull/DebugAgentLibNull.inf
  95. PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf
  96. #
  97. # UEFI & PI
  98. #
  99. UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
  100. UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
  101. UefiRuntimeLib|MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf
  102. UefiLib|MdePkg/Library/UefiLib/UefiLib.inf
  103. HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf
  104. UefiHiiServicesLib|MdeModulePkg/Library/UefiHiiServicesLib/UefiHiiServicesLib.inf
  105. DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
  106. UefiDecompressLib|MdePkg/Library/BaseUefiDecompressLib/BaseUefiTianoCustomDecompressLib.inf
  107. PeiServicesTablePointerLib|MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf
  108. PeiServicesLib|MdePkg/Library/PeiServicesLib/PeiServicesLib.inf
  109. DxeServicesLib|MdePkg/Library/DxeServicesLib/DxeServicesLib.inf
  110. DxeServicesTableLib|MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf
  111. UefiCpuLib|UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib.inf
  112. SortLib|MdeModulePkg/Library/UefiSortLib/UefiSortLib.inf
  113. UefiBootManagerLib|MdeModulePkg/Library/UefiBootManagerLib/UefiBootManagerLib.inf
  114. #
  115. # Generic Modules
  116. #
  117. S3BootScriptLib|MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf
  118. S3IoLib|MdePkg/Library/BaseS3IoLib/BaseS3IoLib.inf
  119. S3PciLib|MdePkg/Library/BaseS3PciLib/BaseS3PciLib.inf
  120. UefiUsbLib|MdePkg/Library/UefiUsbLib/UefiUsbLib.inf
  121. UefiScsiLib|MdePkg/Library/UefiScsiLib/UefiScsiLib.inf
  122. NetLib|MdeModulePkg/Library/DxeNetLib/DxeNetLib.inf
  123. IpIoLib|MdeModulePkg/Library/DxeIpIoLib/DxeIpIoLib.inf
  124. UdpIoLib|MdeModulePkg/Library/DxeUdpIoLib/DxeUdpIoLib.inf
  125. DpcLib|MdeModulePkg/Library/DxeDpcLib/DxeDpcLib.inf
  126. OemHookStatusCodeLib|MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf
  127. SynchronizationLib|MdePkg/Library/BaseSynchronizationLib/BaseSynchronizationLib.inf
  128. SecurityManagementLib|MdeModulePkg/Library/DxeSecurityManagementLib/DxeSecurityManagementLib.inf
  129. SmmCorePlatformHookLib|MdeModulePkg/Library/SmmCorePlatformHookLibNull/SmmCorePlatformHookLibNull.inf
  130. PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
  131. HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
  132. MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
  133. ReportStatusCodeLib|MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf
  134. ExtractGuidedSectionLib|MdePkg/Library/DxeExtractGuidedSectionLib/DxeExtractGuidedSectionLib.inf
  135. LockBoxLib|MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf
  136. VarCheckLib|MdeModulePkg/Library/VarCheckLib/VarCheckLib.inf
  137. DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf
  138. !if $(LOGGING)
  139. DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
  140. !else
  141. DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
  142. !endif
  143. !if $(PERFORMANCE_ENABLE)
  144. PerformanceLib|MdeModulePkg/Library/DxePerformanceLib/DxePerformanceLib.inf
  145. !else
  146. PerformanceLib|MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf
  147. !endif
  148. ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf
  149. FileHandleLib|MdePkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf
  150. OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLib.inf
  151. IntrinsicLib|CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf
  152. BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf
  153. !if $(SECURE_BOOT_ENABLE)
  154. PlatformSecureLib|QuarkPlatformPkg/Library/PlatformSecureLib/PlatformSecureLib.inf
  155. AuthVariableLib|SecurityPkg/Library/AuthVariableLib/AuthVariableLib.inf
  156. !else
  157. AuthVariableLib|MdeModulePkg/Library/AuthVariableLibNull/AuthVariableLibNull.inf
  158. !endif
  159. !if $(MEASURED_BOOT_ENABLE)
  160. TpmMeasurementLib|SecurityPkg/Library/DxeTpmMeasurementLib/DxeTpmMeasurementLib.inf
  161. Tpm12CommandLib|SecurityPkg/Library/Tpm12CommandLib/Tpm12CommandLib.inf
  162. !if $(TPM_12_HARDWARE) == LPC
  163. Tpm12DeviceLib|SecurityPkg/Library/Tpm12DeviceLibDTpm/Tpm12DeviceLibDTpm.inf
  164. !endif
  165. !if $(TPM_12_HARDWARE) == ATMEL_I2C
  166. Tpm12DeviceLib|QuarkPlatformPkg/Library/Tpm12DeviceLibAtmelI2c/Tpm12DeviceLibAtmelI2c.inf
  167. !endif
  168. !if $(TPM_12_HARDWARE) == INFINEON_I2C
  169. Tpm12DeviceLib|QuarkPlatformPkg/Library/Tpm12DeviceLibInfineonI2c/Tpm12DeviceLibInfineonI2c.inf
  170. !endif
  171. TcgPpVendorLib|SecurityPkg/Library/TcgPpVendorLibNull/TcgPpVendorLibNull.inf
  172. !else
  173. TpmMeasurementLib|MdeModulePkg/Library/TpmMeasurementLibNull/TpmMeasurementLibNull.inf
  174. !endif
  175. FileExplorerLib|MdeModulePkg/Library/FileExplorerLib/FileExplorerLib.inf
  176. #
  177. # CPU
  178. #
  179. MtrrLib|QuarkSocPkg/QuarkNorthCluster/Library/MtrrLib/MtrrLib.inf
  180. LocalApicLib|UefiCpuPkg/Library/BaseXApicLib/BaseXApicLib.inf
  181. MpInitLib|UefiCpuPkg/Library/MpInitLibUp/MpInitLibUp.inf
  182. #
  183. # Quark North Cluster
  184. #
  185. SmmLib|QuarkSocPkg/QuarkNorthCluster/Library/QNCSmmLib/QNCSmmLib.inf
  186. SmbusLib|QuarkSocPkg/QuarkNorthCluster/Library/SmbusLib/SmbusLib.inf
  187. TimerLib|PcAtChipsetPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.inf
  188. ResetSystemLib|QuarkSocPkg/QuarkNorthCluster/Library/ResetSystemLib/ResetSystemLib.inf
  189. IntelQNCLib|QuarkSocPkg/QuarkNorthCluster/Library/IntelQNCLib/IntelQNCLib.inf
  190. QNCAccessLib|QuarkSocPkg/QuarkNorthCluster/Library/QNCAccessLib/QNCAccessLib.inf
  191. IoApicLib|PcAtChipsetPkg/Library/BaseIoApicLib/BaseIoApicLib.inf
  192. #
  193. # Quark South Cluster
  194. #
  195. IohLib|QuarkSocPkg/QuarkSouthCluster/Library/IohLib/IohLib.inf
  196. I2cLib|QuarkSocPkg/QuarkSouthCluster/Library/I2cLib/I2cLib.inf
  197. SerialPortLib|MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf
  198. PlatformHookLib|MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf
  199. #
  200. # Quark Platform
  201. #
  202. PlatformSecLib|QuarkPlatformPkg/Library/PlatformSecLib/PlatformSecLib.inf
  203. PlatformPcieHelperLib|QuarkPlatformPkg/Library/PlatformPcieHelperLib/PlatformPcieHelperLib.inf
  204. PlatformHelperLib|QuarkPlatformPkg/Library/PlatformHelperLib/DxePlatformHelperLib.inf
  205. !if $(CAPSULE_ENABLE)
  206. CapsuleLib|MdeModulePkg/Library/DxeCapsuleLibFmp/DxeCapsuleLib.inf
  207. BmpSupportLib|MdeModulePkg/Library/BaseBmpSupportLib/BaseBmpSupportLib.inf
  208. SafeIntLib|MdePkg/Library/BaseSafeIntLib/BaseSafeIntLib.inf
  209. !else
  210. CapsuleLib|MdeModulePkg/Library/DxeCapsuleLibNull/DxeCapsuleLibNull.inf
  211. !endif
  212. EdkiiSystemCapsuleLib|SignedCapsulePkg/Library/EdkiiSystemCapsuleLib/EdkiiSystemCapsuleLib.inf
  213. FmpAuthenticationLib|MdeModulePkg/Library/FmpAuthenticationLibNull/FmpAuthenticationLibNull.inf
  214. IniParsingLib|SignedCapsulePkg/Library/IniParsingLib/IniParsingLib.inf
  215. PlatformFlashAccessLib|QuarkPlatformPkg/Feature/Capsule/Library/PlatformFlashAccessLib/PlatformFlashAccessLibDxe.inf
  216. DisplayUpdateProgressLib|MdeModulePkg/Library/DisplayUpdateProgressLibText/DisplayUpdateProgressLibText.inf
  217. [LibraryClasses.common.SEC]
  218. #
  219. # SEC specific phase
  220. #
  221. ReportStatusCodeLib|MdePkg/Library/BaseReportStatusCodeLibNull/BaseReportStatusCodeLibNull.inf
  222. PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
  223. TimerLib|PcAtChipsetPkg/Library/AcpiTimerLib/BaseAcpiTimerLib.inf
  224. HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf
  225. MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf
  226. CpuExceptionHandlerLib|UefiCpuPkg/Library/CpuExceptionHandlerLib/SecPeiCpuExceptionHandlerLib.inf
  227. [LibraryClasses.IA32.PEIM,LibraryClasses.IA32.PEI_CORE]
  228. #
  229. # PEI phase common
  230. #
  231. PcdLib|MdePkg/Library/PeiPcdLib/PeiPcdLib.inf
  232. HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf
  233. MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf
  234. ReportStatusCodeLib|MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf
  235. ExtractGuidedSectionLib|MdePkg/Library/PeiExtractGuidedSectionLib/PeiExtractGuidedSectionLib.inf
  236. LockBoxLib|MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxPeiLib.inf
  237. TimerLib|PcAtChipsetPkg/Library/AcpiTimerLib/BaseAcpiTimerLib.inf
  238. PlatformHelperLib|QuarkPlatformPkg/Library/PlatformHelperLib/PeiPlatformHelperLib.inf
  239. CpuExceptionHandlerLib|UefiCpuPkg/Library/CpuExceptionHandlerLib/SecPeiCpuExceptionHandlerLib.inf
  240. BaseCryptLib|CryptoPkg/Library/BaseCryptLib/PeiCryptLib.inf
  241. !if $(PERFORMANCE_ENABLE)
  242. PerformanceLib|MdeModulePkg/Library/PeiPerformanceLib/PeiPerformanceLib.inf
  243. !endif
  244. [LibraryClasses.IA32.DXE_CORE]
  245. HobLib|MdePkg/Library/DxeCoreHobLib/DxeCoreHobLib.inf
  246. MemoryAllocationLib|MdeModulePkg/Library/DxeCoreMemoryAllocationLib/DxeCoreMemoryAllocationLib.inf
  247. CpuExceptionHandlerLib|UefiCpuPkg/Library/CpuExceptionHandlerLib/DxeCpuExceptionHandlerLib.inf
  248. !if $(PERFORMANCE_ENABLE)
  249. PerformanceLib|MdeModulePkg/Library/DxeCorePerformanceLib/DxeCorePerformanceLib.inf
  250. !endif
  251. [LibraryClasses.IA32.DXE_SMM_DRIVER]
  252. MmServicesTableLib|MdePkg/Library/MmServicesTableLib/MmServicesTableLib.inf
  253. SmmServicesTableLib|MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf
  254. ReportStatusCodeLib|MdeModulePkg/Library/SmmReportStatusCodeLib/SmmReportStatusCodeLib.inf
  255. MemoryAllocationLib|MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf
  256. LockBoxLib|MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf
  257. PciLib|MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf
  258. CpuExceptionHandlerLib|UefiCpuPkg/Library/CpuExceptionHandlerLib/SmmCpuExceptionHandlerLib.inf
  259. SmmMemLib|MdePkg/Library/SmmMemLib/SmmMemLib.inf
  260. BaseCryptLib|CryptoPkg/Library/BaseCryptLib/SmmCryptLib.inf
  261. !if $(PERFORMANCE_ENABLE)
  262. PerformanceLib|MdeModulePkg/Library/SmmPerformanceLib/SmmPerformanceLib.inf
  263. !endif
  264. [LibraryClasses.IA32.SMM_CORE]
  265. SmmServicesTableLib|MdeModulePkg/Library/PiSmmCoreSmmServicesTableLib/PiSmmCoreSmmServicesTableLib.inf
  266. ReportStatusCodeLib|MdeModulePkg/Library/SmmReportStatusCodeLib/SmmReportStatusCodeLib.inf
  267. MemoryAllocationLib|MdeModulePkg/Library/PiSmmCoreMemoryAllocationLib/PiSmmCoreMemoryAllocationLib.inf
  268. PciLib|MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf
  269. SmmMemLib|MdePkg/Library/SmmMemLib/SmmMemLib.inf
  270. !if $(SECURE_BOOT_ENABLE) || $(MEASURED_BOOT_ENABLE)
  271. BaseCryptLib|CryptoPkg/Library/BaseCryptLib/SmmCryptLib.inf
  272. !endif
  273. !if $(PERFORMANCE_ENABLE)
  274. PerformanceLib|MdeModulePkg/Library/SmmCorePerformanceLib/SmmCorePerformanceLib.inf
  275. !endif
  276. [LibraryClasses.IA32.DXE_RUNTIME_DRIVER]
  277. ReportStatusCodeLib|MdeModulePkg/Library/RuntimeDxeReportStatusCodeLib/RuntimeDxeReportStatusCodeLib.inf
  278. QNCAccessLib|QuarkSocPkg/QuarkNorthCluster/Library/QNCAccessLib/RuntimeQNCAccessLib.inf
  279. PciLib|MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf
  280. !if $(SECURE_BOOT_ENABLE) || $(MEASURED_BOOT_ENABLE)
  281. BaseCryptLib|CryptoPkg/Library/BaseCryptLib/RuntimeCryptLib.inf
  282. !endif
  283. !if $(CAPSULE_ENABLE)
  284. CapsuleLib|MdeModulePkg/Library/DxeCapsuleLibFmp/DxeRuntimeCapsuleLib.inf
  285. !endif
  286. [LibraryClasses.IA32.UEFI_DRIVER,LibraryClasses.IA32.UEFI_APPLICATION]
  287. PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
  288. ################################################################################
  289. #
  290. # Pcd Section - list of all EDK II PCD Entries defined by this Platform
  291. #
  292. ################################################################################
  293. [PcdsFeatureFlag]
  294. gEfiMdeModulePkgTokenSpaceGuid.PcdDevicePathSupportDevicePathToText|TRUE
  295. gEfiMdeModulePkgTokenSpaceGuid.PcdDevicePathSupportDevicePathFromText|TRUE
  296. gEfiMdeModulePkgTokenSpaceGuid.PcdSupportUpdateCapsuleReset|TRUE
  297. gEfiMdeModulePkgTokenSpaceGuid.PcdDxeIplSwitchToLongMode|FALSE
  298. gEfiMdeModulePkgTokenSpaceGuid.PcdPciBusHotplugDeviceSupport|FALSE
  299. gEfiMdeModulePkgTokenSpaceGuid.PcdInstallAcpiSdtProtocol|TRUE
  300. !if $(SOURCE_DEBUG_ENABLE)
  301. gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmDebug|TRUE
  302. !endif
  303. !if $(TARGET) == "RELEASE"
  304. gQuarkPlatformTokenSpaceGuid.WaitIfResetDueToError|FALSE
  305. !else
  306. gQuarkPlatformTokenSpaceGuid.WaitIfResetDueToError|TRUE
  307. !endif
  308. [PcdsFixedAtBuild]
  309. gUefiCpuPkgTokenSpaceGuid.PcdCpuMaxLogicalProcessorNumber|1
  310. gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdS3AcpiReservedMemorySize|0x20000
  311. gEfiMdeModulePkgTokenSpaceGuid.PcdResetOnMemoryTypeInformationChange|TRUE
  312. !if $(LOGGING)
  313. !if $(SOURCE_DEBUG_ENABLE)
  314. gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x17
  315. !else
  316. gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x27
  317. !endif
  318. gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|0x07
  319. !else
  320. gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x0
  321. gEfiMdePkgTokenSpaceGuid.PcdPostCodePropertyMask|0x0
  322. gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|0x3
  323. !endif
  324. gEfiMdePkgTokenSpaceGuid.PcdPostCodePropertyMask|0x18
  325. gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0xE0000000
  326. !if $(GALILEO) == GEN1
  327. gEfiMdePkgTokenSpaceGuid.PcdUartDefaultBaudRate|460800
  328. !endif
  329. !if $(GALILEO) == GEN2
  330. gEfiMdePkgTokenSpaceGuid.PcdUartDefaultBaudRate|921600
  331. !endif
  332. gEfiMdePkgTokenSpaceGuid.PcdUartDefaultDataBits|8
  333. gEfiMdePkgTokenSpaceGuid.PcdUartDefaultParity|1
  334. gEfiMdePkgTokenSpaceGuid.PcdUartDefaultStopBits|1
  335. gEfiMdePkgTokenSpaceGuid.PcdDefaultTerminalType|0
  336. !if $(PERFORMANCE_ENABLE)
  337. gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyMask|0x1
  338. gEfiMdeModulePkgTokenSpaceGuid.PcdMaxPeiPerformanceLogEntries|80
  339. !else
  340. gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyMask|0x00
  341. !endif
  342. gEfiMdeModulePkgTokenSpaceGuid.PcdLoadModuleAtFixAddressEnable|0
  343. !if $(SECURE_BOOT_ENABLE)
  344. gEfiMdeModulePkgTokenSpaceGuid.PcdMaxVariableSize|0x2000
  345. !endif
  346. gEfiMdeModulePkgTokenSpaceGuid.PcdHwErrStorageSize|0x00002000
  347. gEfiMdeModulePkgTokenSpaceGuid.PcdMaxHardwareErrorVariableSize|0x1000
  348. ## RTC Update Timeout Value, need to increase timeout since also
  349. # waiting for RTC to be busy.
  350. gEfiMdeModulePkgTokenSpaceGuid.PcdRealTimeClockUpdateTimeout|500000
  351. !if $(SECURE_BOOT_ENABLE)
  352. # override the default values from SecurityPkg to ensure images from all sources are verified in secure boot
  353. gEfiSecurityPkgTokenSpaceGuid.PcdOptionRomImageVerificationPolicy|0x04
  354. gEfiSecurityPkgTokenSpaceGuid.PcdFixedMediaImageVerificationPolicy|0x04
  355. gEfiSecurityPkgTokenSpaceGuid.PcdRemovableMediaImageVerificationPolicy|0x04
  356. !endif
  357. gQuarkPlatformTokenSpaceGuid.PcdEsramStage1Base|0x80000000
  358. !if $(SOURCE_DEBUG_ENABLE)
  359. gEfiSourceLevelDebugPkgTokenSpaceGuid.PcdDebugLoadImageMethod|0x2
  360. !endif
  361. gEfiMdeModulePkgTokenSpaceGuid.PcdSerialUseMmio|TRUE
  362. gEfiMdeModulePkgTokenSpaceGuid.PcdSerialRegisterBase|0x9000B000
  363. !if $(GALILEO) == GEN1
  364. gEfiMdeModulePkgTokenSpaceGuid.PcdSerialBaudRate|460800
  365. gEfiMdeModulePkgTokenSpaceGuid.PcdSerialUseHardwareFlowControl|FALSE
  366. !endif
  367. !if $(GALILEO) == GEN2
  368. gEfiMdeModulePkgTokenSpaceGuid.PcdSerialBaudRate|921600
  369. gEfiMdeModulePkgTokenSpaceGuid.PcdSerialUseHardwareFlowControl|FALSE
  370. !endif
  371. gEfiMdeModulePkgTokenSpaceGuid.PcdSerialLineControl|0x03
  372. gEfiMdeModulePkgTokenSpaceGuid.PcdSerialFifoControl|0x07
  373. gEfiMdeModulePkgTokenSpaceGuid.PcdSerialDetectCable|FALSE
  374. gEfiMdeModulePkgTokenSpaceGuid.PcdSerialClockRate|44236800
  375. gEfiMdeModulePkgTokenSpaceGuid.PcdSerialPciDeviceInfo|{0x14, 0x05, 0x84, 0x00, 0xFF}
  376. gEfiMdeModulePkgTokenSpaceGuid.PcdSerialRegisterStride|4
  377. #
  378. # typedef struct {
  379. # UINT16 VendorId; ///< Vendor ID to match the PCI device. The value 0xFFFF terminates the list of entries.
  380. # UINT16 DeviceId; ///< Device ID to match the PCI device
  381. # UINT32 ClockRate; ///< UART clock rate. Set to 0 for default clock rate of 1843200 Hz
  382. # UINT64 Offset; ///< The byte offset into to the BAR
  383. # UINT8 BarIndex; ///< Which BAR to get the UART base address
  384. # UINT8 RegisterStride; ///< UART register stride in bytes. Set to 0 for default register stride of 1 byte.
  385. # UINT16 ReceiveFifoDepth; ///< UART receive FIFO depth in bytes. Set to 0 for a default FIFO depth of 16 bytes.
  386. # UINT16 TransmitFifoDepth; ///< UART transmit FIFO depth in bytes. Set to 0 for a default FIFO depth of 16 bytes.
  387. # UINT8 Reserved[2];
  388. # } PCI_SERIAL_PARAMETER;
  389. #
  390. # Vendor 8086 Device 0936 Prog Interface 2, BAR #0, Offset 0, Stride = 4, Clock 44236800 (0x2a300000)
  391. # Vendor 8086 Device 0936 Prog Interface 2, BAR #0, Offset 0, Stride = 4, Clock 44236800 (0x2a300000)
  392. #
  393. # [Vendor] [Device] [---ClockRate---] [------------Offset-----------] [Bar] [Stride] [RxFifo] [TxFifo] [Rsvd] [Vendor]
  394. gEfiMdeModulePkgTokenSpaceGuid.PcdPciSerialParameters|{0x86,0x80, 0x36,0x09, 0x0,0x0,0xA3,0x02, 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 0x00, 0x04, 0x0,0x0, 0x0,0x0, 0x0,0x0, 0xff,0xff}
  395. gPcAtChipsetPkgTokenSpaceGuid.PcdAcpiIoPciBusNumber |0
  396. gPcAtChipsetPkgTokenSpaceGuid.PcdAcpiIoPciDeviceNumber |31
  397. gPcAtChipsetPkgTokenSpaceGuid.PcdAcpiIoPciFunctionNumber |0
  398. gPcAtChipsetPkgTokenSpaceGuid.PcdAcpiIoPciEnableRegisterOffset|0x4b
  399. gPcAtChipsetPkgTokenSpaceGuid.PcdAcpiIoBarEnableMask |0x80
  400. gPcAtChipsetPkgTokenSpaceGuid.PcdAcpiIoPciBarRegisterOffset |0x48
  401. gPcAtChipsetPkgTokenSpaceGuid.PcdAcpiIoPortBaseAddress |0x1000
  402. gPcAtChipsetPkgTokenSpaceGuid.PcdAcpiPm1TmrOffset |0x0008
  403. gEfiMdeModulePkgTokenSpaceGuid.PcdBootManagerMenuFile|{ 0x21, 0xaa, 0x2c, 0x46, 0x14, 0x76, 0x03, 0x45, 0x83, 0x6e, 0x8a, 0xb6, 0xf4, 0x66, 0x23, 0x31 }
  404. gEfiMdeModulePkgTokenSpaceGuid.PcdConInConnectOnDemand|FALSE
  405. !if $(RECOVERY_ENABLE)
  406. gEfiMdeModulePkgTokenSpaceGuid.PcdRecoveryFileName|L"QUARKREC.Cap"
  407. !endif
  408. #
  409. # Quark does not support LFENCE. Use CPUID as speculation barrier
  410. #
  411. gEfiMdePkgTokenSpaceGuid.PcdSpeculationBarrierType|0x02
  412. [PcdsPatchableInModule]
  413. gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x803000C7
  414. gEfiMdeModulePkgTokenSpaceGuid.PcdVpdBaseAddress|0x0
  415. [PcdsDynamicExHii.common.DEFAULT]
  416. !if $(PERFORMANCE_ENABLE)
  417. gEfiMdePkgTokenSpaceGuid.PcdPlatformBootTimeOut|L"Timeout"|gEfiGlobalVariableGuid|0x0|0
  418. !else
  419. gEfiMdePkgTokenSpaceGuid.PcdPlatformBootTimeOut|L"Timeout"|gEfiGlobalVariableGuid|0x0|5
  420. !endif
  421. gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdBootState|L"BootState"|gQuarkPlatformTokenSpaceGuid|0x0|TRUE
  422. [PcdsDynamicExDefault.common.DEFAULT]
  423. gEfiMdeModulePkgTokenSpaceGuid.PcdS3BootScriptTablePrivateDataPtr|0x0
  424. gQuarkPlatformTokenSpaceGuid.PcdEnableFastBoot|TRUE
  425. gQuarkPlatformTokenSpaceGuid.PcdUserIsPhysicallyPresent|FALSE
  426. gQuarkPlatformTokenSpaceGuid.PcdSpiFlashDeviceSize|0
  427. !if $(CAPSULE_ENABLE) || $(RECOVERY_ENABLE)
  428. gEfiSignedCapsulePkgTokenSpaceGuid.PcdEdkiiSystemFirmwareImageDescriptor|{0x0}|VOID*|0x100
  429. gEfiMdeModulePkgTokenSpaceGuid.PcdSystemFmpCapsuleImageTypeIdGuid|{0xc0, 0x20, 0xaf, 0x62, 0x16, 0x70, 0x4a, 0x42, 0x9b, 0xf8, 0x9c, 0xcc, 0x86, 0x58, 0x40, 0x90}
  430. gEfiSignedCapsulePkgTokenSpaceGuid.PcdEdkiiSystemFirmwareFileGuid|{0x59, 0x3A, 0xD8, 0x14, 0x10, 0xA8, 0x56, 0x45, 0x81, 0x92, 0x1C, 0x0A, 0x59, 0x3C, 0x06, 0x5C}
  431. !endif
  432. !if $(MEASURED_BOOT_ENABLE)
  433. #
  434. # TPM1.2 { 0x8b01e5b6, 0x4f19, 0x46e8, { 0xab, 0x93, 0x1c, 0x53, 0x67, 0x1b, 0x90, 0xcc } }
  435. # TPM2.0 DTPM { 0x286bf25a, 0xc2c3, 0x408c, { 0xb3, 0xb4, 0x25, 0xe6, 0x75, 0x8b, 0x73, 0x17 } }
  436. #
  437. gEfiSecurityPkgTokenSpaceGuid.PcdTpmInstanceGuid|{0xb6, 0xe5, 0x01, 0x8b, 0x19, 0x4f, 0xe8, 0x46, 0xab, 0x93, 0x1c, 0x53, 0x67, 0x1b, 0x90, 0xcc}
  438. gEfiSecurityPkgTokenSpaceGuid.PcdTpmInitializationPolicy|1
  439. gEfiSecurityPkgTokenSpaceGuid.PcdTpmScrtmPolicy|1
  440. !endif
  441. [PcdsDynamicExVpd]
  442. gEfiMdeModulePkgTokenSpaceGuid.PcdFirmwareVendor|*|32|L"EDK II"
  443. gEfiMdeModulePkgTokenSpaceGuid.PcdFirmwareRevision|*|0x01000400
  444. gEfiMdeModulePkgTokenSpaceGuid.PcdFirmwareVersionString|*|64|L"Galileo 1.0.4"
  445. #
  446. # ClantonPeakSVP
  447. # gQuarkPlatformTokenSpaceGuid.PcdPlatformType|*|0x0002
  448. # gQuarkPlatformTokenSpaceGuid.PcdPlatformTypeName|*|64|L"ClantonPeakSVP"
  449. # gEfiQuarkNcSocIdTokenSpaceGuid.PcdMrcParameters|*|40|{0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x01, 0x01, 0x00, 0x03, 0x00, 0x00, 0x02, 0x00, 0x00, 0x01, 0x01, 0x03, 0x7c, 0x92, 0x00, 0x00, 0x10, 0x27, 0x00, 0x00, 0x10, 0x27, 0x00, 0x00, 0x40, 0x9c, 0x00, 0x00, 0x06}
  450. #
  451. # KipsBay
  452. # gQuarkPlatformTokenSpaceGuid.PcdPlatformType|*|0x0003
  453. # gQuarkPlatformTokenSpaceGuid.PcdPlatformTypeName|*|64|L"KipsBay"
  454. # gEfiQuarkNcSocIdTokenSpaceGuid.PcdMrcParameters|*|40|{0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x03, 0x00, 0x00, 0x02, 0x00, 0x00, 0x01, 0x01, 0x01, 0x7c, 0x92, 0x00, 0x00, 0x10, 0x27, 0x00, 0x00, 0x10, 0x27, 0x00, 0x00, 0x40, 0x9c, 0x00, 0x00, 0x06}
  455. #
  456. # CrossHill
  457. # gQuarkPlatformTokenSpaceGuid.PcdPlatformType|*|0x0004
  458. # gQuarkPlatformTokenSpaceGuid.PcdPlatformTypeName|*|64|L"CrossHill"
  459. # gEfiQuarkNcSocIdTokenSpaceGuid.PcdMrcParameters|*|40|{0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x03, 0x00, 0x00, 0x02, 0x00, 0x00, 0x01, 0x01, 0x03, 0x7c, 0x92, 0x00, 0x00, 0x10, 0x27, 0x00, 0x00, 0x10, 0x27, 0x00, 0x00, 0x40, 0x9c, 0x00, 0x00, 0x06}
  460. #
  461. # ClantonHill
  462. # gQuarkPlatformTokenSpaceGuid.PcdPlatformType|*|0x0005
  463. # gQuarkPlatformTokenSpaceGuid.PcdPlatformTypeName|*|64|L"ClantonHill"
  464. # gEfiQuarkNcSocIdTokenSpaceGuid.PcdMrcParameters|*|40|{0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x03, 0x00, 0x00, 0x02, 0x00, 0x00, 0x01, 0x01, 0x02, 0x7c, 0x92, 0x00, 0x00, 0x10, 0x27, 0x00, 0x00, 0x10, 0x27, 0x00, 0x00, 0x40, 0x9c, 0x00, 0x00, 0x06}
  465. #
  466. # Galileo
  467. # gQuarkPlatformTokenSpaceGuid.PcdPlatformType|*|0x0006
  468. # gQuarkPlatformTokenSpaceGuid.PcdPlatformTypeName|*|64|L"Galileo"
  469. # gEfiQuarkNcSocIdTokenSpaceGuid.PcdMrcParameters|*|40|{0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x03, 0x00, 0x00, 0x02, 0x00, 0x00, 0x01, 0x01, 0x01, 0x7c, 0x92, 0x00, 0x00, 0x10, 0x27, 0x00, 0x00, 0x10, 0x27, 0x00, 0x00, 0x40, 0x9c, 0x00, 0x00, 0x06}
  470. #
  471. # GalileoGen2
  472. # gQuarkPlatformTokenSpaceGuid.PcdPlatformType|*|0x0008
  473. # gQuarkPlatformTokenSpaceGuid.PcdPlatformTypeName|*|64|L"GalileoGen2"
  474. # gEfiQuarkNcSocIdTokenSpaceGuid.PcdMrcParameters|*|40|{0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x03, 0x00, 0x00, 0x02, 0x00, 0x00, 0x01, 0x01, 0x01, 0x7c, 0x92, 0x00, 0x00, 0x10, 0x27, 0x00, 0x00, 0x10, 0x27, 0x00, 0x00, 0x40, 0x9c, 0x00, 0x00, 0x06}
  475. #
  476. !if $(GALILEO) == GEN1
  477. gQuarkPlatformTokenSpaceGuid.PcdPlatformType|*|0x0006
  478. gQuarkPlatformTokenSpaceGuid.PcdPlatformTypeName|*|64|L"Galileo"
  479. gEfiQuarkNcSocIdTokenSpaceGuid.PcdMrcParameters|*|40|{0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x03, 0x00, 0x00, 0x02, 0x00, 0x00, 0x01, 0x01, 0x01, 0x7c, 0x92, 0x00, 0x00, 0x10, 0x27, 0x00, 0x00, 0x10, 0x27, 0x00, 0x00, 0x40, 0x9c, 0x00, 0x00, 0x06}
  480. !endif
  481. !if $(GALILEO) == GEN2
  482. gQuarkPlatformTokenSpaceGuid.PcdPlatformType|*|0x0008
  483. gQuarkPlatformTokenSpaceGuid.PcdPlatformTypeName|*|64|L"GalileoGen2"
  484. gEfiQuarkNcSocIdTokenSpaceGuid.PcdMrcParameters|*|40|{0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x03, 0x00, 0x00, 0x02, 0x00, 0x00, 0x01, 0x01, 0x01, 0x7c, 0x92, 0x00, 0x00, 0x10, 0x27, 0x00, 0x00, 0x10, 0x27, 0x00, 0x00, 0x40, 0x9c, 0x00, 0x00, 0x06}
  485. !endif
  486. gEfiQuarkSCSocIdTokenSpaceGuid.PcdIohEthernetMac0|*|8|{0xff, 0xff, 0xff, 0xff, 0xff, 0xff}
  487. gEfiQuarkSCSocIdTokenSpaceGuid.PcdIohEthernetMac1|*|8|{0xff, 0xff, 0xff, 0xff, 0xff, 0xff}
  488. ###################################################################################################
  489. #
  490. # Components Section - list of the modules and components that will be processed by compilation
  491. # tools and the EDK II tools to generate PE32/PE32+/Coff image files.
  492. #
  493. # Note: The EDK II DSC file is not used to specify how compiled binary images get placed
  494. # into firmware volume images. This section is just a list of modules to compile from
  495. # source into UEFI-compliant binaries.
  496. # It is the FDF file that contains information on combining binary files into firmware
  497. # volume images, whose concept is beyond UEFI and is described in PI specification.
  498. # Binary modules do not need to be listed in this section, as they should be
  499. # specified in the FDF file. For example: Shell binary, FAT binary (Fat.efi),
  500. # Logo (Logo.bmp), and etc.
  501. # There may also be modules listed in this section that are not required in the FDF file,
  502. # When a module listed here is excluded from FDF file, then UEFI-compliant binary will be
  503. # generated for it, but the binary will not be put into any firmware volume.
  504. #
  505. ###################################################################################################
  506. [Components.IA32]
  507. #
  508. # SEC Core
  509. #
  510. UefiCpuPkg/SecCore/SecCore.inf {
  511. !if $(SOURCE_DEBUG_ENABLE)
  512. <LibraryClasses>
  513. PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
  514. DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/SecPeiDebugAgentLib.inf
  515. ResetSystemLib|QuarkSocPkg/QuarkNorthCluster/Library/ResetSystemLib/ResetSystemLib.inf
  516. !endif
  517. }
  518. !if $(CAPSULE_ENABLE) || $(RECOVERY_ENABLE)
  519. # FMP image decriptor
  520. QuarkPlatformPkg/Feature/Capsule/SystemFirmwareDescriptor/SystemFirmwareDescriptor.inf
  521. !endif
  522. #
  523. # PEI Core
  524. #
  525. MdeModulePkg/Core/Pei/PeiMain.inf
  526. #
  527. # PEIM
  528. #
  529. MdeModulePkg/Universal/PCD/Pei/Pcd.inf {
  530. <LibraryClasses>
  531. PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
  532. }
  533. MdeModulePkg/Universal/ReportStatusCodeRouter/Pei/ReportStatusCodeRouterPei.inf
  534. MdeModulePkg/Universal/StatusCodeHandler/Pei/StatusCodeHandlerPei.inf {
  535. <LibraryClasses>
  536. !if $(LOGGING)
  537. DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
  538. !else
  539. SerialPortLib|MdePkg/Library/BaseSerialPortLibNull/BaseSerialPortLibNull.inf
  540. !endif
  541. }
  542. MdeModulePkg/Universal/FaultTolerantWritePei/FaultTolerantWritePei.inf
  543. MdeModulePkg/Universal/Variable/Pei/VariablePei.inf
  544. MdeModulePkg/Universal/PcatSingleSegmentPciCfg2Pei/PcatSingleSegmentPciCfg2Pei.inf
  545. UefiCpuPkg/CpuMpPei/CpuMpPei.inf
  546. MdeModulePkg/Universal/CapsulePei/CapsulePei.inf
  547. QuarkSocPkg/QuarkNorthCluster/MemoryInit/Pei/MemoryInitPei.inf
  548. QuarkPlatformPkg/Platform/Pei/PlatformInit/PlatformEarlyInit.inf
  549. QuarkPlatformPkg/Platform/Pei/PlatformConfig/PlatformConfigPei.inf
  550. UefiCpuPkg/PiSmmCommunication/PiSmmCommunicationPei.inf
  551. MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf
  552. #
  553. # S3
  554. #
  555. QuarkSocPkg/QuarkNorthCluster/Smm/Pei/SmmAccessPei/SmmAccessPei.inf
  556. QuarkSocPkg/QuarkNorthCluster/Smm/Pei/SmmControlPei/SmmControlPei.inf
  557. UefiCpuPkg/Universal/Acpi/S3Resume2Pei/S3Resume2Pei.inf
  558. #
  559. # Trusted Platform Module
  560. #
  561. !if $(MEASURED_BOOT_ENABLE)
  562. SecurityPkg/Tcg/Tcg2Config/Tcg2ConfigPei.inf
  563. SecurityPkg/Tcg/TcgPei/TcgPei.inf
  564. !endif
  565. #
  566. # Recovery
  567. #
  568. !if $(RECOVERY_ENABLE)
  569. QuarkSocPkg/QuarkSouthCluster/Usb/Common/Pei/UsbPei.inf
  570. MdeModulePkg/Bus/Pci/EhciPei/EhciPei.inf
  571. QuarkSocPkg/QuarkSouthCluster/Usb/Ohci/Pei/OhciPei.inf
  572. MdeModulePkg/Bus/Usb/UsbBotPei/UsbBotPei.inf
  573. MdeModulePkg/Bus/Usb/UsbBusPei/UsbBusPei.inf
  574. FatPkg/FatPei/FatPei.inf
  575. MdeModulePkg/Universal/Disk/CdExpressPei/CdExpressPei.inf
  576. SignedCapsulePkg/Universal/RecoveryModuleLoadPei/RecoveryModuleLoadPei.inf {
  577. <LibraryClasses>
  578. FmpAuthenticationLib|SecurityPkg/Library/FmpAuthenticationLibRsa2048Sha256/FmpAuthenticationLibRsa2048Sha256.inf
  579. }
  580. !endif
  581. [Components.IA32]
  582. #
  583. # DXE Core
  584. #
  585. MdeModulePkg/Core/Dxe/DxeMain.inf
  586. !if $(SOURCE_DEBUG_ENABLE)
  587. SourceLevelDebugPkg/DebugAgentDxe/DebugAgentDxe.inf {
  588. <LibraryClasses>
  589. DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/DxeDebugAgentLib.inf
  590. ResetSystemLib|QuarkSocPkg/QuarkNorthCluster/Library/ResetSystemLib/ResetSystemLib.inf
  591. }
  592. !endif
  593. QuarkPlatformPkg/Platform/Dxe/PlatformInit/PlatformInitDxe.inf
  594. #
  595. # Components that produce the architectural protocols
  596. #
  597. MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf {
  598. <LibraryClasses>
  599. !if $(SECURE_BOOT_ENABLE)
  600. NULL|SecurityPkg/Library/DxeImageVerificationLib/DxeImageVerificationLib.inf
  601. !endif
  602. NULL|SecurityPkg/Library/DxeImageAuthenticationStatusLib/DxeImageAuthenticationStatusLib.inf
  603. }
  604. UefiCpuPkg/CpuDxe/CpuDxe.inf
  605. MdeModulePkg/Universal/Metronome/Metronome.inf
  606. MdeModulePkg/Universal/WatchdogTimerDxe/WatchdogTimer.inf
  607. MdeModulePkg/Core/RuntimeDxe/RuntimeDxe.inf
  608. MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteSmm.inf
  609. !if $(SECURE_BOOT_ENABLE)
  610. SecurityPkg/VariableAuthenticated/SecureBootConfigDxe/SecureBootConfigDxe.inf
  611. !endif
  612. MdeModulePkg/Universal/Variable/RuntimeDxe/VariableSmmRuntimeDxe.inf
  613. MdeModulePkg/Universal/Variable/RuntimeDxe/VariableSmm.inf {
  614. <LibraryClasses>
  615. NULL|MdeModulePkg/Library/VarCheckUefiLib/VarCheckUefiLib.inf
  616. NULL|MdeModulePkg/Library/VarCheckHiiLib/VarCheckHiiLib.inf
  617. NULL|MdeModulePkg/Library/VarCheckPcdLib/VarCheckPcdLib.inf
  618. }
  619. MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf
  620. MdeModulePkg/Universal/MonotonicCounterRuntimeDxe/MonotonicCounterRuntimeDxe.inf
  621. MdeModulePkg/Universal/ResetSystemRuntimeDxe/ResetSystemRuntimeDxe.inf
  622. PcAtChipsetPkg/PcatRealTimeClockRuntimeDxe/PcatRealTimeClockRuntimeDxe.inf
  623. #
  624. # Following are the DXE drivers (alphabetical order)
  625. #
  626. MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf
  627. MdeModulePkg/Universal/PCD/Dxe/Pcd.inf {
  628. <LibraryClasses>
  629. PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
  630. }
  631. QuarkPlatformPkg/Pci/Dxe/PciHostBridge/PciHostBridge.inf
  632. QuarkPlatformPkg/Platform/SpiFvbServices/PlatformSpi.inf
  633. QuarkPlatformPkg/Platform/SpiFvbServices/PlatformSmmSpi.inf
  634. UefiCpuPkg/CpuIo2Dxe/CpuIo2Dxe.inf
  635. #
  636. # Platform
  637. #
  638. MdeModulePkg/Universal/BdsDxe/BdsDxe.inf {
  639. <LibraryClasses>
  640. PlatformBootManagerLib|QuarkPlatformPkg/Library/PlatformBootManagerLib/PlatformBootManagerLib.inf
  641. !if $(CAPSULE_ENABLE)
  642. FmpAuthenticationLib|SecurityPkg/Library/FmpAuthenticationLibPkcs7/FmpAuthenticationLibPkcs7.inf
  643. !else
  644. FmpAuthenticationLib|MdeModulePkg/Library/FmpAuthenticationLibNull/FmpAuthenticationLibNull.inf
  645. !endif
  646. }
  647. MdeModulePkg/Application/UiApp/UiApp.inf {
  648. <LibraryClasses>
  649. NULL|MdeModulePkg/Library/DeviceManagerUiLib/DeviceManagerUiLib.inf
  650. NULL|MdeModulePkg/Library/BootManagerUiLib/BootManagerUiLib.inf
  651. NULL|MdeModulePkg/Library/BootMaintenanceManagerUiLib/BootMaintenanceManagerUiLib.inf
  652. PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
  653. }
  654. QuarkSocPkg/QuarkNorthCluster/QNCInit/Dxe/QNCInitDxe.inf
  655. PcAtChipsetPkg/HpetTimerDxe/HpetTimerDxe.inf
  656. QuarkSocPkg/QuarkNorthCluster/Smm/Dxe/SmmAccessDxe/SmmAccess.inf
  657. QuarkPlatformPkg/Platform/Dxe/Setup/DxePlatform.inf
  658. QuarkSocPkg/QuarkNorthCluster/Spi/PchSpiRuntime.inf {
  659. <LibraryClasses>
  660. PciExpressLib|MdePkg/Library/DxeRuntimePciExpressLib/DxeRuntimePciExpressLib.inf
  661. }
  662. QuarkSocPkg/QuarkNorthCluster/Spi/PchSpiSmm.inf
  663. QuarkSocPkg/QuarkNorthCluster/S3Support/Dxe/QncS3Support.inf
  664. MdeModulePkg/Universal/SectionExtractionDxe/SectionExtractionDxe.inf
  665. MdeModulePkg/Universal/MemoryTest/NullMemoryTestDxe/NullMemoryTestDxe.inf
  666. MdeModulePkg/Universal/ReportStatusCodeRouter/RuntimeDxe/ReportStatusCodeRouterRuntimeDxe.inf
  667. MdeModulePkg/Universal/StatusCodeHandler/RuntimeDxe/StatusCodeHandlerRuntimeDxe.inf {
  668. <LibraryClasses>
  669. !if $(LOGGING)
  670. DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
  671. !else
  672. SerialPortLib|MdePkg/Library/BaseSerialPortLibNull/BaseSerialPortLibNull.inf
  673. !endif
  674. }
  675. MdeModulePkg/Universal/ReportStatusCodeRouter/Smm/ReportStatusCodeRouterSmm.inf
  676. MdeModulePkg/Universal/StatusCodeHandler/Smm/StatusCodeHandlerSmm.inf {
  677. <LibraryClasses>
  678. !if $(LOGGING)
  679. DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
  680. !else
  681. SerialPortLib|MdePkg/Library/BaseSerialPortLibNull/BaseSerialPortLibNull.inf
  682. !endif
  683. }
  684. #
  685. # ACPI
  686. #
  687. QuarkPlatformPkg/Platform/Dxe/SaveMemoryConfig/SaveMemoryConfig.inf
  688. MdeModulePkg/Universal/Acpi/S3SaveStateDxe/S3SaveStateDxe.inf
  689. # MdeModulePkg/Universal/Acpi/BootScriptExecutorDxe/BootScriptExecutorDxe.inf {
  690. QuarkPlatformPkg/Acpi/Dxe/BootScriptExecutorDxe/BootScriptExecutorDxe.inf {
  691. <LibraryClasses>
  692. !if $(LOGGING)
  693. DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
  694. !else
  695. SerialPortLib|MdePkg/Library/BaseSerialPortLibNull/BaseSerialPortLibNull.inf
  696. !endif
  697. !if $(SOURCE_DEBUG_ENABLE)
  698. DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/DxeDebugAgentLib.inf
  699. ResetSystemLib|QuarkSocPkg/QuarkNorthCluster/Library/ResetSystemLib/ResetSystemLib.inf
  700. !endif
  701. }
  702. MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf
  703. IntelFrameworkModulePkg/Universal/Acpi/AcpiS3SaveDxe/AcpiS3SaveDxe.inf
  704. QuarkPlatformPkg/Acpi/AcpiTables/AcpiTables.inf
  705. QuarkPlatformPkg/Acpi/Dxe/AcpiPlatform/AcpiPlatform.inf
  706. #
  707. # SMM
  708. #
  709. MdeModulePkg/Core/PiSmmCore/PiSmmIpl.inf
  710. MdeModulePkg/Core/PiSmmCore/PiSmmCore.inf
  711. UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.inf {
  712. <LibraryClasses>
  713. SmmCpuFeaturesLib|QuarkSocPkg/QuarkNorthCluster/Library/SmmCpuFeaturesLib/SmmCpuFeaturesLib.inf
  714. SmmCpuPlatformHookLib|UefiCpuPkg/Library/SmmCpuPlatformHookLibNull/SmmCpuPlatformHookLibNull.inf
  715. !if $(LOGGING)
  716. DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
  717. !else
  718. SerialPortLib|MdePkg/Library/BaseSerialPortLibNull/BaseSerialPortLibNull.inf
  719. !endif
  720. !if $(SOURCE_DEBUG_ENABLE)
  721. DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/SmmDebugAgentLib.inf
  722. ResetSystemLib|QuarkSocPkg/QuarkNorthCluster/Library/ResetSystemLib/ResetSystemLib.inf
  723. !endif
  724. <PcdsPatchableInModule>
  725. #
  726. # Disable DEBUG_CACHE because SMI entry/exit may change MTRRs
  727. #
  728. gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x801000C7
  729. }
  730. UefiCpuPkg/CpuIo2Smm/CpuIo2Smm.inf
  731. QuarkSocPkg/QuarkNorthCluster/Smm/Dxe/SmmControlDxe/SmmControlDxe.inf
  732. QuarkSocPkg/QuarkNorthCluster/Smm/DxeSmm/QncSmmDispatcher/QNCSmmDispatcher.inf
  733. QuarkPlatformPkg/Acpi/DxeSmm/AcpiSmm/AcpiSmmPlatform.inf
  734. QuarkPlatformPkg/Acpi/DxeSmm/SmmPowerManagement/SmmPowerManagement.inf
  735. MdeModulePkg/Universal/LockBox/SmmLockBox/SmmLockBox.inf
  736. UefiCpuPkg/PiSmmCommunication/PiSmmCommunicationSmm.inf
  737. #
  738. # SMBIOS
  739. #
  740. MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.inf
  741. QuarkPlatformPkg/Platform/Dxe/SmbiosMiscDxe/SmbiosMiscDxe.inf
  742. QuarkPlatformPkg/Platform/Dxe/MemorySubClass/MemorySubClass.inf
  743. #
  744. # PCI
  745. #
  746. QuarkPlatformPkg/Pci/Dxe/PciPlatform/PciPlatform.inf
  747. MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf
  748. QuarkSocPkg/QuarkSouthCluster/IohInit/Dxe/IohInitDxe.inf
  749. MdeModulePkg/Bus/Pci/PciSioSerialDxe/PciSioSerialDxe.inf
  750. #
  751. # USB
  752. #
  753. MdeModulePkg/Bus/Pci/EhciDxe/EhciDxe.inf
  754. QuarkSocPkg/QuarkSouthCluster/Usb/Ohci/Dxe/OhciDxe.inf
  755. MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBusDxe.inf
  756. MdeModulePkg/Bus/Usb/UsbKbDxe/UsbKbDxe.inf
  757. MdeModulePkg/Bus/Usb/UsbMouseDxe/UsbMouseDxe.inf
  758. MdeModulePkg/Bus/Usb/UsbMassStorageDxe/UsbMassStorageDxe.inf
  759. #
  760. # SDIO
  761. #
  762. QuarkSocPkg/QuarkSouthCluster/Sdio/Dxe/SDControllerDxe/SDControllerDxe.inf {
  763. <PcdsPatchableInModule>
  764. gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80300087
  765. }
  766. QuarkSocPkg/QuarkSouthCluster/Sdio/Dxe/SDMediaDeviceDxe/SDMediaDeviceDxe.inf {
  767. <PcdsPatchableInModule>
  768. gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80300087
  769. }
  770. #
  771. # Console
  772. #
  773. MdeModulePkg/Universal/Console/ConPlatformDxe/ConPlatformDxe.inf
  774. MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitterDxe.inf {
  775. <LibraryClasses>
  776. PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
  777. }
  778. MdeModulePkg/Universal/Console/TerminalDxe/TerminalDxe.inf
  779. MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf
  780. MdeModulePkg/Universal/DisplayEngineDxe/DisplayEngineDxe.inf {
  781. <LibraryClasses>
  782. CustomizedDisplayLib|MdeModulePkg/Library/CustomizedDisplayLib/CustomizedDisplayLib.inf
  783. }
  784. MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf
  785. MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf
  786. #
  787. # File System Modules
  788. #
  789. MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf
  790. MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf
  791. FatPkg/EnhancedFatDxe/Fat.inf
  792. #
  793. # Capsule update
  794. #
  795. IntelFrameworkModulePkg/Universal/FirmwareVolume/FwVolDxe/FwVolDxe.inf
  796. IntelFrameworkModulePkg/Universal/FirmwareVolume/UpdateDriverDxe/UpdateDriverDxe.inf
  797. #
  798. # Trusted Platform Module
  799. #
  800. !if $(MEASURED_BOOT_ENABLE)
  801. SecurityPkg/Tcg/MemoryOverwriteControl/TcgMor.inf
  802. SecurityPkg/Tcg/TcgDxe/TcgDxe.inf
  803. SecurityPkg/Tcg/TcgSmm/TcgSmm.inf
  804. !endif
  805. #
  806. # Performance Application
  807. #
  808. !if $(PERFORMANCE_ENABLE)
  809. ShellPkg/DynamicCommand/DpDynamicCommand/DpDynamicCommand.inf {
  810. <PcdsFixedAtBuild>
  811. gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
  812. }
  813. !endif
  814. #
  815. # Force Recovery Application
  816. #
  817. QuarkPlatformPkg/Application/ForceRecovery/ForceRecovery.inf
  818. ShellPkg/Application/Shell/Shell.inf {
  819. <LibraryClasses>
  820. ShellCommandLib|ShellPkg/Library/UefiShellCommandLib/UefiShellCommandLib.inf
  821. NULL|ShellPkg/Library/UefiShellLevel2CommandsLib/UefiShellLevel2CommandsLib.inf
  822. NULL|ShellPkg/Library/UefiShellLevel1CommandsLib/UefiShellLevel1CommandsLib.inf
  823. NULL|ShellPkg/Library/UefiShellLevel3CommandsLib/UefiShellLevel3CommandsLib.inf
  824. NULL|ShellPkg/Library/UefiShellDriver1CommandsLib/UefiShellDriver1CommandsLib.inf
  825. NULL|ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1CommandsLib.inf
  826. NULL|ShellPkg/Library/UefiShellInstall1CommandsLib/UefiShellInstall1CommandsLib.inf
  827. NULL|ShellPkg/Library/UefiShellNetwork1CommandsLib/UefiShellNetwork1CommandsLib.inf
  828. HandleParsingLib|ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.inf
  829. PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
  830. BcfgCommandLib|ShellPkg/Library/UefiShellBcfgCommandLib/UefiShellBcfgCommandLib.inf
  831. <PcdsFixedAtBuild>
  832. gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0xFF
  833. gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
  834. gEfiMdePkgTokenSpaceGuid.PcdUefiLibMaxPrintBufferSize|8000
  835. }
  836. !if $(CAPSULE_ENABLE)
  837. MdeModulePkg/Universal/EsrtFmpDxe/EsrtFmpDxe.inf
  838. SignedCapsulePkg/Universal/SystemFirmwareUpdate/SystemFirmwareReportDxe.inf {
  839. <LibraryClasses>
  840. FmpAuthenticationLib|SecurityPkg/Library/FmpAuthenticationLibPkcs7/FmpAuthenticationLibPkcs7.inf
  841. }
  842. SignedCapsulePkg/Universal/SystemFirmwareUpdate/SystemFirmwareUpdateDxe.inf {
  843. <LibraryClasses>
  844. FmpAuthenticationLib|SecurityPkg/Library/FmpAuthenticationLibPkcs7/FmpAuthenticationLibPkcs7.inf
  845. }
  846. MdeModulePkg/Application/CapsuleApp/CapsuleApp.inf {
  847. <LibraryClasses>
  848. PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
  849. }
  850. !endif
  851. [BuildOptions.common.EDKII.DXE_RUNTIME_DRIVER]
  852. MSFT:*_*_*_DLINK_FLAGS = /ALIGN:4096
  853. # Force PE/COFF sections to be aligned at 4KB boundaries to support page level protection of DXE_SMM_DRIVER/SMM_CORE modules
  854. [BuildOptions.common.EDKII.DXE_SMM_DRIVER, BuildOptions.common.EDKII.SMM_CORE]
  855. MSFT:*_*_*_DLINK_FLAGS = /ALIGN:4096
  856. GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000