From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by mx.groups.io with SMTP id smtpd.web10.64243.1638861796113089458 for ; Mon, 06 Dec 2021 23:23:16 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=X9gNJ8wN; spf=pass (domain: intel.com, ip: 192.55.52.136, mailfrom: eric.dong@intel.com) X-IronPort-AV: E=McAfee;i="6200,9189,10190"; a="217541791" X-IronPort-AV: E=Sophos;i="5.87,293,1631602800"; d="scan'208";a="217541791" Received: from fmsmga005.fm.intel.com ([10.253.24.32]) by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 06 Dec 2021 23:23:15 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.87,293,1631602800"; d="scan'208";a="750817162" Received: from orsmsx603.amr.corp.intel.com ([10.22.229.16]) by fmsmga005.fm.intel.com with ESMTP; 06 Dec 2021 23:23:14 -0800 Received: from orsmsx604.amr.corp.intel.com (10.22.229.17) 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.2308.20; Mon, 6 Dec 2021 23:23:14 -0800 Received: from ORSEDG601.ED.cps.intel.com (10.7.248.6) by orsmsx604.amr.corp.intel.com (10.22.229.17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.20 via Frontend Transport; Mon, 6 Dec 2021 23:23:14 -0800 Received: from NAM10-MW2-obe.outbound.protection.outlook.com (104.47.55.100) by edgegateway.intel.com (134.134.137.102) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2308.20; Mon, 6 Dec 2021 23:23:13 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=YJzydwbi5xmJWyu/hd5alarSQXAQmR73Ev1F3OxWx39WfMXn1if/kal/i0KUF6ir4e6v8ZLv1vWUntdzNICLzodGv0DI4AwJ/715GPlKFs+GrIoApAOaDPlEI5tBqRFV9cn+8swSeaw3+WvkO4YWXzur3/CRa+ZBlcZXjorLze0iiuYY1+X2YeYGYPpRGCuIoqWNpPwprIrxHU+CsinR2vjFLUxqvfPq4yoPD5XLMTAs5X73ic02U18r79XXkGnzU8vdGf+buo7p5AO2/h+0tzXATNRA5GbkQaMsxmv8yyhhNyx8qZ4Whw7cjCaLSO1qE9jfQg9mARX3fH4o+nWJ0g== 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=9httFYJQTn75P3QEyLPyFqxgKDxT/k2idhERto8y6pg=; b=aaF4VTeR7rmFTK8g5qx17HentxS7iaT296MZBsjkSPFYY6hsqPu3gBOLnkXoGmDpBntiyhuaS1iAWK5c4WCO2F4J6yd2twLK9+ZVjLJrYrzTfXhp7fBRs/C5pti/7UDZXDCVslai4A+/dPFY7U7Lexi1WxEo1Ml6vMwqnpUfZ5ny7Gr3KfxBXXAQKBMPz2QzVBq34Z6hFOZZgbrdRF63E+CBah1TY1fW2k2azlpq1jr6AksqPEKsV48If5otdnqzP4K7lev960/jxwel0UVdTAzCmCsX8BqdCFp93SraNWjvAjUncNKBAY2cWbCRCz1UZDyxwJUA/Q2TQClyHojlBQ== 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=9httFYJQTn75P3QEyLPyFqxgKDxT/k2idhERto8y6pg=; b=X9gNJ8wNOG7G/7j1+xJZJBD6TZ1HiHjKnal91XG5fYX/xoLdALu30A4C2+VJG+4llPb5ahVJaKi+yc/UZFltynCYvhskj3vAJai7aLM/V9GijxmjWCAMaeafolyaA/SFW8ksPyE4E+POypfUY0MOQ0RRrI+DZl4IrRubnC0wBq8= Received: from DM8PR11MB5575.namprd11.prod.outlook.com (2603:10b6:8:38::17) by DM8PR11MB5623.namprd11.prod.outlook.com (2603:10b6:8:25::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4734.28; Tue, 7 Dec 2021 07:23:12 +0000 Received: from DM8PR11MB5575.namprd11.prod.outlook.com ([fe80::7179:215c:3096:ffb3]) by DM8PR11MB5575.namprd11.prod.outlook.com ([fe80::7179:215c:3096:ffb3%4]) with mapi id 15.20.4755.022; Tue, 7 Dec 2021 07:23:12 +0000 From: "Dong, Eric" To: "Sravanthi, K KavyaX" , "devel@edk2.groups.io" CC: "Chiu, Chasel" , "Desimone, Nathaniel L" , Liming Gao Subject: Re: [Patch V2] MinPlatformPkg: Check if Acpi table is already installed. Thread-Topic: [Patch V2] MinPlatformPkg: Check if Acpi table is already installed. Thread-Index: AQHX6mjLvgX8MOlv6E2seOI0n9Co9awmoaxQ Date: Tue, 7 Dec 2021 07:23:12 +0000 Message-ID: References: <20211206061610.3316-1-k.kavyax.sravanthi@intel.com> In-Reply-To: <20211206061610.3316-1-k.kavyax.sravanthi@intel.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 60b4dd47-bbac-4bfe-ed73-08d9b9526d89 x-ms-traffictypediagnostic: DM8PR11MB5623:EE_ x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:7219; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 35vfjF2b5E/pzCDTxmVwmo6W/VMFZmXzjdcqmlt2ZGOROr3RucxBILhobAdmtORYBRAaTK+dw7/sUJnCScimTxwh6TY9XpGNYpTO5tMQXPSkT0qfd31HB4Y2BuCVZKf4FAmYcY+OISxCLSOKXOUeII16Wj9xsIMYKR1uz710n+iDUYlxDX22GjnkJMRAqiHvR7px4XoULnrDjVfspDOr574kIqkjY6pS32v2JpVwMZxJOjQX1iv5IbKruRdHVWqgW20fNGcTjpCNGbeo3kagQOOhPK0ZBaGV/jrOs+xMFB3B7lrXG40CDm53uONJiReubT4qXhphTkjBWasYdKe1cvd5Lven6aqcr5DNtYIs7rI/MCNp9GUcUDrWm6skiCHuKkp4WYKs4n1GRCIm4yfcctz3W3mM6/+gZvhZsShEHXOyuEsdxWOvxEOT8d/gmmN9gVqCpUwsQCOs8xF5MOi/g64DaAP2sUaCt3JbSswA+lFjOZpLkApYqrNMiQE80xkJnulcmbXfFLCGuC3w3bUYGaOy8APkXxI4EEX5tAe57r8Nc4Cl3NjvqFDkKI6/iphydPo70+qBo0IOwV3tQPYqAD+IMQ8lzK46nhxHTZbsC1v6vKjkXEq37ZFmjG1ZC1vNIZnCQ4skfhCo5fPT0qVUkRxAjDEG1f344e/YjTN36mpHQrCPkg0fxksgeLdbMECy05sN4/loY0VM5vK9fxYNiw== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM8PR11MB5575.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(366004)(33656002)(66446008)(316002)(86362001)(122000001)(54906003)(52536014)(38070700005)(82960400001)(8676002)(8936002)(38100700002)(2906002)(66556008)(66946007)(64756008)(5660300002)(66476007)(55016003)(4326008)(508600001)(76116006)(110136005)(26005)(186003)(53546011)(6506007)(83380400001)(9686003)(71200400001)(7696005);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?KYMPBDLRAfnJniK3xy8eMZo6WULJmco/8KWEI0XJsFUFokOWRlyYe2FtPAmQ?= =?us-ascii?Q?FCzpQP+D0WyF3hF+citbOIEvkoCRdbhRoxXRGwf4L3N+KD5yvC26IyN822WU?= =?us-ascii?Q?bzMnQiGCTBGhqG79KdqWirpvNwyZdlBbZxe4dVtQwjdYFhINkyn96UKkXwuB?= =?us-ascii?Q?EP8612jBoSQJPXte7RDCaDRyqAQXUt9kAsiqHMoP83nRTOvQxxgmxtjKhk4m?= =?us-ascii?Q?rMvHQEb8icctCJI6kmnamX3KOtAK/EnevkCBKtQB1w5b4y6kwqyOVb7g/SKA?= =?us-ascii?Q?o9VSqL3hKoY/bUnXhLdmh/cCNBKsaO2Fjni0Gpw46g6wOZcVdMDzpAg4CiWc?= =?us-ascii?Q?O65xDWNFvA8/5ToFMpbu36loFgNVjh2f9vCj6A+iHKI9jvs0X8WZYBo+S6Go?= =?us-ascii?Q?HKv9NHeXscbXMjRiBupW4DcB0fVRmnK4BqvxF8mjHHM5eUSd9lA/C/gXrZzb?= =?us-ascii?Q?TwOAjEhEGbHYwRNQcwsk1otz7E6uZNnpDi2IzAcS7Ns8TEap37LIrP90j2aR?= =?us-ascii?Q?QmthwJq6Nxi0i0F5iZo+1w5MPhRNlkn5mBeg/CgRSuntSkLZS//JuMXenbXg?= =?us-ascii?Q?7WjtpWQ/FtWldNP1Erj3zb/mQZtXIoUlxGEACSC3Ia5Zr6xtU2rDEOHx4smn?= =?us-ascii?Q?4TfUO+0V3BGvBMc2tM2ZuruWu8uyViQpuE9cfqc58h4SRnn/zoEeGlrQOcUD?= =?us-ascii?Q?oJDU0BPkNm++AWqPZdk2NHuCT+lWPZ69Z+ks96DLRxvXchev7XK3NZ4Gc3bL?= =?us-ascii?Q?/WaDZ/PwcbiAMrWfwvlgTZLYw2TmsohNyltiHA9Skp7V2q+zTKfXUuK9Mp6j?= =?us-ascii?Q?RbubZGqL5nyB6DNgioUueBr3AYRd7NNKzYuTZ95eD3E5drBiogN9hpaJTn18?= =?us-ascii?Q?Dj76zmnkfh8wGzs4sfI/8ILFjqTtp56S/ZqEERwE7SxMouVrS+aJi6GH6Pgr?= =?us-ascii?Q?p96FoXYRBeQTrlj6mh+Wk2SLL7s7RvyN/l2v9DX7M0v86VcaObxwE5//3N9S?= =?us-ascii?Q?8chHWPdZHvPD+Ud+KEE/GkWKDpTOybYwDELP7PDGr1fsFJr55daexRxwFWbS?= =?us-ascii?Q?jtjYYIMs/zvx+912xW1T3cXmEFI0pgrSkVdY3OWDfgLBjbg7KYzguX+KOOOi?= =?us-ascii?Q?KaV4TZK0nhn3wv0rTGDqxIPU6WzJLg4J4lKMZ2DeMrzMqLwdglORbjUux86y?= =?us-ascii?Q?Zqgclyi00bRCcDpVvXiXhINIbfuwjRDO6DJpqctz9FlL8Y++lKzfMiH3gE+L?= =?us-ascii?Q?jl+V0T3UN4i2d2/tQ/eXYzQhNe2xdCBcXbikSNURoSomaKu7eF/N8YcO7n8S?= =?us-ascii?Q?uCaAB8OqiLss8ANy8kHy28RmQlX2mS+V8F2QjWogMZuGWKEQrbnAxB/nnSun?= =?us-ascii?Q?FyycZYTXVy1Z7+91VyIrMDAPph0nDWelKplsXUf0c1toYTFPxeYlGJmT3oGQ?= =?us-ascii?Q?QcO9NcWyt6WVhvBA4GlvI7QZQE2METvFi/8S31wjS27qlHgp/7jBRngtKT7R?= =?us-ascii?Q?S5GrnaNNS1FlUIecJzfc8/oioa5KI6tTMQKUd4J9l4351kbjtacblnA6iP0Z?= =?us-ascii?Q?CL8hFupY9H1J+xmCXy7cLij6ZrXTj5PYqCIPE+1BwbFeR4Rq2dGRp5OhDsL+?= =?us-ascii?Q?0dV+GnUcfz8ndLpz5qhZku4=3D?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DM8PR11MB5575.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 60b4dd47-bbac-4bfe-ed73-08d9b9526d89 X-MS-Exchange-CrossTenant-originalarrivaltime: 07 Dec 2021 07:23:12.5223 (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: 1jA3DYj7QiEma06AWs2BTFgmBPMrtvBJ/ituwsOfnMf0FLGT0W6fa3YzwevzjqGn1JjSsviMbVHNZj+/JRBXrw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM8PR11MB5623 Return-Path: eric.dong@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Reviewed-by: Eric Dong -----Original Message----- From: Sravanthi, K KavyaX =20 Sent: Monday, December 6, 2021 2:16 PM To: devel@edk2.groups.io Cc: Sravanthi, K KavyaX ; Chiu, Chasel ; Desimone, Nathaniel L ; = Liming Gao ; Dong, Eric Subject: [Patch V2] MinPlatformPkg: Check if Acpi table is already installe= d. Check if Acpi table is already installed by locating the first ACPI table i= n XSDT/RSDT based on Signature Cc: Chasel Chiu Cc: Nate DeSimone Cc: Liming Gao Cc: Eric Dong Signed-off-by: kavya Reviewed-by: Zhiguang Liu --- Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.c | 18 ++++++++= ++++++++++ 1 file changed, 18 insertions(+) diff --git a/Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.c b= /Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.c index 785cf4c2f9..dcbb8b7c7f 100644 --- a/Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.c +++ b/Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.c @@ -1048,12 +1048,21 @@ InstallMcfgFromScratch ( { EFI_STATUS = Status; EFI_ACPI_MEMORY_MAPPED_CONFIGURATION_BASE_ADDRESS_TABLE_HEADER = *McfgTable; + EFI_ACPI_COMMON_HEADER = *Mcfg; EFI_ACPI_MEMORY_MAPPED_ENHANCED_CONFIGURATION_SPACE_BASE_ADDRESS_ALLOCAT= ION_STRUCTURE *Segment; UINTN = Index; UINTN = SegmentCount; PCI_SEGMENT_INFO = *PciSegmentInfo; UINTN = TableHandle; =20 + Mcfg =3D (EFI_ACPI_COMMON_HEADER *) EfiLocateFirstAcpiTable ( + EFI_ACPI_3_0_PCI_EXPRESS_MEMORY_MAPP= ED_CONFIGURATION_SPACE_BASE_ADDRESS_DESCRIPTION_TABLE_SIGNATURE + ); if (Mcfg !=3D NULL) { + DEBUG ((DEBUG_INFO, "MCFG table already installed\n")); + return EFI_SUCCESS; + } + PciSegmentInfo =3D GetPciSegmentInfo (&SegmentCount); =20 McfgTable =3D AllocateZeroPool ( @@ -1365,6 +1374,7 @@ UpdateLocalTable ( { EFI_STATUS Status; EFI_ACPI_COMMON_HEADER *CurrentTable; + EFI_ACPI_COMMON_HEADER *Table; EFI_ACPI_TABLE_VERSION Version; UINTN TableHandle; UINTN Index; @@ -1372,6 +1382,14 @@ UpdateLocalTable ( for (Index =3D 0; Index < sizeof(mLocalTable)/sizeof(mLocalTable[0]); In= dex++) { CurrentTable =3D mLocalTable[Index]; =20 + Table =3D (EFI_ACPI_COMMON_HEADER *) EfiLocateFirstAcpiTable (CurrentT= able->Signature); + if (Table !=3D NULL) { + DEBUG ((DEBUG_INFO, "Acpi table with signature=3D%c%c%c%c already in= stalled\n", + ((CHAR8*)&CurrentTable->Signature)[0], ((CHAR8*)&CurrentTable-= >Signature)[1], + ((CHAR8*)&CurrentTable->Signature)[2], ((CHAR8*)&CurrentTable-= >Signature)[3])); + continue; + } + PlatformUpdateTables (CurrentTable, &Version); =20 TableHandle =3D 0; -- 2.16.2.windows.1