]> git.proxmox.com Git - mirror_edk2.git/blob - OvmfPkg/XenPlatformPei/Platform.h
77427496c0002fdede11287210150df8c1394418
[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 InitializeXen (
84 VOID
85 );
86
87 BOOLEAN
88 XenDetect (
89 VOID
90 );
91
92 VOID
93 AmdSevInitialize (
94 VOID
95 );
96
97 VOID
98 XenPublishRamRegions (
99 VOID
100 );
101
102 extern EFI_BOOT_MODE mBootMode;
103
104 extern UINT8 mPhysMemAddressWidth;
105
106 extern UINT16 mHostBridgeDevId;
107
108 #endif // _PLATFORM_PEI_H_INCLUDED_