Platform.h 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142
  1. /** @file
  2. Platform PEI module include file.
  3. Copyright (c) 2006 - 2016, Intel Corporation. All rights reserved.<BR>
  4. Copyright (c) 2019, Citrix Systems, Inc.
  5. SPDX-License-Identifier: BSD-2-Clause-Patent
  6. **/
  7. #ifndef _PLATFORM_PEI_H_INCLUDED_
  8. #define _PLATFORM_PEI_H_INCLUDED_
  9. #include <IndustryStandard/E820.h>
  10. #include <Library/PlatformInitLib.h>
  11. VOID
  12. AddIoMemoryBaseSizeHob (
  13. EFI_PHYSICAL_ADDRESS MemoryBase,
  14. UINT64 MemorySize
  15. );
  16. VOID
  17. AddIoMemoryRangeHob (
  18. EFI_PHYSICAL_ADDRESS MemoryBase,
  19. EFI_PHYSICAL_ADDRESS MemoryLimit
  20. );
  21. VOID
  22. AddMemoryBaseSizeHob (
  23. EFI_PHYSICAL_ADDRESS MemoryBase,
  24. UINT64 MemorySize
  25. );
  26. VOID
  27. AddMemoryRangeHob (
  28. EFI_PHYSICAL_ADDRESS MemoryBase,
  29. EFI_PHYSICAL_ADDRESS MemoryLimit
  30. );
  31. VOID
  32. AddReservedMemoryBaseSizeHob (
  33. EFI_PHYSICAL_ADDRESS MemoryBase,
  34. UINT64 MemorySize,
  35. BOOLEAN Cacheable
  36. );
  37. VOID
  38. AddReservedMemoryRangeHob (
  39. EFI_PHYSICAL_ADDRESS MemoryBase,
  40. EFI_PHYSICAL_ADDRESS MemoryLimit,
  41. BOOLEAN Cacheable
  42. );
  43. VOID
  44. AddressWidthInitialization (
  45. VOID
  46. );
  47. VOID
  48. Q35TsegMbytesInitialization (
  49. VOID
  50. );
  51. EFI_STATUS
  52. PublishPeiMemory (
  53. VOID
  54. );
  55. UINT32
  56. GetSystemMemorySizeBelow4gb (
  57. VOID
  58. );
  59. VOID
  60. InitializeRamRegions (
  61. VOID
  62. );
  63. EFI_STATUS
  64. PeiFvInitialization (
  65. VOID
  66. );
  67. VOID
  68. InstallClearCacheCallback (
  69. VOID
  70. );
  71. EFI_STATUS
  72. XenConnect (
  73. VOID
  74. );
  75. BOOLEAN
  76. XenDetect (
  77. VOID
  78. );
  79. BOOLEAN
  80. XenHvmloaderDetected (
  81. VOID
  82. );
  83. BOOLEAN
  84. XenPvhDetected (
  85. VOID
  86. );
  87. VOID
  88. AmdSevInitialize (
  89. VOID
  90. );
  91. VOID
  92. XenPublishRamRegions (
  93. VOID
  94. );
  95. EFI_STATUS
  96. XenGetE820Map (
  97. EFI_E820_ENTRY64 **Entries,
  98. UINT32 *Count
  99. );
  100. EFI_STATUS
  101. PhysicalAddressIdentityMapping (
  102. IN EFI_PHYSICAL_ADDRESS AddressToMap
  103. );
  104. VOID
  105. CalibrateLapicTimer (
  106. VOID
  107. );
  108. extern EFI_BOOT_MODE mBootMode;
  109. extern UINT8 mPhysMemAddressWidth;
  110. extern UINT16 mHostBridgeDevId;
  111. #endif // _PLATFORM_PEI_H_INCLUDED_