From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga18.intel.com (mga18.intel.com [134.134.136.126]) by mx.groups.io with SMTP id smtpd.web11.60811.1600089012974781947 for ; Mon, 14 Sep 2020 06:10:13 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=zbqKRy3r; spf=pass (domain: intel.com, ip: 134.134.136.126, mailfrom: chasel.chiu@intel.com) IronPort-SDR: w6DunUMlgvgPCTNpQpLNRMgEDyCViCZgV+B+qu35eoA/ILHHtzCh/E25BymEPzTAHW/4D8k46Y 4b6m4NL6uGFQ== X-IronPort-AV: E=McAfee;i="6000,8403,9743"; a="146813365" X-IronPort-AV: E=Sophos;i="5.76,426,1592895600"; d="scan'208";a="146813365" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga006.jf.intel.com ([10.7.209.51]) by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 14 Sep 2020 06:10:09 -0700 IronPort-SDR: TbOKJ3Uf/ICITSp4DiTpFEJpd8fxvBKJH09dwBan0Be1fB/cFbsEzrHZhRURTF9w+YSxuhXEXz r/oUezYhq6vQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.76,426,1592895600"; d="scan'208";a="306161180" Received: from orsmsx605.amr.corp.intel.com ([10.22.229.18]) by orsmga006.jf.intel.com with ESMTP; 14 Sep 2020 06:10:09 -0700 Received: from orsmsx606.amr.corp.intel.com (10.22.229.19) by ORSMSX605.amr.corp.intel.com (10.22.229.18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1713.5; Mon, 14 Sep 2020 06:10:09 -0700 Received: from orsmsx151.amr.corp.intel.com (10.22.226.38) by orsmsx606.amr.corp.intel.com (10.22.229.19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256) id 15.1.1713.5 via Frontend Transport; Mon, 14 Sep 2020 06:10:09 -0700 Received: from ORSEDG602.ED.cps.intel.com (10.7.248.7) by ORSMSX151.amr.corp.intel.com (10.22.226.38) with Microsoft SMTP Server (TLS) id 14.3.439.0; Mon, 14 Sep 2020 06:10:08 -0700 Received: from NAM11-CO1-obe.outbound.protection.outlook.com (104.47.56.171) by edgegateway.intel.com (134.134.137.103) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.1713.5; Mon, 14 Sep 2020 06:09:58 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=JmDY2UMV3M2RklUzD/HGNZKFjpHf4Z7Qy1E9p0sFB2tcd8LxNPCY4kdmtHVutewj00Au8EiZa4qBrOacA1XzPqVIA/WQaqQCt6MJp7tnGh6/u0GSkrU97Haa3pUcwFLyunTF1MJR3OgR3E/Xf7khThNC6U9eyJSV2walRBtGPvusb+w+c1e4xbXfwFF/BIc04VKEZkGTqVxjjJ/s4Eco5bqjKv2ifxT1eck6iZrtNnmE04skRCbe/nF0lkYEHTg7c9XFPC/y81hDwzO+ekMv8s+WzMFENsGgH2kFpQNjjt3+2uElTzOdn2ZckITIk5HSwHp7XzBfrL0pN8k5YmF/6A== 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=/ktvLDEGb8MoUWZV95AJ3edxqy5VYylEWLrsYHW5acs=; b=CQeh/VpSpsZJqtxszjkMHCFJJOpSMnfUJMJ2Ub8NPKaypZ6MGqT1foILS367YE9BjUJfNj0R7LjH1mrnCN+HR15g2NrGYQuX5hNxFWcNk9CAceFYL74/JBqhHq8rJOg0Uz7HC9s2trTtwFW/9f5aQJDJP2Z75MiCbM3JfaLELBaOTxTDSCf4WHmZ5sTJzVxZ735aZCIvHCBXGRdlnHe8FNGOyZUZ5/fX1V+OeJvZ9UklYPKmzztjINU9vtxZDg9X/6Pg9so6osVF4R6z58VN8qS6RJxqYnxlvJqArxn+lzjJ52e663kNGEvoa1CQINT1A52Zm1beCZf5Q4h5nVm9Gg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel.onmicrosoft.com; s=selector2-intel-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=/ktvLDEGb8MoUWZV95AJ3edxqy5VYylEWLrsYHW5acs=; b=zbqKRy3riYg1Ndu1rFPXCVufOOWm/Rr3Qc58HzkHdLifM7cDh7lH17iG/T6DdPhEjMoCZzcaf4UnMTxiAXX0MUf8AtqmRltgOXJR4XyG5L4m/KwqwGggOkk/WmOzzjJ54rCF6oCK6A6U1SUC9CNftdlvLIFxXSEYJxsyDQGvleQ= Received: from SN6PR11MB2814.namprd11.prod.outlook.com (2603:10b6:805:55::15) by SN6PR11MB2766.namprd11.prod.outlook.com (2603:10b6:805:53::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3370.16; Mon, 14 Sep 2020 13:09:57 +0000 Received: from SN6PR11MB2814.namprd11.prod.outlook.com ([fe80::4540:a6b5:b0bc:9d82]) by SN6PR11MB2814.namprd11.prod.outlook.com ([fe80::4540:a6b5:b0bc:9d82%4]) with mapi id 15.20.3370.019; Mon, 14 Sep 2020 13:09:57 +0000 From: "Chiu, Chasel" To: "Ni, Ray" , "devel@edk2.groups.io" CC: "Dong, Eric" , Laszlo Ersek , "Kumar, Rahul1" , "Desimone, Nathaniel L" Subject: Re: [PATCH v2] UefiCpuPkg/RegisterCpuFeaturesLib: Support MpServices2 only case. Thread-Topic: [PATCH v2] UefiCpuPkg/RegisterCpuFeaturesLib: Support MpServices2 only case. Thread-Index: AQHWijkrEonhsfpOIk6rZl1tHVE3Lalnfs+AgACdVsA= Date: Mon, 14 Sep 2020 13:09:56 +0000 Message-ID: References: <20200914014827.14476-1-chasel.chiu@intel.com> In-Reply-To: Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-reaction: no-action dlp-version: 11.5.1.3 authentication-results: intel.com; dkim=none (message not signed) header.d=none;intel.com; dmarc=none action=none header.from=intel.com; x-originating-ip: [220.129.97.140] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: afdf3026-7049-4a2c-b008-08d858af7aa1 x-ms-traffictypediagnostic: SN6PR11MB2766: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:1265; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: mV6k4MPGxdNItfbA011VgZM4/i4eRQlAA06OX1kJsKhG+Lf+Xjm/LsGLiK4lILIJ4fIm6GjeKQAmDJQXqgdFEOGecyYEtNp6D4NPdjyWRmR0qWoYz9fOxsN0Y+XXrNz5kpcebSX5hQkNq35shny2H/TkJdkX1wCqNspC2lHyWUSD9kAYAorxY3O9z1KyAPF6ZS6Y2iAvw+93FwXd6Zj///iImUsZjVi9BfnE/3Wb+jbsbcbGthbRItHg2vBsnpydtRA5vJIKIPe9IrP/ZTFhjjCJrwOu0AC6rDcciOw/72OGtGq+DMHXSXjDAex8NfaxGq98ybLSUyXysEacVe7YonHOi2wkLOIsJ5ZiFmc7rNnA+RCIz5j8fm5irdFgIvRFoA9QO3Cd0p/ZIi4NBvVSJQ== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SN6PR11MB2814.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(6029001)(4636009)(396003)(366004)(376002)(39860400002)(346002)(136003)(26005)(19627235002)(7696005)(107886003)(2906002)(966005)(86362001)(478600001)(66556008)(64756008)(66476007)(66446008)(66946007)(8936002)(110136005)(316002)(52536014)(54906003)(5660300002)(76116006)(4326008)(53546011)(6506007)(55016002)(186003)(8676002)(71200400001)(9686003)(33656002)(83380400001);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata: jjishi8HLFaYjXKW1YEKubSysvwoaAKUhupHsC5bXp0MH4e6Nyipng/LWP6sQoy4sCeIWBshTTYkPClLA07978lk9g+e+g06Al4SYU+DQfRgN+JxRQntbZUtgckFU4T4KBNoLe0taTNQC7T+nxUBOCJmhkDg/lP4MPwqMdPJdhaTTcnmwpXrPGrCNFSTs1kgUWlO1n6ZlrhS3ekbBfI9F8AsLklYDoBSWbgIT3lFDtjbWm0wCLuOvNNaorbyN8+nPVf5+NzuOWHIgeH3PJAsEeCYgCCLu/HVqLka/pyZ2oY47huGvDZOKu7Z5OShC+5tic+8uD3SUzPO1czYpgGaFz2bHSdpdflo6rrhjydZyjwa8jQpmBQaBXY2jQzmpr+p4+yyPxPLK7CyJW1NdYiem6eX06vVTlz59+whhsVrs9ceXqOjqlcsUwm3+ZDORfHy4iiIXjeKe1dyTwihCo5MA4JmSBQdlNBdf/r5pOEQvN+6OizyWAqOf7z+oEbYGq0ve3ji7eUt0KxhJ+VuT50UIoq3T5K8kzhlyPWaMddc0Onh3OMsHfT+Omq9TFM9ukPt2VtdvKYtnfoC/qkZGF7HUtZkcavL5JCECXPHXWspc5JAZawIWHRmVmXdVDJ4kVKLdwu3iNcS4AC6lYr6ld2J/g== MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: SN6PR11MB2814.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: afdf3026-7049-4a2c-b008-08d858af7aa1 X-MS-Exchange-CrossTenant-originalarrivaltime: 14 Sep 2020 13:09:56.9355 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: Z8y9091BWoXL/Iz4bYtqhw8kISU8wdShYv9INDBxoOH7YMWYSY1CpmwGZNCFwPXaXuw8l6Pfe3cys5rTEZkUQw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN6PR11MB2766 Return-Path: chasel.chiu@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Change pushed: 1b461403ee723dab01d5828714cca0b9396a6b3c Thanks, Chasel > -----Original Message----- > From: Ni, Ray > Sent: Monday, September 14, 2020 11:46 AM > To: Chiu, Chasel ; devel@edk2.groups.io > Cc: Chiu, Chasel ; Dong, Eric ; > Laszlo Ersek ; Kumar, Rahul1 > ; Desimone, Nathaniel L > > Subject: RE: [PATCH v2] UefiCpuPkg/RegisterCpuFeaturesLib: Support > MpServices2 only case. >=20 > Reviewed-by: Ray Ni >=20 > > -----Original Message----- > > From: Chasel Chiu > > Sent: Monday, September 14, 2020 9:48 AM > > To: devel@edk2.groups.io > > Cc: Chiu, Chasel ; Dong, Eric > > ; Ni, Ray ; Laszlo Ersek > > ; Kumar, Rahul1 ; > Desimone, > > Nathaniel L > > Subject: [PATCH v2] UefiCpuPkg/RegisterCpuFeaturesLib: Support > > MpServices2 only case. > > > > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3D2883 > > > > MpServices Ppi can be replaced by MpServices2 Ppi and MpServices2 Ppi > > is mandatory for RegisterCpuFeaturesLib functionality, basing on this > > we can drop MpServices Ppi usage from the library and the constraint > > that both Ppis must be installed. > > > > Cc: Eric Dong > > Cc: Ray Ni > > Cc: Laszlo Ersek > > Cc: Rahul Kumar > > Cc: Nate DeSimone > > Signed-off-by: Chasel Chiu > > --- > > UefiCpuPkg/Library/RegisterCpuFeaturesLib/PeiRegisterCpuFeaturesLib.c > | > > 61 +++++++++++++++++++++++-------------------------------------- > > > > UefiCpuPkg/Library/RegisterCpuFeaturesLib/PeiRegisterCpuFeaturesLib.in > > f | 5 > > ++--- > > UefiCpuPkg/Library/RegisterCpuFeaturesLib/RegisterCpuFeatures.h > | 6 > > +++--- > > 3 files changed, 28 insertions(+), 44 deletions(-) > > > > diff --git > > a/UefiCpuPkg/Library/RegisterCpuFeaturesLib/PeiRegisterCpuFeaturesLib. > > c > > b/UefiCpuPkg/Library/RegisterCpuFeaturesLib/PeiRegisterCpuFeaturesLib. > > c > > index 64768f7a74..4e558e9fee 100644 > > --- > > a/UefiCpuPkg/Library/RegisterCpuFeaturesLib/PeiRegisterCpuFeaturesLib. > > c > > +++ > > b/UefiCpuPkg/Library/RegisterCpuFeaturesLib/PeiRegisterCpuFeaturesLib. > > c > > @@ -1,7 +1,7 @@ > > /** @file > > CPU Register Table Library functions. > > > > - Copyright (c) 2016 - 2019, Intel Corporation. All rights > > reserved.
> > + Copyright (c) 2016 - 2020, Intel Corporation. All rights > > + reserved.
> > SPDX-License-Identifier: BSD-2-Clause-Patent > > > > **/ > > @@ -11,7 +11,6 @@ > > #include > > #include > > #include > > -#include > > #include > > > > #include "RegisterCpuFeatures.h" > > @@ -75,10 +74,10 @@ GetMpService ( > > MP_SERVICES MpService; > > > > // > > - // Get MP Services Protocol > > + // Get MP Services2 Ppi > > // > > Status =3D PeiServicesLocatePpi ( > > - &gEfiPeiMpServicesPpiGuid, > > + &gEdkiiPeiMpServices2PpiGuid, > > 0, > > NULL, > > (VOID **)&MpService.Ppi > > @@ -100,17 +99,17 @@ GetProcessorIndex ( > > ) > > { > > EFI_STATUS Status; > > - EFI_PEI_MP_SERVICES_PPI *CpuMpPpi; > > + EDKII_PEI_MP_SERVICES2_PPI *CpuMp2Ppi; > > UINTN ProcessorIndex; > > > > - CpuMpPpi =3D CpuFeaturesData->MpService.Ppi; > > + CpuMp2Ppi =3D CpuFeaturesData->MpService.Ppi; > > > > // > > // For two reasons which use NULL for WhoAmI: > > // 1. This function will be called by APs and AP should not use > > PeiServices Table > > // 2. Check WhoAmI implementation, this parameter will not be used. > > // > > - Status =3D CpuMpPpi->WhoAmI(NULL, CpuMpPpi, &ProcessorIndex); > > + Status =3D CpuMp2Ppi->WhoAmI (CpuMp2Ppi, &ProcessorIndex); > > ASSERT_EFI_ERROR (Status); > > return ProcessorIndex; > > } > > @@ -131,16 +130,15 @@ GetProcessorInformation ( > > OUT EFI_PROCESSOR_INFORMATION *ProcessorInfoBuffer > > ) > > { > > - EFI_PEI_MP_SERVICES_PPI *CpuMpPpi; > > + EDKII_PEI_MP_SERVICES2_PPI *CpuMp2Ppi; > > EFI_STATUS Status; > > CPU_FEATURES_DATA *CpuFeaturesData; > > > > CpuFeaturesData =3D GetCpuFeaturesData (); > > - CpuMpPpi =3D CpuFeaturesData->MpService.Ppi; > > + CpuMp2Ppi =3D CpuFeaturesData->MpService.Ppi; > > > > - Status =3D CpuMpPpi->GetProcessorInfo ( > > - GetPeiServicesTablePointer(), > > - CpuMpPpi, > > + Status =3D CpuMp2Ppi->GetProcessorInfo ( > > + CpuMp2Ppi, > > ProcessorNumber, > > ProcessorInfoBuffer > > ); > > @@ -162,18 +160,17 @@ StartupAllAPsWorker ( > > ) > > { > > EFI_STATUS Status; > > - EFI_PEI_MP_SERVICES_PPI *CpuMpPpi; > > + EDKII_PEI_MP_SERVICES2_PPI *CpuMp2Ppi; > > CPU_FEATURES_DATA *CpuFeaturesData; > > > > CpuFeaturesData =3D GetCpuFeaturesData (); > > - CpuMpPpi =3D CpuFeaturesData->MpService.Ppi; > > + CpuMp2Ppi =3D CpuFeaturesData->MpService.Ppi; > > > > // > > // Wakeup all APs for data collection. > > // > > - Status =3D CpuMpPpi->StartupAllAPs ( > > - GetPeiServicesTablePointer (), > > - CpuMpPpi, > > + Status =3D CpuMp2Ppi->StartupAllAPs ( > > + CpuMp2Ppi, > > Procedure, > > FALSE, > > 0, > > @@ -203,17 +200,7 @@ StartupAllCPUsWorker ( > > // > > // Get MP Services2 Ppi > > // > > - Status =3D PeiServicesLocatePpi ( > > - &gEdkiiPeiMpServices2PpiGuid, > > - 0, > > - NULL, > > - (VOID **)&CpuMp2Ppi > > - ); > > - ASSERT_EFI_ERROR (Status); > > - > > - // > > - // Wakeup all APs for data collection. > > - // > > + CpuMp2Ppi =3D CpuFeaturesData->MpService.Ppi; > > Status =3D CpuMp2Ppi->StartupAllCPUs ( > > CpuMp2Ppi, > > Procedure, > > @@ -234,18 +221,17 @@ SwitchNewBsp ( > > ) > > { > > EFI_STATUS Status; > > - EFI_PEI_MP_SERVICES_PPI *CpuMpPpi; > > + EDKII_PEI_MP_SERVICES2_PPI *CpuMp2Ppi; > > CPU_FEATURES_DATA *CpuFeaturesData; > > > > CpuFeaturesData =3D GetCpuFeaturesData (); > > - CpuMpPpi =3D CpuFeaturesData->MpService.Ppi; > > + CpuMp2Ppi =3D CpuFeaturesData->MpService.Ppi; > > > > // > > // Wakeup all APs for data collection. > > // > > - Status =3D CpuMpPpi->SwitchBSP ( > > - GetPeiServicesTablePointer (), > > - CpuMpPpi, > > + Status =3D CpuMp2Ppi->SwitchBSP ( > > + CpuMp2Ppi, > > ProcessorNumber, > > TRUE > > ); > > @@ -269,18 +255,17 @@ GetNumberOfProcessor ( > > ) > > { > > EFI_STATUS Status; > > - EFI_PEI_MP_SERVICES_PPI *CpuMpPpi; > > + EDKII_PEI_MP_SERVICES2_PPI *CpuMp2Ppi; > > CPU_FEATURES_DATA *CpuFeaturesData; > > > > CpuFeaturesData =3D GetCpuFeaturesData (); > > - CpuMpPpi =3D CpuFeaturesData->MpService.Ppi; > > + CpuMp2Ppi =3D CpuFeaturesData->MpService.Ppi; > > > > // > > // Get the number of CPUs > > // > > - Status =3D CpuMpPpi->GetNumberOfProcessors ( > > - GetPeiServicesTablePointer (), > > - CpuMpPpi, > > + Status =3D CpuMp2Ppi->GetNumberOfProcessors ( > > + CpuMp2Ppi, > > NumberOfCpus, > > NumberOfEnabledProcessors > > ); > > diff --git > > a/UefiCpuPkg/Library/RegisterCpuFeaturesLib/PeiRegisterCpuFeaturesLib. > > inf > > b/UefiCpuPkg/Library/RegisterCpuFeaturesLib/PeiRegisterCpuFeaturesLib. > > inf > > index 61f922bf63..196c72eb85 100644 > > --- > > a/UefiCpuPkg/Library/RegisterCpuFeaturesLib/PeiRegisterCpuFeaturesLib. > > inf > > +++ > > b/UefiCpuPkg/Library/RegisterCpuFeaturesLib/PeiRegisterCpuFeaturesLib. > > inf > > @@ -1,7 +1,7 @@ > > ## @file > > # Register CPU Features Library PEI instance. > > # > > -# Copyright (c) 2017 - 2019, Intel Corporation. All rights > > reserved.
> > +# Copyright (c) 2017 - 2020, Intel Corporation. All rights > > +reserved.
> > # SPDX-License-Identifier: BSD-2-Clause-Patent # ## @@ -45,7 +45,6 > > @@ > > IoLib > > > > [Ppis] > > - gEfiPeiMpServicesPpiGuid > ## CONSUMES > > gEdkiiPeiMpServices2PpiGuid > ## CONSUMES > > > > [Pcd] > > @@ -55,4 +54,4 @@ > > gUefiCpuPkgTokenSpaceGuid.PcdCpuFeaturesSetting > ## > > CONSUMES ## PRODUCES > > > > [Depex] > > - gEfiPeiMpServicesPpiGuid AND gEdkiiCpuFeaturesSetDoneGuid > > + gEdkiiPeiMpServices2PpiGuid AND gEdkiiCpuFeaturesSetDoneGuid > > diff --git > > a/UefiCpuPkg/Library/RegisterCpuFeaturesLib/RegisterCpuFeatures.h > > b/UefiCpuPkg/Library/RegisterCpuFeaturesLib/RegisterCpuFeatures.h > > index 53cb340b4c..e8a4aa644d 100644 > > --- a/UefiCpuPkg/Library/RegisterCpuFeaturesLib/RegisterCpuFeatures.h > > +++ b/UefiCpuPkg/Library/RegisterCpuFeaturesLib/RegisterCpuFeatures.h > > @@ -10,7 +10,7 @@ > > #define _REGISTER_CPU_FEATURES_H_ > > #include > > #include > > -#include > > +#include > > #include > > > > #include > > @@ -64,8 +64,8 @@ typedef struct { > > } PROGRAM_CPU_REGISTER_FLAGS; > > > > typedef union { > > - EFI_MP_SERVICES_PROTOCOL *Protocol; > > - EFI_PEI_MP_SERVICES_PPI *Ppi; > > + EFI_MP_SERVICES_PROTOCOL *Protocol; > > + EDKII_PEI_MP_SERVICES2_PPI *Ppi; > > } MP_SERVICES; > > > > typedef struct { > > -- > > 2.13.3.windows.1