From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by mx.groups.io with SMTP id smtpd.web08.16148.1661159959036007489 for ; Mon, 22 Aug 2022 02:19:19 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="unable to parse pub key" header.i=@intel.com header.s=intel header.b=R9149kSr; spf=pass (domain: intel.com, ip: 192.55.52.120, mailfrom: zhichao.gao@intel.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1661159959; x=1692695959; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=kmVWz+jH4LoV+qV6YzdCRU4deMWfCp2RMFsnR7QgS+8=; b=R9149kSr1bgLJqUMdgQkXxEvqTH3b+T5fGp2KDaxXB2llicCAXjlSV0v vCdM1L6VuI4mfvsk/3UyZ7sQa2Pbw2tZIE5hWgkVP4vYJDOFKr4NyIQKb SOO4K1RiJZWkbwkZrnD19imGH7pThKanen/OOUOmhA3u+LEky4BOhs1QM /9UC4+nqlgJ42bn8t0bvhSf8S8B6ISGmRUjv43RvBkP+qe/KRmgtgoPWZ oy9OHxFLgEmqE2yE9Jyo/FesAs9LpN87tUR5Dd9+O1tiaPOf+edwahXin sOV6fM8alzTXN/vyArvyeZm3NRKZ+KWKGAD8jS4xbXfq4XEqzO4vwXG1J A==; X-IronPort-AV: E=McAfee;i="6500,9779,10446"; a="292108240" X-IronPort-AV: E=Sophos;i="5.93,254,1654585200"; d="scan'208";a="292108240" Received: from orsmga006.jf.intel.com ([10.7.209.51]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 22 Aug 2022 02:19:18 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.93,254,1654585200"; d="scan'208";a="585445370" Received: from orsmsx602.amr.corp.intel.com ([10.22.229.15]) by orsmga006.jf.intel.com with ESMTP; 22 Aug 2022 02:19:18 -0700 Received: from orsmsx601.amr.corp.intel.com (10.22.229.14) by ORSMSX602.amr.corp.intel.com (10.22.229.15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Mon, 22 Aug 2022 02:19:17 -0700 Received: from ORSEDG602.ED.cps.intel.com (10.7.248.7) by orsmsx601.amr.corp.intel.com (10.22.229.14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31 via Frontend Transport; Mon, 22 Aug 2022 02:19:17 -0700 Received: from NAM12-MW2-obe.outbound.protection.outlook.com (104.47.66.47) by edgegateway.intel.com (134.134.137.103) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2375.31; Mon, 22 Aug 2022 02:19:17 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=FLoclyNGPdEqRCcErpHQtQkgK1xcYHtm7LPoW2u9aTjlF2wDvHOl/h8VOye5Yh2vBwsXjP0d28X7bzoswdnUVhr4bgLfFSgsTYeAKDHj+4csgO7vn4QJFKLiiped3ktP6b6kUse4hd03oZWMFmOsgS4CSPamU1qUKH8BaAmJpbCKXXwIroAa7Hh/HeOZadvOF4KBqFJ2coEE8Iu8+sM3/M1FTxqZD17+avisi+vKnSvRXTlN/Ut/31fBIvs3H4pt3r+5u+2HzcJq5u93ndxRm5SUZWdNSK//AHmVHufSLPMQO/w1eSo68OQx+qeg+YiuX/AMi5LjBd7UaInLM4Y9pg== 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=DuxK/fzkZtFus+NZ1jBstU13WRgV7cg7dg0bUPrdw6A=; b=i6avJx4hc1ExofcR5AjEGNj3b8V42nwfMSuZWvzI2lWvvqy+PLwFppfpQuUE3JQZJH1LKcFL4l0N4vYzMPcmEBRzI/Hi8T7QfFFbdxGRoYGb3Hfg4PxNkMMtmU0sm5fBVoppHk/7rabSKV9QgMf/ZuQKD+lBP6SutjshyJ8Rc8+acZNkho20y6CVagkjf1IliwahnkDpjL6Xuhx1F5MXUc9BZR0Js3wc0C9Dm28XixLLg4iTmeRO4X2mYJlJDeZWCkkgwt2A5BHFTwuVM7rmz6jp/RVh90Wtyt1poZr9ZKJVaUyAVOmDmTcTKR8Nr0GPcqmXy1SNzSkldi3o3HobtA== 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 PH7PR11MB6377.namprd11.prod.outlook.com (2603:10b6:510:1fb::13) by BL3PR11MB6388.namprd11.prod.outlook.com (2603:10b6:208:3b8::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5546.22; Mon, 22 Aug 2022 09:19:15 +0000 Received: from PH7PR11MB6377.namprd11.prod.outlook.com ([fe80::e82f:d9b0:7cba:f660]) by PH7PR11MB6377.namprd11.prod.outlook.com ([fe80::e82f:d9b0:7cba:f660%7]) with mapi id 15.20.5546.016; Mon, 22 Aug 2022 09:19:15 +0000 From: "Gao, Zhichao" To: Abdul Lateef Attar , "devel@edk2.groups.io" CC: "Ni, Ray" Subject: Re: [PATCH v1 1/1] ShellPkg: Adds Local APIC parser to AcpiView Thread-Topic: [PATCH v1 1/1] ShellPkg: Adds Local APIC parser to AcpiView Thread-Index: AQHYq7xD9HEklPKQ2Uuwcx5F6KzwS626uJ8w Date: Mon, 22 Aug 2022 09:19:14 +0000 Message-ID: References: <20220809064910.4350-1-abdattar@amd.com> <20220809064910.4350-2-abdattar@amd.com> In-Reply-To: <20220809064910.4350-2-abdattar@amd.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-reaction: no-action dlp-version: 11.6.500.17 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: bfe6c473-f371-49d5-7f36-08da841f6215 x-ms-traffictypediagnostic: BL3PR11MB6388:EE_ x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: aC1g9gw1B6cjdhPYVeqCK5hqGR2WDx6RcM3lpeqxLXn7z4hvttbTlnTnqy1cljRp0Qq4gkuZTevjBsrOeRWTWaB7QlHiAivzRVnArhGxyydZyrQJss1SMxbsimkcAt76wqR17eqKW1zqv/X/h7I7Pxh448VluyGRKC6Mu7F6Zlhxw+ftJE8OITBhPDMSMtNDdOs0UYPYFMadQMZ0SYAZsXy+Sw1KogedBBTNOaV7kAbWwyLMNnNkY7PbCz/pqp/H97H9UO2dcsznxTQrpVUJ/TvTibFGJGH0qdvq7fxvC823wnWTq7fGbSkqmBCSJc/uR6uhMhEXJGAlrr9KI12QIKttKliy9fV1N/3F3s7POCrYyulqD5aaWGirhh2fCL/j7OcEejdQ550PVh4sXgsnZkK/8cwWZcnLQGriEA55K1mAClvNKtmdjjyoLyNF+vXYcyUzdBtcW+Qaxu2rBnp9DKtAN6nSvWhxrsNR/j+rwgHE8C4gIUI0pcm/uGdl/X3sOuNl05lL8OuSYDyM5dGe8UHee9VOz1vCSoxxVG2a6dlWBAPMzx+pCHE+e61Qf2z9N4Hl5JFzWBIB9xM27VafCOnLrwlnchOfydZqmT8w9bbEgiIzY6p+HBzNInsysljVkK7IAIir3IGCycJmlDoL+0Qt9piujr4n3zUhimRu6aBV/WT57KBWRX2aTI+6Z3dOUSISUZwVlt1iolMIq2xb0NqlPWU0KXJPbbsLuj2GE2jOzlVgSa90uce31tSzE7MJklt7oMJ4Q96gS7HzN+Rtew== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PH7PR11MB6377.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230016)(366004)(396003)(346002)(136003)(39860400002)(376002)(52536014)(66946007)(66446008)(64756008)(8676002)(66556008)(66476007)(4326008)(76116006)(122000001)(86362001)(110136005)(38070700005)(33656002)(82960400001)(38100700002)(186003)(8936002)(26005)(53546011)(9686003)(107886003)(7696005)(41300700001)(478600001)(71200400001)(6506007)(55016003)(316002)(2906002)(83380400001)(5660300002);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?sprns4I/OzEv+A6N1/O0+JJin3XiRSDIFoZ5QfKc5E4i1tpBrdDtvv0i5qAP?= =?us-ascii?Q?IyKh+Za3khaFzWDVpTf7Pd0TpBrJH08VCCPxWxPKLxUXou4aL4XFlNBpuxU2?= =?us-ascii?Q?JbD4OqjB4620RWdq/jN9P5gDnSeS99rKRhq4WQz/wzME6KqboRvtz++agIWM?= =?us-ascii?Q?6qhrMYwdoEQGyDY5GfcUQB5KVGEzhm6CPH6hOFkwGr+KmTZ+SvGdf5b6iXTF?= =?us-ascii?Q?9FCZckjOLvknpl5el8ZbujOKiKu1K4wzW1u+PayLgWaKgLsx1j5rIp+apMgA?= =?us-ascii?Q?ttaWMgc4Ws8zo7TvPaiLGHJHRflcXn56ib7xq1endWLP+7N1EdqPfrDAo9tg?= =?us-ascii?Q?dlQmccEsZgfpd934BB3v6zzm5KjjLF9lrFoJ5k5zFtsjcdA53tUIVBjxQE1f?= =?us-ascii?Q?J+wmSyZ24At7GR79tjc+bJfo52KhMEzjvMsKHUQJkonN00rBtYpbq1HustQ4?= =?us-ascii?Q?yXZotMhA9ObY9YM2a3jBTIhoexq1lwVWKl5MLqJNvUGzgTlJtO0DeiDnUG/W?= =?us-ascii?Q?bSvR8l6Zuuk8IWTL1EYnMfGI2Srs2cNtsX2pNr1lbtSegeFQMxHjVb9cIIOC?= =?us-ascii?Q?5inwrFXo7pLdFkQpjUrZzq6dAiBjbEYZr6l1QcKy2yc0u3D397T1s8EMg2Um?= =?us-ascii?Q?E3pwlpr12qtTvBEVPrRRCfLMVNP/xyTIR48cmP9Z/QO200m2zUsFIlCbX1yQ?= =?us-ascii?Q?29qjXNsxqB0Gjw/KXKKRHGOIzmVAaM3HZ8aBE7ywraQUBKpqAHwVEhcJ1hOZ?= =?us-ascii?Q?JN9Zb8Xj5BpqDt0Xc+ex0gQD4xRaJrTVHOWtxAOGCP9/gIJ0CHTDf4IUqdVm?= =?us-ascii?Q?D8582N78AAIvM9TutddJLlBONz7CDp9v0PYGDjCG8IqIk0QVSp2p9f7Qgzil?= =?us-ascii?Q?TRcwXem+NGOug8xjIjm6pCrwkRW7mbsS6FJQn77WT9ZY2U2v8P7GgUW5lakP?= =?us-ascii?Q?0ll0j2Yg2QQNbvwwtxBxJ0BTZZyhDvyhqf3NobQSx0mBRdS8KuCF2Z1/DFew?= =?us-ascii?Q?LivM3MABBMx1pWeG4BSSDfGXsz1eqTXiKpBrzF+QTsInn2eUjtpMvkPVaw9I?= =?us-ascii?Q?aJV0kxCbc7+tHZf15xdhgL00VhgRarY65iFVxYu/KGNfh1TzUiWzwnSk6K9D?= =?us-ascii?Q?omAaM0332MyGQSL2OLs5Facui0JFM1sArKx9FfZh8DGBdQrnyXP3w0f98qNM?= =?us-ascii?Q?e7JYI7R6mqoPnrZayq6ZEci3j86FiqzVRarlihOjhNr+el5INdeVy8aX0DmU?= =?us-ascii?Q?W10HG5cfbNx4n6nRWeMAq05kX+wF2NB2XWf7PN7V7O8z5/zjVNtyNguTXexH?= =?us-ascii?Q?XdR/YjaFigNcekR7i3FdamiDoK+2Gm9fYQi3xMea+5YFTu2SyqKuvPvevqCb?= =?us-ascii?Q?UX5VTG2ACwwcNfPMQqy4CtENG+35saCrRiPrCsjIFUH/LpThQnShtjVUkbiA?= =?us-ascii?Q?yS1aKfffWQNROh6fcsWiM2BeqvmeMbnGHwx5W764LK2r7rEv5O8SH27d9QJw?= =?us-ascii?Q?n5tBVo1LixzpWnVw+/idxfIe+8Z7JfUqGe/guDixYpZYf9qSE4VPbE6F3SDp?= =?us-ascii?Q?z5YDCkGweixwI+L94agaaHaVLu7N1UUHtBDOdlgj?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: PH7PR11MB6377.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: bfe6c473-f371-49d5-7f36-08da841f6215 X-MS-Exchange-CrossTenant-originalarrivaltime: 22 Aug 2022 09:19:15.0306 (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: ZjMb2kZGjxAWm3/hFAZtYqa+jpFp1xEXnv3WsiXoc+MSu93ILKIFIg1zsPKLYWVC5pel+HmM8ob4Nphxxqoc5w== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL3PR11MB6388 Return-Path: zhichao.gao@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable It is better to file a BZ for this change. Anyway, Reviewed-by: Zhichao Gao Thanks, Zhichao > -----Original Message----- > From: Abdul Lateef Attar > Sent: Tuesday, August 9, 2022 2:49 PM > To: devel@edk2.groups.io > Cc: Ni, Ray ; Gao, Zhichao > Subject: [PATCH v1 1/1] ShellPkg: Adds Local APIC parser to AcpiView >=20 > Parse Type 0 or Local APIC structure. > Also parse the Local APIC Flags as bitfields. >=20 > Cc: Ray Ni > Cc: Zhichao Gao > Signed-off-by: Abdul Lateef Attar > --- >=20 > ShellPkg/Library/UefiShellAcpiViewCommandLib/Parsers/Madt/MadtParser. > c | 74 ++++++++++++++++++-- > 1 file changed, 67 insertions(+), 7 deletions(-) >=20 > diff --git > a/ShellPkg/Library/UefiShellAcpiViewCommandLib/Parsers/Madt/MadtPars > er.c > b/ShellPkg/Library/UefiShellAcpiViewCommandLib/Parsers/Madt/MadtPars > er.c > index aaa68c99f514..41edcb9ffd1d 100644 > --- > a/ShellPkg/Library/UefiShellAcpiViewCommandLib/Parsers/Madt/MadtPars > er.c > +++ > b/ShellPkg/Library/UefiShellAcpiViewCommandLib/Parsers/Madt/MadtPars > er.c > @@ -2,6 +2,7 @@ > MADT table parser >=20 >=20 >=20 > Copyright (c) 2016 - 2020, ARM Limited. All rights reserved. >=20 > + Copyright (c) 2022, AMD Incorporated. All rights reserved. >=20 > SPDX-License-Identifier: BSD-2-Clause-Patent >=20 >=20 >=20 > @par Reference(s): >=20 > @@ -206,17 +207,65 @@ STATIC CONST ACPI_PARSER > InterruptSourceOverride[] =3D { > { L"Flags", 2, 8, L"0x%x", NULL, NULL, NULL, NULL } >=20 > }; >=20 >=20 >=20 > +STATIC CONST ACPI_PARSER LocalApicFlags[] =3D { >=20 > + { L"Enabled", 1, 0, L"%d", NULL, NULL, NULL, NULL }, >=20 > + { L"Online Capable", 1, 1, L"%d", NULL, NULL, NULL, NULL }, >=20 > + { L"Reserved", 30, 2, L"%d", NULL, NULL, NULL, NULL } >=20 > +}; >=20 > + >=20 > +/** >=20 > + This function traces Bit Flags fields. >=20 > + If no format string is specified the Format must be NULL. >=20 > + >=20 > + @param [in] Format Optional format string for tracing the data. >=20 > + @param [in] Ptr Pointer to the start of the buffer. >=20 > +**/ >=20 > +VOID >=20 > +EFIAPI >=20 > +DumpLocalApicBitFlags ( >=20 > + IN CONST CHAR16 *Format OPTIONAL, >=20 > + IN UINT8 *Ptr >=20 > + ) >=20 > +{ >=20 > + if (Format !=3D NULL) { >=20 > + Print (Format, *(UINT32 *)Ptr); >=20 > + return; >=20 > + } >=20 > + >=20 > + Print (L"0x%X\n", *(UINT32 *)Ptr); >=20 > + ParseAcpiBitFields ( >=20 > + TRUE, >=20 > + 2, >=20 > + NULL, >=20 > + Ptr, >=20 > + 4, >=20 > + PARSER_PARAMS (LocalApicFlags) >=20 > + ); >=20 > +} >=20 > + >=20 > +/** >=20 > + An ACPI_PARSER array describing the Processor Local APIC Structure. >=20 > + **/ >=20 > +STATIC CONST ACPI_PARSER ProcessorLocalApic[] =3D { >=20 > + { L"Type", 1, 0, L"0x%x", NULL, NULL, N= ULL, NULL }, >=20 > + { L"Length", 1, 1, L"%d", NULL, NULL, N= ULL, NULL }, >=20 > + >=20 > + { L"ACPI Processor UID", 1, 2, L"0x%x", NULL, NULL, N= ULL, NULL }, >=20 > + { L"APIC ID", 1, 3, L"0x%x", NULL, NULL, N= ULL, NULL }, >=20 > + { L"Flags", 4, 4, NULL, DumpLocalApicBitFlags, NULL, N= ULL, NULL } >=20 > +}; >=20 > + >=20 > /** >=20 > An ACPI_PARSER array describing the Processor Local x2APIC Structure. >=20 > **/ >=20 > STATIC CONST ACPI_PARSER ProcessorLocalX2Apic[] =3D { >=20 > - { L"Type", 1, 0, L"0x%x", NULL, NULL, NULL, NULL }, >=20 > - { L"Length", 1, 1, L"%d", NULL, NULL, NULL, NULL }, >=20 > - { L"Reserved", 2, 2, L"0x%x", NULL, NULL, NULL, NULL }, >=20 > + { L"Type", 1, 0, L"0x%x", NULL, NULL, = NULL, NULL }, >=20 > + { L"Length", 1, 1, L"%d", NULL, NULL, = NULL, NULL }, >=20 > + { L"Reserved", 2, 2, L"0x%x", NULL, NULL, = NULL, NULL }, >=20 >=20 >=20 > - { L"X2APIC ID", 4, 4, L"0x%x", NULL, NULL, NULL, NULL }, >=20 > - { L"Flags", 4, 8, L"0x%x", NULL, NULL, NULL, NULL }, >=20 > - { L"ACPI Processor UID", 4, 12, L"0x%x", NULL, NULL, NULL, NULL } >=20 > + { L"X2APIC ID", 4, 4, L"0x%x", NULL, NULL, = NULL, NULL }, >=20 > + { L"Flags", 4, 8, NULL, DumpLocalApicBitFlags, NULL, = NULL, NULL }, >=20 > + { L"ACPI Processor UID", 4, 12, L"0x%x", NULL, NULL, = NULL, NULL } >=20 > }; >=20 >=20 >=20 > /** >=20 > @@ -441,7 +490,18 @@ ParseAcpiMadt ( > ); >=20 > break; >=20 > } >=20 > - >=20 > + case EFI_ACPI_6_3_PROCESSOR_LOCAL_APIC: >=20 > + { >=20 > + ParseAcpi ( >=20 > + TRUE, >=20 > + 2, >=20 > + "PROCESSOR LOCAL APIC", >=20 > + InterruptContollerPtr, >=20 > + *MadtInterruptControllerLength, >=20 > + PARSER_PARAMS (ProcessorLocalApic) >=20 > + ); >=20 > + break; >=20 > + } >=20 > case EFI_ACPI_6_3_PROCESSOR_LOCAL_X2APIC: >=20 > { >=20 > ParseAcpi ( >=20 > -- > 2.25.1