mirror of https://github.com/acidanthera/audk.git
92 lines
2.2 KiB
C
92 lines
2.2 KiB
C
/** @file
|
|
TdxHelper Functions which are used in PEI phase
|
|
|
|
Copyright (c) 2022 - 2023, Intel Corporation. All rights reserved.<BR>
|
|
|
|
SPDX-License-Identifier: BSD-2-Clause-Patent
|
|
|
|
**/
|
|
|
|
#include <Base.h>
|
|
#include <PiPei.h>
|
|
|
|
/**
|
|
Build the GuidHob for tdx measurements which were done in SEC phase.
|
|
The measurement values are stored in WorkArea.
|
|
|
|
@retval EFI_SUCCESS The GuidHob is built successfully
|
|
@retval Others Other errors as indicated
|
|
**/
|
|
EFI_STATUS
|
|
InternalBuildGuidHobForTdxMeasurement (
|
|
VOID
|
|
);
|
|
|
|
/**
|
|
In Tdx guest, some information need to be passed from host VMM to guest
|
|
firmware. For example, the memory resource, etc. These information are
|
|
prepared by host VMM and put in TdHob which is described in TdxMetadata.
|
|
TDVF processes the TdHob to accept memories.
|
|
|
|
@retval EFI_SUCCESS Successfully process the TdHob
|
|
@retval Others Other error as indicated
|
|
**/
|
|
EFI_STATUS
|
|
EFIAPI
|
|
TdxHelperProcessTdHob (
|
|
VOID
|
|
)
|
|
{
|
|
return EFI_UNSUPPORTED;
|
|
}
|
|
|
|
/**
|
|
In Tdx guest, TdHob is passed from host VMM to guest firmware and it contains
|
|
the information of the memory resource. From the security perspective before
|
|
it is consumed, it should be measured and extended.
|
|
*
|
|
* @retval EFI_SUCCESS Successfully measure the TdHob
|
|
* @retval Others Other error as indicated
|
|
*/
|
|
EFI_STATUS
|
|
EFIAPI
|
|
TdxHelperMeasureTdHob (
|
|
VOID
|
|
)
|
|
{
|
|
return EFI_UNSUPPORTED;
|
|
}
|
|
|
|
/**
|
|
* In Tdx guest, Configuration FV (CFV) is treated as external input because it
|
|
* may contain the data provided by VMM. From the sucurity perspective Cfv image
|
|
* should be measured before it is consumed.
|
|
*
|
|
* @retval EFI_SUCCESS Successfully measure the CFV image
|
|
* @retval Others Other error as indicated
|
|
*/
|
|
EFI_STATUS
|
|
EFIAPI
|
|
TdxHelperMeasureCfvImage (
|
|
VOID
|
|
)
|
|
{
|
|
return EFI_UNSUPPORTED;
|
|
}
|
|
|
|
/**
|
|
Build the GuidHob for tdx measurements which were done in SEC phase.
|
|
The measurement values are stored in WorkArea.
|
|
|
|
@retval EFI_SUCCESS The GuidHob is built successfully
|
|
@retval Others Other errors as indicated
|
|
**/
|
|
EFI_STATUS
|
|
EFIAPI
|
|
TdxHelperBuildGuidHobForTdxMeasurement (
|
|
VOID
|
|
)
|
|
{
|
|
return InternalBuildGuidHobForTdxMeasurement ();
|
|
}
|