AcpiPlatform.h 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117
  1. /** @file
  2. @copyright
  3. Copyright 1999 - 2020 Intel Corporation. <BR>
  4. SPDX-License-Identifier: BSD-2-Clause-Patent
  5. **/
  6. #ifndef _ACPI_PLATFORM_H_
  7. #define _ACPI_PLATFORM_H_
  8. //
  9. // Statements that include other header files
  10. //
  11. #include <PiDxe.h>
  12. #include <PchAccess.h>
  13. #include <IndustryStandard/Acpi.h>
  14. #include <IndustryStandard/SerialPortConsoleRedirectionTable.h>
  15. #include <IndustryStandard/DmaRemappingReportingTable.h>
  16. #include <IndustryStandard/HighPrecisionEventTimerTable.h>
  17. #include <IndustryStandard/MemoryMappedConfigurationSpaceAccessTable.h>
  18. #include <IndustryStandard/Pci.h>
  19. #include <Library/AcpiPlatformLib.h>
  20. #include <Protocol/AcpiSystemDescriptionTable.h>
  21. #include <Protocol/GlobalNvsArea.h>
  22. #include <Protocol/IioUds.h>
  23. #include <Protocol/DmaRemap.h>
  24. #include <Protocol/PciIo.h>
  25. #include <Protocol/FirmwareVolume2.h>
  26. #include <Protocol/SerialIo.h>
  27. #include <Protocol/MpService.h>
  28. #include <Protocol/AcpiTable.h>
  29. #include <Protocol/GlobalNvsArea.h>
  30. #include <Library/BaseLib.h>
  31. #include <Library/UefiBootServicesTableLib.h>
  32. #include <Library/UefiRuntimeServicesTableLib.h>
  33. #include <Library/DebugLib.h>
  34. #include <Library/MemoryAllocationLib.h>
  35. #include <Library/DevicePathLib.h>
  36. #include <Library/BaseMemoryLib.h>
  37. #include <Library/HobLib.h>
  38. #include <Library/UefiLib.h>
  39. #include <Guid/PlatformInfo.h>
  40. #include <Guid/SetupVariable.h>
  41. #include <PchSetupVariable.h>
  42. #include <Guid/SocketVariable.h>
  43. #include <Guid/HobList.h>
  44. #include <Guid/MemoryMapData.h>
  45. #include <Protocol/PlatformType.h>
  46. #include <Protocol/CpuCsrAccess.h>
  47. #include <PpmPolicyPeiDxeCommon.h>
  48. #include <Acpi/Mcfg.h>
  49. #include <Acpi/Hpet.h>
  50. #include <Acpi/Srat.h>
  51. #include <Acpi/Slit.h>
  52. #include <Acpi/Migt.h>
  53. #include <Acpi/Msct.h>
  54. #include <Acpi/Bdat.h>
  55. #include <Acpi/Nfit.h>
  56. #include <Acpi/Pcat.h>
  57. #include "Platform.h"
  58. #include <AcpiVtd.h>
  59. #include <Protocol/Smbios.h>
  60. #include <IndustryStandard/SmBios.h>
  61. #include <Library/PchInfoLib.h>
  62. #include <Library/ReportStatusCodeLib.h>
  63. #include <SystemBoard.h>
  64. #include <PchAccess.h>
  65. #include <UncoreCommonIncludes.h>
  66. #include <SystemInfoVar.h>
  67. #include <Register/Cpuid.h>
  68. #include <Library/PlatformStatusCodes.h>
  69. #include <Protocol/DynamicSiLibraryProtocol.h>
  70. #include <Protocol/DynamicSiLibraryProtocol2.h>
  71. #include <Protocol/DmaRemap.h>
  72. #define RTC_ADDRESS_REGISTER_D 13
  73. /**
  74. Entry point for Acpi platform driver.
  75. @param ImageHandle - A handle for the image that is initializing this driver.
  76. @param SystemTable - A pointer to the EFI system table.
  77. @retval EFI_SUCCESS - Driver initialized successfully.
  78. @retval EFI_LOAD_ERROR - Failed to Initialize or has been loaded.
  79. @retval EFI_OUT_OF_RESOURCES - Could not allocate needed resources.
  80. **/
  81. EFI_STATUS
  82. EFIAPI
  83. AcpiPlatformEntryPoint (
  84. IN EFI_HANDLE ImageHandle,
  85. IN EFI_SYSTEM_TABLE *SystemTable
  86. );
  87. EFI_STATUS
  88. LocateSupportProtocol (
  89. IN EFI_GUID *Protocol,
  90. IN EFI_GUID gEfiAcpiMultiTableStorageGuid,
  91. OUT VOID **Instance,
  92. IN UINT32 Type
  93. );
  94. VOID
  95. AcpiVtdIntRemappingEnable (
  96. VOID
  97. );
  98. EFI_STATUS
  99. AcpiVtdTablesInstall (
  100. VOID
  101. );
  102. #endif // _ACPI_PLATFORM_H_