From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from EUR01-HE1-obe.outbound.protection.outlook.com (EUR01-HE1-obe.outbound.protection.outlook.com [40.107.13.73]) by mx.groups.io with SMTP id smtpd.web08.1290.1639588771565370016 for ; Wed, 15 Dec 2021 09:19:32 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@armh.onmicrosoft.com header.s=selector2-armh-onmicrosoft-com header.b=b7han280; spf=pass (domain: arm.com, ip: 40.107.13.73, mailfrom: christopher.jones@arm.com) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=IHljROekduOK8emrEz8e9/zgA7rGtEJkUFTJCcf9Ry5gi6ClzUpr7ZN6loFTXZVkcBPUioFMecDM4JHseyQA4Xplj3x9yCWcBSZ56MqM45dfYN7TEsGYs3cVV/VXkhsdc64MCzitlFc5Q1ubMF135jJ7wARgAudCsipZlWnuwO/dhjXmNHSggS7VtSp2k++/xBKbz5jyzoT1cW0IjllMynZQdjf6/4X6x+5e5R4xYfNTjJ7GQ/t+ap84DgxOB4Q8GmSEs3Tc1yuFcMGUHoRxQO5zN8H2/SN7YPJFNBYIyl+07x1NuL/iPgO6xHiC8OS00TxbnIO3zJTNtA4DarGNaQ== 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=/u1mT9n3tlpe3ZYOvEhnkVox+YljaKL6S8R4zvxJ6gQ=; b=AzicaIi5ohTQ4rt/7IKvdN54MOH4/4DrU/i+FkJRxW4t/7l0S7n7UMhE0W3cAD6pjUzXFRD0oBbvxiZCpfTsL0lbb1Xqd06SlAMf9+drKYpqxy/BjKu7diWdV1OF58/beXxADS5nzpfVu/3D8L7DgUfL+5zjAZxHvXqQ50Wq9vRIXpshNp40De22RyZ8W5ep3VGdtY/Z22gHKxgNytTk+PYLd2qBgr+sAYSLOyvHBVbpvIpeRzfwFY25guthBiIjMadsw6jz0jqCoTzJiX7o/Y4PFcWKp//w4ynHe1sZaIERVletE8+N0B9ZjjisdY1eHIoRDAPRX3oC/8WMSb66dg== 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=/u1mT9n3tlpe3ZYOvEhnkVox+YljaKL6S8R4zvxJ6gQ=; b=b7han280kfQ9oV7UBxKYQVQ4lXtola7HcwcnRkpy7TgiIu+CwMTBafp9W2OlQJ4hD4PLHHBfdd6drXP+QjPSelMK53xTlWgGpjnxGzxeQYWoA2T7v5DK4QaLVpuH/YxmH0SGQ3v3GFXiSFWSa2W/7m+NONbFmDG1htV3/kyNQF4= Received: from VE1PR08MB5758.eurprd08.prod.outlook.com (2603:10a6:800:1a0::11) by VI1PR08MB2926.eurprd08.prod.outlook.com (2603:10a6:802:1f::30) 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:28 +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:28 +0000 From: "Chris Jones" To: "devel@edk2.groups.io" CC: "ray.ni@intel.com" , "zhichao.gao@intel.com" , Sami Mujawar , nd Subject: [PATCH v1 2/9] ShellPkg: Replace SBBR validation option with generic one Thread-Topic: [PATCH v1 2/9] ShellPkg: Replace SBBR validation option with generic one Thread-Index: AQHX8csnfqH07PKa/ECPu1Xxtp+60Q== Date: Wed, 15 Dec 2021 17:19:28 +0000 Message-ID: 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)(508600001)(37630700001)(36756003)(86362001)(2906002)(66446008)(4326008)(30864003)(5660300002)(8936002)(91956017)(83380400001)(66946007)(76116006)(66556008)(64756008)(66476007)(6916009)(6506007)(71200400001)(316002)(8676002)(54906003)(2616005)(6512007)(26005)(38070700005)(38100700002)(186003)(6486002)(122000001)(41533002);DIR:OUT;SFP:1101; x-microsoft-antispam: BCL:0; x-ms-exchange-crosstenant-originalarrivaltime: 15 Dec 2021 15:47:53.5423 (UTC) x-ms-exchange-crosstenant-id: f34e5979-57d9-4aaa-ad4d-b122a662184d x-ms-exchange-transport-crosstenantheadersstamped: DB9PR08MB7424 x-ms-exchange-crosstenant-fromentityheader: HybridOnPrem x-ms-traffictypediagnostic: AM5PR0802MB2404:EE_|DB5EUR03FT015:EE_|DB9PR08MB7424:EE_|VE1PR08MB5758:EE_|VI1PR08MB2926:EE_ x-ms-exchange-crosstenant-network-message-id: d8417f3a-25e9-4cb3-a904-08d9bfe241b4 x-checkrecipientchecked: true x-eopattributedmessage: 1 x-ms-office365-filtering-correlation-id: f5bd616c-6034-4231-3fc1-08d9bfef0d17 x-checkrecipientrouted: true x-ms-oob-tlc-oobclassifiers: OLM:8882;OLM:8882;OLM:8882; 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)(426003)(186003)(36860700001)(8676002)(26005)(508600001)(316002)(86362001)(336012)(81166007)(2616005)(6916009)(6666004)(356005)(40460700001)(70206006)(30864003)(36756003)(8936002)(70586007)(1076003)(54906003)(2906002)(47076005)(5660300002)(7696005)(82310400004)(83380400001)(4326008)(41533002)(36900700001);DIR:OUT;SFP:1101; x-microsoft-antispam-untrusted: BCL:0; x-microsoft-antispam-message-info-original: beij6bQposbhUA3p5GYrTtwfriLmK/+xIoTe4W1gCwLKwHwcirP/sQ4d+G+NTIb8gXW+UjEN8lNj1BUCy836yHqtI0DO5bVPHxFlG0R4P0d20ys5L1x9NNaO4Ho2gg2Aib9WpLbW/BULAgvPSSxORf/Kf3HbMujEsXcwF71Oa9pf3nCYNJP2RIJ8XRfR/b7jtnOFfu2RS7FEo6qUtH9NtJHjvHT5nN+cSjNzXuR2loXNoZ+uz9Gp8DESIggWIsaZygNG/aiQ06DdRw86xWAg8WiJAmWbZuIIB2Wjf7gsLk8iPgZl71Uqf2aOO/XYbdDfVZ5ZcbgKlf7Xfx6GrvxJWs55ezcQx+gfulJgOTDhPp6iHs2ou5fjKPbJUeTng42y2+CB40offx3ER7+RUSAReIkYB9jSrzbn21iukY/seqbyY6gE+PPQNgyvjq8bBMhjaPZjz2oKkaoZm9Ollj/CV6Yl30KZTWzgCOPfBUI0sdUW7iUMPE4zf+jjZ7qEbeqaw/6y8GYQTdnukO/i+IkiVff9QWq0DFce3Y3+eeB9nBJiQYq52fYR1AtwiFzinsiMOPsCmUB/KX/okf7IzxtYaztuMmrr0WyJD0UiYN5FU4YMde/WtuVM7vCtcx5sSPMAdZR6kqomqNAG2TVW6pcZPc96JWvAZd1vHt/P5xTCWvlpTj2dx15Iv3iVoD+xpgKsbZQE85MqVrkshTahYb6qKcSd3/NeMGQFn6bqsr6BwCd1iGYOl/vU5drsb12fPQpdCWxX7XUczdfPrfog4ZN3uaSiauqpBnm6Z86e+KSr9Veg5p3YO3jQfpPvFz7A3Oqr6Au1jak+OdDFkwx1jA1C8p55CWZPQsGBOeMgx6kLMNmR03k4DJcr9fTml9wMPfbbLCrpOqkdTbl5zWHOw7OKiUVw8EyUdTG2W5SpxIU9lAo= x-ms-exchange-transport-crosstenantheadersstripped: DB5EUR03FT015.eop-EUR03.prod.protection.outlook.com x-ms-office365-filtering-correlation-id-prvs: d8417f3a-25e9-4cb3-a904-08d9bfe241b4 x-ms-exchange-crosstenant-authas: Anonymous x-ms-exchange-crosstenant-authsource: DB5EUR03FT015.eop-EUR03.prod.protection.outlook.com x-microsoft-antispam-message-info: I1TMY+/ZCWIyA0VIy60VPC1w7VI1M0Y6b1XlLB5tFUHTTYbujGAeRQpbOdT/YFI+H6QEkAO7Yec9/UQ+3DWfGJKw1ro/+P7D3S5h6C94cq3STUtKCTt9zRRxXpOjFlADupeO9end+y7zIfrc4IESTSIeYhBGyQx6+YJGs2A59Fwrsg9Hz/nxNekfK0LLZs2u4EZbXYoiAgvkb5t6NFj5ukqM5m+SEd0Il6x4nIbjFEF9VDRBuA2SaHDk0YAfP14Q3DWKLWJ9ltxgdqsGT7jIXag90a5MuDoIOEMSAVMVZjRkUcNavHQUrkY6Q7yB2t5glTgQ+Uhy3Boq5zloTygkYvWhhVQAeA3E254QOnJEvrQI35B7o6D4XW4bpdRAawDX7KiuLxb3GI0ooCe32CaEdj6bXRfFGvgwzvJIDtvT8OpuwvdxzEhwqSnF5d+/1OKHoSyJyA9XJl0vb8aIaRQY7L2Fq0fkobafwiYrF7TpVAS/Uobo3EvpmGvtuQvFIQl4Rw1Tb1cJiXqWM9o9n8aFJ2GbBEa4Vf2sW4WOsAe6bdPrexVaPqMgqqpUkpDf1MnP15DyavkAqnOn104JVfm5zf966voN7E88yDiT5762V730qbPuCfKHNTjHR4i+meOrqDPSXJjxP7OCVcBI28jaxolao71MWzljSXKZdmoHgwKOc2swn4pNowOLOCxPStFWzxeYOefpeOCnVxPoWZTY/dRbeQtmCcsJW3V+ZkJ3DmBXWUzGQCJWoot086J6PtnfZs3K1z/9mtQCCNJiQ9kWY/GUPYPQ5MsFHqJOUw5rcDQSMD+CQioFebiueVLYKF8D x-mailer: git-send-email 2.17.1 x-cr-mta-cid: d380747caeed4a9e 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=F6hGromLGTzcwg5xDVAKEt51U5448EzTG4T7iX61tPc=; b=VhZapd6mTpyArQlBXNz3MiDrhdediMiXBXR+0footCsBr/maWKHZXait8uPPR/2mcHvXUjVUGwHOlaJmjHmy5q3xA54VThgPOKiS3mjsrIrj60bJeTtDcSmO20Tvn6H4kEl7LzUPI3/w/eoEIZZhoR/CFu2xDEpAwI2YgwPh0K8= suggested_attachment_session_id: e0dc168a-c67b-bbcf-126a-a51e96b3e27b 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?c4DpRkaNedgR1JgY7t+kSKICjsP30MZErOs7fScHPHrmZK6iVKIv4XC27Q?= =?iso-8859-1?Q?D81YdHVRHL9jf84ut7y2sFKVZ0daYrhXOv8NehjUB77ne6GeEoxbkFJbBt?= =?iso-8859-1?Q?M9M1r76fom/u9Js5Ci8pvSIxXVjdr20xk7quPygMiQ/gZ0//9Jwlq7yeu2?= =?iso-8859-1?Q?+2xlUWrXYyUvNiBUXA0FXOUo78z+ucsijsv0AvoudKFUmD0lYgPe7E6QpA?= =?iso-8859-1?Q?ge/2/7t05JYu8CxsMGJZ9XJY+xZx4rQhnlMT3gALBv7kxRhlTaWIDHW97N?= =?iso-8859-1?Q?XHDDUA65cYUk+xWy3nAXNu7Y1+2TV9cr0X+XFp97zHwUbf+2wxd6ruJ/tk?= =?iso-8859-1?Q?9oDCr31U/KCR10h+Qnoyg5AVNLSNNjdNipZ2Pzk5lqw43IEV15g1wp/aEL?= =?iso-8859-1?Q?Wsq5gszkd4EuekW059t74iP1IYdDydUA8vLbK5b4qzbBTRvOBhm+uFZfM8?= =?iso-8859-1?Q?mhMYUPX6G1Oey+ef4bMiGxfnVT/yPRxPP6l+npH3XlIi5SpBuwqAZ2lHSt?= =?iso-8859-1?Q?zAPOpbV55PupRavAvppAxsdO/GKtkBUiyUbrqM6z9ZCdLA/2buplthIGxt?= =?iso-8859-1?Q?0ZmAUmgcbUxNESWFR2PYbbz7SPuApv9oQhUKe1U5NypbLhAHE1qCYqcJGi?= =?iso-8859-1?Q?hQrjhvExz9p1GMTYG+o7g2kCHdppnq+dUbKH/0PF1JeQbpnKu+uZLuIgBq?= =?iso-8859-1?Q?dHrvDLzcGVABdXZPmud2Asj1hzYdKaXLxhvhaXnU49gOYMs8IItp0sAHhP?= =?iso-8859-1?Q?z72nlQ24RGnZVxRtuvqKIiW+xBZWf6Y4ciQxq6+E+5tkkxAHLMQ9dtokZZ?= =?iso-8859-1?Q?lu88ricqKnW2/7R+dHHOQnP6x+M8TlsiP+goRe7kL++45wD7VdhZ2nu5qh?= =?iso-8859-1?Q?FfdrlYp1PFn0g7ezu+m02/4FXd2satnfDrf52b4pPkgyDJ6p8cx6I4Z18t?= =?iso-8859-1?Q?9PR70A6UuOt4kDwcBv3rPDMBLxq1WkODw4XVhcZEqWwej35Fq93YavzAqO?= =?iso-8859-1?Q?iZYzIy10+L/qH9SF4vx/na18sdgi+9ftBC//y4TFffZ6RGBTtRjTni/JY8?= =?iso-8859-1?Q?Yj6Fh/0kaBdG54bdm7/khpdAnBE8l0d5jypmMI5/Vode9QLp8rvHeauFAm?= =?iso-8859-1?Q?B4P7YPnE+m62tCk2xP08V1I6Bs+Jfi/B8WG7rG/K8DtX8BvpmotsVEr9RT?= =?iso-8859-1?Q?HbgNTxDnvLIOWBW5QGp7+Ef4JjBwZ3Vd08hgfuIVbvv7R/Y5stjjOh1yJe?= =?iso-8859-1?Q?9dEuaXGUCbvZuVl/ZhZODGoVNmi+3nLewmGlJLPgp8zp8zl8KpM7/xM8Oc?= =?iso-8859-1?Q?tbpl2eqp5AFwCQQHaHwPMGLg+VBxxudH4gnkUQ7s4OsOzd9Oa9UyniTXi6?= =?iso-8859-1?Q?SZvV2LBNuXdWgL91VkcZz2alRIw2kFp3KMmKnRfgT+XnhemYEilDmX0Ax4?= =?iso-8859-1?Q?gwbXPKGiW9fzrjvu8/FURbPjOrN7nmRxCAjQ8JnF2P7RZdKwySqQ3330Mq?= =?iso-8859-1?Q?CTLUv+steUZiSZNfxstbXz5g0/mV61QIGdXYVS5BLCVF45Hdg2Qxex80j0?= =?iso-8859-1?Q?7KXEzLsFrAAbXVseDM4CjCoQIy0oFD5VP8WIu2xhHzw6SVTk+nNBxXZ5Uu?= =?iso-8859-1?Q?a3vfb5RuaePmKAgYNnDuu4R+lgf6sbcbR+td51R4OGFb7ltwRbY82FXoIh?= =?iso-8859-1?Q?QnkLd80OJ+dRCyoo+KP0FBdKo06sNsJ36/6JrIXsxqZL4kKP12FhJjAYya?= =?iso-8859-1?Q?OYGA=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: f5bd616c-6034-4231-3fc1-08d9bfef0d17 X-MS-Exchange-CrossTenant-originalarrivaltime: 15 Dec 2021 17:19:28.5848 (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: HvxjMtOiVAsZR7iQVxNa50smE6/GtOBLmqvVgC4KrNgRfnk09FpIofCStYWHVuv0XYHf77btOx5B2E0kExWFNJid1tAvrJodmc5Zt6wDfzs= X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB2926 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= To facilitate the change to using generic validators, replace old SBBR=0A= mandatory table validation config options with a more generic validator=0A= config option.=0A= =0A= As generic validators have not been implemented yet, simply assert=0A= if trying to run a validator.=0A= =0A= Signed-off-by: Chris Jones =0A= ---=0A= ShellPkg/Library/UefiShellAcpiViewCommandLib/AcpiTableParser.c = | 7 ---=0A= ShellPkg/Library/UefiShellAcpiViewCommandLib/AcpiView.c = | 27 +++-------=0A= ShellPkg/Library/UefiShellAcpiViewCommandLib/AcpiViewConfig.c = | 52 ++++++++++----------=0A= ShellPkg/Library/UefiShellAcpiViewCommandLib/AcpiViewConfig.h = | 36 +++++++-------=0A= ShellPkg/Library/UefiShellAcpiViewCommandLib/UefiShellAcpiViewCommandLib.c= | 12 ++---=0A= 5 files changed, 58 insertions(+), 76 deletions(-)=0A= =0A= diff --git a/ShellPkg/Library/UefiShellAcpiViewCommandLib/AcpiTableParser.c= b/ShellPkg/Library/UefiShellAcpiViewCommandLib/AcpiTableParser.c=0A= index 75b949429ec9d22026147900be591cfdc94ead44..381651ca3af75ab777ccff596ea= 17fb39be629bc 100644=0A= --- a/ShellPkg/Library/UefiShellAcpiViewCommandLib/AcpiTableParser.c=0A= +++ b/ShellPkg/Library/UefiShellAcpiViewCommandLib/AcpiTableParser.c=0A= @@ -227,13 +227,6 @@ ProcessAcpiTable (=0A= }=0A= }=0A= =0A= - #if defined (MDE_CPU_ARM) || defined (MDE_CPU_AARCH64)=0A= - if (GetMandatoryTableValidate ()) {=0A= - ArmSbbrIncrementTableCount (*AcpiTableSignature);=0A= - }=0A= -=0A= - #endif=0A= -=0A= Status =3D GetParser (*AcpiTableSignature, &ParserProc);=0A= if (EFI_ERROR (Status)) {=0A= // No registered parser found, do default handling.=0A= diff --git a/ShellPkg/Library/UefiShellAcpiViewCommandLib/AcpiView.c b/Shel= lPkg/Library/UefiShellAcpiViewCommandLib/AcpiView.c=0A= index 9cdfcb3fae2aa85d3ed3835ae90f5230f685e0fa..8798410c05c03b98814b0c211d6= 6287cbb6ef0e8 100644=0A= --- a/ShellPkg/Library/UefiShellAcpiViewCommandLib/AcpiView.c=0A= +++ b/ShellPkg/Library/UefiShellAcpiViewCommandLib/AcpiView.c=0A= @@ -1,6 +1,6 @@=0A= /** @file=0A= =0A= - Copyright (c) 2016 - 2020, ARM Limited. All rights reserved.=0A= + Copyright (c) 2016 - 2021, ARM Limited. All rights reserved.=0A= SPDX-License-Identifier: BSD-2-Clause-Patent=0A= =0A= @par Glossary:=0A= @@ -23,10 +23,6 @@=0A= #include "AcpiView.h"=0A= #include "AcpiViewConfig.h"=0A= =0A= -#if defined (MDE_CPU_ARM) || defined (MDE_CPU_AARCH64)=0A= - #include "Arm/SbbrValidator.h"=0A= -#endif=0A= -=0A= STATIC UINT32 mTableCount;=0A= STATIC UINT32 mBinTableCount;=0A= =0A= @@ -205,6 +201,7 @@ AcpiView (=0A= PARSE_ACPI_TABLE_PROC RsdpParserProc;=0A= BOOLEAN Trace;=0A= SELECTED_ACPI_TABLE *SelectedTable;=0A= + UINTN ValidatorId;=0A= =0A= //=0A= // set local variables to suppress incorrect compiler/analyzer warnings= =0A= @@ -250,13 +247,6 @@ AcpiView (=0A= return EFI_UNSUPPORTED;=0A= }=0A= =0A= - #if defined (MDE_CPU_ARM) || defined (MDE_CPU_AARCH64)=0A= - if (GetMandatoryTableValidate ()) {=0A= - ArmSbbrResetTableCounts ();=0A= - }=0A= -=0A= - #endif=0A= -=0A= // The RSDP length is 4 bytes starting at offset 20=0A= RsdpLength =3D *(UINT32 *)(RsdpPtr + RSDP_LENGTH_OFFSET);=0A= =0A= @@ -284,13 +274,6 @@ AcpiView (=0A= return EFI_NOT_FOUND;=0A= }=0A= =0A= - #if defined (MDE_CPU_ARM) || defined (MDE_CPU_AARCH64)=0A= - if (GetMandatoryTableValidate ()) {=0A= - ArmSbbrReqsValidate ((ARM_SBBR_VERSION)GetMandatoryTableSpec ());=0A= - }=0A= -=0A= - #endif=0A= -=0A= ReportOption =3D GetReportOption ();=0A= if (ReportTableList !=3D ReportOption) {=0A= if (((ReportSelected =3D=3D ReportOption) ||=0A= @@ -301,6 +284,12 @@ AcpiView (=0A= } else if (GetConsistencyChecking () &&=0A= (ReportDumpBinFile !=3D ReportOption))=0A= {=0A= + // Run additional validators from command line args=0A= + ValidatorId =3D GetValidatorId ();=0A= + if (GetValidatorStatus () && (ValidatorId !=3D 0)) {=0A= + ASSERT (0); // Validators not implemented yet=0A= + }=0A= +=0A= OriginalAttribute =3D gST->ConOut->Mode->Attribute;=0A= =0A= Print (L"\nTable Statistics:\n");=0A= diff --git a/ShellPkg/Library/UefiShellAcpiViewCommandLib/AcpiViewConfig.c = b/ShellPkg/Library/UefiShellAcpiViewCommandLib/AcpiViewConfig.c=0A= index 8f6823f64b08f88a3cbe6ac01b2fc14e64423c75..e9a838812dbc5fc20fdf9ae7371= e90f559f4ee2b 100644=0A= --- a/ShellPkg/Library/UefiShellAcpiViewCommandLib/AcpiViewConfig.c=0A= +++ b/ShellPkg/Library/UefiShellAcpiViewCommandLib/AcpiViewConfig.c=0A= @@ -1,7 +1,7 @@=0A= /** @file=0A= State and accessors for 'acpiview' configuration.=0A= =0A= - Copyright (c) 2016 - 2020, ARM Limited. All rights reserved.
=0A= + Copyright (c) 2016 - 2021, ARM Limited. All rights reserved.
=0A= SPDX-License-Identifier: BSD-2-Clause-Patent=0A= **/=0A= =0A= @@ -14,8 +14,8 @@=0A= STATIC BOOLEAN mConsistencyCheck;=0A= STATIC BOOLEAN mColourHighlighting;=0A= STATIC EREPORT_OPTION mReportType;=0A= -STATIC BOOLEAN mMandatoryTableValidate;=0A= -STATIC UINTN mMandatoryTableSpec;=0A= +STATIC BOOLEAN mValidatorStatus;=0A= +STATIC UINTN mValidatorId;=0A= =0A= // User selection of which ACPI table should be checked=0A= SELECTED_ACPI_TABLE mSelectedAcpiTable;=0A= @@ -34,8 +34,8 @@ AcpiConfigSetDefaults (=0A= mSelectedAcpiTable.Name =3D NULL;=0A= mSelectedAcpiTable.Found =3D FALSE;=0A= mConsistencyCheck =3D TRUE;=0A= - mMandatoryTableValidate =3D FALSE;=0A= - mMandatoryTableSpec =3D 0;=0A= + mValidatorStatus =3D FALSE;=0A= + mValidatorId =3D 0;=0A= }=0A= =0A= /**=0A= @@ -190,59 +190,59 @@ SetReportOption (=0A= }=0A= =0A= /**=0A= - This function returns the ACPI table requirements validation flag.=0A= + Return the ValidatorStatus flag.=0A= =0A= - @retval TRUE Check for mandatory table presence should be performed.=0A= -**/=0A= + @retval TRUE Validator should be run.=0A= + @retval FALSE Validator should not be run.=0A= + **/=0A= BOOLEAN=0A= EFIAPI=0A= -GetMandatoryTableValidate (=0A= +GetValidatorStatus (=0A= VOID=0A= )=0A= {=0A= - return mMandatoryTableValidate;=0A= + return mValidatorStatus;=0A= }=0A= =0A= /**=0A= - This function sets the ACPI table requirements validation flag.=0A= + Set the ValidatorStatus flag.=0A= =0A= - @param [in] Validate Enable/Disable ACPI table requirements validation.= =0A= + @param [in] Status Enable (True)/Disable (False) running the optional= =0A= + Validator.=0A= **/=0A= VOID=0A= EFIAPI=0A= -SetMandatoryTableValidate (=0A= - BOOLEAN Validate=0A= +SetValidatorStatus (=0A= + BOOLEAN Status=0A= )=0A= {=0A= - mMandatoryTableValidate =3D Validate;=0A= + mValidatorStatus =3D Status;=0A= }=0A= =0A= /**=0A= - This function returns the identifier of specification to validate ACPI t= able=0A= - requirements against.=0A= + Return the ID of validator to run against the parsed ACPI tables.=0A= =0A= - @return ID of specification listing mandatory tables.=0A= + @return ID of validator to run.=0A= **/=0A= UINTN=0A= EFIAPI=0A= -GetMandatoryTableSpec (=0A= +GetValidatorId (=0A= VOID=0A= )=0A= {=0A= - return mMandatoryTableSpec;=0A= + return mValidatorId;=0A= }=0A= =0A= /**=0A= - This function sets the identifier of specification to validate ACPI tabl= e=0A= - requirements against.=0A= + Set the ID of the validator to run against the parsed ACPI tables.=0A= =0A= - @param [in] Spec ID of specification listing mandatory tables.=0A= + @param [in] ValidatorId ID of validator.=0A= **/=0A= VOID=0A= EFIAPI=0A= -SetMandatoryTableSpec (=0A= - UINTN Spec=0A= +SetValidatorId (=0A= + UINTN ValidatorId=0A= )=0A= {=0A= - mMandatoryTableSpec =3D Spec;=0A= + mValidatorId =3D ValidatorId;=0A= }=0A= diff --git a/ShellPkg/Library/UefiShellAcpiViewCommandLib/AcpiViewConfig.h = b/ShellPkg/Library/UefiShellAcpiViewCommandLib/AcpiViewConfig.h=0A= index c58755bf1def3fe778994ba30f598d831e0f1aa6..c6b1cf38cdd8f653b2ea04479aa= 625be1393762b 100644=0A= --- a/ShellPkg/Library/UefiShellAcpiViewCommandLib/AcpiViewConfig.h=0A= +++ b/ShellPkg/Library/UefiShellAcpiViewCommandLib/AcpiViewConfig.h=0A= @@ -1,7 +1,7 @@=0A= /** @file=0A= Header file for 'acpiview' configuration.=0A= =0A= - Copyright (c) 2016 - 2020, ARM Limited. All rights reserved.
=0A= + Copyright (c) 2016 - 2021, ARM Limited. All rights reserved.
=0A= SPDX-License-Identifier: BSD-2-Clause-Patent=0A= **/=0A= =0A= @@ -53,49 +53,49 @@ SetConsistencyChecking (=0A= );=0A= =0A= /**=0A= - This function returns the ACPI table requirements validation flag.=0A= + Return the ValidatorStatus flag.=0A= =0A= - @retval TRUE Check for mandatory table presence should be performed.=0A= -**/=0A= + @retval TRUE Validator should be run.=0A= + @retval FALSE Validator should not be run.=0A= + **/=0A= BOOLEAN=0A= EFIAPI=0A= -GetMandatoryTableValidate (=0A= +GetValidatorStatus (=0A= VOID=0A= );=0A= =0A= /**=0A= - This function sets the ACPI table requirements validation flag.=0A= + Set the ValidatorStatus flag.=0A= =0A= - @param [in] Validate Enable/Disable ACPI table requirements validation.= =0A= + @param [in] Status Enable (True)/Disable (False) running the optional= =0A= + Validator.=0A= **/=0A= VOID=0A= EFIAPI=0A= -SetMandatoryTableValidate (=0A= - BOOLEAN Validate=0A= +SetValidatorStatus (=0A= + BOOLEAN Status=0A= );=0A= =0A= /**=0A= - This function returns the identifier of specification to validate ACPI t= able=0A= - requirements against.=0A= + Return the ID of validator to run against the parsed ACPI tables.=0A= =0A= - @return ID of specification listing mandatory tables.=0A= + @return ID of validator to run.=0A= **/=0A= UINTN=0A= EFIAPI=0A= -GetMandatoryTableSpec (=0A= +GetValidatorId (=0A= VOID=0A= );=0A= =0A= /**=0A= - This function sets the identifier of specification to validate ACPI tabl= e=0A= - requirements against.=0A= + Set the ID of the validator to run against the parsed ACPI tables.=0A= =0A= - @param [in] Spec ID of specification listing mandatory tables.=0A= + @param [in] ValidatorId ID of validator.=0A= **/=0A= VOID=0A= EFIAPI=0A= -SetMandatoryTableSpec (=0A= - UINTN Spec=0A= +SetValidatorId (=0A= + UINTN ValidatorId=0A= );=0A= =0A= /**=0A= diff --git a/ShellPkg/Library/UefiShellAcpiViewCommandLib/UefiShellAcpiView= CommandLib.c b/ShellPkg/Library/UefiShellAcpiViewCommandLib/UefiShellAcpiVi= ewCommandLib.c=0A= index 09bdddb56e5bd70dec44bdbdcba88373f93daa66..15d2727ed13b66785b6c1078f21= 4611b29aefd40 100644=0A= --- a/ShellPkg/Library/UefiShellAcpiViewCommandLib/UefiShellAcpiViewCommand= Lib.c=0A= +++ b/ShellPkg/Library/UefiShellAcpiViewCommandLib/UefiShellAcpiViewCommand= Lib.c=0A= @@ -199,7 +199,7 @@ ShellCommandRunAcpiView (=0A= LIST_ENTRY *Package;=0A= CHAR16 *ProblemParam;=0A= SHELL_FILE_HANDLE TmpDumpFileHandle;=0A= - CONST CHAR16 *MandatoryTableSpecStr;=0A= + CONST CHAR16 *ValidatorIdStr;=0A= CONST CHAR16 *SelectedTableName;=0A= =0A= // Set configuration defaults=0A= @@ -306,12 +306,12 @@ ShellCommandRunAcpiView (=0A= // Surpress consistency checking if requested=0A= SetConsistencyChecking (!ShellCommandLineGetFlag (Package, L"-q"));= =0A= =0A= - // Evaluate the parameters for mandatory ACPI table presence checks= =0A= - SetMandatoryTableValidate (ShellCommandLineGetFlag (Package, L"-r"))= ;=0A= - MandatoryTableSpecStr =3D ShellCommandLineGetValue (Package, L"-r");= =0A= + // Evaluate the parameters for running validators=0A= + SetValidatorStatus (ShellCommandLineGetFlag (Package, L"-r"));=0A= + ValidatorIdStr =3D ShellCommandLineGetValue (Package, L"-r");=0A= =0A= - if (MandatoryTableSpecStr !=3D NULL) {=0A= - SetMandatoryTableSpec (ShellHexStrToUintn (MandatoryTableSpecStr))= ;=0A= + if (ValidatorIdStr !=3D NULL) {=0A= + SetValidatorId (ShellStrToUintn (ValidatorIdStr));=0A= }=0A= =0A= if (ShellCommandLineGetFlag (Package, L"-l")) {=0A= -- =0A= Guid("CE165669-3EF3-493F-B85D-6190EE5B9759")=0A= =0A=