]> git.proxmox.com Git - mirror_edk2.git/blob - OvmfPkg/XenPlatformPei/Platform.h
77d88fc159d7f0824f09b169838853b4ac529c7b
[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 AddReservedMemoryRangeHob (
49 EFI_PHYSICAL_ADDRESS MemoryBase,
50 EFI_PHYSICAL_ADDRESS MemoryLimit,
51 BOOLEAN Cacheable
52 );
53
54 VOID
55 AddressWidthInitialization (
56 VOID
57 );
58
59 VOID
60 Q35TsegMbytesInitialization (
61 VOID
62 );
63
64 EFI_STATUS
65 PublishPeiMemory (
66 VOID
67 );
68
69 UINT32
70 GetSystemMemorySizeBelow4gb (
71 VOID
72 );
73
74 VOID
75 InitializeRamRegions (
76 VOID
77 );
78
79 EFI_STATUS
80 PeiFvInitialization (
81 VOID
82 );
83
84 VOID
85 InstallClearCacheCallback (
86 VOID
87 );
88
89 EFI_STATUS
90 XenConnect (
91 VOID
92 );
93
94 EFI_STATUS
95 InitializeXen (
96 VOID
97 );
98
99 BOOLEAN
100 XenDetect (
101 VOID
102 );
103
104 BOOLEAN
105 XenHvmloaderDetected (
106 VOID
107 );
108
109 BOOLEAN
110 XenPvhDetected (
111 VOID
112 );
113
114 VOID
115 AmdSevInitialize (
116 VOID
117 );
118
119 VOID
120 XenPublishRamRegions (
121 VOID
122 );
123
124 EFI_STATUS
125 XenGetE820Map (
126 EFI_E820_ENTRY64 **Entries,
127 UINT32 *Count
128 );
129
130 EFI_STATUS
131 PhysicalAddressIdentityMapping (
132 IN EFI_PHYSICAL_ADDRESS AddressToMap
133 );
134
135 VOID
136 CalibrateLapicTimer (
137 VOID
138 );
139
140 extern EFI_BOOT_MODE mBootMode;
141
142 extern UINT8 mPhysMemAddressWidth;
143
144 extern UINT16 mHostBridgeDevId;
145
146 #endif // _PLATFORM_PEI_H_INCLUDED_