From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by mx.groups.io with SMTP id smtpd.web10.11276.1682652142072248434 for ; Thu, 27 Apr 2023 20:22:22 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="unable to parse pub key" header.i=@intel.com header.s=intel header.b=IJXlJpkm; spf=pass (domain: intel.com, ip: 134.134.136.24, mailfrom: ray.ni@intel.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1682652142; x=1714188142; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=JplYd174Z05vvRJdUxeYiECZ6L6GY+bpWgpNGNYsnF0=; b=IJXlJpkmUlaKvcOFS3Bl2Bpinb9t7WzRLsxnbr01FCs+8ZtvvBLZiQ0B YDYhLhRusMU6AqzaWFXM4/qhEbJX5HVAvN5EL+/tyiln7J0skKGG58xT2 /dPZLliuaBIo5HQS/27OKxVsRIL5cJZrYxHdICd2+rhooBo60u7wozpeg Bvx1tq1hYx3oCsk8ZDQDB2Dsk6SfU6ZSPRW2JYUuntUslFaaBDwjpZBti M4f58shLrCx+QlOohAxwSHzQrODEYa7OChg8OPlBrubO0yKeXzXjXCJS2 10t3S7daU/MozbVnISeCtPshxJTeRPmvSAo6csZ1w79PTzykCXN0zb2iO w==; X-IronPort-AV: E=McAfee;i="6600,9927,10693"; a="349658446" X-IronPort-AV: E=Sophos;i="5.99,233,1677571200"; d="scan'208";a="349658446" Received: from orsmga008.jf.intel.com ([10.7.209.65]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 27 Apr 2023 20:21:39 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10693"; a="725191532" X-IronPort-AV: E=Sophos;i="5.99,233,1677571200"; d="scan'208";a="725191532" Received: from fmsmsx603.amr.corp.intel.com ([10.18.126.83]) by orsmga008.jf.intel.com with ESMTP; 27 Apr 2023 20:20:42 -0700 Received: from fmsmsx601.amr.corp.intel.com (10.18.126.81) by fmsmsx603.amr.corp.intel.com (10.18.126.83) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Thu, 27 Apr 2023 20:20:05 -0700 Received: from fmsedg601.ED.cps.intel.com (10.1.192.135) by fmsmsx601.amr.corp.intel.com (10.18.126.81) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23 via Frontend Transport; Thu, 27 Apr 2023 20:20:05 -0700 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (104.47.57.174) by edgegateway.intel.com (192.55.55.70) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.23; Thu, 27 Apr 2023 20:08:11 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=AbNreVNTviFgiSCW+oaj8EBQkbDTcwRrthU4x5DNf5f4FvTybQxjwjDuiajypVfIW4CLR9J5gT9zyrMvEMM0GF+BfSOQHTPKTAdrw0yeAEtz+rPmsY71Cvsrk1cqLPj1468NwdHCUlMtBFJgY13J7jtyAGOlVN1D/7T4pO+474kmiAju3LcgDheYbI6KDMO8GTLgfGmTx92TrVGhKjXl5lah7xdmsRFFPPv2Z8Wr19FnT6ZVNg/igGchqdBpVk5Gi5Po1z+UMK8zsNjcvBTPU8SW6gepcooCEyJ9D4eX4JOekfy/IPrDQIDGE4OFufyR4tEdpnmbu/NMnAR473ei+g== 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=Bzmb+1UUFarGpRsxEfMcMQEmRJKDss/PQtBq+ZHv3hc=; b=mKoNyNMJwHUcmQXlzD1XsTrKdZAImuC9S3KV89bds1YEGKGfjwPwNOk28YwcdORLL+yKiCbjgCBPSM3gS5jk4mIJFAVLJ00IYcB8cqP5DJJIe5QHZNBRfiTsfqkayZXhpfMyB50PPAuTfHN9/NJZmgP8ojfoMoUQoTJizhbNoZDeXfnvU6leoS7DPIihNQ5x8QusmServqGkwWjglW0NAd2yC0CppUc/lxPTB9RvlIyVKuKNt8YbALQZqNY5YQZuAiriDVOfx6rcW1zvIJXqoXlRn51XF0EhVLBEInJJIr9zfLCv/0v33dnKCRAoowUmve5iMKsup5DlOJJ1TN5Dig== 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 MN6PR11MB8244.namprd11.prod.outlook.com (2603:10b6:208:470::14) by SA3PR11MB7627.namprd11.prod.outlook.com (2603:10b6:806:320::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6340.21; Fri, 28 Apr 2023 03:08:03 +0000 Received: from MN6PR11MB8244.namprd11.prod.outlook.com ([fe80::892b:b8e6:bab7:635d]) by MN6PR11MB8244.namprd11.prod.outlook.com ([fe80::892b:b8e6:bab7:635d%5]) with mapi id 15.20.6340.023; Fri, 28 Apr 2023 03:08:03 +0000 From: "Ni, Ray" To: "devel@edk2.groups.io" , "Ke, VincentX" CC: "Chiu, Chasel" , "Desimone, Nathaniel L" , "Oram, Isaac W" , "Gao, Liming" , "Dong, Eric" Subject: Re: [edk2-devel] [PATCH v3] MinPlatformPkg: Update HWSignature filed in FADT Thread-Topic: [edk2-devel] [PATCH v3] MinPlatformPkg: Update HWSignature filed in FADT Thread-Index: AQHZeX0qP4YvpiUeA0Wpu4LZ1vxPNq9ACZqw Date: Fri, 28 Apr 2023 03:08:02 +0000 Message-ID: References: <20230428025659.692-1-vincentx.ke@intel.com> In-Reply-To: <20230428025659.692-1-vincentx.ke@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-traffictypediagnostic: MN6PR11MB8244:EE_|SA3PR11MB7627:EE_ x-ms-office365-filtering-correlation-id: df0017f5-99ef-44be-b66a-08db4795c7b1 x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: vmogmq1uccXJWloW6NEgb3A8p2ZtA3bqsokk/yR0llO3FWkt7eiQGZt1XQZ8pwAhH5h13eH9oZympKivM01dyKCDsOAShG6QEF7v0IT1qTM42Pthtrgy6Hz2lPvwCW+w3P4n6M3Q7FyJGASn8/8xD/4+k0ZcnGrpw9QJUWVrzw/Xdwr7je/Hn19YQ2JC9ZMLmzT4gSSEK6G48/y4JzSCsQZKdERRxtnbc5W+8nN2MAYaX009fBEp16xrVvyWbO8ZU8EhfnlavVCGV6tvCrHuuoo+6bg3QFcDCeLN6pQE7Nw2yEV990QbQGqK1HTkYiAaDMMWaEsvNCaIWUxiI0KZOkVTwRccWgQZarHz+znlsAgM4TZiTlZ84bfQf+klod9z8fKecUQ/1Kki7JRdUxfkqYKbTzb0XdbgtQl/QeqzDg9LqcCCfnSQKaVUGrcK8Bd+Cz4IRLkgBrZuL9GeELlgMoBVe6wnX/BBN/6URia/uG96V3ebDulnRTNCdZNhNNDwvUfj/Yc6/SMJjYe4vGd/gz5Hh+b3IS++SG6/mJ4GAXDXyQZuOyyhPP53ZdnyZYmc31kP/aM/eaHGevYkr2ywoog/AlgXBWhwqNBIOw6K8TA/i/oIYwLvdXHGxweDepkttcjC5s0JMAxe9TfjW028tA== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MN6PR11MB8244.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(366004)(346002)(39860400002)(136003)(396003)(376002)(451199021)(54906003)(110136005)(478600001)(186003)(966005)(6636002)(9686003)(76116006)(64756008)(66556008)(66946007)(53546011)(7696005)(4326008)(2906002)(6506007)(71200400001)(38100700002)(316002)(15650500001)(66476007)(55016003)(5660300002)(66446008)(41300700001)(8936002)(8676002)(52536014)(82960400001)(107886003)(122000001)(38070700005)(86362001)(83380400001)(33656002)(66899021);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?oy3ZpDGR3NAuwyuZXeS3rT0Pba6Sj3hDpB06qPpXBNJlAuk49/PJlA6FGL/L?= =?us-ascii?Q?VNSc77kJiIhv0PA18d4poONxFTOgDh1NwDUByhiQboujcDsr5gvbCt3Totxd?= =?us-ascii?Q?++mAxLbOHGF7jNka5fpAEK8TkkfBLBVJYIiRc9GmRILz0Z2q9Kfu6YK46fDG?= =?us-ascii?Q?m4O7b8wJ18KkWMiqAXxBAWKVPr3ChRRejVF3pFDOvOz3O3nyWAGpXyM3b2Hp?= =?us-ascii?Q?uLvVTMN3Hw9Tv1YlbvgND0n3o4PdFqjVeFsdKxjWHw4KiKkT76QuBbPPY19j?= =?us-ascii?Q?GDIARkyRu4y7F4Eiv1TSZ0PI0CN/upXrD4TvkqtmR+1R8PI50gXZzIJzklU2?= =?us-ascii?Q?kaiXChluBgb9qVEscXE36OYvPGN/AYBJs895SV8tbgICjhR+UwRL/vuq7MAe?= =?us-ascii?Q?c7YCdwkq2AOY++Ny1q+YeofpqBJtCICUGRyvnmRyhWPBgxZ1PyocRV6IMHrS?= =?us-ascii?Q?NTnoUYlvWr3VQLVA1aUHuQkgR63dJ6jfiuD9lw7aEaVmjuPd20YxFW2yl0XB?= =?us-ascii?Q?VOWa7eGxmBMlu8XpNnDuJtmFzFSZ91TCrf3E57hQYjtm/ZgjbwWyPywctZTZ?= =?us-ascii?Q?MMAXT6Xeq8HqFPe3m0qOVjeEuJ/uS+7X8Yw0GqLJ5gmECxASuDxupDJsn9d+?= =?us-ascii?Q?uLSegxvVRmhXGIN8rfrN6l7xVaVYtEo3IU1Z8l0Bm7wllgk9xGEGTcm1ZQoV?= =?us-ascii?Q?JZsySDCDbYqttVVcuije5GhF73KpsC8zUa89B3mUvSVJa1dFl111CuihGPti?= =?us-ascii?Q?VnuBW23DgCmGki9uRZg6r5B8kS2j1qYsHB0gg0kT+zlVYJX4RhkiyJN3ZzLs?= =?us-ascii?Q?4NpszvdV1TiUrBJeRAzNFOMPt+15Y/xZgG/dtwvHI/TFjbqNj53x+pQtOLXz?= =?us-ascii?Q?UY9GHXIh6ygJKlmNBR+8gvAMX/BADW7iocWYz/LpmHfgQ4V3mhnst3Qu3uKW?= =?us-ascii?Q?El4wRaiVTiDEfgbBMQrKPXaW8W2xn6zifOR6UUjI650SUX2PEWAbeA3t2+jG?= =?us-ascii?Q?sqf0ZXrWNmuJH83GlYAQ4MY15DoqInD/cesFjt2JFWBl7iI7A2HiiCC7aqqN?= =?us-ascii?Q?KkurImptmynEOKIQ/v6J0SU53RYc3AfTjsPLWCv9MD2yvISmPlkOaYLlW1zz?= =?us-ascii?Q?bulQT0asIyeq2SOBbMSyXymwyLHJw5eF4M/fMAEhGu/ThcTgyAJE3q4kYj1h?= =?us-ascii?Q?xdyjjMiwK1YC41w8FHfEPzZNA0FHOw9TYFyUthzajqukQwbItbgX6GzXBhkB?= =?us-ascii?Q?exjgynuvrZjWWLL7350smY8+1Rv3im7jmI5rUP/jMx3uf85uelPa+PQxYhg8?= =?us-ascii?Q?7//oklPA7XOOJrlCL3NdayY/WM8FJ8mJ2SIjgcztyDA9nwiEZvYHroUs6q1u?= =?us-ascii?Q?7c0PbRl7ehWGmlYuDnQFmdMZWUU+Ooa7uoIL2UnZU2Fi8syzGu6IxW4OfKFC?= =?us-ascii?Q?BSKbuQFhnZEngtBSarWctVN3ivNxw0bAKO/PuJzYjGNVZtVVecF3xdWnyGTa?= =?us-ascii?Q?U4Cv+YbK57Ny2ffQfNPNPZ3bH758iMAgkRyafUW3wVosCRMichgjxwsxQA?= =?us-ascii?Q?=3D=3D?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MN6PR11MB8244.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: df0017f5-99ef-44be-b66a-08db4795c7b1 X-MS-Exchange-CrossTenant-originalarrivaltime: 28 Apr 2023 03:08:02.8688 (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: kOisB9BxGci9jvy2oqDG0j6biIVkRypWhJCOwIGojltN1tDwl0iC1BjH238kLCXGkwrHRgJiiSxMQbo5a54JFQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA3PR11MB7627 Return-Path: ray.ni@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Vincent, It's an interesting patch. The original logic is to use the HardwareSignature field to indicate any ch= anges in adding/removing PCI devices. Your new logic is to expand this field to indicate any changes in any table= s when FADT version is > 6.3. Why? > -----Original Message----- > From: devel@edk2.groups.io On Behalf Of > VincentX Ke > Sent: Friday, April 28, 2023 10:57 AM > To: devel@edk2.groups.io > Cc: Ke, VincentX ; Chiu, Chasel > ; Desimone, Nathaniel L > ; Oram, Isaac W > ; Gao, Liming ; Dong, > Eric > Subject: [edk2-devel] [PATCH v3] MinPlatformPkg: Update HWSignature > filed in FADT >=20 > From: VincentX Ke >=20 > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3D4428 >=20 > Calculating CRC based on checksum from all ACPI tables. > Update HWSignature filed in FADT based on CRC while ACPI table changed. >=20 > Signed-off-by: VincentX Ke > Cc: Chasel Chiu > Cc: Nate DeSimone > Cc: Isaac Oram > Cc: Liming Gao > Cc: Eric Dong > --- > Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.c | 110 > +++++++++++++++++++- > Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.inf | 1 + > 2 files changed, 110 insertions(+), 1 deletion(-) >=20 > diff --git a/Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.c > b/Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.c > index e967031a3b..d84c1d4f6d 100644 > --- a/Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.c > +++ b/Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.c > @@ -1285,6 +1285,108 @@ IsHardwareChange ( > FreePool (HWChange); >=20 > } >=20 >=20 >=20 > +/** >=20 > + This function calculates RCR based on Checksum from all ACPI tables. >=20 > + It also calculates CRC and provides as HWSignature filed in FADT table= . >=20 > +**/ >=20 > +VOID >=20 > +IsAcpiTableChange ( >=20 > + VOID >=20 > + ) >=20 > +{ >=20 > + EFI_STATUS Status; >=20 > + UINTN Index; >=20 > + UINTN AcpiTableCount; >=20 > + UINT32 Table; >=20 > + UINT32 CRC; >=20 > + UINT32 *AcpiTable; >=20 > + EFI_ACPI_6_5_ROOT_SYSTEM_DESCRIPTION_POINTER *Rsdp; >=20 > + EFI_ACPI_DESCRIPTION_HEADER *Rsdt; >=20 > + EFI_ACPI_DESCRIPTION_HEADER *Xsdt; >=20 > + EFI_ACPI_6_5_FIRMWARE_ACPI_CONTROL_STRUCTURE *FacsPtr; >=20 > + EFI_ACPI_6_5_FIXED_ACPI_DESCRIPTION_TABLE *pFADT; >=20 > + >=20 > + AcpiTableCount =3D 0; >=20 > + AcpiTable =3D NULL; >=20 > + Rsdp =3D NULL; >=20 > + Rsdt =3D NULL; >=20 > + Xsdt =3D NULL; >=20 > + FacsPtr =3D NULL; >=20 > + pFADT =3D NULL; >=20 > + >=20 > + DEBUG ((DEBUG_INFO, "%a() - Start\n", __FUNCTION__)); >=20 > + >=20 > + Status =3D EfiGetSystemConfigurationTable (&gEfiAcpiTableGuid, (VOID > **)&Rsdp); >=20 > + if (EFI_ERROR (Status) || (Rsdp =3D=3D NULL)) { >=20 > + return; >=20 > + } >=20 > + >=20 > + // >=20 > + // ACPI table count starts with 2 as RSDT and XSDT are already located= . >=20 > + // Then add ACPI tables found by XSDT and FADT. >=20 > + // >=20 > + Rsdt =3D (EFI_ACPI_DESCRIPTION_HEADER *)(UINTN)Rsdp- > >RsdtAddress; >=20 > + Xsdt =3D (EFI_ACPI_DESCRIPTION_HEADER *)(UINTN)Rsdp- > >XsdtAddress; >=20 > + AcpiTableCount =3D AcpiTableCount + 2; >=20 > + AcpiTableCount =3D AcpiTableCount + (Xsdt->Length - sizeof > (EFI_ACPI_DESCRIPTION_HEADER))/sizeof (UINT64); >=20 > + >=20 > + for (Index =3D sizeof (EFI_ACPI_DESCRIPTION_HEADER); Index < (Xsdt- > >Length); Index =3D Index + sizeof (UINT64)) { >=20 > + Table =3D *((UINT32 *)((UINT8 *)Xsdt + Index)); >=20 > + if (((EFI_ACPI_DESCRIPTION_HEADER *)(UINTN)Table)->Signature =3D=3D > EFI_ACPI_6_5_FIXED_ACPI_DESCRIPTION_TABLE_SIGNATURE) { >=20 > + pFADT =3D (EFI_ACPI_6_5_FIXED_ACPI_DESCRIPTION_TABLE > *)(UINTN)Table; >=20 > + if ((pFADT->XDsdt !=3D 0) || (pFADT->Dsdt !=3D 0)) { >=20 > + AcpiTableCount =3D AcpiTableCount + 1; >=20 > + } >=20 > + } >=20 > + } >=20 > + >=20 > + // >=20 > + // Allocate memory for founded ACPI tables. >=20 > + // >=20 > + AcpiTable =3D AllocateZeroPool (sizeof (UINT32) * AcpiTableCount); >=20 > + if (AcpiTable =3D=3D NULL) { >=20 > + return; >=20 > + } >=20 > + >=20 > + AcpiTableCount =3D 0; >=20 > + AcpiTable[AcpiTableCount++] =3D Rsdt->Checksum; >=20 > + AcpiTable[AcpiTableCount++] =3D Xsdt->Checksum; >=20 > + >=20 > + for (Index =3D sizeof (EFI_ACPI_DESCRIPTION_HEADER); Index < (Xsdt- > >Length); Index =3D Index + sizeof (UINT64)) { >=20 > + Table =3D *((UINT32 *)((UINT8 *)Xsdt + Index))= ; >=20 > + AcpiTable[AcpiTableCount++] =3D ((EFI_ACPI_DESCRIPTION_HEADER > *)(UINTN)Table)->Checksum; >=20 > + if (((EFI_ACPI_DESCRIPTION_HEADER *)(UINTN)Table)->Signature =3D=3D > EFI_ACPI_6_5_FIXED_ACPI_DESCRIPTION_TABLE_SIGNATURE) { >=20 > + pFADT =3D (EFI_ACPI_6_5_FIXED_ACPI_DESCRIPTION_TABLE > *)(UINTN)Table; >=20 > + if (pFADT->XDsdt !=3D 0) { >=20 > + AcpiTable[AcpiTableCount++] =3D ((EFI_ACPI_DESCRIPTION_HEADER > *)(UINTN)pFADT->XDsdt)->Checksum; >=20 > + } else { >=20 > + AcpiTable[AcpiTableCount++] =3D ((EFI_ACPI_DESCRIPTION_HEADER > *)(UINTN)pFADT->Dsdt)->Checksum; >=20 > + } >=20 > + } >=20 > + } >=20 > + >=20 > + // >=20 > + // pFADT table not found. >=20 > + // >=20 > + if (pFADT =3D=3D NULL) { >=20 > + return; >=20 > + } >=20 > + >=20 > + // >=20 > + // Calculate CRC value. >=20 > + // >=20 > + Status =3D gBS->CalculateCrc32 (AcpiTable, AcpiTableCount, &CRC); >=20 > + DEBUG ((DEBUG_INFO, "CRC =3D %x and Status =3D %r\n", CRC, Status)); >=20 > + >=20 > + // >=20 > + // Set HardwareSignature value based on CRC value. >=20 > + // >=20 > + FacsPtr =3D > (EFI_ACPI_6_5_FIRMWARE_ACPI_CONTROL_STRUCTURE *)(UINTN)pFADT- > >FirmwareCtrl; >=20 > + FacsPtr->HardwareSignature =3D CRC; >=20 > + FreePool (AcpiTable); >=20 > + DEBUG ((DEBUG_INFO, "%a() - End\n", __FUNCTION__)); >=20 > +} >=20 > + >=20 > VOID >=20 > UpdateLocalTable ( >=20 > VOID >=20 > @@ -1329,7 +1431,13 @@ AcpiEndOfDxeEvent ( > // >=20 > // Calculate Hardware Signature value based on current platform > configurations >=20 > // >=20 > - IsHardwareChange (); >=20 > + if ((PcdGet8 (PcdFadtMajorVersion) <=3D > EFI_ACPI_6_3_FIXED_ACPI_DESCRIPTION_TABLE_REVISION) && >=20 > + (PcdGet8 (PcdFadtMinorVersion) <=3D > EFI_ACPI_6_3_FIXED_ACPI_DESCRIPTION_TABLE_MINOR_REVISION)) >=20 > + { >=20 > + IsHardwareChange (); >=20 > + } else { >=20 > + IsAcpiTableChange (); >=20 > + } >=20 > } >=20 >=20 >=20 > /** >=20 > diff --git a/Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.i= nf > b/Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.inf > index 694492112b..f47cc3908d 100644 > --- a/Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.inf > +++ b/Platform/Intel/MinPlatformPkg/Acpi/AcpiTables/AcpiPlatform.inf > @@ -128,6 +128,7 @@ > gEfiGlobalVariableGuid ## CONSUMES >=20 > gEfiHobListGuid ## CONSUMES >=20 > gEfiEndOfDxeEventGroupGuid ## CONSUMES >=20 > + gEfiAcpiTableGuid ## CONSUMES >=20 >=20 >=20 > [Depex] >=20 > gEfiAcpiTableProtocolGuid AND >=20 > -- > 2.39.2.windows.1 >=20 >=20 >=20 > -=3D-=3D-=3D-=3D-=3D-=3D > Groups.io Links: You receive all messages sent to this group. > View/Reply Online (#103734): > https://edk2.groups.io/g/devel/message/103734 > Mute This Topic: https://groups.io/mt/98551423/1712937 > Group Owner: devel+owner@edk2.groups.io > Unsubscribe: https://edk2.groups.io/g/devel/unsub [ray.ni@intel.com] > -=3D-=3D-=3D-=3D-=3D-=3D >=20