From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from EUR04-HE1-obe.outbound.protection.outlook.com (EUR04-HE1-obe.outbound.protection.outlook.com [40.107.7.85]) by mx.groups.io with SMTP id smtpd.web09.1280.1639588801112631574 for ; Wed, 15 Dec 2021 09:20:01 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@armh.onmicrosoft.com header.s=selector2-armh-onmicrosoft-com header.b=bkxMnsn0; spf=pass (domain: arm.com, ip: 40.107.7.85, mailfrom: christopher.jones@arm.com) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ecO7bx4YHTAdHI0AR5ICeFVM5YUxoakhahzpzYPirqcp408BYNcbxffSGH7UawHdfsZTTVMgW/MVRhcjPrMFpzT439URTYhWiymYphISgTIubDOd2pJe/uIQHr+d0NS5sbYFvGGjeEpnAoSwFe6mFx/+yORMcCKQ2NovlYwOCUeBWhHJun/16y3Gw9EHG3OtAmM7rm8CZH+0Ik3deT9TLTx39N5V1au6TN8jQEsT7vkLFPkl7qxBPzDj4gEDX25zxkOYJ4JIVU+mUcIjT92QSVOLvllD2cOIeNHgnQeIQuDEa/0SstkaBp+a3Tml7W26Hya5VXL4QifvkTND9nPM+w== 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=hLqIkyoG0JjIEAQIrJNPNMyWglaxFgw7zgxNAuYU6us=; b=Ju+yJEKlzsobMHQVyzZQtDqXTziu61EohJHK9by1T7nXDNdywIyVz8DvnEd/pF/NYXaIHNNYhHv591Ww5b3+uzOgjLrODBKN6FfsN5tTE+62/lxzRsCKaB4Y5L9YtgkKnitUhS/sA36UxVXzrxAWtQRZpUkDfhju5WvtGZKJ0OCqYp3cKRGkbO7oMzwlrbwrluk9RYxm0cQQytiUnP9L/6pK9aOTE6zl5y0jITPtO+usH+GJaFS6BMiP18qboxE6uLyiuzbz3g2gOPvIEB4RJ8iVWh+286BqPFKFvvEdhCf2oJa6ZZghTzTWgDAMgtnU3ixaVvqiIslFPKlwrnVUSw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=hLqIkyoG0JjIEAQIrJNPNMyWglaxFgw7zgxNAuYU6us=; b=bkxMnsn09Iii5IVu896rNLK1KNqMQC1+5H/kr6Cepm3A7LaQsGKPk6w8Ofqh0RK3vWp0bIP1C9MjiOM8FE893cO3QWOJCQLU0BNX8Dj1JpTbbH7uHp/1R6TF4PIcBfHlWSxGjdjBqAOyiM51uObVR587HSjuYqY/uRCTD6FNcLU= Received: from VE1PR08MB5758.eurprd08.prod.outlook.com (2603:10a6:800:1a0::11) by VE1PR08MB5696.eurprd08.prod.outlook.com (2603:10a6:800:1ae::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4778.16; Wed, 15 Dec 2021 17:19:58 +0000 Received: from VE1PR08MB5758.eurprd08.prod.outlook.com ([fe80::c81e:87f6:288c:db76]) by VE1PR08MB5758.eurprd08.prod.outlook.com ([fe80::c81e:87f6:288c:db76%8]) with mapi id 15.20.4778.018; Wed, 15 Dec 2021 17:19:58 +0000 From: "Chris Jones" To: "devel@edk2.groups.io" CC: "ray.ni@intel.com" , "zhichao.gao@intel.com" , Sami Mujawar , nd Subject: [PATCH v1 7/9] ShellPkg: Add installed tables to parser collection Thread-Topic: [PATCH v1 7/9] ShellPkg: Add installed tables to parser collection Thread-Index: AQHX8csrVq5efuMxV0a+EsBN/o1YvQ== Date: Wed, 15 Dec 2021 17:19:58 +0000 Message-ID: <6f257415357b41eb86adacdc3c18f43a20211215154722.4860-8-christopher.jones@arm.com> References: <20211215154722.4860-1-christopher.jones@arm.com> In-Reply-To: <20211215154722.4860-1-christopher.jones@arm.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email received-spf: Pass (protection.outlook.com: domain of arm.com designates 40.67.248.234 as permitted sender) receiver=protection.outlook.com; client-ip=40.67.248.234; helo=nebula.arm.com; x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR08MB5758.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(366004)(38100700002)(71200400001)(4326008)(8936002)(122000001)(66946007)(91956017)(36756003)(2616005)(8676002)(37630700001)(38070700005)(83380400001)(6486002)(64756008)(66556008)(316002)(26005)(66446008)(86362001)(76116006)(66476007)(6506007)(5660300002)(508600001)(2906002)(54906003)(6916009)(186003)(6512007);DIR:OUT;SFP:1101; x-microsoft-antispam: BCL:0; x-ms-exchange-crosstenant-originalarrivaltime: 15 Dec 2021 15:47:57.4598 (UTC) x-ms-exchange-crosstenant-id: f34e5979-57d9-4aaa-ad4d-b122a662184d x-ms-exchange-transport-crosstenantheadersstamped: AM0PR08MB3875 x-ms-exchange-crosstenant-fromentityheader: HybridOnPrem x-ms-traffictypediagnostic: AM0PR08MB4161:EE_|DB5EUR03FT028:EE_|AM0PR08MB3875:EE_|VE1PR08MB5758:EE_|VE1PR08MB5696:EE_ x-ms-exchange-crosstenant-network-message-id: 2689cc42-a0f7-4c73-4799-08d9bfe24410 x-checkrecipientchecked: true x-eopattributedmessage: 1 x-ms-office365-filtering-correlation-id: 991f398a-c3b1-4136-7098-08d9bfef1edd x-checkrecipientrouted: true x-ms-oob-tlc-oobclassifiers: OLM:7691;OLM:7691;OLM:7691; x-ms-exchange-crosstenant-originalattributedtenantconnectingip: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] x-cr-mta-tid: 64aa7808 x-forefront-antispam-report-untrusted: CIP:40.67.248.234;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:nebula.arm.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(4636009)(36840700001)(46966006)(40470700001)(7696005)(6916009)(40460700001)(70206006)(26005)(70586007)(5660300002)(6666004)(508600001)(83380400001)(81166007)(86362001)(356005)(1076003)(186003)(4326008)(2906002)(2616005)(8936002)(47076005)(336012)(36756003)(8676002)(54906003)(82310400004)(36860700001)(316002)(426003)(36900700001);DIR:OUT;SFP:1101; x-microsoft-antispam-untrusted: BCL:0; x-microsoft-antispam-message-info-original: YaFTBUPIBCsnRfr/xLyTyJk+tv/5wpIfBaawO6FARGPJJS3a4le6BHuJ+cjSpFdJ1axFQ2yp11HvAuAcax/pOc6o9isuwLM4WQm4p8BSTBXNEYjIpANb7fy07qbyhRsQlOqiOUEWxhwvcMP9xvPpuhODC79zv9QTrgkAbaoB02pqqDEsE9Kq8MOkSNcqHytNZ5vAWsupfxCoLOlYDfy8K//kcNCio5w9qoUlD3PLTYl0ap942JwsmwC/2WG92MQSVBH62hs8bee70usaMtzUzBO7rMbjmb4m478nuxZQjVJBlp6M4WtqrMIhldIIk/hkVtY6U8DVlUx7RmswX6Z2GYeWW9fJ6Kfd2m5s7G8x/ZHqKh8H6B9JqsD+HTEentMawzJXpCeNIbBRItp9EZVcQ4t9g2XPHwo40krGc7StKfVl28wh45FdKTSSlXRCsVWnmtbHkku8liocb8rJH8UOruMs452EoqFOsAMK5sxLgKN6ozd+0TdCwvoCkS9U1klrWK3wWKRbF1gl7huoqevQgUqnGqL7wIiq8TU8jCzvSQ59f0PzD0pVGHa8V4u1iwrRky/cd9OKi8LbU1MSnsZYpP7xLfR5CFlyHaAObpxngn3+4kPIePxNjNA9hkt+/s5+cZStY+rYrP/WGpthU5yVazhCLx8nUmn80efrXU11lTTUT6/Hlg57ui2z+L5KQzCU8koDgSIWfhrmQABAcPUEdrqCWIwZHgjH0kyp9hMQpej8SqP+WcO5FY3aWF3VA1begQx93d6fNm7Wl8O0vD24xp9sZMsxwVplpSpAz05fbZqvP0c1M4SfhjSkRkcZrCdfZyhRVycBp9tkxmusQ+CTkRMGDS0O4kJqwp4g0cpRVS8UXnVNNvqjd+Pl7BbzWt1S x-ms-exchange-transport-crosstenantheadersstripped: DB5EUR03FT028.eop-EUR03.prod.protection.outlook.com x-ms-office365-filtering-correlation-id-prvs: 2689cc42-a0f7-4c73-4799-08d9bfe24410 x-ms-exchange-crosstenant-authas: Anonymous x-ms-exchange-crosstenant-authsource: DB5EUR03FT028.eop-EUR03.prod.protection.outlook.com x-microsoft-antispam-message-info: 9jxMZnLaAVex2u4Fgzp7FcfX3O31nzpErNd+X43ieRMbVZ13+9TzVR95BS2WC047NhOMmehLjLYnXJcx9fkU8MkK8PvstpAK+2CMTKDhoNmtN7Cn1xGKmo8xonDhj+oZnT6wlDbTjCt7QapvIlyx4a+UrSzK76gdSHPxenTNzWmal2P0bMRO9VouzaYWQ+DhL3RBFnvDML66XvOGYThZ0jylH1E+TwQa8eRzQ4aSea7dagkzfOg92HNkCYNwAssMOGqDflqC5FhO3iv7RaNhv6u79UR26kgp/2iDdwL5CmseFeZfCU/uXPb9Dr7R9zFDv922BCUFC+/Lydvj9D25l+7aMsZ4StbLLmnvckd1z00Hgaw2egV5xQ7EFFRce8/WFt9rjLOqMr4uHMbdlUUxI8/0YVT22I11Ab6jTlWfdU4QJ8J5DAZkaijYaLrnXQHMa5cyRivnJEj8Gw5SqXi4UXZzPYIereXF6eusa22eQkI1gzx1URboad2nlMDtUKUsHO+X7QHYL+af60tvQlgAc4VIh+QumYwGrJikPKcnPoLwz5OGjGXnZ6gey9k/rIwK4M1t4teiNgaBc/0mH1msnD2FTWzbmRr8W1GFQXUf28fi0TAemV7UruvaLyfgftG7vORhtG2bW+4bnWEfsmw5mzbnvnOmZ4HeaxgC4ImoNuOD6Hf3kp7tkeYnCDCY+DE2hxHQaEjfFwCRZvqwV+yFS+XAWCEpuYz16biNrRaK3VTGPsXSX3J44MvEV86wyPNdlq+7rT/uikDx5FdRWFJAEdzItSd+HzvdEL2ubO5VX7I= x-mailer: git-send-email 2.17.1 x-cr-mta-cid: 763332a115204f26 dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=zwj6dZhP2aou4l3cfXsFEG5TVW3KkD6SOPpBPI9j19k=; b=C8CTlsF/TANNCtQz6BXwYQ3CuXZ8gCPxNrI/ssqhDKrS+MjrZfQBvYWCbJF6eEtpZMSdb7nEWjr6ihHPMttQiofQNpaEGto5TIIeIj7/xd9L5sz0KYiQGMDKAEhj/m/BAg/x6NtYFZtZpko8SrzwvDWVI52JeN0pWbKUeECEcSI= suggested_attachment_session_id: d443e9e7-9a8f-a872-532b-ed2ff7aa6363 authentication-results: dkim=error (no key for signature) header.d=none;dmarc=none action=none header.from=arm.com; x-microsoft-antispam-prvs: nodisclaimer: true x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?Q?pFzZud4E0R4W9HgTEPsazvgkJjfR9EVHPtdnp77IxfdR7bSoUBSpRrcPKv?= =?iso-8859-1?Q?SGy4ZAbYseJ/S+lW6PfWN7E69ibkhk2C4YSdKwTxptJNHf8mmg18nF3sYN?= =?iso-8859-1?Q?17y22xHTmL/MoqUAh2uvHwcjJA9xAD+8HZGPGJQx+4X1HOvG2/R6jOnRzS?= =?iso-8859-1?Q?mrrOgT4dyWxCUCOuq1enPJvmwUmvfinSzOVvbOXSb8qVgEy4eocTJPmyhj?= =?iso-8859-1?Q?tgOHPESPc8qOq8+ssy6onlJMhSWH3jkAf8YjckieetAV3XDrENyBZ73X/F?= =?iso-8859-1?Q?rtU257RPivQO5tmUrXQZBBokFZtKwwYJ7XX9B+mRpmkNpWvW6/ueiD3Qoo?= =?iso-8859-1?Q?wLtOWzkcKM7W2F882SSFHMOvJ/gcokSDoHzC86C2f4GxNdoTZ1fM6yGYQx?= =?iso-8859-1?Q?B8Bqq8FnMbPfqU8JQ5DvHnZpxZ7/CxKiNVTE2Kp4qW6WInvo+3wnWzxrgL?= =?iso-8859-1?Q?3h2b7zIFrYmqYRlg/Vtp9+HVBODHlocunz0EOFpa75eOR7HzVdluXop6Fg?= =?iso-8859-1?Q?g51OEm1jkNTGIFel2w+HnjupPvJeLDUW+jSF/gDJJRVJ7WTZNtMuIAEvwZ?= =?iso-8859-1?Q?6/8Ql+yHEpF1FS7rvET8lwxmlnQwdM1ha4b21EDeS3nqFip43JeQdp8akZ?= =?iso-8859-1?Q?sYh624/IP0tUwSBjDC+TUT7/7DPTFg04nwU8vj46GEILg+cbXWbxWrLJMk?= =?iso-8859-1?Q?+Xu27sVLYQlgZrTdok47amAUtAhXX8GSLpm4LmoH2k/HX/oMeTdIkoIIYd?= =?iso-8859-1?Q?lH6onisuRT55LaHhS2ApKi/OIE2xvxd3nKLU4u7X0yZQaUSa85xUo3GF+A?= =?iso-8859-1?Q?YHYeq/svvDPPrS0Dk4BXfwfRZYLy1eCsO32x+CXVfBaHk4cb1i3iFn9Hsj?= =?iso-8859-1?Q?Ojdk8rvCn3M5Rh6CL7vls1MZMEqn2vNW03FHo+PrLKYHVl8TLmGgmvRkad?= =?iso-8859-1?Q?7v77B7zTovUCeW6M+HF5C59gNWbJhtBXzvOunodv6C6fC7La0x909jen2j?= =?iso-8859-1?Q?jrjpDqint9UiYMxpO+UYKSU7JPM6n1gPiGDcl2Clk9MJFTb+W+rcwLVtjc?= =?iso-8859-1?Q?5a21mx2qsst9ybf5MUm61lwjl8PEDBBIWsmSPs4u7kc4yk6oeYG4peGCyW?= =?iso-8859-1?Q?NRnn1g++0UYE/dOqgmpbw4HdBy1W4C4dkPCeCFLWz7Ui32qfg0X3h5Zp9B?= =?iso-8859-1?Q?Oa95dbCx+vd51YvTH5vfOcLQsyVXZ4sAgj9aeYZYVaA5XdXDM5s0w0ozMw?= =?iso-8859-1?Q?PLq64k5rkaZUHNGhn9U/UGMhbehlG3z08uE8o1NxBC49cZ1Z8XPsrxERL4?= =?iso-8859-1?Q?LCk6vRTKdOJoHeWxLrYFIyiFS565Zot95FTuM9gnww9Wn802e5PngUJ0HI?= =?iso-8859-1?Q?jMEx7OP4qRmioP20jyQiV+wjnhDUDcKS/Hq6L0QCs0ikNo6amBCvPcNkDR?= =?iso-8859-1?Q?ogDxFu6C5Nwgj8d/kIVHwHr7owxePIEYtIqXhd9RVtnc1QrXBz/zrFwQPt?= =?iso-8859-1?Q?xymHcyVXiyfKLnAn6xWqQ3wsQ0Vshok6PiHGg9ixmO45dW+2tdHlHuQII5?= =?iso-8859-1?Q?i8v5wWyVSib+dECKQdJQ2zoz1oDinGMNA6t0c1N+YvWrz4zyhBiKGjLr+4?= =?iso-8859-1?Q?h2/jf1t1dVmyFqbcn0VzDUeT2TmUFUNO3jFszYOWU6JrIRHtYefAP7NlzQ?= =?iso-8859-1?Q?BjTbmGOydXds5kzfzFj5bYwXghEJsMfZXnj9WlPzu+CpZpPve3S/5qXLZP?= =?iso-8859-1?Q?iYzg=3D=3D?= MIME-Version: 1.0 X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: VE1PR08MB5758.eurprd08.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 991f398a-c3b1-4136-7098-08d9bfef1edd X-MS-Exchange-CrossTenant-originalarrivaltime: 15 Dec 2021 17:19:58.4348 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: mBOuGayzmtMZgAe2BvYagerP5MAZeqKjR+Roq/V4ZPtPyUBxqD0xRnSBTfnj6lzhS3Jv1RYRdj2nIW2lKqT7ORtU6F+tW/lqC0Ksq+wZIp0= X-MS-Exchange-Transport-CrossTenantHeadersStamped: VE1PR08MB5696 Content-Language: en-US Content-Type: text/plain; charset="iso-8859-1" Content-ID: Content-Transfer-Encoding: quoted-printable Bugzilla: 3773 (https://bugzilla.tianocore.org/show_bug.cgi?id=3D3773)=0A= =0A= Add a new META_DATA_TYPE, "MetaDataInstalledTables" to store the=0A= signatures from tables that have been successfully installed. This is=0A= to allow validation of mandatory ACPI tables that are specified in the=0A= Arm SBBR specification.=0A= =0A= Signed-off-by: Chris Jones =0A= ---=0A= ShellPkg/Library/UefiShellAcpiViewCommandLib/AcpiTableParser.c | = 21 ++++++++++++++++++++=0A= ShellPkg/Library/UefiShellAcpiViewCommandLib/Validators/AcpiDataStore.h | = 5 +++--=0A= 2 files changed, 24 insertions(+), 2 deletions(-)=0A= =0A= diff --git a/ShellPkg/Library/UefiShellAcpiViewCommandLib/AcpiTableParser.c= b/ShellPkg/Library/UefiShellAcpiViewCommandLib/AcpiTableParser.c=0A= index 381651ca3af75ab777ccff596ea17fb39be629bc..d7717ae3a6c37513f082bf78c63= 337a1f517bca5 100644=0A= --- a/ShellPkg/Library/UefiShellAcpiViewCommandLib/AcpiTableParser.c=0A= +++ b/ShellPkg/Library/UefiShellAcpiViewCommandLib/AcpiTableParser.c=0A= @@ -18,6 +18,7 @@=0A= #include "AcpiTableParser.h"=0A= #include "AcpiView.h"=0A= #include "AcpiViewConfig.h"=0A= +#include "Validators/AcpiDataStore.h"=0A= =0A= #if defined (MDE_CPU_ARM) || defined (MDE_CPU_AARCH64)=0A= #include "Arm/SbbrValidator.h"=0A= @@ -243,4 +244,24 @@ ProcessAcpiTable (=0A= *AcpiTableLength,=0A= *AcpiTableRevision=0A= );=0A= +=0A= + // Record that the table has been installed.=0A= + Status =3D StoreAcpiMetaData (=0A= + MetaDataInstalledTables,=0A= + MetaDataInstalledTables,=0A= + (UINT32 *)AcpiTableSignature,=0A= + sizeof (AcpiTableSignature)=0A= + );=0A= + if (EFI_ERROR (Status)) {=0A= + Print (=0A= + L"\nERROR: Unable to store %c%c%c%c signature." \=0A= + L" Status =3D 0x%x.",=0A= + SignaturePtr[0],=0A= + SignaturePtr[1],=0A= + SignaturePtr[2],=0A= + SignaturePtr[3],=0A= + Status=0A= + );=0A= + return;=0A= + }=0A= }=0A= diff --git a/ShellPkg/Library/UefiShellAcpiViewCommandLib/Validators/AcpiDa= taStore.h b/ShellPkg/Library/UefiShellAcpiViewCommandLib/Validators/AcpiDat= aStore.h=0A= index dfe45665372bae2516860d6c4e8d360ba88f906c..a2516acb0ca98dc473484f738d9= bf2ae133c039f 100644=0A= --- a/ShellPkg/Library/UefiShellAcpiViewCommandLib/Validators/AcpiDataStore= .h=0A= +++ b/ShellPkg/Library/UefiShellAcpiViewCommandLib/Validators/AcpiDataStore= .h=0A= @@ -12,8 +12,9 @@=0A= Types of data that can be stored and accessed in the ACPI data store.=0A= **/=0A= typedef enum MetaDataType {=0A= - MetaDataPpttProcs =3D 0, ///< List of all PPTT processor structures.= =0A= - MetaDataMadtGicC =3D 1, ///< List of all MADT GICC structures.=0A= + MetaDataPpttProcs =3D 0, ///< List of all PPTT processor structur= es.=0A= + MetaDataMadtGicC =3D 1, ///< List of all MADT GICC structures.= =0A= + MetaDataInstalledTables =3D 2, ///< Signatures of all installed ACPI ta= bles.=0A= MetaDataMax=0A= } META_DATA_TYPE;=0A= =0A= -- =0A= Guid("CE165669-3EF3-493F-B85D-6190EE5B9759")=0A= =0A=