PiSmmCpuDxeSmm.inf 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156
  1. ## @file
  2. # CPU SMM driver.
  3. #
  4. # This SMM driver performs SMM initialization, deploy SMM Entry Vector,
  5. # provides CPU specific services in SMM.
  6. #
  7. # Copyright (c) 2009 - 2022, Intel Corporation. All rights reserved.<BR>
  8. # Copyright (c) 2017, AMD Incorporated. All rights reserved.<BR>
  9. #
  10. # SPDX-License-Identifier: BSD-2-Clause-Patent
  11. #
  12. ##
  13. [Defines]
  14. INF_VERSION = 0x00010005
  15. BASE_NAME = PiSmmCpuDxeSmm
  16. MODULE_UNI_FILE = PiSmmCpuDxeSmm.uni
  17. FILE_GUID = A3FF0EF5-0C28-42f5-B544-8C7DE1E80014
  18. MODULE_TYPE = DXE_SMM_DRIVER
  19. VERSION_STRING = 1.0
  20. PI_SPECIFICATION_VERSION = 0x0001000A
  21. ENTRY_POINT = PiCpuSmmEntry
  22. #
  23. # The following information is for reference only and not required by the build tools.
  24. #
  25. # VALID_ARCHITECTURES = IA32 X64
  26. #
  27. [Sources]
  28. PiSmmCpuDxeSmm.c
  29. PiSmmCpuDxeSmm.h
  30. MpService.c
  31. SyncTimer.c
  32. CpuS3.c
  33. CpuService.c
  34. CpuService.h
  35. SmmProfile.c
  36. SmmProfile.h
  37. SmmProfileInternal.h
  38. SmramSaveState.c
  39. SmmCpuMemoryManagement.c
  40. SmmMp.h
  41. SmmMp.c
  42. [Sources.Ia32]
  43. Ia32/Semaphore.c
  44. Ia32/PageTbl.c
  45. Ia32/SmmFuncsArch.c
  46. Ia32/SmmProfileArch.c
  47. Ia32/SmmProfileArch.h
  48. Ia32/SmmInit.nasm
  49. Ia32/SmiEntry.nasm
  50. Ia32/SmiException.nasm
  51. Ia32/MpFuncs.nasm
  52. Ia32/Cet.nasm
  53. [Sources.X64]
  54. X64/Semaphore.c
  55. X64/PageTbl.c
  56. X64/SmmFuncsArch.c
  57. X64/SmmProfileArch.c
  58. X64/SmmProfileArch.h
  59. X64/SmmInit.nasm
  60. X64/SmiEntry.nasm
  61. X64/SmiException.nasm
  62. X64/MpFuncs.nasm
  63. X64/Cet.nasm
  64. [Packages]
  65. MdePkg/MdePkg.dec
  66. MdeModulePkg/MdeModulePkg.dec
  67. UefiCpuPkg/UefiCpuPkg.dec
  68. [LibraryClasses]
  69. UefiDriverEntryPoint
  70. UefiRuntimeServicesTableLib
  71. PcdLib
  72. DebugLib
  73. BaseLib
  74. SynchronizationLib
  75. BaseMemoryLib
  76. MtrrLib
  77. IoLib
  78. TimerLib
  79. SmmServicesTableLib
  80. MemoryAllocationLib
  81. DebugAgentLib
  82. HobLib
  83. PciLib
  84. LocalApicLib
  85. UefiCpuLib
  86. SmmCpuPlatformHookLib
  87. CpuExceptionHandlerLib
  88. UefiLib
  89. DxeServicesTableLib
  90. CpuLib
  91. ReportStatusCodeLib
  92. SmmCpuFeaturesLib
  93. PeCoffGetEntryPointLib
  94. [Protocols]
  95. gEfiSmmAccess2ProtocolGuid ## CONSUMES
  96. gEfiMpServiceProtocolGuid ## CONSUMES
  97. gEfiSmmConfigurationProtocolGuid ## PRODUCES
  98. gEfiSmmCpuProtocolGuid ## PRODUCES
  99. gEfiSmmReadyToLockProtocolGuid ## NOTIFY
  100. gEfiSmmCpuServiceProtocolGuid ## PRODUCES
  101. gEdkiiSmmMemoryAttributeProtocolGuid ## PRODUCES
  102. gEfiMmMpProtocolGuid ## PRODUCES
  103. gEdkiiSmmCpuRendezvousProtocolGuid ## PRODUCES
  104. [Guids]
  105. gEfiAcpiVariableGuid ## SOMETIMES_CONSUMES ## HOB # it is used for S3 boot.
  106. gEdkiiPiSmmMemoryAttributesTableGuid ## CONSUMES ## SystemTable
  107. gEfiMemoryAttributesTableGuid ## CONSUMES ## SystemTable
  108. [FeaturePcd]
  109. gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmDebug ## CONSUMES
  110. gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmBlockStartupThisAp ## CONSUMES
  111. gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmEnableBspElection ## CONSUMES
  112. gUefiCpuPkgTokenSpaceGuid.PcdCpuHotPlugSupport ## CONSUMES
  113. gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmStackGuard ## CONSUMES
  114. gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmProfileEnable ## CONSUMES
  115. gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmProfileRingBuffer ## CONSUMES
  116. gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmFeatureControlMsrLock ## CONSUMES
  117. gEfiMdeModulePkgTokenSpaceGuid.PcdDxeIplSwitchToLongMode ## CONSUMES
  118. [Pcd]
  119. gUefiCpuPkgTokenSpaceGuid.PcdCpuMaxLogicalProcessorNumber ## SOMETIMES_CONSUMES
  120. gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmProfileSize ## SOMETIMES_CONSUMES
  121. gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmStackSize ## CONSUMES
  122. gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmApSyncTimeout ## CONSUMES
  123. gUefiCpuPkgTokenSpaceGuid.PcdCpuS3DataAddress ## SOMETIMES_CONSUMES
  124. gUefiCpuPkgTokenSpaceGuid.PcdCpuHotPlugDataAddress ## SOMETIMES_PRODUCES
  125. gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmCodeAccessCheckEnable ## CONSUMES
  126. gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmSyncMode ## CONSUMES
  127. gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmShadowStackSize ## SOMETIMES_CONSUMES
  128. gUefiCpuPkgTokenSpaceGuid.PcdCpuFeaturesInitOnS3Resume ## CONSUMES
  129. gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiS3Enable ## CONSUMES
  130. gEfiMdeModulePkgTokenSpaceGuid.PcdPteMemoryEncryptionAddressOrMask ## CONSUMES
  131. gEfiMdeModulePkgTokenSpaceGuid.PcdNullPointerDetectionPropertyMask ## CONSUMES
  132. gEfiMdeModulePkgTokenSpaceGuid.PcdHeapGuardPropertyMask ## CONSUMES
  133. gEfiMdePkgTokenSpaceGuid.PcdControlFlowEnforcementPropertyMask ## CONSUMES
  134. [FixedPcd]
  135. gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmMpTokenCountPerChunk ## CONSUMES
  136. [Pcd.X64]
  137. gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmRestrictedMemoryAccess ## CONSUMES
  138. [Depex]
  139. gEfiMpServiceProtocolGuid
  140. [UserExtensions.TianoCore."ExtraFiles"]
  141. PiSmmCpuDxeSmmExtra.uni