]> git.proxmox.com Git - mirror_edk2.git/blob - OvmfPkg/PlatformPei/Platform.h
UefiCpuPkg: Move AsmRelocateApLoopStart from Mpfuncs.nasm to AmdSev.nasm
[mirror_edk2.git] / OvmfPkg / PlatformPei / Platform.h
1 /** @file
2 Platform PEI module include file.
3
4 Copyright (c) 2006 - 2016, Intel Corporation. All rights reserved.<BR>
5 SPDX-License-Identifier: BSD-2-Clause-Patent
6
7 **/
8
9 #ifndef _PLATFORM_PEI_H_INCLUDED_
10 #define _PLATFORM_PEI_H_INCLUDED_
11
12 #include <IndustryStandard/E820.h>
13 #include <Library/PlatformInitLib.h>
14 #include <IndustryStandard/IntelTdx.h>
15
16 VOID
17 AddressWidthInitialization (
18 IN OUT EFI_HOB_PLATFORM_INFO *PlatformInfoHob
19 );
20
21 VOID
22 Q35TsegMbytesInitialization (
23 IN OUT EFI_HOB_PLATFORM_INFO *PlatformInfoHob
24 );
25
26 VOID
27 Q35SmramAtDefaultSmbaseInitialization (
28 IN OUT EFI_HOB_PLATFORM_INFO *PlatformInfoHob
29 );
30
31 EFI_STATUS
32 PublishPeiMemory (
33 IN OUT EFI_HOB_PLATFORM_INFO *PlatformInfoHob
34 );
35
36 VOID
37 InitializeRamRegions (
38 IN EFI_HOB_PLATFORM_INFO *PlatformInfoHob
39 );
40
41 VOID
42 MemMapInitialization (
43 IN OUT EFI_HOB_PLATFORM_INFO *PlatformInfoHob
44 );
45
46 VOID
47 MiscInitialization (
48 IN EFI_HOB_PLATFORM_INFO *PlatformInfoHob
49 );
50
51 VOID
52 BootModeInitialization (
53 IN OUT EFI_HOB_PLATFORM_INFO *PlatformInfoHob
54 );
55
56 VOID
57 MaxCpuCountInitialization (
58 IN OUT EFI_HOB_PLATFORM_INFO *PlatformInfoHob
59 );
60
61 EFI_STATUS
62 PeiFvInitialization (
63 IN EFI_HOB_PLATFORM_INFO *PlatformInfoHob
64 );
65
66 VOID
67 MemTypeInfoInitialization (
68 IN OUT EFI_HOB_PLATFORM_INFO *PlatformInfoHob
69 );
70
71 VOID
72 InstallFeatureControlCallback (
73 IN OUT EFI_HOB_PLATFORM_INFO *PlatformInfoHob
74 );
75
76 VOID
77 InstallClearCacheCallback (
78 VOID
79 );
80
81 VOID
82 AmdSevInitialize (
83 IN EFI_HOB_PLATFORM_INFO *PlatformInfoHob
84 );
85
86 /**
87 This Function checks if TDX is available, if present then it sets
88 the dynamic PCDs for Tdx guest. It also builds Guid hob which contains
89 the Host Bridge DevId.
90 **/
91 VOID
92 IntelTdxInitialize (
93 VOID
94 );
95
96 /**
97 * @brief Builds PlatformInfo Hob
98 */
99 EFI_HOB_PLATFORM_INFO *
100 BuildPlatformInfoHob (
101 VOID
102 );
103
104 VOID
105 SevInitializeRam (
106 VOID
107 );
108
109 #endif // _PLATFORM_PEI_H_INCLUDED_