From nobody Fri May 17 12:14:32 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) client-ip=66.175.222.108; envelope-from=bounce+27952+92942+1787277+3901457@groups.io; helo=mail02.groups.io; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+92942+1787277+3901457@groups.io; dmarc=fail(p=none dis=none) header.from=intel.com ARC-Seal: i=1; a=rsa-sha256; t=1661821455; cv=none; d=zohomail.com; s=zohoarc; b=MhZyAD52WbTdi6B6L2qyq9KcU5fZZl0TG3B+fzVL+An4qiXUkgC5yvj0AnyiTZv4gMNyejsR90XC63PLLA19hSOjAignJCTocRIx07xn7zWqy8jfjXlySo1gJEMBarNowlhnlTZFt+ve3wjnWzNw5kNCckxfuRIoZK4j07+4gIw= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1661821455; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:References:Sender:Subject:To; bh=7I0ziOzLmzXCE6AHlfDVg6N/9U9KFRsEabBSY0ogEtw=; b=N/Fviv6NJ7ZiBzvcGb5g36M+17ex/PkjenxqP5gSTpDdf5ftiU3N8b1nfc8G8yKzPlOkLJTnuR7OE7LgF3MQoEOYmGoANv/EiIPGtg5P5042uySjG+cPEx+SssYly9dBm3i2gk3dZbUvr+yO37FFoDJ0j7c/A8A7fU95ICriJoQ= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+92942+1787277+3901457@groups.io; dmarc=fail header.from= (p=none dis=none) Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1661821455765641.490969629175; Mon, 29 Aug 2022 18:04:15 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id MUIJYY1788612xMVawFqMNyh; Mon, 29 Aug 2022 18:04:15 -0700 X-Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by mx.groups.io with SMTP id smtpd.web09.6263.1661821454207048478 for ; Mon, 29 Aug 2022 18:04:14 -0700 X-IronPort-AV: E=McAfee;i="6500,9779,10454"; a="274794053" X-IronPort-AV: E=Sophos;i="5.93,274,1654585200"; d="scan'208";a="274794053" X-Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 29 Aug 2022 18:03:55 -0700 X-IronPort-AV: E=Sophos;i="5.93,273,1654585200"; d="scan'208";a="672612255" X-Received: from mxu9-mobl1.ccr.corp.intel.com ([10.238.4.200]) by fmsmga008-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 29 Aug 2022 18:03:53 -0700 From: "Min Xu" To: devel@edk2.groups.io Cc: Min M Xu , Erdem Aktas , James Bottomley , Jiewen Yao , Gerd Hoffmann , Tom Lendacky Subject: [edk2-devel] [PATCH V5 1/2] OvmfPkg: Add SecPeiCcProbeLib Date: Tue, 30 Aug 2022 09:03:39 +0800 Message-Id: <8864b7692e80f47f9f00db7b252113ac9a87c8c1.1661817901.git.min.m.xu@intel.com> In-Reply-To: References: MIME-Version: 1.0 Precedence: Bulk List-Unsubscribe: List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,min.m.xu@intel.com X-Gm-Message-State: J2KiiJ5R3aSdHyPdXZrT5iZPx1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1661821455; bh=cZBwC1l5YOkC9f9m8G/A/MYtDH9hODARThvVvk6TIF0=; h=Cc:Date:From:Reply-To:Subject:To; b=XwGsMFSgEK2C/WqjXAwdn+3f++icqQwUOlfiSiMQtUNusGFt6lEzeuM7lM23OhePUHd tx45OQXKTe1Y5XbLBehjox8wX2XF1MCU5s7KSenJpVSHciCbqoh716MXxgjJ3chTPtIK+ rs5mO+tr+olHH0uj/KPRK9jmoDrsOxcyilc= X-ZohoMail-DKIM: pass (identity @groups.io) X-ZM-MESSAGEID: 1661821456233100003 Content-Type: text/plain; charset="utf-8" From: Min M Xu BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=3D3974 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 Cc: James Bottomley Cc: Jiewen Yao Cc: Gerd Hoffmann Cc: Tom Lendacky Acked-by: Gerd Hoffmann Signed-off-by: Min Xu --- OvmfPkg/Library/CcProbeLib/SecPeiCcProbeLib.c | 31 +++++++++++++++++++ .../Library/CcProbeLib/SecPeiCcProbeLib.inf | 25 +++++++++++++++ 2 files changed, 56 insertions(+) create mode 100644 OvmfPkg/Library/CcProbeLib/SecPeiCcProbeLib.c create mode 100644 OvmfPkg/Library/CcProbeLib/SecPeiCcProbeLib.inf diff --git a/OvmfPkg/Library/CcProbeLib/SecPeiCcProbeLib.c b/OvmfPkg/Librar= y/CcProbeLib/SecPeiCcProbeLib.c new file mode 100644 index 000000000000..d698e5c8d7f8 --- /dev/null +++ b/OvmfPkg/Library/CcProbeLib/SecPeiCcProbeLib.c @@ -0,0 +1,31 @@ +/** @file + + CcProbeLib is used to probe the Confidential computing guest type. + + Copyright (c) 2022, Intel Corporation. All rights reserved.
+ SPDX-License-Identifier: BSD-2-Clause-Patent + +**/ + +#include +#include + +/** + Probe the ConfidentialComputing Guest type. See defition of + CC_GUEST_TYPE in . + + @return The guest type + +**/ +UINT8 +EFIAPI +CcProbe ( + VOID + ) +{ + OVMF_WORK_AREA *WorkArea; + + WorkArea =3D (OVMF_WORK_AREA *)FixedPcdGet32 (PcdOvmfWorkAreaBase); + + return WorkArea !=3D NULL ? WorkArea->Header.GuestType : CcGuestTypeNonE= ncrypted; +} diff --git a/OvmfPkg/Library/CcProbeLib/SecPeiCcProbeLib.inf b/OvmfPkg/Libr= ary/CcProbeLib/SecPeiCcProbeLib.inf new file mode 100644 index 000000000000..f63ed71e7c28 --- /dev/null +++ b/OvmfPkg/Library/CcProbeLib/SecPeiCcProbeLib.inf @@ -0,0 +1,25 @@ +## @file +# CcProbeLib is used to probe Confidential Computing guest type. +# +# Copyright (c) 2022, Intel Corporation. All rights reserved.
+# SPDX-License-Identifier: BSD-2-Clause-Patent +# +## + +[Defines] + INF_VERSION =3D 0x00010005 + BASE_NAME =3D SecPeiCcProbeLib + FILE_GUID =3D 78eb7f2a-a42a-4b01-b160-5a05a0a52bac + MODULE_TYPE =3D BASE + VERSION_STRING =3D 1.0 + LIBRARY_CLASS =3D CcProbeLib|SEC PEIM PEI_CORE + +[Sources] + SecPeiCcProbeLib.c + +[Packages] + MdePkg/MdePkg.dec + OvmfPkg/OvmfPkg.dec + +[Pcd] + gUefiOvmfPkgTokenSpaceGuid.PcdOvmfWorkAreaBase --=20 2.29.2.windows.2 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#92942): https://edk2.groups.io/g/devel/message/92942 Mute This Topic: https://groups.io/mt/93340306/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- From nobody Fri May 17 12:14:32 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) client-ip=66.175.222.108; envelope-from=bounce+27952+92943+1787277+3901457@groups.io; helo=mail02.groups.io; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+92943+1787277+3901457@groups.io; dmarc=fail(p=none dis=none) header.from=intel.com ARC-Seal: i=1; a=rsa-sha256; t=1661821456; cv=none; d=zohomail.com; s=zohoarc; b=XOIAJMPeHYpBJPxdZv6JnFdKgR0fxkrh742wkpudwVMiY3PpF2BKAf/m77ICblPnJ7VbXQyM9xpFM3H0gGxf6J/GKnobMchRctz5fqWvcQu0TTU2rDP7jnf95Dh7RJ7gT/GB9oTisEJTLUi87I9WJy8hPNRW55VpgHdzrOa6Dho= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1661821456; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:References:Sender:Subject:To; bh=n0SJ7GEHm/bhaZZdrAaz0WzAajKylSfVyoIBXHZ6XHQ=; b=gff7RkuSfX93o3C11GlnMzvItPCIKbLkM/8oYagnN/Yax1m9N4xDtnogFdfgwAicqN+kbxbAQasCizhHS7Sy7LEXoTRJCp5ASOUrcm9Z6c8COYNoEMeVfgJZx5UrH+LCgaq8L557Muk6P7/zWyMBvsd5gXOvs6uhaplRh40cGOU= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+92943+1787277+3901457@groups.io; dmarc=fail header.from= (p=none dis=none) Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1661821456238696.735050219463; Mon, 29 Aug 2022 18:04:16 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id qJfQYY1788612xYWBR1nmO2S; Mon, 29 Aug 2022 18:04:15 -0700 X-Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by mx.groups.io with SMTP id smtpd.web08.6299.1661821454642166759 for ; Mon, 29 Aug 2022 18:04:14 -0700 X-IronPort-AV: E=McAfee;i="6500,9779,10454"; a="274794055" X-IronPort-AV: E=Sophos;i="5.93,274,1654585200"; d="scan'208";a="274794055" X-Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 29 Aug 2022 18:03:57 -0700 X-IronPort-AV: E=Sophos;i="5.93,273,1654585200"; d="scan'208";a="672612262" X-Received: from mxu9-mobl1.ccr.corp.intel.com ([10.238.4.200]) by fmsmga008-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 29 Aug 2022 18:03:55 -0700 From: "Min Xu" To: devel@edk2.groups.io Cc: Min M Xu , Gerd Hoffmann , Erdem Aktas , James Bottomley , Jiewen Yao , Tom Lendacky Subject: [edk2-devel] [PATCH V5 2/2] OvmfPkg: Update CcProbeLib to DxeCcProbeLib Date: Tue, 30 Aug 2022 09:03:40 +0800 Message-Id: In-Reply-To: References: MIME-Version: 1.0 Precedence: Bulk List-Unsubscribe: List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,min.m.xu@intel.com X-Gm-Message-State: EC6P90MKSOEu76yYlvN77t1Ox1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1661821455; bh=BQVlY19zerGivHPbmpKyCAQmiXoXXV1TEApleLJxL8Y=; h=Cc:Date:From:Reply-To:Subject:To; b=js9IlTG7l73P1Lp4bJKiRkNrRvvCVPjOafJ2EVbeTWzhGAxF4TmWPBg2O6EzTxGEDJZ J/Ct2vYFyjCcBDdcvmbWh4sy8A9/E6faC/swEwirwD+yYgoVK/xKBDFWjjcaFFRZO+ZX9 8T9KTB+wvsTzhRxznwGVwK9icItNgr2nyAk= X-ZohoMail-DKIM: pass (identity @groups.io) X-ZM-MESSAGEID: 1661821457989100007 Content-Type: text/plain; charset="utf-8" From: Min M Xu BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=3D3974 CcProbeLib once was designed to probe the Confidential Computing guest type by checking the PcdOvmfWorkArea. But this memory is allocated with either EfiACPIMemoryNVS or EfiBootServicesData. It cannot be accessed after ExitBootService. Please see the detailed analysis in BZ#3974. To fix this issue, CcProbeLib is redesigned as 2 implementation: - SecPeiCcProbeLib - DxeCcProbeLib In SecPeiCcProbeLib we check the CC guest type by reading the PcdOvmfWorkArea. Because it is used in SEC / PEI and we don't worry about the issues in BZ#3974. In DxeCcProbeLib we cache the GuestType in Ovmf work area in a variable. After that the Guest type is returned with the cached value. So that we don't need to worry about the access to Ovmf work area after ExitBootService. To guarantee the GuestType is cached, we read the value in both constructor and CcProbe. Because in some corner case, the constructor may be called after CcProbe. For example in MdeModulePkg/Core/Dxe/DxeMain, BaseDebugLibSerialPortConstructor is called before DxeCcProbeLibConstructor. While CcProbe () is called in BaseDebugLibSerialPortConstructor. The reason why we probe CC guest type in 2 different ways is the global variable. Global variable cannot be used in SEC/PEI and CcProbe is called very frequently. Cc: Gerd Hoffmann Cc: Erdem Aktas Cc: James Bottomley Cc: Jiewen Yao Cc: Tom Lendacky Acked-by: Gerd Hoffmann Signed-off-by: Min Xu --- OvmfPkg/IntelTdx/IntelTdxX64.dsc | 3 +- OvmfPkg/Library/CcProbeLib/CcProbeLib.c | 31 --------- OvmfPkg/Library/CcProbeLib/DxeCcProbeLib.c | 68 +++++++++++++++++++ .../{CcProbeLib.inf =3D> DxeCcProbeLib.inf} | 7 +- OvmfPkg/OvmfPkgX64.dsc | 5 +- 5 files changed, 78 insertions(+), 36 deletions(-) delete mode 100644 OvmfPkg/Library/CcProbeLib/CcProbeLib.c create mode 100644 OvmfPkg/Library/CcProbeLib/DxeCcProbeLib.c rename OvmfPkg/Library/CcProbeLib/{CcProbeLib.inf =3D> DxeCcProbeLib.inf} = (65%) diff --git a/OvmfPkg/IntelTdx/IntelTdxX64.dsc b/OvmfPkg/IntelTdx/IntelTdxX6= 4.dsc index 71b1cf8e7090..1a7ecd503e50 100644 --- a/OvmfPkg/IntelTdx/IntelTdxX64.dsc +++ b/OvmfPkg/IntelTdx/IntelTdxX64.dsc @@ -140,7 +140,7 @@ PciCapLib|OvmfPkg/Library/BasePciCapLib/BasePciCapLib.inf PciCapPciSegmentLib|OvmfPkg/Library/BasePciCapPciSegmentLib/BasePciCapPc= iSegmentLib.inf PciCapPciIoLib|OvmfPkg/Library/UefiPciCapPciIoLib/UefiPciCapPciIoLib.inf - CcProbeLib|OvmfPkg/Library/CcProbeLib/CcProbeLib.inf + CcProbeLib|OvmfPkg/Library/CcProbeLib/DxeCcProbeLib.inf IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsicSev.inf OemHookStatusCodeLib|MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHo= okStatusCodeLibNull.inf SerialPortLib|PcAtChipsetPkg/Library/SerialIoLib/SerialIoLib.inf @@ -234,6 +234,7 @@ HobLib|EmbeddedPkg/Library/PrePiHobLib/PrePiHobLib.inf PrePiLib|EmbeddedPkg/Library/PrePiLib/PrePiLib.inf PeilessStartupLib|OvmfPkg/Library/PeilessStartupLib/PeilessStartupLib.inf + CcProbeLib|OvmfPkg/Library/CcProbeLib/SecPeiCcProbeLib.inf =20 [LibraryClasses.common.DXE_CORE] HobLib|MdePkg/Library/DxeCoreHobLib/DxeCoreHobLib.inf diff --git a/OvmfPkg/Library/CcProbeLib/CcProbeLib.c b/OvmfPkg/Library/CcPr= obeLib/CcProbeLib.c deleted file mode 100644 index d698e5c8d7f8..000000000000 --- a/OvmfPkg/Library/CcProbeLib/CcProbeLib.c +++ /dev/null @@ -1,31 +0,0 @@ -/** @file - - CcProbeLib is used to probe the Confidential computing guest type. - - Copyright (c) 2022, Intel Corporation. All rights reserved.
- SPDX-License-Identifier: BSD-2-Clause-Patent - -**/ - -#include -#include - -/** - Probe the ConfidentialComputing Guest type. See defition of - CC_GUEST_TYPE in . - - @return The guest type - -**/ -UINT8 -EFIAPI -CcProbe ( - VOID - ) -{ - OVMF_WORK_AREA *WorkArea; - - WorkArea =3D (OVMF_WORK_AREA *)FixedPcdGet32 (PcdOvmfWorkAreaBase); - - return WorkArea !=3D NULL ? WorkArea->Header.GuestType : CcGuestTypeNonE= ncrypted; -} diff --git a/OvmfPkg/Library/CcProbeLib/DxeCcProbeLib.c b/OvmfPkg/Library/C= cProbeLib/DxeCcProbeLib.c new file mode 100644 index 000000000000..868e32bf7f60 --- /dev/null +++ b/OvmfPkg/Library/CcProbeLib/DxeCcProbeLib.c @@ -0,0 +1,68 @@ +/** @file + + CcProbeLib is used to probe the Confidential computing guest type. + + Copyright (c) 2022, Intel Corporation. All rights reserved.
+ SPDX-License-Identifier: BSD-2-Clause-Patent + +**/ + +#include +#include +#include + +STATIC UINT8 mCcProbeGuestType =3D 0; +STATIC BOOLEAN mCcProbed =3D FALSE; + +/** + * Read the the ConfidentialComputing Guest type from Ovmf work-area. + * + * @return The ConfidentialComputing Guest type + */ +STATIC +UINT8 +ReadCcGuestType ( + VOID + ) +{ + OVMF_WORK_AREA *WorkArea; + + if (!mCcProbed) { + WorkArea =3D (OVMF_WORK_AREA *)FixedPcdGet32 (PcdOvmfWorkArea= Base); + mCcProbeGuestType =3D WorkArea !=3D NULL ? WorkArea->Header.GuestType = : CcGuestTypeNonEncrypted; + mCcProbed =3D TRUE; + } + + return mCcProbeGuestType; +} + +/** + Probe the ConfidentialComputing Guest type. See defition of + CC_GUEST_TYPE in . + + @return The guest type + +**/ +UINT8 +EFIAPI +CcProbe ( + VOID + ) +{ + return ReadCcGuestType (); +} + +/** + * Constructor of DxeCcProbeLib + * + * @return EFI_SUCCESS Successfully called of constructor + */ +EFI_STATUS +EFIAPI +DxeCcProbeLibConstructor ( + VOID + ) +{ + ReadCcGuestType (); + return EFI_SUCCESS; +} diff --git a/OvmfPkg/Library/CcProbeLib/CcProbeLib.inf b/OvmfPkg/Library/Cc= ProbeLib/DxeCcProbeLib.inf similarity index 65% rename from OvmfPkg/Library/CcProbeLib/CcProbeLib.inf rename to OvmfPkg/Library/CcProbeLib/DxeCcProbeLib.inf index 5300c9ba2644..2fd0b4d46d10 100644 --- a/OvmfPkg/Library/CcProbeLib/CcProbeLib.inf +++ b/OvmfPkg/Library/CcProbeLib/DxeCcProbeLib.inf @@ -8,14 +8,15 @@ =20 [Defines] INF_VERSION =3D 0x00010005 - BASE_NAME =3D CcProbeLib + BASE_NAME =3D DxeCcProbeLib FILE_GUID =3D 05184ec9-abb0-4491-8584-e388639a7c48 MODULE_TYPE =3D BASE VERSION_STRING =3D 1.0 - LIBRARY_CLASS =3D CcProbeLib + LIBRARY_CLASS =3D CcProbeLib|DXE_CORE DXE_DRIVER DXE_RU= NTIME_DRIVER DXE_SMM_DRIVER UEFI_DRIVER UEFI_APPLICATION + CONSTRUCTOR =3D DxeCcProbeLibConstructor =20 [Sources] - CcProbeLib.c + DxeCcProbeLib.c =20 [Packages] MdePkg/MdePkg.dec diff --git a/OvmfPkg/OvmfPkgX64.dsc b/OvmfPkg/OvmfPkgX64.dsc index 6e68f60dc90f..2741f4d988b7 100644 --- a/OvmfPkg/OvmfPkgX64.dsc +++ b/OvmfPkg/OvmfPkgX64.dsc @@ -199,7 +199,7 @@ =20 !if $(SMM_REQUIRE) =3D=3D FALSE LockBoxLib|OvmfPkg/Library/LockBoxLib/LockBoxBaseLib.inf - CcProbeLib|OvmfPkg/Library/CcProbeLib/CcProbeLib.inf + CcProbeLib|OvmfPkg/Library/CcProbeLib/DxeCcProbeLib.inf !else CcProbeLib|MdePkg/Library/CcProbeLibNull/CcProbeLibNull.inf !endif @@ -287,6 +287,7 @@ !endif VmgExitLib|OvmfPkg/Library/VmgExitLib/SecVmgExitLib.inf MemEncryptSevLib|OvmfPkg/Library/BaseMemEncryptSevLib/SecMemEncryptSevLi= b.inf + CcProbeLib|OvmfPkg/Library/CcProbeLib/SecPeiCcProbeLib.inf =20 [LibraryClasses.common.PEI_CORE] HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf @@ -303,6 +304,7 @@ DebugLib|OvmfPkg/Library/PlatformDebugLibIoPort/PlatformDebugLibIoPort.i= nf !endif PeCoffLib|MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf + CcProbeLib|OvmfPkg/Library/CcProbeLib/SecPeiCcProbeLib.inf =20 [LibraryClasses.common.PEIM] HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf @@ -332,6 +334,7 @@ PlatformInitLib|OvmfPkg/Library/PlatformInitLib/PlatformInitLib.inf =20 MemEncryptSevLib|OvmfPkg/Library/BaseMemEncryptSevLib/PeiMemEncryptSevLi= b.inf + CcProbeLib|OvmfPkg/Library/CcProbeLib/SecPeiCcProbeLib.inf =20 [LibraryClasses.common.DXE_CORE] HobLib|MdePkg/Library/DxeCoreHobLib/DxeCoreHobLib.inf --=20 2.29.2.windows.2 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#92943): https://edk2.groups.io/g/devel/message/92943 Mute This Topic: https://groups.io/mt/93340307/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-