From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by mx.groups.io with SMTP id smtpd.web10.3823.1689069070049554234 for ; Tue, 11 Jul 2023 02:51:10 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="unable to parse pub key" header.i=@intel.com header.s=intel header.b=Wr7npk7c; spf=pass (domain: intel.com, ip: 134.134.136.100, mailfrom: dun.tan@intel.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1689069070; x=1720605070; h=from:to:subject:date:message-id:references:in-reply-to: content-transfer-encoding:mime-version; bh=PfR6Xu1H7UIy+H5Qs0P7Ha8eEAFp7hK+KacYP96ZxrE=; b=Wr7npk7c3QdRS1/8oy9QybQ/ly/nE3BVhyynvlB69t9LGrSy0Hdjt7qC PozNtZrMZu245hczUYVzALaJy/Y3F8rYbT5X9c+ZzmMFFd+ShXxEGOtpp ZAYY/tHHqS9rQ38yaV+JNeunKTV42ZaiXmERojKuNt3IoR/gJdC8t+NVG ZCS5hHeAP9Ogazgw4BgpgwIy7KrBleMJf2TPbvkC3qo4Op/wnMqstZgNs E2/0zsZvXGNYk2rlh2VAgbnQgG9179GwMjFNoGhQ/BMMbb1x51DYtv8Ig rbbHqiivtnipnNVZhnRyms6MP5LWI1EEs27Ab2lOC1mJX9UhD+JOWy4UD g==; X-IronPort-AV: E=McAfee;i="6600,9927,10767"; a="430663769" X-IronPort-AV: E=Sophos;i="6.01,196,1684825200"; d="scan'208";a="430663769" Received: from orsmga008.jf.intel.com ([10.7.209.65]) by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 11 Jul 2023 02:51:08 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10767"; a="750695016" X-IronPort-AV: E=Sophos;i="6.01,196,1684825200"; d="scan'208";a="750695016" Received: from orsmsx603.amr.corp.intel.com ([10.22.229.16]) by orsmga008.jf.intel.com with ESMTP; 11 Jul 2023 02:51:08 -0700 Received: from orsmsx612.amr.corp.intel.com (10.22.229.25) by ORSMSX603.amr.corp.intel.com (10.22.229.16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 11 Jul 2023 02:51:08 -0700 Received: from orsedg603.ED.cps.intel.com (10.7.248.4) by orsmsx612.amr.corp.intel.com (10.22.229.25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27 via Frontend Transport; Tue, 11 Jul 2023 02:51:08 -0700 Received: from NAM10-BN7-obe.outbound.protection.outlook.com (104.47.70.102) by edgegateway.intel.com (134.134.137.100) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.27; Tue, 11 Jul 2023 02:51:07 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=dvTTv00doAYB52jwCttqevLkQ/KA8poJeJ3rfWo5i/lS2oZCjMnvgseZaDc5Cb0qrWayDp1VQAB8exsXGv9LC+kJvy25c7xECtlld+wbPWv/g385HTt72Ythnr87m0uqDm4WgoYcaAC0aLpoMqg53EAIhpX3Y/WmdLi73bPdWiVCzpclx+4jDAvOWCwdYG3wE2lM99VEcu17YP+ycsbAU6zcxCVjlz/YYrtjip3fYdfH+lHXT9hmsWtTwAVzoNrJQxpy/45hICo6Wlc/maWqFnUmGziflWYnekUnkRbaFvUPId7kwPIsfX0D/9blEo+aTJtrb4lLsboOxgvDVTYPsg== 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=LYjD5pzGHHcj5qVQbktIohqwqdnpkCCRgZ27vSrhZmQ=; b=Ojbj72boIS94FubpW1aT/otRayfLRlq2hPJa2Yr0z+4byG4HwpGVrXvLVWnSY4ZqTuP8PwB85QXzfKGqNWMJFCKmdN5xLW95LGxWfW8JerJgKhevkcTLqHB3e/gQxo4f9Zt9ek6VThocWraRaw/6iHRi9hoghkK1PzXjVfTeabGcZkj7WEKaOXcvlXuY7pknitD0nI3QUQ5chkc4yedgKO16+kAmo33gSywHvvf22IGhe+BYdN0mi5LieppeCp5mRsiMZOC+kaCuoDNQM77Xovuhv+Lmv2J3qQpYZBjusyzSCyn4vX64CDVoreh5tS5UQ86Wa1m+F/Qg6+GToJPJ5g== 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 Received: from BN9PR11MB5483.namprd11.prod.outlook.com (2603:10b6:408:104::10) by DM4PR11MB6550.namprd11.prod.outlook.com (2603:10b6:8:b4::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6565.30; Tue, 11 Jul 2023 09:51:05 +0000 Received: from BN9PR11MB5483.namprd11.prod.outlook.com ([fe80::3526:47a2:35c4:678e]) by BN9PR11MB5483.namprd11.prod.outlook.com ([fe80::3526:47a2:35c4:678e%4]) with mapi id 15.20.6588.017; Tue, 11 Jul 2023 09:51:05 +0000 From: "duntan" To: "Attar, AbdulLateef (Abdul Lateef)" , "Ni, Ray" , "devel@edk2.groups.io" , "Chang, Abner" Subject: Re: Use gMmst from MmServiceTableLib in MmSaveStateLib Thread-Topic: Use gMmst from MmServiceTableLib in MmSaveStateLib Thread-Index: AQHZrxyYgLTrGq7f5UqWdxIZhLqaaa+0QAeAgAAPjICAAAa4UA== Date: Tue, 11 Jul 2023 09:51:05 +0000 Message-ID: References: In-Reply-To: Accept-Language: zh-CN, en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: msip_labels: MSIP_Label_4342314e-0df4-4b58-84bf-38bed6170a0f_ActionId=6dc398f7-412d-44ef-b71b-fb1cde65807a;MSIP_Label_4342314e-0df4-4b58-84bf-38bed6170a0f_ContentBits=0;MSIP_Label_4342314e-0df4-4b58-84bf-38bed6170a0f_Enabled=true;MSIP_Label_4342314e-0df4-4b58-84bf-38bed6170a0f_Method=Standard;MSIP_Label_4342314e-0df4-4b58-84bf-38bed6170a0f_Name=General;MSIP_Label_4342314e-0df4-4b58-84bf-38bed6170a0f_SetDate=2023-07-11T09:03:11Z;MSIP_Label_4342314e-0df4-4b58-84bf-38bed6170a0f_SiteId=3dd8961f-e488-4e60-8e11-a82d994e183d; authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: BN9PR11MB5483:EE_|DM4PR11MB6550:EE_ x-ms-office365-filtering-correlation-id: 9e4bbdc0-5f7f-4225-4b8a-08db81f457fb x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 7ptf0uAbRiwD4qiTt2iKz/zEl/J1xVWJuKwIn33u0C0mBNmp2Pp6+0YaWI/E8IhWlWemQaS4b9xVYT3WcvzSCsxLc0UyWaQCO1LkaiIFcRoh6X/ueCeyiF4K3Gg0sbcfZk+k7FxGH2AJMvZaF842nDj+RgY56NqzUw+saAvIL/6sz64P6EFyojZkK758QgxZ/ackl3RjT9fZNHqvNDz7AQE/+VKCUS5A2rh4c6hg8yPlYMz8CbDvh2EZYqvIOhOXf/ox8yDhD/n6pBwwfe9lJb3ecnl6TS82p8zF5zCPp8Q7T7M8QNCfIki7JXdc+Qd5loJ5XOvJ0yVDAH06TQec+1I+eUjOHQefynh3TukNTafWkQKRkhqs3ANsN1RY/rv60WA2qJZArg9oAnfb+SVQJZWiFQENzAN08mz19n8l8FmYcJwl4eS41u4cxWje7mhO8LgDITa5kNL2jOcllEYGE/QporLzHZzNvSE8Q7S9o2q4MJrdikpve8UbY5aAHFXfPImWe2hL46vTJLLG4Udswp27tAn1P2ydk9u8+z7DMiUcHyoVSl5a9zJfsr0V1yIxL+jfTQL0gFrvg3/5gaP4JN6lOXeqxcINkaIPbQyidf+pQ0GMzv+NqesPKv+eUhE/N1CIT+seNB/C7anPXFfBhA== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BN9PR11MB5483.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(6029001)(366004)(346002)(396003)(39860400002)(136003)(376002)(451199021)(55016003)(2906002)(64756008)(66476007)(66946007)(71200400001)(316002)(76116006)(7696005)(110136005)(66446008)(83380400001)(66556008)(52536014)(478600001)(19627235002)(5660300002)(8676002)(26005)(9686003)(186003)(6506007)(53546011)(41300700001)(8936002)(966005)(122000001)(38100700002)(38070700005)(82960400001)(86362001)(33656002)(66899021);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?QLCSDMj218AU4X5cjUOepD7U3GP5UTVY8tMmOXNJ+iWjxPVFtUOMwiHMBoZu?= =?us-ascii?Q?xgCjooqsUgXDApgBtAp/Okpk8mPoWzthhgIuGjwFjxhhyPbydUHSDDbu1pHs?= =?us-ascii?Q?mepBUJuQNZZIZwyuABkz8x+C2IGPTmTQUpJk1cySihKal11PX5lVYb38J1q0?= =?us-ascii?Q?SMUN/dtdfkcV/aqv2/6eXFZBG7+zvgf3CVTyt6P8yrQgdu2u2mAlCxfMM9Nr?= =?us-ascii?Q?U5+UCucL4R1iHl2WVsMuID03jM8+j1qL++sFClw67+kch5+L1Lfwyr/doz+6?= =?us-ascii?Q?1lIrg8j7Ski+/1KMfU3W/lNwgNc1rBUTBKCqwnbroRp4jJ2NPVp6pXDRj+Sd?= =?us-ascii?Q?b/vW8VRdjJn6Q8KLdj5OyXpMnUHs0hHFFKhX5pKWCyZ940TXuSDdw5mgPyMx?= =?us-ascii?Q?fklMUIdZJCyXWxiUqHV7iZc8+fcuNlTQvficQOLGPH6tpDQQ7ErDULBG9IvV?= =?us-ascii?Q?w0wzl55ShkJlVGZ1rpKOIahmvRSkXJZrkWTBsvxovSgasir8My8RoQBTVjOX?= =?us-ascii?Q?IX/ALPYvO/EGRamYrJkrE/cCRD+V3918c8NRlI7Zl0UE5Kh9lOZoKsesSNoC?= =?us-ascii?Q?9HckNbMt3QveeGT2UmhRrttgncmMIt2cyAq3eWQWHBMaxWKvQQsCL8XNCXou?= =?us-ascii?Q?g1Emg1ukaLh4hamAJ8OdJc+M82o1JqHPRe8iMW48Bt3WvdfWcZo1QyuCqLS5?= =?us-ascii?Q?jAuocO31Um8m0VCh3eqeeagDvc1LwVciu+Qwmk5TyK7nnOjP+cWepdi5b3KI?= =?us-ascii?Q?NJPXZ/omeRSqD+YnCcJLRntQcWswbnvKIGzUNLjm0ZWwJBZR1B3rXT1U1eA/?= =?us-ascii?Q?GEQUtIahnwjz2YQjBmQrmK6kEwFWXezUHJANHSyh6CUhwb+HOXLR6n/RQQb/?= =?us-ascii?Q?4/QxtylNEYgI0U9U0mLDdtjuXU7s4ZDYelxLHzIKzN7DCJh3U4A2xSCVYYCS?= =?us-ascii?Q?cQwnlsPADMh7j96j/foL74Lnx/egcEUD2Ifi0Pj7BwslD8CqfGOPECda/hPv?= =?us-ascii?Q?G2fMMGvEZpZGhjoFhtVz5Cdwaf9m0L51NQqG7YY+egK0vnWrJzL0hkUi/Cot?= =?us-ascii?Q?r5b5y9NFxJiqN7PmIrfGkVDhx2MZHIsom8AWjciFiYehi/MGQn04OsuFAhIh?= =?us-ascii?Q?/DdlNch/7cqQPdE9homS3YemVWmkhWS2RHWcAJHVQ+7t9RcZuqGdn3DsoSb3?= =?us-ascii?Q?4Ydf5BkhHRPZkxNeKMwyS6TLUaE+uagoJu2Df29BC14i0KBmjEkDBHtLW2eg?= =?us-ascii?Q?uKlzzaPKsUD8kfjvKB4AQ4tCK3EpYeF1Xm8cjJZ65pLHDcCXT04T/3CDDYk3?= =?us-ascii?Q?0FyJZZUwWK8psSlyipBohZ8mo2WWT/eHB4RwFJ1HIsLTn3dMzrkdTbP95cKx?= =?us-ascii?Q?MbF+MgGWmUHwROiT75R2Iq19t8ViBnLNvZbkOvZ0R04LJFKIhH0GppfiCrZK?= =?us-ascii?Q?+2VAYLJsWqt9dvjs2XirC/DEE4hNRqaYV1zms5zlbU8ySp4tyy7W703Y9LOu?= =?us-ascii?Q?67vt2dVW8AM82+Q0EcKGlgOjW6IQDDGOdFq5/+bcU4aTHvetRzofNY8X1PRr?= =?us-ascii?Q?SacqVwABZleH2qRJSko=3D?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: BN9PR11MB5483.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 9e4bbdc0-5f7f-4225-4b8a-08db81f457fb X-MS-Exchange-CrossTenant-originalarrivaltime: 11 Jul 2023 09:51:05.1063 (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: kVNiLx3aeVSIlHfxZPN2/C+F7r0FU1RSTh71IXJEmXaoq/vsHCevrTxaTlA+8sRPVb1O0I6Ncp+/QLGwutjFVQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR11MB6550 Return-Path: dun.tan@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable AbduL, For the part ' preserve the SAVE_STATE pointed by gSmst(Instead of gMmst)',= do you mean the following code in RestoreSmmConfigurationInS3()? gSmst->CpuSaveState =3D gSmmCpuPrivate->SmmCoreEntryContext.CpuSav= eState; Acctually when PiSmmCpuDxeSmm uses MmServicesTableLib, the gSmst is the sam= e as gMmst. You can check the lib constructor MmServicesTableLibConstructor= () and SmmServicesTableLibConstructor. In the two constructor functions, th= ey both locate the same global pointer by gEfiSmmBase2ProtocolGuid/ gEfiMmB= aseProtocolGuid(same GUID) and assign the value to gSmst or gMmst. In this= case the only difference of gMmst and gSmst is the naming. So I think PiS= mmCpuDxeSmm can still consume the MmSaveStateLib even MmSaveStateLib use gM= mst. Thanks, Dun -----Original Message----- From: Attar, AbdulLateef (Abdul Lateef) =20 Sent: Tuesday, July 11, 2023 5:06 PM To: Ni, Ray ; Tan, Dun ; devel@edk2.gr= oups.io; Chang, Abner Subject: RE: Use gMmst from MmServiceTableLib in MmSaveStateLib [AMD Official Use Only - General] Hi Ray, I think Michael raised the similar concerned during the patch revie= w. Its intentionally kept it as gSmst because of the below reason. 2. AmdMmSaveStateLib and IntelMmSaveStateLib depend on SmmServicesTableLib.= Can they depend on MmServicesTableLib instead? [Attar, AbdulLateef (Abdul Lateef)] MmSaveStateLib is mainly used by PiSmmC= puDxeSmm driver which still uses Smm convention and preserve the SAVE_STATE= pointed by gSmst(Instead of gMmst). Hence I don't think we can move to MmServicesTableLib. Thanks AbduL -----Original Message----- From: Ni, Ray Sent: Tuesday, July 11, 2023 1:40 PM To: Tan, Dun ; devel@edk2.groups.io; Attar, AbdulLateef = (Abdul Lateef) ; Chang, Abner Subject: RE: Use gMmst from MmServiceTableLib in MmSaveStateLib Caution: This message originated from an External Source. Use proper cautio= n when opening attachments, clicking links, or responding. Abdul, Can you please send a patch to fix MmSaveStateLib to use gMmst (instead of = gSmst)? Using gSmst forbids the lib instance be linked by standalone MM modules. Thanks, Ray > -----Original Message----- > From: Tan, Dun > Sent: Wednesday, July 5, 2023 4:42 PM > To: devel@edk2.groups.io; abdattar@amd.com > Cc: Ni, Ray > Subject: Use gMmst from MmServiceTableLib in MmSaveStateLib > > Hi Abdul, > > In the new MmSaveStateLib created in this patch set, gSmst from=20 > SmmServiceTableLib is used. This causes that only DXE_SMM_DRIVER type=20 > module can consume this lib but MM_STANDALONE type module cannot. > > In current edk2, there are different MmServicesTableLib and > SmmServicesTableLib: > StadaloneMmServicesTableLib(MmServicesTableLib|MM_STANDALONE): > initialize gMmst in standalone SMM env. > MmServicesTableLib(MmServicesTableLib|DXE_SMM_DRIVER): > initialize gMmst in legacy SMM env. > SmmServicesTableLib(SmmServicesTableLib|DXE_SMM_DRIVER): initialize=20 > gSmst in legacy SMM env. > > If MmSaveStateLib uses gMmst from MmServiceTableLib instead of gSmst,=20 > then MmSaveStateLib can be consumed by both DXE_SMM_DRIVER and=20 > MM_STANDALONE module. > Could you pls send patch to fix this? > > Thanks, > Dun > > -----Original Message----- > From: devel@edk2.groups.io On Behalf Of Abdul=20 > Lateef Attar via groups.io > Sent: Sunday, July 2, 2023 12:14 PM > To: devel@edk2.groups.io > Cc: Abdul Lateef Attar ; Paul Grimes=20 > ; Abner Chang ; Dong, Eric=20 > ; Ni, Ray ; Kumar, Rahul R=20 > ; Gerd Hoffmann ; Kinney,=20 > Michael D ; Gao, Liming=20 > ; Liu, Zhiguang ;=20 > Ard Biesheuvel ; Yao, Jiewen=20 > ; Justen, Jordan L > Subject: [edk2-devel] [PATCH v15 0/8] Adds AmdSmmCpuFeaturesLib and=20 > MmSaveStateLib > > Backward-compatibility changes: > This patch series removes the SmmCpuFeaturesReadSaveStateRegister > and SmmCpuFeaturesWriteSaveStateRegister interface/function. > SmmReadSaveState() and SmmWriteSaveState() now directly invokes=20 > MmSaveStateLib > routines to save/restore registers. > > PR: https://github.com/tianocore/edk2/pull/4597 > > V15: Delta changes > Rebase the branch and fix the merge conflicts. > V14: Delta changes > Added @note to the MmSaveStateLib.h. > SaveState(Read/Write) of > EFI_SMM_SAVE_STATE_REGISTER_PROCESSOR_ID/EFI_MM_SAVE_STATE_REGIS > TER_PROCESSOR_ID > is handled by PiSmmCpuDxeSmm driver. > Fixed PatchCheck warnings. > V13: Delta changes > Address review comments from Ray Ni > Changed the BASE _NAME of AmdSmmCpuFeaturesLib. > Removed EFIAPI from local function. > Removed CpuIndex parameter from MmSaveStateGetRegisterLma > Modifed MmSaveStateGetRegisterIndex () to accept RegOffset > as second parameter. > Removed FILE_GUID library instance for intel implemention from=20 > UefiCpuPkg.dsc. > V12: > Addressed review comments from Michael. > Added LibraryClasses to .inf file. > removed duplicate MACRO definations. > Moved related MACRO defination to respective file. > V11: Delta changes > Drop the OVMF implementation of MmSaveStateLib > V10: Delta changes: > Addressed review comments from Abner. > V9: Delta changes: > Addressed review comments. > Rename to MmSaveStateLib. > Also rename SMM_ defines to MM_. > Implemented OVMF MmSaveStateLib. > Removes SmmCpuFeaturesReadSaveStateRegister and=20 > SmmCpuFeaturesWriteSaveStateRegister > function interface. > V8 delta changes: > Addressed review comments from Abner, > Fix the whitespace error. > Seperate the Ovmf changes to another patch > V7 delta changes: > Adds SmmSmramSaveStateLib for Intel processor. > Integrate SmmSmramSaveStateLib library. > V6 delta changes: > Addressed review comments for Ray NI. > removed unnecessary EFIAPI. > V5 delta changes: > rebase to master branch. > updated Reviewed-by > V4 delta changes: > rebase to master branch. > added reviewed-by. > V3 delta changes: > Addressed review comments from Abner chang. > Re-arranged patch order. > > Cc: Paul Grimes > Cc: Abner Chang > Cc: Eric Dong > Cc: Ray Ni > Cc: Rahul Kumar > Cc: Gerd Hoffmann > Cc: Michael D Kinney > Cc: Liming Gao > Cc: Zhiguang Liu > Cc: Ard Biesheuvel > Cc: Jiewen Yao > Cc: Jordan Justen > Cc: Abdul Lateef Attar > > Abdul Lateef Attar (8): > MdePkg: Adds AMD SMRAM save state map > UefiCpuPkg: Adds MmSaveStateLib library class > UefiCpuPkg: Implements MmSaveStateLib library instance > UefiCpuPkg/SmmCpuFeaturesLib: Restructure arch-dependent code > UefiCpuPkg: Implements SmmCpuFeaturesLib for AMD Family > UefiCpuPkg: Implements MmSaveStateLib for Intel > UefiCpuPkg: Removes SmmCpuFeaturesReadSaveStateRegister > OvmfPkg: Uses MmSaveStateLib library > > UefiCpuPkg/UefiCpuPkg.dec | 4 + > OvmfPkg/OvmfPkgIa32.dsc | 1 + > OvmfPkg/OvmfPkgIa32X64.dsc | 3 + > OvmfPkg/OvmfPkgX64.dsc | 1 + > UefiCpuPkg/UefiCpuPkg.dsc | 12 + > .../MmSaveStateLib/AmdMmSaveStateLib.inf | 34 + > .../MmSaveStateLib/IntelMmSaveStateLib.inf | 34 + > .../AmdSmmCpuFeaturesLib.inf | 38 + > UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.inf | 2 + > .../Include/Register/Amd/SmramSaveStateMap.h | 194 +++++ > UefiCpuPkg/Include/Library/MmSaveStateLib.h | 74 ++ > .../Include/Library/SmmCpuFeaturesLib.h | 52 -- > .../Library/MmSaveStateLib/MmSaveState.h | 94 +++ > UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.h | 56 +- > .../SmmCpuFeaturesLib/SmmCpuFeaturesLib.c | 767 ------------------ > .../Library/MmSaveStateLib/AmdMmSaveState.c | 309 +++++++ > .../Library/MmSaveStateLib/IntelMmSaveState.c | 410 ++++++++++ > .../MmSaveStateLib/MmSaveStateCommon.c | 132 +++ > .../SmmCpuFeaturesLib/AmdSmmCpuFeaturesLib.c | 387 +++++++++ > .../IntelSmmCpuFeaturesLib.c | 70 ++ > .../SmmCpuFeaturesLibCommon.c | 128 --- > UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.c | 11 +- > UefiCpuPkg/PiSmmCpuDxeSmm/SmramSaveState.c | 500 +----------- > MdePkg/MdePkg.ci.yaml | 4 +- > 24 files changed, 1809 insertions(+), 1508 deletions(-) create mode > 100644 UefiCpuPkg/Library/MmSaveStateLib/AmdMmSaveStateLib.inf > create mode 100644 > UefiCpuPkg/Library/MmSaveStateLib/IntelMmSaveStateLib.inf > create mode 100644 > UefiCpuPkg/Library/SmmCpuFeaturesLib/AmdSmmCpuFeaturesLib.inf > create mode 100644 MdePkg/Include/Register/Amd/SmramSaveStateMap.h > create mode 100644 UefiCpuPkg/Include/Library/MmSaveStateLib.h > create mode 100644 UefiCpuPkg/Library/MmSaveStateLib/MmSaveState.h > create mode 100644 UefiCpuPkg/Library/MmSaveStateLib/AmdMmSaveState.c > create mode 100644 > UefiCpuPkg/Library/MmSaveStateLib/IntelMmSaveState.c > create mode 100644 > UefiCpuPkg/Library/MmSaveStateLib/MmSaveStateCommon.c > create mode 100644 > UefiCpuPkg/Library/SmmCpuFeaturesLib/AmdSmmCpuFeaturesLib.c > > -- > 2.25.1 > > > >=20 >