BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=3974 SecPeiCcProbeLib is designed to probe the Confidential Computing guest type in SEC/PEI phase. The CC guest type was set by each CC guest at the beginning of boot up and saved in PcdOvmfWorkArea. Cc: Erdem Aktas <erdemaktas@google.com> Cc: James Bottomley <jejb@linux.ibm.com> Cc: Jiewen Yao <jiewen.yao@intel.com> Cc: Gerd Hoffmann <kraxel@redhat.com> Cc: Tom Lendacky <thomas.lendacky@amd.com> Signed-off-by: Min Xu <min.m.xu@intel.com> Acked-by: Gerd Hoffmann <kraxel@redhat.com> Reviewed-by: Jiewen Yao <jiewen.yao@intel.com>
32 lines
657 B
C
32 lines
657 B
C
/** @file
|
|
|
|
CcProbeLib is used to probe the Confidential computing guest type.
|
|
|
|
Copyright (c) 2022, Intel Corporation. All rights reserved.<BR>
|
|
SPDX-License-Identifier: BSD-2-Clause-Patent
|
|
|
|
**/
|
|
|
|
#include <Library/CcProbeLib.h>
|
|
#include <WorkArea.h>
|
|
|
|
/**
|
|
Probe the ConfidentialComputing Guest type. See defition of
|
|
CC_GUEST_TYPE in <ConfidentialComputingGuestAttr.h>.
|
|
|
|
@return The guest type
|
|
|
|
**/
|
|
UINT8
|
|
EFIAPI
|
|
CcProbe (
|
|
VOID
|
|
)
|
|
{
|
|
OVMF_WORK_AREA *WorkArea;
|
|
|
|
WorkArea = (OVMF_WORK_AREA *)FixedPcdGet32 (PcdOvmfWorkAreaBase);
|
|
|
|
return WorkArea != NULL ? WorkArea->Header.GuestType : CcGuestTypeNonEncrypted;
|
|
}
|