From nobody Wed Oct 1 20:37:28 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of groups.io designates 66.175.222.12 as permitted sender) smtp.mailfrom=bounce+27952+47720+1787277+3901457@groups.io; arc=fail (BodyHash is different from the expected one) Received: from web01.groups.io (web01.groups.io [66.175.222.12]) by mx.zohomail.com with SMTPS id 1568985410066121.05953426170038; Fri, 20 Sep 2019 06:16:50 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id 3SjUYY1788612xCcSAlUiL83; Fri, 20 Sep 2019 06:16:49 -0700 X-Received: from NAM01-BY2-obe.outbound.protection.outlook.com (NAM01-BY2-obe.outbound.protection.outlook.com [40.107.81.55]) by groups.io with SMTP; Fri, 20 Sep 2019 06:16:49 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=dY/DUBpKU6Q2+gGhrPXS2vpJzZjsmYHfqKubd9b+6cDHlWuT4Ps2bXerONg+jnI01TYSejRWdVbb+whcsB5uRmzMgMYKF+gsUrKUIvi5XVvMk3lxlVMq8veKxE/SiV4E0WWee7ULbmPhkecGcdYElnAxLMVngy4efgRc0aO6lS3WbZt6QDSVYFrDBYp3DTgIjsAB1t9KJ2fabgx3QLTKfWVZLj+CUE7oMafizDdQHoST1xChOTjRw9lqK8dgVVYCHlhaR5vkifP6if1JsT1Y03qERnrN3RvnNPYNBW+EaKpuMABkY6fMXc/WMnJNB/1WqdbtargOUov2NQljaikBjQ== 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-SenderADCheck; bh=DuegCOwJpam1T13Od4IBO4uFoCcdZ4ibfEMnESUUAJg=; b=bEZZ3uLqTLBkTPt8nveRvZ+e8ErZYwv+M4nKUF4ryzy9J59kRDHXk+bYDYBoQi3VyVs9mxdFWiN3/BQ2XWXbSORWEHTHyvAPj3P5MAVJKXXDes2a6lh4ofVoFcurFEhDGjmmFlUm/zWCvJtnORXAoMG7sc/cCnyVk+Z1xah0Npr9/7Pst3XR3Q1zLno9nH7TG7VoDXYPTrAwfHd0E4JchK3DT/qarvXyssrluQ5+IL/+xSbo7raRrDrtbZgav52XfIhftPlR6XdfJDa4SgQe4jbc806L5TF6LraHMxrmaguDCU8uwxo2RmMV7WiD7xHGkoHnnnTNFwZCeQ+Yv01NNA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none X-Received: from DM6PR12MB3163.namprd12.prod.outlook.com (20.179.104.150) by DM6PR12MB3995.namprd12.prod.outlook.com (10.255.175.31) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2284.23; Fri, 20 Sep 2019 13:16:47 +0000 X-Received: from DM6PR12MB3163.namprd12.prod.outlook.com ([fe80::400e:f0c3:7ca:2fcc]) by DM6PR12MB3163.namprd12.prod.outlook.com ([fe80::400e:f0c3:7ca:2fcc%6]) with mapi id 15.20.2284.009; Fri, 20 Sep 2019 13:16:47 +0000 From: "Lendacky, Thomas" To: "devel@edk2.groups.io" Subject: [edk2-devel] [RFC PATCH v2 43/44] UefiCpuPkg/CpuDxe: Provide an DXE MP finalization routine to support SEV-ES Thread-Topic: [RFC PATCH v2 43/44] UefiCpuPkg/CpuDxe: Provide an DXE MP finalization routine to support SEV-ES Thread-Index: AQHVb7WnlbBxOK8N90eyDmSTYm17DQ== Date: Fri, 20 Sep 2019 13:16:47 +0000 Message-ID: <4267bd82ef22b8197e3bd1fc715008443a545d1b.1568922729.git.thomas.lendacky@amd.com> References: In-Reply-To: Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-clientproxiedby: SN6PR06CA0023.namprd06.prod.outlook.com (2603:10b6:805:8e::36) To DM6PR12MB3163.namprd12.prod.outlook.com (2603:10b6:5:182::22) x-ms-exchange-messagesentrepresentingtype: 1 x-originating-ip: [165.204.78.1] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 821d91e1-9408-4c1e-187f-08d73dccca4c x-ms-office365-filtering-ht: Tenant x-ms-traffictypediagnostic: DM6PR12MB3995: x-ms-exchange-purlcount: 1 x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:6790; Received-SPF: pass (zoho.com: domain of groups.io designates 66.175.222.12 as permitted sender) client-ip=66.175.222.12; envelope-from=bounce+27952+47720+1787277+3901457@groups.io; helo=web01.groups.io; received-spf: None (protection.outlook.com: amd.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam-message-info: 6rZ1lhuLSvyG/Msz3uKPBvPeX/eZ9QLrlmQ6KJFEsZq6TSOiQZfLo0gzP8uu98gWWDYUFl+zKfLnSpwZYnCslugNkRI3wtX/HKwoxQNCnuA6Wt52FOcz4bvhG/Yqfi3ar36RJIyyqa+6/gLmhdnyVbxq2usU1HqfioKK/eah6DnPHdcXZyLx95Sfc5IPN774gFUkYdfh/A0ICWROhGYvGnyzxut65HofUwkyZqQk1buTU7IcJOsvaGFo359FPk79Rte3hWy5HaXRBZzFMd3rQ3HwnqNeg3ynG4M+Dp8BiqNEtOA3VylUgzWEkfI5MpNnO4ZujydKHJ0UW22HTtMUDxbrbQqiwVCsyC1wgRglWKPcvnHF/jCUKnDU/+/Q0TW7g83vICLd/iGjbi4wOUqf8pIcd2bopkKqKO7Yqk2F2Sg= x-ms-exchange-transport-forked: True MIME-Version: 1.0 X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: 821d91e1-9408-4c1e-187f-08d73dccca4c X-MS-Exchange-CrossTenant-originalarrivaltime: 20 Sep 2019 13:16:47.4720 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: mMhwbxziAFtPn7z4CAS/L4Yqq8oqAtGyXF8l0SjMSRxb+RRaeGQcLMD7BwzPxZPqao3Jn2gZEJnUgia/vFkttw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR12MB3995 Precedence: Bulk List-Unsubscribe: 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,thomas.lendacky@amd.com X-Gm-Message-State: snqrDFHPz0CIj2xiOEzB8j70x1787277AA= Content-Language: en-US Content-ID: <9C7B5B5EDB03E540BE12D8F96180CE97@namprd12.prod.outlook.com> Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1568985409; bh=9ZzZVPlkjmObZCoXn8w5fkKQq235RsYdYJyh6teKiLU=; h=Content-Type:Date:From:Reply-To:Subject:To; b=Wx0psDX7UUWmYxoslX1QEhuY8pyrebfP6jxmI4AWCQPzTR2lsrs7JAvVrLz/b5gxF69 ZXMlfsOoJOzEBFPOCs2XjiO9KgPVqBEIl/OId6Y7cfU8/nMfXYvcBDr2Ja5cSpUKNdEiU HztQgy6ZXisDZUpQSo1jMMe2mHQWbrNe9wk= X-ZohoMail-DKIM: pass (identity @groups.io) Content-Type: text/plain; charset="utf-8" From: Tom Lendacky BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=3D2198 Provide support for the MP finalization routine within DXE. This finalization function will invoke the MpInitLib MpLibFinalize() function to perform the steps necessary to park an AP and be able to successfully boot it under an OS. Cc: Eric Dong Cc: Ray Ni Cc: Laszlo Ersek Signed-off-by: Tom Lendacky --- UefiCpuPkg/CpuDxe/CpuDxe.h | 12 ++++++++++++ UefiCpuPkg/CpuDxe/CpuDxe.c | 21 ++++++++++++++++++++- 2 files changed, 32 insertions(+), 1 deletion(-) diff --git a/UefiCpuPkg/CpuDxe/CpuDxe.h b/UefiCpuPkg/CpuDxe/CpuDxe.h index a6762f1a0b78..d071a32135b2 100644 --- a/UefiCpuPkg/CpuDxe/CpuDxe.h +++ b/UefiCpuPkg/CpuDxe/CpuDxe.h @@ -232,6 +232,18 @@ CpuSetMemoryAttributes ( IN UINT64 Attributes ); =20 +/** + Perform any MpLib final actions before transitioning out of UEFI. + + @param This Protocol instance structure + +**/ +VOID +EFIAPI +CpuFinalize ( + IN EFI_CPU_ARCH_PROTOCOL *This + ); + /** Initialize Global Descriptor Table. =20 diff --git a/UefiCpuPkg/CpuDxe/CpuDxe.c b/UefiCpuPkg/CpuDxe/CpuDxe.c index 7d7270e10b4a..bee44c0dd488 100644 --- a/UefiCpuPkg/CpuDxe/CpuDxe.c +++ b/UefiCpuPkg/CpuDxe/CpuDxe.c @@ -93,7 +93,8 @@ EFI_CPU_ARCH_PROTOCOL gCpu =3D { CpuGetTimerValue, CpuSetMemoryAttributes, 1, // NumberOfTimers - 4 // DmaBufferAlignment + 4, // DmaBufferAlignment + CpuFinalize }; =20 // @@ -499,6 +500,24 @@ CpuSetMemoryAttributes ( return AssignMemoryPageAttributes (NULL, BaseAddress, Length, MemoryAttr= ibutes, NULL); } =20 +/** + Implementation of CpuFinalize() service of CPU Architecture Protocol. + + This function performs any MpLib library finalization to perform required + actions before exiting boot services. + + @param This The EFI_CPU_ARCH_PROTOCOL instance. + +**/ +VOID +EFIAPI +CpuFinalize ( + IN EFI_CPU_ARCH_PROTOCOL *This + ) +{ + MpLibFinalize (); +} + /** Initializes the valid bits mask and valid address mask for MTRRs. =20 --=20 2.17.1 -=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 (#47720): https://edk2.groups.io/g/devel/message/47720 Mute This Topic: https://groups.io/mt/34230276/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-