From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mx0b-002e3701.pphosted.com (mx0b-002e3701.pphosted.com [148.163.143.35]) by mx.groups.io with SMTP id smtpd.web08.1365.1650351009022152802 for ; Mon, 18 Apr 2022 23:50:09 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@hpe.com header.s=pps0720 header.b=EetVTYRr; spf=permerror, err=parse error for token &{10 18 %{ir}.%{v}.%{d}.spf.has.pphosted.com}: invalid domain name (domain: hpe.com, ip: 148.163.143.35, mailfrom: prvs=010855dd5c=abner.chang@hpe.com) Received: from pps.filterd (m0134423.ppops.net [127.0.0.1]) by mx0b-002e3701.pphosted.com (8.16.1.2/8.16.1.2) with ESMTP id 23INVxEZ013801 for ; Tue, 19 Apr 2022 06:50:08 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=hpe.com; h=from : to : subject : date : message-id : references : in-reply-to : content-type : mime-version; s=pps0720; bh=0+0iEPMFLcpe9Chy64LbW4j2J5uziD4BAbQ5RD9WfEk=; b=EetVTYRr8LsII7Ua821SrgEDflDAjdLozUlc8ljNWJQrQ0n50tEu2V2yCItHiucxvh0t qYVeBvLB4FkaUs+gHwyQg7Rzz2a9kyZHSOMiuXP1sECM8PIirbNBz6vVTwdFhhNhZtRd dUF79zOP/gSVod/JfWOoOCueipt41W5iTphSBWowmDgIPVw3OqNvlnvY6pZ66Ov9hGJK gCf4iqhUkG6H763oXXxKFtsdEGekbF1vv/xPdikcsHlt2efZLqj4nLHR+kWq+oBDJAsU XkcxeFqjEZO90OOPsGSCmkur85eFPuykeVCnPIVLDiX2PVNPCSYy8i06vjdsmJ7rZ5Hd 1g== Received: from p1lg14880.it.hpe.com (p1lg14880.it.hpe.com [16.230.97.201]) by mx0b-002e3701.pphosted.com (PPS) with ESMTPS id 3fhd0s5fy9-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Tue, 19 Apr 2022 06:50:07 +0000 Received: from p1wg14924.americas.hpqcorp.net (unknown [10.119.18.113]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by p1lg14880.it.hpe.com (Postfix) with ESMTPS id 74D2580034D for ; Tue, 19 Apr 2022 06:50:06 +0000 (UTC) Received: from p1wg14923.americas.hpqcorp.net (10.119.18.111) by p1wg14924.americas.hpqcorp.net (10.119.18.113) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.15; Mon, 18 Apr 2022 18:50:06 -1200 Received: from p1wg14920.americas.hpqcorp.net (16.230.19.123) by p1wg14923.americas.hpqcorp.net (10.119.18.111) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.15 via Frontend Transport; Mon, 18 Apr 2022 18:50:06 -1200 Received: from NAM10-DM6-obe.outbound.protection.outlook.com (192.58.206.38) by edge.it.hpe.com (16.230.19.123) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.15; Mon, 18 Apr 2022 18:50:05 -1200 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=FgKfGE0aJYNeGF+Hh7EpfHezOqm1wLG8GgLYV7v3w8xsoHzTtfLW7VJP3BT6pDUBpgzk5o5IrtaaRQuIA9BlsMG95t1EGweksQc/aFhwgUtDWUeH78sXNofQlDOBCgjoiUHWV6HaVoGiaZDETMzp0eGPvDNldc96fncfSqBEetQpYtmVcfLHbck/7G8fOaZAfg4SQNLj7jzENqSY7kG90EhOc4p7SEq74vQdRGOsiu5eUD9lNRX18oaY1Cj1r77kxXwI62+RXvuIxhe0Nnal3jX9Lww0hllNNS4lN2Jm8/QrnrlFzEeogfFGgkziOeNcvbnszIv/Vznv0YgzQovqqw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=dNVLj0ZfHgUtJVGNAmi+81EvyYfAWFPj/ME9hJ276G4=; b=Mz152tr7B5NELzcvQyp4/55H+Ce/cMS+LtJ2W3ymBrYaAm/wox0tT9lhymG1VuXA3VEGT0SfYHgWzNGnCH8dyNT/U2Sy22hepymEeM1bfPkb1fua6V9VWOfdtTxPihkDMp8EY6+3ejumffAuq6nlXhFJV8SHcL8BryjbMvh8HED0sAjGlexBQK+M7ZoPW07CW1DNWPodIjM7y9ylw0zQQNT1S9/iUFG+/SQ64Y+L8sSIM5dA2klnuDzixfzDMS9hT4ZMgkF8EIJNHiJCTp5gvUN6Je9lUZSERaKgd6JXoEHru/OYEsaxKJ10XattiONZg/OKtd+e1a8brbLD4thlGQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=hpe.com; dmarc=pass action=none header.from=hpe.com; dkim=pass header.d=hpe.com; arc=none Received: from PH0PR84MB1647.NAMPRD84.PROD.OUTLOOK.COM (2603:10b6:510:173::6) by DM4PR84MB1495.NAMPRD84.PROD.OUTLOOK.COM (2603:10b6:8:4a::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5186.13; Tue, 19 Apr 2022 06:50:03 +0000 Received: from PH0PR84MB1647.NAMPRD84.PROD.OUTLOOK.COM ([fe80::cc95:6a61:fb46:aed1]) by PH0PR84MB1647.NAMPRD84.PROD.OUTLOOK.COM ([fe80::cc95:6a61:fb46:aed1%9]) with mapi id 15.20.5164.025; Tue, 19 Apr 2022 06:50:03 +0000 From: "Abner Chang" To: "devel@edk2.groups.io" , "yu.pu@intel.com" , "Chang, Abner (HPS SW/FW Technologist)" Subject: Re: [edk2-devel] [PATCH v1 00/15] Merge UefiCpuLib to CpuLib Thread-Topic: [edk2-devel] [PATCH v1 00/15] Merge UefiCpuLib to CpuLib Thread-Index: AQHYQ6d/v8XFMUhMpUGXg2ER67V/eazbFZjggBvV9cA= Date: Tue, 19 Apr 2022 06:50:03 +0000 Message-ID: References: <20220329063703.549-1-yu.pu@intel.com> <16E1C9BAAD925E7E.30116@groups.io> In-Reply-To: <16E1C9BAAD925E7E.30116@groups.io> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: suggested_attachment_session_id: 58516ad2-af98-7ae1-78bb-ad876ba985fb x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 26fb6227-b75e-407d-c15f-08da21d0d51a x-ms-traffictypediagnostic: DM4PR84MB1495:EE_ x-microsoft-antispam-prvs: x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: qjr4KONh1ZF6ua09sZy2ZMX5flyrp45nrBCFWbnJ5cJJHSSQ14wK9E2W+1On5fnU3Z5apQFBK8H1ME/jumUJ67ySIWhWadLXnDMW8y7v1BEsJj3GWtmdatS3Sry1n8F73A596zcyg0uBkG+gUxPxzLHM14PrLQ4YQO10UasXb8XgdXIgqiGwOl9XUkUZYrodg8VpcM/Ecr0UorcFKmy0Q9ypCQjeFLzE6oyoF6SfFLfnMmHyIcvFB7025v7whlJikMJDCZ6rO0JRpKlHRRlR7GxDEghu+GDUs7LLO1gqYZyVypwUIETSejPCmpB7S1acwmVMv9OHFbSBzdNqKyfMC7etHEIrKjaVEcLREWyFqPJTkbyCxxHRXevBbLizuZY9TZ0I36ukDzn5M0CJx4GXGIyd1Q6TLBtA2pNCk5V0wkhmvhCEVhVtlnQ5cUW86AH8CEBZUeZbzxPNyfC+7UnwAo3IT+p8L1+aIv2Iu6BlLyafr4Pq6dV6m645LYPqF7GPZnV/GmKBfSGZl2xZKvBdDnxJMGkllT0lJEhSQgyKCfMrhFUOwBaFEBOJCJNm95ezkW0UUYmNlLD4kiYJTTqbo02iB6j6wZuaM9RrysMDaf2f2eGYBwQE/s8O/GBtdAJVkQMwpfEIgHFzs+nKD0QnQAfe14oTlhRNqBL60u/sTgOLRdXnqwhDI9NwfJqtXrFCqTHZnKGmjMHeN6u77cIBEKkkCEkuzCK9+pcKjJ1+rMSvtHjcY7DKRs4ZBbDIbqgbXx22WC2uh4t9wg8HXdK7a3zMT/lq5PnfWuwOYhP59fSqnRzTLxdyRamupfwaxAY8MftFWOZdGe32AxFJr2W7EA== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PH0PR84MB1647.NAMPRD84.PROD.OUTLOOK.COM;PTR:;CAT:NONE;SFS:(13230001)(366004)(26005)(6506007)(2906002)(55236004)(53546011)(7696005)(66476007)(64756008)(76116006)(166002)(110136005)(66556008)(316002)(66946007)(91956017)(66446008)(8676002)(19627405001)(33656002)(71200400001)(82960400001)(122000001)(8936002)(52536014)(55016003)(38070700005)(38100700002)(5660300002)(86362001)(83380400001)(186003)(9686003)(966005)(508600001);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?yCwxNrFqJyxRYH3SBLwt/N5YEHPPrxWy+gyA5oIFgG7duhdqwp1iYfzgpJyR?= =?us-ascii?Q?RkEG45tx8VUxU8JKTt3ASGGUzK7C6mCXEizw500Bj4QXF8VCK/gO9OCIMMpc?= =?us-ascii?Q?08jC+aUuzwjsw8wUyZbbwag8MekCon3nOgP5o/acaqA0+fnmmRgRLFdDb4G4?= =?us-ascii?Q?ItLmcQOiT8o4hWwt9+g7X9jYFkcPiBtqS0fUKKZtk8vFxDCwYpbaKkBESa/v?= =?us-ascii?Q?mt/TWjOKHccN73IVDQdlGMqW/VECnZuRUubZHAW1GL5TLWId0ZnTGUk4L4so?= =?us-ascii?Q?5/s75KWl860N6d13gIOUHTYT5u452/Jkah24x755tH8+h3atTBpl1utqut6Q?= =?us-ascii?Q?9+CjjAWGuwbbJ3nafLkQC8zDtXwDIujEKLGaIIZTgtwj3XJpwmqr9ebskdJK?= =?us-ascii?Q?gbGb5AoS78dDWdHPQaQjLbBAr6lZJ/j0QHhYs4/i1Zsesdo4UEb+1XonwOma?= =?us-ascii?Q?QcaWG/oNZJOu+DXVf0+s3ng1QWlf/r07ezuEqAoJHkwO4Mz9Fn8UM/f4ms36?= =?us-ascii?Q?e2JtCgXuVYG9LjPakFi+z+0GIfgmTN7SF3kDDnATeKZpcd1W8UxWpJlUo9gn?= =?us-ascii?Q?SHCsSOVEnBm1G8Yy8Qxu05ZE5LvCE9ZcJTlXnULh6/Ak8l3RVCSOo89ydqUi?= =?us-ascii?Q?AicnRSt5ilDmSPnH7rDNQfaAy3YZa8DneW+7tbne69pgb7oVHEW4xteeSCA/?= =?us-ascii?Q?RFA0Pv3VX44nRRlwkclIQ61oqL0GN2WE1eRolBvpNt35rxG+BdGdszRWk3ZX?= =?us-ascii?Q?rLQ88JWCbQKgnpmeeRTAPqy6cKJvFL7Aq4644XwZP1Lfjpw1AVjdhOBB4K2/?= =?us-ascii?Q?RfhlvPCMlLKDqSJsrIkJVjyyMNzFaG7xY3SfJx3Ug9aYJIpYM8IihvhUjR6z?= =?us-ascii?Q?7m8BpvO1077fwkA//Z/7T8IMf125bWHpEE5nVYEatfA31FvrwNGAefUBlV7q?= =?us-ascii?Q?U6RJfzvbkLwqQjq7fGcEmIKhh9MUuTxPYMVuD8YyomrbJWQhl29Twp7fo16J?= =?us-ascii?Q?nHjoUmH9JBLAtfl3JRCP4/D3M4Uga5lIbBbIRTQnbp/+iPVRsMrFequ+DVS7?= =?us-ascii?Q?NN50TCn+ngakaxPjE75+kH5JhcbjyFWbny85gJwSQjVVXdmmoqbav35uY/lQ?= =?us-ascii?Q?O9YNHE300eatls8S8y8SuR+6g3C9l9+UBHmLdUXZYCRz1mcbAFlVcGSNXIvG?= =?us-ascii?Q?0edIHqXb6QMytkP2ni4WiLDwINbTwYGmN2R5yw11g/d7wFEPrlqAGwKVnakO?= =?us-ascii?Q?XqGaMA6X2YnVWthG3d8aC1srUwDSL6+YN+zw10jz217Y586yu80YE32JiFSv?= =?us-ascii?Q?aa90EqqfqIbjWJ05pm+GiyhXw+ETe/rfPJjM7YOSCo9QNK+j+/2t0xcwhs2q?= =?us-ascii?Q?mMkTeVEqAft9tjW5iVJMaZcJcidAVRHKQzwfN2Gf+8w/l3hddhQZ/qYcQgsz?= =?us-ascii?Q?U7VXYX1XdSc3w3T9IGWYcgKdVs2BXvpW6kGG8iH1xUVuqUPaqhRmRjqFQQ7H?= =?us-ascii?Q?awKSGonwYueSaSJBAdKhk5LdUkJN9XyqHPOae8TGuGyev6GZUwqviAa+/A2a?= =?us-ascii?Q?clLPD23XBu6Y27vtUxC/rTiQT/lsWkUVNKgbcfkpiTg2uAOt73svqgDooiGz?= =?us-ascii?Q?TAMAMgBVZQuAWGO8KmbsrrkFgFXwiniKAgHv7lq35/r9GDV1pyDkL0ClJPhM?= =?us-ascii?Q?THqiOzI2FfsJKA00//XvBXEFN2QhzWohQ/rY/svAxXBFgEqfN2ZVLDE93wiW?= =?us-ascii?Q?5LKMRswh0w=3D=3D?= X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: PH0PR84MB1647.NAMPRD84.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-Network-Message-Id: 26fb6227-b75e-407d-c15f-08da21d0d51a X-MS-Exchange-CrossTenant-originalarrivaltime: 19 Apr 2022 06:50:03.7467 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 105b2061-b669-4b31-92ac-24d304d195dc X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: R8CvZrX3E7Jt1j+v5h82f9wZoGRKNAQz3b2WQChMRp9tCym73epIsmYIq+0PGHDc+Ff0baqoWFHXeJQWDJxEuw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR84MB1495 X-OriginatorOrg: hpe.com X-Proofpoint-GUID: tDpvgh8l_2VVJwOeF3WsggPmjvXbPtmF X-Proofpoint-ORIG-GUID: tDpvgh8l_2VVJwOeF3WsggPmjvXbPtmF X-Proofpoint-UnRewURL: 12 URL's were un-rewritten MIME-Version: 1.0 X-HPE-SCL: -1 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.205,Aquarius:18.0.858,Hydra:6.0.486,FMLib:17.11.64.514 definitions=2022-04-19_02,2022-04-15_01,2022-02-23_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 impostorscore=0 malwarescore=0 clxscore=1015 mlxlogscore=306 suspectscore=0 adultscore=0 spamscore=0 lowpriorityscore=0 phishscore=0 bulkscore=0 mlxscore=0 priorityscore=1501 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2202240000 definitions=main-2204190036 Content-Language: en-US Content-Type: multipart/alternative; boundary="_000_PH0PR84MB164796A6F432FB784633D562FFF29PH0PR84MB1647NAMP_" --_000_PH0PR84MB164796A6F432FB784633D562FFF29PH0PR84MB1647NAMP_ Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Hi Pu, When would you expect having CpuLib merged to edk2 mainstream? Regards, Abner ________________________________ From: devel@edk2.groups.io on behalf of Abner Chang = Sent: Friday, April 1, 2022 9:45 PM To: devel@edk2.groups.io ; yu.pu@intel.com Subject: Re: [edk2-devel] [PATCH v1 00/15] Merge UefiCpuLib to CpuLib RISC-V port will follow this implementation. Acked-by: Abner Chang > -----Original Message----- > From: devel@edk2.groups.io On Behalf Of Yu Pu > Sent: Tuesday, March 29, 2022 2:37 PM > To: devel@edk2.groups.io > Cc: Yu Pu > Subject: [edk2-devel] [PATCH v1 00/15] Merge UefiCpuLib to CpuLib > > REF:INVALID URI REMOVED. > cgi?id=3D3394__;!!NpxR!xX2rZhlg2fzyUFxuyOaXIdXyQT_5yKUpj_ImUmTUQvQ > cy3zCD4VRcBtL-uHKGxM$ > > Today lots of duplicated code call CPUID and calculates the address > mask. Adding an API named GetPhysicalAddressBits in UefiCpuLib can > solve this problem, but at the same time cause MdeModulePkg depend > on UefiCpuPkg which does not meet the design spec. So merge UefiCpuLib > to CpuLib is a good way to sovle these problems. To minimize the impact, > this operation is divided into four steps. > > Yu Pu (15): > IntelFsp2Pkg: Add CpuLib to module INFs that depend on UefiCpuLib > IntelFsp2WrapperPkg: Add CpuLib to module INFs that depend on > UefiCpuLib. > MdePkg: Add CpuLib to module INFs that depend on UefiCpuLib. > OvmfPkg: Add CpuLib to module INFs that depend on UefiCpuLib. > UefiCpuPkg: Add CpuLib to module INFs that depend on UefiCpuLib. > UefiPayloadPkg: Add CpuLib to module INFs that depend on UefiCpuLib. > MdePkg: Move API and implementation from UefiCpuLib to CpuLib > UefiCpuPkg: Move API and implementation from UefiCpuLib to CpuLib > IntelFsp2Pkg: Remove UefiCpuLib from module INFs. > OvmfPkg: Remove UefiCpuLib from module INFs. > PcAtChipsetPkg: Remove UefiCpuLib from module INFs. > SourceLevelDebugPkg: Remove UefiCpuLib from module INFs. > UefiCpuPkg: Remove UefiCpuLib from module INFs. > UefiPayloadPkg: Remove UefiCpuLib from module INFs. > UefiCpuLib: Remove UefiCpuLib. > > MdePkg/Library/BaseCpuLib/X86BaseCpuLib.c = | 122 > ++++++++++++++++++++ > OvmfPkg/Sec/SecMain.c = | 2 +- > UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib.c = | > 81 ------------- > UefiCpuPkg/Library/BaseXApicLib/BaseXApicLib.c = | 2 > +- > UefiCpuPkg/Library/BaseXApicX2ApicLib/BaseXApicX2ApicLib.c > | 2 +- > IntelFsp2Pkg/FspSecCore/FspSecCoreM.inf = | 2 +- > IntelFsp2Pkg/FspSecCore/SecMain.h = | 2 +- > IntelFsp2Pkg/IntelFsp2Pkg.dsc = | 1 - > IntelFsp2Pkg/Tools/Tests/QemuFspPkg.dsc = | 1 - > IntelFsp2WrapperPkg/FspmWrapperPeim/FspmWrapperPeim.inf > | 2 +- > IntelFsp2WrapperPkg/FspsWrapperPeim/FspsWrapperPeim.inf > | 2 +- > IntelFsp2WrapperPkg/IntelFsp2WrapperPkg.dsc = | 1 - > MdePkg/Include/Library/CpuLib.h = | 65 > +++++++++++ > MdePkg/Library/BaseCpuLib/BaseCpuLib.inf = | 6 + > {UefiCpuPkg/Library/BaseUefiCpuLib =3D> > MdePkg/Library/BaseCpuLib}/Ia32/InitializeFpu.nasm | 0 > {UefiCpuPkg/Library/BaseUefiCpuLib =3D> > MdePkg/Library/BaseCpuLib}/X64/InitializeFpu.nasm | 0 > MdePkg/MdeLibs.dsc.inc = | 1 + > OvmfPkg/AmdSev/AmdSevX64.dsc = | 1 - > OvmfPkg/Bhyve/BhyveX64.dsc = | 1 - > OvmfPkg/CloudHv/CloudHvX64.dsc = | 1 - > OvmfPkg/Microvm/MicrovmX64.dsc = | 1 - > OvmfPkg/OvmfPkgIa32.dsc = | 1 - > OvmfPkg/OvmfPkgIa32X64.dsc = | 1 - > OvmfPkg/OvmfPkgX64.dsc = | 1 - > OvmfPkg/OvmfXen.dsc = | 1 - > OvmfPkg/Sec/SecMain.inf = | 2 +- > PcAtChipsetPkg/PcAtChipsetPkg.dsc = | 1 - > SourceLevelDebugPkg/SourceLevelDebugPkg.dsc = | 1 > - > UefiCpuPkg/CpuDxe/CpuDxe.h = | 1 - > UefiCpuPkg/CpuDxe/CpuDxe.inf = | 1 - > UefiCpuPkg/Include/Library/UefiCpuLib.h = | 65 ------ > ----- > UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib.inf = | > 41 ------- > UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib.uni = | > 16 --- > UefiCpuPkg/Library/BaseXApicLib/BaseXApicLib.inf = | 2 > +- > UefiCpuPkg/Library/BaseXApicX2ApicLib/BaseXApicX2ApicLib.inf > | 2 +- > UefiCpuPkg/Library/MpInitLib/DxeMpInitLib.inf = | 1 - > UefiCpuPkg/Library/MpInitLib/MpLib.h = | 1 - > UefiCpuPkg/Library/MpInitLib/PeiMpInitLib.inf = | 1 - > UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.h > | 2 +- > UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.inf > | 1 - > UefiCpuPkg/PiSmmCpuDxeSmm/SmmProfileInternal.h > | 1 - > UefiCpuPkg/SecCore/SecCore.inf = | 2 +- > UefiCpuPkg/SecCore/SecCoreNative.inf = | 2 +- > UefiCpuPkg/SecCore/SecMain.h = | 2 +- > UefiCpuPkg/UefiCpuPkg.dec = | 5 - > UefiCpuPkg/UefiCpuPkg.dsc = | 2 - > UefiPayloadPkg/UefiPayloadEntry/UefiPayloadEntry.h = | > 2 +- > UefiPayloadPkg/UefiPayloadEntry/UefiPayloadEntry.inf = | > 2 +- > UefiPayloadPkg/UefiPayloadEntry/UniversalPayloadEntry.inf > | 2 +- > UefiPayloadPkg/UefiPayloadPkg.dsc = | 1 - > 50 files changed, 211 insertions(+), 248 deletions(-) > create mode 100644 MdePkg/Library/BaseCpuLib/X86BaseCpuLib.c > delete mode 100644 UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib.c > rename {UefiCpuPkg/Library/BaseUefiCpuLib =3D> > MdePkg/Library/BaseCpuLib}/Ia32/InitializeFpu.nasm (100%) > rename {UefiCpuPkg/Library/BaseUefiCpuLib =3D> > MdePkg/Library/BaseCpuLib}/X64/InitializeFpu.nasm (100%) > delete mode 100644 UefiCpuPkg/Include/Library/UefiCpuLib.h > delete mode 100644 > UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib.inf > delete mode 100644 > UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib.uni > > -- > 2.30.0.windows.2 > > > > > --_000_PH0PR84MB164796A6F432FB784633D562FFF29PH0PR84MB1647NAMP_ Content-Type: text/html; charset="us-ascii" Content-Transfer-Encoding: quoted-printable
Hi Pu,
When would you expect having CpuLib merged to edk2 mainstream? 
Regards,
Abner

From: devel@edk2.groups.io = <devel@edk2.groups.io> on behalf of Abner Chang <abner.chang@hpe.c= om>
Sent: Friday, April 1, 2022 9:45 PM
To: devel@edk2.groups.io <devel@edk2.groups.io>; yu.pu@intel.c= om <yu.pu@intel.com>
Subject: Re: [edk2-devel] [PATCH v1 00/15] Merge UefiCpuLib to CpuLi= b
 
RISC-V port will follow this implementation.

Acked-by: Abner Chang <abner.chang@hpe.com>

> -----Original Message-----
> From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of Y= u Pu
> Sent: Tuesday, March 29, 2022 2:37 PM
> To: devel@edk2.groups.io
> Cc: Yu Pu <yu.pu@intel.com>
> Subject: [edk2-devel] [PATCH v1 00/15] Merge UefiCpuLib to CpuLib
>
> REF:INVALID URI REMOVED.
> cgi?id=3D3394__;!!NpxR!xX2rZhlg2fzyUFxuyOaXIdXyQT_5yKUpj_ImUmTUQvQ
> cy3zCD4VRcBtL-uHKGxM$
>
> Today lots of duplicated code call CPUID and calculates the address > mask. Adding an API named GetPhysicalAddressBits in UefiCpuLib can
> solve this problem, but at the same time cause MdeModulePkg depend
> on UefiCpuPkg which does not meet the design spec. So merge UefiCpuLib=
> to CpuLib is a good way to sovle these problems. To minimize the impac= t,
> this operation is divided into four steps.
>
> Yu Pu (15):
>   IntelFsp2Pkg: Add CpuLib to module INFs that depend on Uef= iCpuLib
>   IntelFsp2WrapperPkg: Add CpuLib to module INFs that depend= on
>     UefiCpuLib.
>   MdePkg: Add CpuLib to module INFs that depend on UefiCpuLi= b.
>   OvmfPkg: Add CpuLib to module INFs that depend on  Ue= fiCpuLib.
>   UefiCpuPkg: Add CpuLib to module INFs that depend on = UefiCpuLib.
>   UefiPayloadPkg: Add CpuLib to module INFs that  depen= d on UefiCpuLib.
>   MdePkg: Move API and implementation from UefiCpuLib to Cpu= Lib
>   UefiCpuPkg: Move API and implementation from UefiCpuLib to= CpuLib
>   IntelFsp2Pkg: Remove UefiCpuLib from module INFs.
>   OvmfPkg: Remove UefiCpuLib from module INFs.
>   PcAtChipsetPkg: Remove UefiCpuLib from module INFs.
>   SourceLevelDebugPkg: Remove UefiCpuLib from module  I= NFs.
>   UefiCpuPkg: Remove UefiCpuLib from module INFs.
>   UefiPayloadPkg: Remove UefiCpuLib from module INFs.
>   UefiCpuLib: Remove UefiCpuLib.
>
>  MdePkg/Library/BaseCpuLib/X86BaseCpuLib.c    = ;            &n= bsp;            = ;            &n= bsp;      | 122
> ++++++++++++++++++++
>  OvmfPkg/Sec/SecMain.c       &= nbsp;           &nbs= p;            &= nbsp;           &nbs= p;            &= nbsp;          |   2= +-
>  UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib.c  &n= bsp;            = ;            &n= bsp;           |
> 81 -------------
>  UefiCpuPkg/Library/BaseXApicLib/BaseXApicLib.c   =             &nb= sp;            =             &nb= sp;  |   2
> +-
>  UefiCpuPkg/Library/BaseXApicX2ApicLib/BaseXApicX2ApicLib.c
> |   2 +-
>  IntelFsp2Pkg/FspSecCore/FspSecCoreM.inf    &= nbsp;           &nbs= p;            &= nbsp;           &nbs= p;        |   2 +-
>  IntelFsp2Pkg/FspSecCore/SecMain.h     &= nbsp;           &nbs= p;            &= nbsp;           &nbs= p;             = |   2 +-
>  IntelFsp2Pkg/IntelFsp2Pkg.dsc      = ;            &n= bsp;            = ;            &n= bsp;            = ;    |   1 -
>  IntelFsp2Pkg/Tools/Tests/QemuFspPkg.dsc    &= nbsp;           &nbs= p;            &= nbsp;           &nbs= p;        |   1 -
>  IntelFsp2WrapperPkg/FspmWrapperPeim/FspmWrapperPeim.inf
> |   2 +-
>  IntelFsp2WrapperPkg/FspsWrapperPeim/FspsWrapperPeim.inf
> |   2 +-
>  IntelFsp2WrapperPkg/IntelFsp2WrapperPkg.dsc   &nb= sp;            =             &nb= sp;            =      |   1 -
>  MdePkg/Include/Library/CpuLib.h     &nb= sp;            =             &nb= sp;            =             &nb= sp;  |  65
> +++++++++++
>  MdePkg/Library/BaseCpuLib/BaseCpuLib.inf    =             &nb= sp;            =             &nb= sp;       |   6 +
>  {UefiCpuPkg/Library/BaseUefiCpuLib =3D>
> MdePkg/Library/BaseCpuLib}/Ia32/InitializeFpu.nasm |   0
>  {UefiCpuPkg/Library/BaseUefiCpuLib =3D>
> MdePkg/Library/BaseCpuLib}/X64/InitializeFpu.nasm  |   = 0
>  MdePkg/MdeLibs.dsc.inc       =             &nb= sp;            =             &nb= sp;            =           |   1 + >  OvmfPkg/AmdSev/AmdSevX64.dsc      =             &nb= sp;            =             &nb= sp;            =      |   1 -
>  OvmfPkg/Bhyve/BhyveX64.dsc      &n= bsp;            = ;            &n= bsp;            = ;            &n= bsp;      |   1 -
>  OvmfPkg/CloudHv/CloudHvX64.dsc     &nbs= p;            &= nbsp;           &nbs= p;            &= nbsp;           &nbs= p;   |   1 -
>  OvmfPkg/Microvm/MicrovmX64.dsc     &nbs= p;            &= nbsp;           &nbs= p;            &= nbsp;           &nbs= p;   |   1 -
>  OvmfPkg/OvmfPkgIa32.dsc       = ;            &n= bsp;            = ;            &n= bsp;            = ;         |   1 -
>  OvmfPkg/OvmfPkgIa32X64.dsc      &n= bsp;            = ;            &n= bsp;            = ;            &n= bsp;      |   1 -
>  OvmfPkg/OvmfPkgX64.dsc       =             &nb= sp;            =             &nb= sp;            =           |   1 - >  OvmfPkg/OvmfXen.dsc       &nb= sp;            =             &nb= sp;            =             &nb= sp;            |&nbs= p;  1 -
>  OvmfPkg/Sec/SecMain.inf       = ;            &n= bsp;            = ;            &n= bsp;            = ;         |   2 +-
>  PcAtChipsetPkg/PcAtChipsetPkg.dsc     &= nbsp;           &nbs= p;            &= nbsp;           &nbs= p;             = |   1 -
>  SourceLevelDebugPkg/SourceLevelDebugPkg.dsc   &nb= sp;            =             &nb= sp;            =      |   1
> -
>  UefiCpuPkg/CpuDxe/CpuDxe.h      &n= bsp;            = ;            &n= bsp;            = ;            &n= bsp;      |   1 -
>  UefiCpuPkg/CpuDxe/CpuDxe.inf      =             &nb= sp;            =             &nb= sp;            =      |   1 -
>  UefiCpuPkg/Include/Library/UefiCpuLib.h    &= nbsp;           &nbs= p;            &= nbsp;           &nbs= p;        |  65 ------
> -----
>  UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib.inf  =             &nb= sp;            =           |
> 41 -------
>  UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib.uni  =             &nb= sp;            =           |
> 16 ---
>  UefiCpuPkg/Library/BaseXApicLib/BaseXApicLib.inf  &nbs= p;            &= nbsp;           &nbs= p;             = |   2
> +-
>  UefiCpuPkg/Library/BaseXApicX2ApicLib/BaseXApicX2ApicLib.inf
> |   2 +-
>  UefiCpuPkg/Library/MpInitLib/DxeMpInitLib.inf   &= nbsp;           &nbs= p;            &= nbsp;           &nbs= p;   |   1 -
>  UefiCpuPkg/Library/MpInitLib/MpLib.h    &nbs= p;            &= nbsp;           &nbs= p;            &= nbsp;          |   1= -
>  UefiCpuPkg/Library/MpInitLib/PeiMpInitLib.inf   &= nbsp;           &nbs= p;            &= nbsp;           &nbs= p;   |   1 -
>  UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.h
> |   2 +-
>  UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.inf
> |   1 -
>  UefiCpuPkg/PiSmmCpuDxeSmm/SmmProfileInternal.h
> |   1 -
>  UefiCpuPkg/SecCore/SecCore.inf     &nbs= p;            &= nbsp;           &nbs= p;            &= nbsp;           &nbs= p;   |   2 +-
>  UefiCpuPkg/SecCore/SecCoreNative.inf    &nbs= p;            &= nbsp;           &nbs= p;            &= nbsp;          |   2= +-
>  UefiCpuPkg/SecCore/SecMain.h      =             &nb= sp;            =             &nb= sp;            =      |   2 +-
>  UefiCpuPkg/UefiCpuPkg.dec      &nb= sp;            =             &nb= sp;            =             &nb= sp;       |   5 -
>  UefiCpuPkg/UefiCpuPkg.dsc      &nb= sp;            =             &nb= sp;            =             &nb= sp;       |   2 -
>  UefiPayloadPkg/UefiPayloadEntry/UefiPayloadEntry.h  &n= bsp;            = ;            &n= bsp;           |
> 2 +-
>  UefiPayloadPkg/UefiPayloadEntry/UefiPayloadEntry.inf  =             &nb= sp;            =           |
> 2 +-
>  UefiPayloadPkg/UefiPayloadEntry/UniversalPayloadEntry.inf
> |   2 +-
>  UefiPayloadPkg/UefiPayloadPkg.dsc     &= nbsp;           &nbs= p;            &= nbsp;           &nbs= p;             = |   1 -
>  50 files changed, 211 insertions(+), 248 deletions(-)
>  create mode 100644 MdePkg/Library/BaseCpuLib/X86BaseCpuLib.c
>  delete mode 100644 UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpu= Lib.c
>  rename {UefiCpuPkg/Library/BaseUefiCpuLib =3D>
> MdePkg/Library/BaseCpuLib}/Ia32/InitializeFpu.nasm (100%)
>  rename {UefiCpuPkg/Library/BaseUefiCpuLib =3D>
> MdePkg/Library/BaseCpuLib}/X64/InitializeFpu.nasm (100%)
>  delete mode 100644 UefiCpuPkg/Include/Library/UefiCpuLib.h
>  delete mode 100644
> UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib.inf
>  delete mode 100644
> UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib.uni
>
> --
> 2.30.0.windows.2
>
>
>
>
>






--_000_PH0PR84MB164796A6F432FB784633D562FFF29PH0PR84MB1647NAMP_--