]> git.proxmox.com Git - mirror_edk2.git/blob - OvmfPkg/XenPlatformPei/Platform.h
UefiCpuPkg: Move AsmRelocateApLoopStart from Mpfuncs.nasm to AmdSev.nasm
[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 #include <Library/PlatformInitLib.h>
16
17 VOID
18 AddIoMemoryBaseSizeHob (
19 EFI_PHYSICAL_ADDRESS MemoryBase,
20 UINT64 MemorySize
21 );
22
23 VOID
24 AddIoMemoryRangeHob (
25 EFI_PHYSICAL_ADDRESS MemoryBase,
26 EFI_PHYSICAL_ADDRESS MemoryLimit
27 );
28
29 VOID
30 AddMemoryBaseSizeHob (
31 EFI_PHYSICAL_ADDRESS MemoryBase,
32 UINT64 MemorySize
33 );
34
35 VOID
36 AddMemoryRangeHob (
37 EFI_PHYSICAL_ADDRESS MemoryBase,
38 EFI_PHYSICAL_ADDRESS MemoryLimit
39 );
40
41 VOID
42 AddReservedMemoryBaseSizeHob (
43 EFI_PHYSICAL_ADDRESS MemoryBase,
44 UINT64 MemorySize,
45 BOOLEAN Cacheable
46 );
47
48 VOID
49 AddReservedMemoryRangeHob (
50 EFI_PHYSICAL_ADDRESS MemoryBase,
51 EFI_PHYSICAL_ADDRESS MemoryLimit,
52 BOOLEAN Cacheable
53 );
54
55 VOID
56 AddressWidthInitialization (
57 VOID
58 );
59
60 VOID
61 Q35TsegMbytesInitialization (
62 VOID
63 );
64
65 EFI_STATUS
66 PublishPeiMemory (
67 VOID
68 );
69
70 UINT32
71 GetSystemMemorySizeBelow4gb (
72 VOID
73 );
74
75 VOID
76 InitializeRamRegions (
77 VOID
78 );
79
80 EFI_STATUS
81 PeiFvInitialization (
82 VOID
83 );
84
85 VOID
86 InstallClearCacheCallback (
87 VOID
88 );
89
90 EFI_STATUS
91 XenConnect (
92 VOID
93 );
94
95 BOOLEAN
96 XenDetect (
97 VOID
98 );
99
100 BOOLEAN
101 XenHvmloaderDetected (
102 VOID
103 );
104
105 BOOLEAN
106 XenPvhDetected (
107 VOID
108 );
109
110 VOID
111 AmdSevInitialize (
112 VOID
113 );
114
115 VOID
116 XenPublishRamRegions (
117 VOID
118 );
119
120 EFI_STATUS
121 XenGetE820Map (
122 EFI_E820_ENTRY64 **Entries,
123 UINT32 *Count
124 );
125
126 EFI_STATUS
127 PhysicalAddressIdentityMapping (
128 IN EFI_PHYSICAL_ADDRESS AddressToMap
129 );
130
131 VOID
132 CalibrateLapicTimer (
133 VOID
134 );
135
136 extern EFI_BOOT_MODE mBootMode;
137
138 extern UINT8 mPhysMemAddressWidth;
139
140 extern UINT16 mHostBridgeDevId;
141
142 #endif // _PLATFORM_PEI_H_INCLUDED_