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