audk/OvmfPkg/PlatformPei/Platform.h
Mikhail Krichanov 20dd836214 MdeModulePkg/Core/Dxe: Integrate CPU Architectural producer
BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=3223

In the current design, memory protection is not available till CpuDxe
is loaded. To resolve this, introduce CpuArchLib to move the
CPU Architectural initialization to DxeCore.

Cc: Eric Dong <eric.dong@intel.com>
Cc: Ray Ni <ray.ni@intel.com>
Cc: Laszlo Ersek <lersek@redhat.com>
Cc: Rahul Kumar <rahul1.kumar@intel.com>
Cc: Vitaly Cheptsov <vit9696@protonmail.com>
Signed-off-by: Marvin Häuser <mhaeuser@posteo.de>
2025-04-07 12:23:28 +03:00

115 lines
2.0 KiB
C

/** @file
Platform PEI module include file.
Copyright (c) 2006 - 2016, Intel Corporation. All rights reserved.<BR>
SPDX-License-Identifier: BSD-2-Clause-Patent
**/
#ifndef _PLATFORM_PEI_H_INCLUDED_
#define _PLATFORM_PEI_H_INCLUDED_
#include <IndustryStandard/E820.h>
#include <Library/PlatformInitLib.h>
#include <IndustryStandard/IntelTdx.h>
VOID
AddressWidthInitialization (
IN OUT EFI_HOB_PLATFORM_INFO *PlatformInfoHob
);
VOID
Q35TsegMbytesInitialization (
IN OUT EFI_HOB_PLATFORM_INFO *PlatformInfoHob
);
VOID
Q35SmramAtDefaultSmbaseInitialization (
IN OUT EFI_HOB_PLATFORM_INFO *PlatformInfoHob
);
EFI_STATUS
PublishPeiMemory (
IN OUT EFI_HOB_PLATFORM_INFO *PlatformInfoHob
);
VOID
InitializeRamRegions (
IN EFI_HOB_PLATFORM_INFO *PlatformInfoHob
);
VOID
MemMapInitialization (
IN OUT EFI_HOB_PLATFORM_INFO *PlatformInfoHob
);
VOID
MiscInitialization (
IN EFI_HOB_PLATFORM_INFO *PlatformInfoHob
);
VOID
BootModeInitialization (
IN OUT EFI_HOB_PLATFORM_INFO *PlatformInfoHob
);
VOID
MaxCpuCountInitialization (
IN OUT EFI_HOB_PLATFORM_INFO *PlatformInfoHob
);
EFI_STATUS
PeiFvInitialization (
IN EFI_HOB_PLATFORM_INFO *PlatformInfoHob
);
VOID
MemTypeInfoInitialization (
IN OUT EFI_HOB_PLATFORM_INFO *PlatformInfoHob
);
VOID
InstallFeatureControlCallback (
IN OUT EFI_HOB_PLATFORM_INFO *PlatformInfoHob
);
VOID
InstallClearCacheCallback (
VOID
);
VOID
RelocateSmBase (
VOID
);
VOID
AmdSevInitialize (
IN EFI_HOB_PLATFORM_INFO *PlatformInfoHob
);
/**
This Function checks if TDX is available, if present then it sets
the dynamic PCDs for Tdx guest. It also builds Guid hob which contains
the Host Bridge DevId.
**/
VOID
IntelTdxInitialize (
IN EFI_HOB_PLATFORM_INFO *PlatformInfoHob
);
/**
* @brief Builds PlatformInfo Hob
*/
EFI_HOB_PLATFORM_INFO *
BuildPlatformInfoHob (
VOID
);
VOID
SevInitializeRam (
VOID
);
#endif // _PLATFORM_PEI_H_INCLUDED_