PeiMultiBoardInitPreMemLib.inf 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299
  1. ## @file
  2. # Component information file for PEI WhiskeylakeURvp Board Init Pre-Mem Library
  3. #
  4. #
  5. # Copyright (c) 2019 - 2020 Intel Corporation. All rights reserved.<BR>
  6. #
  7. # SPDX-License-Identifier: BSD-2-Clause-Patent
  8. #
  9. #
  10. ##
  11. [Defines]
  12. INF_VERSION = 0x00010005
  13. BASE_NAME = PeiWhiskeylakeURvpMultiBoardInitPreMemLib
  14. FILE_GUID = EA05BD43-136F-45EE-BBBA-27D75817574F
  15. MODULE_TYPE = BASE
  16. VERSION_STRING = 1.0
  17. LIBRARY_CLASS = NULL
  18. CONSTRUCTOR = PeiWhiskeylakeURvpMultiBoardInitPreMemLibConstructor
  19. [LibraryClasses]
  20. BaseLib
  21. BaseMemoryLib
  22. DebugLib
  23. GpioLib
  24. MemoryAllocationLib
  25. MultiBoardInitSupportLib
  26. OcWdtLib
  27. PcdLib
  28. PchResetLib
  29. PeiPlatformHookLib
  30. PeiPolicyInitLib
  31. PlatformHookLib
  32. SiliconInitLib
  33. StallPpiLib
  34. [Packages]
  35. MinPlatformPkg/MinPlatformPkg.dec
  36. WhiskeylakeOpenBoardPkg/OpenBoardPkg.dec
  37. MdePkg/MdePkg.dec
  38. MdeModulePkg/MdeModulePkg.dec
  39. CoffeelakeSiliconPkg/SiPkg.dec
  40. IntelSiliconPkg/IntelSiliconPkg.dec
  41. [Sources]
  42. PeiWhiskeylakeURvpInitPreMemLib.c
  43. WhiskeylakeURvpHsioPtssTables.c
  44. PeiMultiBoardInitPreMemLib.c
  45. PeiWhiskeylakeURvpDetect.c
  46. BoardSaInitPreMemLib.c
  47. BoardPchInitPreMemLib.c
  48. BoardFuncInitPreMem.c
  49. GpioTableWhlUDdr4PreMem.c
  50. [Ppis]
  51. gEfiPeiReadOnlyVariable2PpiGuid
  52. gEfiPeiMemoryDiscoveredPpiGuid ## CONSUMES
  53. gEfiPeiResetPpiGuid ## PRODUCES
  54. [Guids]
  55. gPchGeneralPreMemConfigGuid ## CONSUMES
  56. [Pcd]
  57. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdLpcSioConfigDefaultPort
  58. # PCH-LP HSIO PTSS Table
  59. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdSpecificLpHsioPtssTable1
  60. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdSpecificLpHsioPtssTable2
  61. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdSpecificLpHsioPtssTable1Size
  62. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdSpecificLpHsioPtssTable2Size
  63. # PCH-H HSIO PTSS Table
  64. #gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdUnknowHHsioPtssTable1
  65. #gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdUnknowHHsioPtssTable2
  66. #gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdUnknowHHsioPtssTable1Size
  67. #gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdUnknowHHsioPtssTable2Size
  68. # SA Misc Config
  69. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdSaMiscUserBd
  70. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdMrcRcompResistor
  71. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdMrcRcompTarget
  72. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdMrcDqByteMap
  73. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdMrcDqByteMapSize
  74. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdMrcDqsMapCpu2Dram
  75. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdMrcDqsMapCpu2DramSize
  76. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdMrcSpdData
  77. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdMrcSpdDataSize
  78. # PEG Reset By GPIO
  79. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPcie0WakeGpioNo
  80. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPcie0HoldRstExpanderNo
  81. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPcie0HoldRstGpioNo
  82. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPcie0HoldRstActive
  83. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPcie0PwrEnableExpanderNo
  84. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPcie0PwrEnableGpioNo
  85. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPcie0PwrEnableActive
  86. # SPD Address Table
  87. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdMrcSpdAddressTable0
  88. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdMrcSpdAddressTable1
  89. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdMrcSpdAddressTable2
  90. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdMrcSpdAddressTable3
  91. # USB 2.0 Port AFE
  92. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdUsb20Port0Afe
  93. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdUsb20Port1Afe
  94. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdUsb20Port2Afe
  95. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdUsb20Port3Afe
  96. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdUsb20Port4Afe
  97. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdUsb20Port5Afe
  98. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdUsb20Port6Afe
  99. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdUsb20Port7Afe
  100. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdUsb20Port8Afe
  101. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdUsb20Port9Afe
  102. # USB 2.0 Port Over Current Pin
  103. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdUsb20OverCurrentPinPort0
  104. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdUsb20OverCurrentPinPort1
  105. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdUsb20OverCurrentPinPort2
  106. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdUsb20OverCurrentPinPort3
  107. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdUsb20OverCurrentPinPort4
  108. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdUsb20OverCurrentPinPort5
  109. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdUsb20OverCurrentPinPort6
  110. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdUsb20OverCurrentPinPort7
  111. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdUsb20OverCurrentPinPort8
  112. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdUsb20OverCurrentPinPort9
  113. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdUsb20OverCurrentPinPort10
  114. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdUsb20OverCurrentPinPort11
  115. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdUsb20OverCurrentPinPort12
  116. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdUsb20OverCurrentPinPort13
  117. # USB 3.0 Port Over Current Pin
  118. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdUsb30OverCurrentPinPort0
  119. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdUsb30OverCurrentPinPort1
  120. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdUsb30OverCurrentPinPort2
  121. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdUsb30OverCurrentPinPort3
  122. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdUsb30OverCurrentPinPort4
  123. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdUsb30OverCurrentPinPort5
  124. # Misc
  125. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdIoExpanderPresent
  126. #===========================================================
  127. # Board Init Table List
  128. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdBoardGpioTablePreMem
  129. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdBoardGpioTablePreMemSize
  130. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdBoardGpioTableWwanOnEarlyPreMem
  131. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdBoardGpioTableWwanOnEarlyPreMemSize
  132. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdBoardGpioTableWwanOffEarlyPreMem
  133. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdBoardGpioTableWwanOffEarlyPreMemSize
  134. # WWAN Full Card Power Off and reset pins
  135. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdWwanFullCardPowerOffGpio
  136. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdWwanBbrstGpio
  137. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdWwanPerstGpio
  138. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdWwanPerstGpioPolarity
  139. # SA Misc Config
  140. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdSaMiscMmioSizeAdjustment
  141. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdMrcDqPinsInterleavedControl
  142. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdMrcDqPinsInterleaved
  143. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdSaDdrFreqLimit
  144. # Display DDI
  145. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdSaDisplayConfigTable ## PRODUCES
  146. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdSaDisplayConfigTableSize ## PRODUCES
  147. # PEG Reset By GPIO
  148. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPegGpioResetControl
  149. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPegGpioResetSupoort
  150. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPeg0ResetGpioPad
  151. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPeg0ResetGpioActive
  152. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPeg3ResetGpioPad
  153. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPeg3ResetGpioActive
  154. # PCIE RTD3 GPIO
  155. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdRootPortDev
  156. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdRootPortFunc
  157. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdRootPortIndex
  158. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPcie0GpioSupport
  159. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPcie1GpioSupport
  160. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPcie1WakeGpioNo
  161. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPcie1HoldRstExpanderNo
  162. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPcie1HoldRstGpioNo
  163. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPcie1HoldRstActive
  164. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPcie1PwrEnableExpanderNo
  165. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPcie1PwrEnableGpioNo
  166. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPcie1PwrEnableActive
  167. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPcie2GpioSupport
  168. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPcie2WakeGpioNo
  169. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPcie2HoldRstExpanderNo
  170. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPcie2HoldRstGpioNo
  171. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPcie2HoldRstActive
  172. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPcie2PwrEnableExpanderNo
  173. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPcie2PwrEnableGpioNo
  174. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPcie2PwrEnableActive
  175. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPcie3GpioSupport
  176. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPcie3WakeGpioNo
  177. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPcie3HoldRstExpanderNo
  178. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPcie3HoldRstGpioNo
  179. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPcie3HoldRstActive
  180. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPcie3PwrEnableExpanderNo
  181. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPcie3PwrEnableGpioNo
  182. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPcie3PwrEnableActive
  183. # CA Vref Configuration
  184. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdMrcCaVrefConfig
  185. # PCIe Clock Info
  186. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPcieClock0
  187. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPcieClock1
  188. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPcieClock2
  189. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPcieClock3
  190. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPcieClock4
  191. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPcieClock5
  192. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPcieClock6
  193. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPcieClock7
  194. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPcieClock8
  195. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPcieClock9
  196. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPcieClock10
  197. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPcieClock11
  198. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPcieClock12
  199. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPcieClock13
  200. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPcieClock14
  201. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPcieClock15
  202. # USB 2.0 Port AFE
  203. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdUsb20Port10Afe
  204. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdUsb20Port11Afe
  205. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdUsb20Port12Afe
  206. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdUsb20Port13Afe
  207. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdUsb20Port14Afe
  208. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdUsb20Port15Afe
  209. # USB 2.0 Port Over Current Pin
  210. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdUsb20OverCurrentPinPort14
  211. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdUsb20OverCurrentPinPort15
  212. # USB 3.0 Port Over Current Pin
  213. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdUsb30OverCurrentPinPort6
  214. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdUsb30OverCurrentPinPort7
  215. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdUsb30OverCurrentPinPort8
  216. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdUsb30OverCurrentPinPort9
  217. # GPIO Group Tier
  218. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdGpioGroupToGpeDw0
  219. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdGpioGroupToGpeDw1
  220. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdGpioGroupToGpeDw2
  221. # Pch PmConfig Policy
  222. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdSlpS0VmRuntimeControl
  223. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdSlpS0Vm070VSupport
  224. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdSlpS0Vm075VSupport
  225. # Misc
  226. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPc8374SioKbcPresent
  227. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdOddPowerInitEnable
  228. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdIvCamInitPresent
  229. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdRecoveryModeGpio
  230. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdMobileDramPresent
  231. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdCpuVboostEnable
  232. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdSpdPresent
  233. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdBoardRev
  234. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdBoardBomId
  235. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPlatformType
  236. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdDualDimmPerChannelBoardType
  237. gMinPlatformPkgTokenSpaceGuid.PcdFlashAreaBaseAddress
  238. gMinPlatformPkgTokenSpaceGuid.PcdFlashAreaSize
  239. gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress ## CONSUMES
  240. gMinPlatformPkgTokenSpaceGuid.PcdPciExpressRegionLength ## CONSUMES
  241. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdPcieWwanEnable
  242. gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdWwanResetWorkaround ## PRODUCES
  243. gSiPkgTokenSpaceGuid.PcdTcoBaseAddress
  244. [FixedPcd]
  245. gSiPkgTokenSpaceGuid.PcdMchBaseAddress ## CONSUMES
  246. gSiPkgTokenSpaceGuid.PcdMchMmioSize ## CONSUMES
  247. gPlatformModuleTokenSpaceGuid.PcdDmiBaseAddress ## CONSUMES
  248. gPlatformModuleTokenSpaceGuid.PcdDmiMmioSize ## CONSUMES
  249. gPlatformModuleTokenSpaceGuid.PcdEpBaseAddress ## CONSUMES
  250. gPlatformModuleTokenSpaceGuid.PcdEpMmioSize ## CONSUMES
  251. gPlatformModuleTokenSpaceGuid.PcdGdxcBaseAddress ## CONSUMES
  252. gPlatformModuleTokenSpaceGuid.PcdGdxcMmioSize ## CONSUMES
  253. gPlatformModuleTokenSpaceGuid.PcdApicLocalAddress ## CONSUMES
  254. gPlatformModuleTokenSpaceGuid.PcdApicLocalMmioSize ## CONSUMES