From nobody Mon Feb 9 10:57:27 2026 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+89542+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+89542+1787277+3901457@groups.io; dmarc=fail(p=none dis=none) header.from=intel.com ARC-Seal: i=1; a=rsa-sha256; t=1651761843; cv=none; d=zohomail.com; s=zohoarc; b=fugTD+JJLgA8qzjoL7k/QxKtivs00q1dBlq6xKbqcdz92Q39gySrag6psqyfMZaqf6IAvupHa0Ro6BTDtLnBHwL+SzljB+pRC7Lny1qkdfyCxpGzo8gdlrmAlSD3JMlLKa+A1+s/ul1qJVVvsZak6YM4gGI+ys7t5a0nEA+VFA8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1651761843; 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=LGWWEIQ2U83BcTQZeiT8MrPMwFJXGUbXlR/EcZYJcUs=; b=F62qTvuDw+0qNK9X0NUKLZkLuXOrps2jiEXpYsef+0Rc5ujzaBSKr1281ehUC4WMYlaM9N5vXDhlk2+THAerhp7Z1b4YqzHnKwviy1icnH3Dtzlow+0rSw4S4uty4rzIlVrHpeCoWXm0l3FuvDyLSPJkA4mjdcNdZ+JhFSkgA2U= 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+89542+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 1651761843201584.9910564821811; Thu, 5 May 2022 07:44:03 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id 9CC0YY1788612xhT32Hahmef; Thu, 05 May 2022 07:44:02 -0700 X-Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by mx.groups.io with SMTP id smtpd.web11.11878.1651761831263961075 for ; Thu, 05 May 2022 07:44:02 -0700 X-IronPort-AV: E=McAfee;i="6400,9594,10338"; a="255604448" X-IronPort-AV: E=Sophos;i="5.91,201,1647327600"; d="scan'208";a="255604448" X-Received: from orsmga007.jf.intel.com ([10.7.209.58]) by orsmga101.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 05 May 2022 07:43:53 -0700 X-IronPort-AV: E=Sophos;i="5.91,201,1647327600"; d="scan'208";a="563268937" X-Received: from mxu9-mobl1.ccr.corp.intel.com ([10.249.175.139]) by orsmga007-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 05 May 2022 07:43:50 -0700 From: "Min Xu" To: devel@edk2.groups.io Cc: Min M Xu , Eric Dong , Ray Ni , Brijesh Singh , Erdem Aktas , James Bottomley , Jiewen Yao , Tom Lendacky , Gerd Hoffmann Subject: [edk2-devel] [PATCH 6/6] OvmfPkg: Enable 2 different CpuMpPei and CpuDxe drivers Date: Thu, 5 May 2022 22:43:19 +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: 8UdfmIl75yt6Vsr97oGFzo0px1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1651761842; bh=H5Gpv6ddWi89C9IhCNPY9fx66IFkgn/EaEIRftSS5LA=; h=Cc:Date:From:Reply-To:Subject:To; b=ZH02DMEBB/pSbf8yXPMbtUqkF1oKuGqhSbnlsl8vHDQD0DJiXb+TE+Qevqx2lFlXk97 c+0L5klAMwLILah6bOSGkh0FX2Mx5o5595Gj6sIbNwOgvM1217lz0Vx+3sG9loYiWP+DF ByFoOdt1qh+5pQ5R0IaCB8PHHpzCrnYiPi4= X-ZohoMail-DKIM: pass (identity @groups.io) X-ZM-MESSAGEID: 1651761845109100005 Content-Type: text/plain; charset="utf-8" From: Min M Xu BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=3D3918 In OvmfPkgX64 we enable 2 different CpuMpPei and CpuDxe drivers. The difference between the drivers is the MpInitLib or MpInitLibUp. This is acomplished by adding a MpInitLibDepLib. In IntelTdxX64 we enable 2 versions of CpuDxe drivers. It is because PEI is skipped in IntelTdxX64. Cc: Eric Dong Cc: Ray Ni Cc: Brijesh Singh Cc: Erdem Aktas Cc: James Bottomley Cc: Jiewen Yao Cc: Tom Lendacky Cc: Gerd Hoffmann Signed-off-by: Min Xu --- OvmfPkg/IntelTdx/IntelTdxX64.dsc | 23 +++++++++++++++- OvmfPkg/IntelTdx/IntelTdxX64.fdf | 5 +++- OvmfPkg/OvmfPkgX64.dsc | 45 ++++++++++++++++++++++++++++++-- OvmfPkg/OvmfPkgX64.fdf | 8 ++++-- 4 files changed, 75 insertions(+), 6 deletions(-) diff --git a/OvmfPkg/IntelTdx/IntelTdxX64.dsc b/OvmfPkg/IntelTdx/IntelTdxX6= 4.dsc index 73a6c30096a8..e81570d57174 100644 --- a/OvmfPkg/IntelTdx/IntelTdxX64.dsc +++ b/OvmfPkg/IntelTdx/IntelTdxX64.dsc @@ -57,6 +57,9 @@ !endif !endif =20 +DEFINE MP_CPU_DXE_GUID =3D 2d73044a-1df3-415d-b054-17fe05765c3c +DEFINE UP_CPU_DXE_GUID =3D 6490f1c5-ebcc-4665-8892-0075b9bb49b7 + [BuildOptions] GCC:RELEASE_*_*_CC_FLAGS =3D -DMDEPKG_NDEBUG INTEL:RELEASE_*_*_CC_FLAGS =3D /D MDEPKG_NDEBUG @@ -550,7 +553,25 @@ =20 MdeModulePkg/Universal/EbcDxe/EbcDxe.inf UefiCpuPkg/CpuIo2Dxe/CpuIo2Dxe.inf - UefiCpuPkg/CpuDxe/CpuDxe.inf + + UefiCpuPkg/CpuDxe/CpuDxe.inf { + + FILE_GUID =3D $(MP_CPU_DXE_GUID) + + + MpInitLib|UefiCpuPkg/Library/MpInitLib/DxeMpInitLib.inf + NULL|OvmfPkg/Library/MpInitLibDepLib/DxeMpInitLibMpDepLib.inf + } + + UefiCpuPkg/CpuDxe/CpuDxe.inf { + + FILE_GUID =3D $(UP_CPU_DXE_GUID) + + + MpInitLib|UefiCpuPkg/Library/MpInitLibUp/MpInitLibUp.inf + NULL|OvmfPkg/Library/MpInitLibDepLib/DxeMpInitLibUpDepLib.inf + } + OvmfPkg/LocalApicTimerDxe/LocalApicTimerDxe.inf OvmfPkg/IncompatiblePciDeviceSupportDxe/IncompatiblePciDeviceSupport.inf OvmfPkg/PciHotPlugInitDxe/PciHotPlugInit.inf diff --git a/OvmfPkg/IntelTdx/IntelTdxX64.fdf b/OvmfPkg/IntelTdx/IntelTdxX6= 4.fdf index 9e290ea78f61..bedd50f69b39 100644 --- a/OvmfPkg/IntelTdx/IntelTdxX64.fdf +++ b/OvmfPkg/IntelTdx/IntelTdxX64.fdf @@ -185,7 +185,10 @@ INF MdeModulePkg/Core/RuntimeDxe/RuntimeDxe.inf INF MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf INF MdeModulePkg/Universal/EbcDxe/EbcDxe.inf INF UefiCpuPkg/CpuIo2Dxe/CpuIo2Dxe.inf -INF UefiCpuPkg/CpuDxe/CpuDxe.inf + +INF FILE_GUID =3D $(MP_CPU_DXE_GUID) UefiCpuPkg/CpuDxe/CpuDxe.inf +INF FILE_GUID =3D $(UP_CPU_DXE_GUID) UefiCpuPkg/CpuDxe/CpuDxe.inf + INF OvmfPkg/LocalApicTimerDxe/LocalApicTimerDxe.inf INF OvmfPkg/IncompatiblePciDeviceSupportDxe/IncompatiblePciDeviceSupport.= inf INF OvmfPkg/PciHotPlugInitDxe/PciHotPlugInit.inf diff --git a/OvmfPkg/OvmfPkgX64.dsc b/OvmfPkg/OvmfPkgX64.dsc index 45ffa2dbe35f..e86b3f320278 100644 --- a/OvmfPkg/OvmfPkgX64.dsc +++ b/OvmfPkg/OvmfPkgX64.dsc @@ -72,6 +72,12 @@ !endif !endif =20 +DEFINE MP_CPU_PEI_GUID =3D 3dd59561-e4ea-4846-b7c5-c7b74a061190 +DEFINE UP_CPU_PEI_GUID =3D 280251c4-1d09-4035-9062-839acb5f18c1 + +DEFINE MP_CPU_DXE_GUID =3D 2d73044a-1df3-415d-b054-17fe05765c3c +DEFINE UP_CPU_DXE_GUID =3D 6490f1c5-ebcc-4665-8892-0075b9bb49b7 + [BuildOptions] GCC:RELEASE_*_*_CC_FLAGS =3D -DMDEPKG_NDEBUG INTEL:RELEASE_*_*_CC_FLAGS =3D /D MDEPKG_NDEBUG @@ -728,7 +734,24 @@ MdeModulePkg/Universal/Variable/Pei/VariablePei.inf OvmfPkg/SmmAccess/SmmAccessPei.inf !endif - UefiCpuPkg/CpuMpPei/CpuMpPei.inf + + UefiCpuPkg/CpuMpPei/CpuMpPei.inf { + + FILE_GUID =3D $(MP_CPU_PEI_GUID) + + + MpInitLib|UefiCpuPkg/Library/MpInitLib/PeiMpInitLib.inf + NULL|OvmfPkg/Library/MpInitLibDepLib/PeiMpInitLibMpDepLib.inf + } + + UefiCpuPkg/CpuMpPei/CpuMpPei.inf { + + FILE_GUID =3D $(UP_CPU_PEI_GUID) + + + MpInitLib|UefiCpuPkg/Library/MpInitLibUp/MpInitLibUp.inf + NULL|OvmfPkg/Library/MpInitLibDepLib/PeiMpInitLibUpDepLib.inf + } =20 !include OvmfPkg/OvmfTpmComponentsPei.dsc.inc =20 @@ -760,7 +783,25 @@ =20 MdeModulePkg/Universal/EbcDxe/EbcDxe.inf UefiCpuPkg/CpuIo2Dxe/CpuIo2Dxe.inf - UefiCpuPkg/CpuDxe/CpuDxe.inf + + UefiCpuPkg/CpuDxe/CpuDxe.inf { + + FILE_GUID =3D $(MP_CPU_DXE_GUID) + + + MpInitLib|UefiCpuPkg/Library/MpInitLib/DxeMpInitLib.inf + NULL|OvmfPkg/Library/MpInitLibDepLib/DxeMpInitLibMpDepLib.inf + } + + UefiCpuPkg/CpuDxe/CpuDxe.inf { + + FILE_GUID =3D $(UP_CPU_DXE_GUID) + + + MpInitLib|UefiCpuPkg/Library/MpInitLibUp/MpInitLibUp.inf + NULL|OvmfPkg/Library/MpInitLibDepLib/DxeMpInitLibUpDepLib.inf + } + !ifdef $(CSM_ENABLE) OvmfPkg/8259InterruptControllerDxe/8259.inf OvmfPkg/8254TimerDxe/8254Timer.inf diff --git a/OvmfPkg/OvmfPkgX64.fdf b/OvmfPkg/OvmfPkgX64.fdf index 6e72cdf3453e..2b8225c8fcd2 100644 --- a/OvmfPkg/OvmfPkgX64.fdf +++ b/OvmfPkg/OvmfPkgX64.fdf @@ -184,7 +184,8 @@ INF MdeModulePkg/Universal/FaultTolerantWritePei/Fault= TolerantWritePei.inf INF MdeModulePkg/Universal/Variable/Pei/VariablePei.inf INF OvmfPkg/SmmAccess/SmmAccessPei.inf !endif -INF UefiCpuPkg/CpuMpPei/CpuMpPei.inf +INF FILE_GUID =3D $(MP_CPU_PEI_GUID) UefiCpuPkg/CpuMpPei/CpuMpPei.inf +INF FILE_GUID =3D $(UP_CPU_PEI_GUID) UefiCpuPkg/CpuMpPei/CpuMpPei.inf =20 !include OvmfPkg/OvmfTpmPei.fdf.inc =20 @@ -239,7 +240,10 @@ INF MdeModulePkg/Core/RuntimeDxe/RuntimeDxe.inf INF MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf INF MdeModulePkg/Universal/EbcDxe/EbcDxe.inf INF UefiCpuPkg/CpuIo2Dxe/CpuIo2Dxe.inf -INF UefiCpuPkg/CpuDxe/CpuDxe.inf + +INF FILE_GUID =3D $(MP_CPU_DXE_GUID) UefiCpuPkg/CpuDxe/CpuDxe.inf +INF FILE_GUID =3D $(UP_CPU_DXE_GUID) UefiCpuPkg/CpuDxe/CpuDxe.inf + !ifdef $(CSM_ENABLE) INF OvmfPkg/8259InterruptControllerDxe/8259.inf INF OvmfPkg/8254TimerDxe/8254Timer.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 (#89542): https://edk2.groups.io/g/devel/message/89542 Mute This Topic: https://groups.io/mt/90912398/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-