Platform.h 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137
  1. /** @file
  2. Platform PEI module include file.
  3. Copyright (c) 2020, Rebecca Cran <rebecca@bsdio.com>
  4. Copyright (c) 2006 - 2016, Intel Corporation. All rights reserved.<BR>
  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. VOID
  11. AddIoMemoryBaseSizeHob (
  12. EFI_PHYSICAL_ADDRESS MemoryBase,
  13. UINT64 MemorySize
  14. );
  15. VOID
  16. AddIoMemoryRangeHob (
  17. EFI_PHYSICAL_ADDRESS MemoryBase,
  18. EFI_PHYSICAL_ADDRESS MemoryLimit
  19. );
  20. VOID
  21. AddMemoryBaseSizeHob (
  22. EFI_PHYSICAL_ADDRESS MemoryBase,
  23. UINT64 MemorySize
  24. );
  25. VOID
  26. AddMemoryRangeHob (
  27. EFI_PHYSICAL_ADDRESS MemoryBase,
  28. EFI_PHYSICAL_ADDRESS MemoryLimit
  29. );
  30. VOID
  31. AddReservedMemoryBaseSizeHob (
  32. EFI_PHYSICAL_ADDRESS MemoryBase,
  33. UINT64 MemorySize,
  34. BOOLEAN Cacheable
  35. );
  36. VOID
  37. AddressWidthInitialization (
  38. VOID
  39. );
  40. VOID
  41. Q35TsegMbytesInitialization (
  42. VOID
  43. );
  44. VOID
  45. Q35SmramAtDefaultSmbaseInitialization (
  46. VOID
  47. );
  48. EFI_STATUS
  49. PublishPeiMemory (
  50. VOID
  51. );
  52. UINT32
  53. GetSystemMemorySizeBelow4gb (
  54. VOID
  55. );
  56. VOID
  57. QemuUc32BaseInitialization (
  58. VOID
  59. );
  60. VOID
  61. InitializeRamRegions (
  62. VOID
  63. );
  64. EFI_STATUS
  65. PeiFvInitialization (
  66. VOID
  67. );
  68. VOID
  69. MemTypeInfoInitialization (
  70. VOID
  71. );
  72. VOID
  73. InstallFeatureControlCallback (
  74. VOID
  75. );
  76. VOID
  77. InstallClearCacheCallback (
  78. VOID
  79. );
  80. EFI_STATUS
  81. InitializeXen (
  82. VOID
  83. );
  84. BOOLEAN
  85. XenDetect (
  86. VOID
  87. );
  88. VOID
  89. AmdSevInitialize (
  90. VOID
  91. );
  92. extern BOOLEAN mXen;
  93. VOID
  94. XenPublishRamRegions (
  95. VOID
  96. );
  97. extern EFI_BOOT_MODE mBootMode;
  98. extern BOOLEAN mS3Supported;
  99. extern UINT8 mPhysMemAddressWidth;
  100. extern UINT32 mMaxCpuCount;
  101. extern UINT16 mHostBridgeDevId;
  102. extern BOOLEAN mQ35SmramAtDefaultSmbase;
  103. extern UINT32 mQemuUc32Base;
  104. #endif // _PLATFORM_PEI_H_INCLUDED_