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.web08.6100.1636420835652312724 for ; Mon, 08 Nov 2021 17:20:35 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=zlTLwzcK; spf=pass (domain: intel.com, ip: 134.134.136.24, mailfrom: zhichao.gao@intel.com) X-IronPort-AV: E=McAfee;i="6200,9189,10162"; a="232199714" X-IronPort-AV: E=Sophos;i="5.87,218,1631602800"; d="scan'208";a="232199714" Received: from orsmga008.jf.intel.com ([10.7.209.65]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 08 Nov 2021 17:20:21 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.87,218,1631602800"; d="scan'208";a="503281644" Received: from orsmsx606.amr.corp.intel.com ([10.22.229.19]) by orsmga008.jf.intel.com with ESMTP; 08 Nov 2021 17:20:21 -0800 Received: from orsmsx607.amr.corp.intel.com (10.22.229.20) by ORSMSX606.amr.corp.intel.com (10.22.229.19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.12; Mon, 8 Nov 2021 17:20:20 -0800 Received: from orsmsx611.amr.corp.intel.com (10.22.229.24) by ORSMSX607.amr.corp.intel.com (10.22.229.20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.12; Mon, 8 Nov 2021 17:20:20 -0800 Received: from orsedg603.ED.cps.intel.com (10.7.248.4) by orsmsx611.amr.corp.intel.com (10.22.229.24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.12 via Frontend Transport; Mon, 8 Nov 2021 17:20:20 -0800 Received: from NAM04-MW2-obe.outbound.protection.outlook.com (104.47.73.172) by edgegateway.intel.com (134.134.137.100) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2242.12; Mon, 8 Nov 2021 17:20:20 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=J0aMezFbXRUmT1sQlfbASfLWgyzrTwk87vyx8fquvbrQv9boWVXhkc2iJ8V6/H5DBYtsLjj8V+QgNyFKLCLzLuLswfBPa9XNj7f21J4auJ3hayNvze75eZ8fWl9l9U16hWvu/YFvdeMK97Z3Kihn2xMmB/Wd6uq9cwzBY+WTxze8wljQGApAOj1rDk5lMP6Yzzf5v0zben+QiSLlppVQFYeDM4uH3Mc4chVmfuhq2JJbBWNkWKZ1kX0GmtutV/Ez4bwbxdJ2NPE7Cy4lCQ7ycZiISP6rGwfGm6VnSqxe3s3YPn2M0LAHr5Eio2DM+AzFP/9dLXpsYGOFaDvT5h6mEw== 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=WDdb4kCfbBPHtWzCzgj3ORlW38YtlVkfWeugT1kE5rk=; b=Eawvh4xy1Etvzy7e8fEkUvwdMOHl4UJbtybfEdJV0b3tKmyDohbe8q/fTP1caDQqQvEVQHpSBXoREqtnXFOCdIZ0sRPadJqAL7X6r0iWwekabUrCNKI+w8kvqQnxp+SmR9rGb/y5e5RgEUgzyj0v+T/cFwgQFyTM813K3pT/Byzp1/MJNTw4Tv8uMFOYiEFD+EpmjrC1s+Ezb644G/YyV+06ulLvqtvuDVULnxSYMN9V5EM3XO1Oas7bujSdFX5itbl/wPFf462u7eDe7T1mqxOPLyAedgtBwAY7QQ6yEYVCdAKXS3QkZU1XSfrFtdPa6IrHkJyEebq3PZndbm41Cw== 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=WDdb4kCfbBPHtWzCzgj3ORlW38YtlVkfWeugT1kE5rk=; b=zlTLwzcK3Ir4OiM9c82JqG0ILp9baWylZMKAI/UBF2tjcaAAsfYuXhRXIDPO+hLtI3HVreIbO+NBiwZsIks0WBjY0ZEt0I02bjCyW6OAGSXGYslmElt6A+5maYMb20zij0Q0yNkV6GF25KkfW+Fr/itbtMJRcJAkpWj5LWzGzTc= Received: from DM4PR11MB5277.namprd11.prod.outlook.com (2603:10b6:5:388::23) by DM6PR11MB4642.namprd11.prod.outlook.com (2603:10b6:5:2a2::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4669.11; Tue, 9 Nov 2021 01:20:19 +0000 Received: from DM4PR11MB5277.namprd11.prod.outlook.com ([fe80::e5c7:5202:3900:e51c]) by DM4PR11MB5277.namprd11.prod.outlook.com ([fe80::e5c7:5202:3900:e51c%5]) with mapi id 15.20.4649.019; Tue, 9 Nov 2021 01:20:19 +0000 From: "Gao, Zhichao" To: "devel@edk2.groups.io" , "christopher.jones@arm.com" CC: "Kinney, Michael D" , "gaoliming@byosoft.com.cn" , "Liu, Zhiguang" , "Ni, Ray" , "Alexei.Fedorov@arm.com" , "Sami.Mujawar@arm.com" , "nd@arm.com" Subject: Re: [edk2-devel] [PATCH v2 4/7] ShellPkg: Add Cache ID to PPTT parser Thread-Topic: [edk2-devel] [PATCH v2 4/7] ShellPkg: Add Cache ID to PPTT parser Thread-Index: AQHX0MlS+hilwV1zdEicN0s/gI20mav6bk/A Date: Tue, 9 Nov 2021 01:20:19 +0000 Message-ID: References: <20211103154108.6534-1-christopher.jones@arm.com> <20211103154108.6534-5-christopher.jones@arm.com> In-Reply-To: <20211103154108.6534-5-christopher.jones@arm.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.200.16 authentication-results: edk2.groups.io; dkim=none (message not signed) header.d=none;edk2.groups.io; dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 4c35c7a0-c23f-4464-cdf8-08d9a31f1811 x-ms-traffictypediagnostic: DM6PR11MB4642: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:8882; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: sPr9ELgDaCUqIEG1mtyhnUDp7uZwb2fFpxWF+JhiBybYSKftAD40Nn0J835+TW3a76lMTJWQfDR4hU5pHjXCz5nJLbdlCy2TPudYyVDDy9SVzq9jZgZUosfTManu/Q0/lh4+LOP/+un+GtbvpRT9FEbJcR5BDnsbiiETWnFiwveahAwg+IhjOD6h/FCrrDop9szBZ/pEDRtB9WtIhwouh2xCKvf3DLwcmZ9x0GEIaO1nBHHqJTWCREPCmEL3SbZDL+q4wvB8P1vIE4ZKTUnPLpAcHyRi60oDoETq1AIugZFjx8hT/HyAWvhJSxXZY6cNlMwLjgkIXRQIaWwBKcmaNJsAmlRTSz9/Nng3Q9MXJnN+j9jrNuR8bjkcFyUouCl1k1r/cjp8+9az50Ys5MacNugiCfewS8yB/SNlAlkVywsRF/3mLlSs9Yx0013J5pxb61HbmOJ3zuoxi+BwGmZ8gdFXobWKPsVidwHofRGJKnFhrFKbwmgV/V2RabC93LnRQthK9MDU7EYYXMQ4RxgJgo6WX8xf27GdUlWlol3KlhLrcon78SXkgb6JBj401Q3M2pyhsuF5iPDdOgy3CDYOCZyjqDbvFbXxgcUih0luc0VskbXkLSlN3iYt520ZQ3tsfu+AxroWEuEN20WQuDvhj4wOHJvjG/3tA3rssxszf3xlFDx50lLWTG/MVUs/3imb9NBpZaoPdndKEimb4WYZR5dyU1/KjOE7U1kjKHY6cx7YjhDM3XOJiEed4n4cFyDPIfI4KlrqJ0JdZEqYm0yO4K8fhj210RFshuS+gdJgwTYdnWoqq779exDQNniVpTac4xlp1XYxNXXKHw+n0szpwA== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM4PR11MB5277.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(366004)(7696005)(122000001)(33656002)(38100700002)(316002)(52536014)(6506007)(66446008)(53546011)(38070700005)(66946007)(66476007)(86362001)(66556008)(64756008)(83380400001)(8936002)(71200400001)(2906002)(186003)(4326008)(110136005)(54906003)(82960400001)(55016002)(508600001)(76116006)(5660300002)(26005)(966005)(9686003)(8676002);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?2GpUQ+b60rXSC7rYvX5XulmrGu5aGLMq6wV1oCz8XRoi7K1NNRwZebiN1lii?= =?us-ascii?Q?EW3IfO6DuuqR9bSr9hQs/0cAAowO0d8VTZKZjWL6WhAOBvaMkpTkr4EIsNQH?= =?us-ascii?Q?1L1XgRlk51Y7HzuJh1cabwAAUqPTj6XO25RCVr9faH53KSPMNIc7XSjc7zx4?= =?us-ascii?Q?5McTg8NGgwFut2GPhBtVFFjqrg7IA3jUKGKX9Dkz7qEYFYNcEIaLcqxLQw14?= =?us-ascii?Q?nBe0VmUD60Jc0PDmMH5XRUAqPb+6vjrvkjjinWkczHiBB2QTNiyf0+AmPAAt?= =?us-ascii?Q?JM+DR7BC7maWkPfYeWUUWQX3H60+Pif7aiCg7+LakEV3jYaLeF+JqriPao6d?= =?us-ascii?Q?ydAGGDdw1+2GlXE6sTyD8578AttRhh7KwQWoJsjWJ4Dx2OXefezRmfgu58Yi?= =?us-ascii?Q?YaVVgbkFuxlbT8bJhWIR/k1Iv2UPNKSeh+7Ee4FgZjx4loAbKnCONX9C/SFo?= =?us-ascii?Q?BPiEXStfAcJBy/U+5fpEiQxJKGXMnjX2/7OGAeq+KR7EVd5cSaGA50+DIC2G?= =?us-ascii?Q?kl6oewh2An9VZLKZGJCCwJqfSIOgnlGxhq9N5o9XokBo4W41ub/8mx4pW/he?= =?us-ascii?Q?FcEIe8GzNKeg6IJ9xZrUqpRVF5xULwtBqbvexL73BkIe5DxAeo623IybSyvC?= =?us-ascii?Q?aN0X7kexg9+I6Y5R9EKw8Qvg4LRuHFY3z+FrXGT86zGJTQNTu/G0YhVX9OEp?= =?us-ascii?Q?A5QjZ2vnHPmqM/YSF3J0yebEmvOvTAAvVOukgvF0udRf3UTUg3pyc6/jQ+BD?= =?us-ascii?Q?j0vPoXcwOYpzd2aABxKw4KlwExPDqUqLq+6LYC3uWAIiLlGui2K4SS3Anmza?= =?us-ascii?Q?YvzqLvsG7D9yDyZNv2cAXYcm0j/de3eywZXYBXsVYhLp/ckqbRiRxVVUtvoc?= =?us-ascii?Q?nY1ak6woRMC0pPwC91MveogK+XrbPgGXlSRziFjx0HVxCA45506RdTxo0lv5?= =?us-ascii?Q?Ba0hYmiFdEF9awDs+DFhuJ64ZL2Ht8miLW+KaHD9KqeEsncTwkZ1oVqk74dj?= =?us-ascii?Q?3VI/Fy8EQ8M+X3hiEvL4wIWg9ZzvKz70wC2vxABE/k12aYTE+l42lKNcD8D+?= =?us-ascii?Q?plEVHZi8sCMbQaS91rRKIt3KF7smzrUXGQoja2jbqXKh3l9BwV8qRD58gkf0?= =?us-ascii?Q?Jdmd48WkkvS9A6zVcBhG84dJHkFAsBr6KRt+alXJHOgTilri/xO23AAxBbHC?= =?us-ascii?Q?mlVfab4cx1kcKsS4D/TGQp20j6H+b+Xift5tObQe8aPq88H+bIySxjRxeTA3?= =?us-ascii?Q?jLV2ilfrfwtuVdF2INZvz/XvkJA2HSkAM7FkThLEj6Zk4SACZCrpR/XyLWAq?= =?us-ascii?Q?CY6EZ49+Ofr/AMiazXJS3SnmBXfo1UH5J0Xxy90DOd4praI/CMmeypSRP+lo?= =?us-ascii?Q?xDpoyUAkzKkyuJZh5QND9XjRgMVKu6v6XNV51sKKAxg6TitDe7lcU8GI5w40?= =?us-ascii?Q?JJDdu3jUxf/UBdYSnBT1WYEy/KRpOLDTo8zr6hZMJXiqgQrHGHUxDcTd0mUq?= =?us-ascii?Q?hS6Hlw0AbLSyAOD0CUZakCyLFbX4+nyJsbe1RhHtk2XptEbOWhmGVwlVuVU3?= =?us-ascii?Q?Wuw6jhCSXDVaEs3k8gv3oaTCfWGPB3WRr/j4IVcoMVpIp08g4B884xEQMzoq?= =?us-ascii?Q?2x3tgli1K03DJEWrjHOEOAs=3D?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DM4PR11MB5277.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4c35c7a0-c23f-4464-cdf8-08d9a31f1811 X-MS-Exchange-CrossTenant-originalarrivaltime: 09 Nov 2021 01:20:19.1305 (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: FanAH1T36GgmTfpcNZYkOPvNtp6CiZOPIi9r61E7cpfXeda9MwOP5GaNIaY1KbA7nUf+dwuCWGTUa0V4OQSBtg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR11MB4642 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 Reviewed-by: Zhichao Gao Thanks, Zhichao > -----Original Message----- > From: devel@edk2.groups.io On Behalf Of Chris > Jones > Sent: Wednesday, November 3, 2021 11:41 PM > To: devel@edk2.groups.io > Cc: Kinney, Michael D ; > gaoliming@byosoft.com.cn; Liu, Zhiguang ; Ni, Ray > ; Gao, Zhichao ; > Alexei.Fedorov@arm.com; Sami.Mujawar@arm.com; nd@arm.com > Subject: [edk2-devel] [PATCH v2 4/7] ShellPkg: Add Cache ID to PPTT parse= r >=20 > Bugzilla: 3697 (https://bugzilla.tianocore.org/show_bug.cgi?id=3D3697) >=20 > Update the Acpiview PPTT parser with the Cache ID field and relevant > validations as defined in tables 5.140 and 5.141 of the ACPI 6.4 specific= ation. >=20 > Signed-off-by: Chris Jones > --- >=20 > Notes: > v2: > - Fixed a bug where 'CacheFlags' and 'CacheId' were only set after th= e > validation function had finished. Instead set them inside the > validation function using the first 'Ptr' parameter. >=20 > ShellPkg/Library/UefiShellAcpiViewCommandLib/Parsers/Pptt/PpttParser.c > | 120 +++++++++++++++++++- > 1 file changed, 118 insertions(+), 2 deletions(-) >=20 > diff --git > a/ShellPkg/Library/UefiShellAcpiViewCommandLib/Parsers/Pptt/PpttParser. > c > b/ShellPkg/Library/UefiShellAcpiViewCommandLib/Parsers/Pptt/PpttParser. > c > index > bb840a0dbab240d371aa58d323e61f47fa8d1587..3f93038ce1d83c005ae3d6a43 > e11f309440ad6fa 100644 > --- > a/ShellPkg/Library/UefiShellAcpiViewCommandLib/Parsers/Pptt/PpttParser. > c > +++ > b/ShellPkg/Library/UefiShellAcpiViewCommandLib/Parsers/Pptt/PpttPars > +++ er.c > @@ -20,8 +20,84 @@ > STATIC CONST UINT8* ProcessorTopologyStructureType; STATIC CONST > UINT8* ProcessorTopologyStructureLength; STATIC CONST UINT32* > NumberOfPrivateResources; > +STATIC CONST EFI_ACPI_6_4_PPTT_STRUCTURE_CACHE_FLAGS* > CacheFlags; > STATIC ACPI_DESCRIPTION_HEADER_INFO AcpiHdrInfo; >=20 > +/** > + Increment the error count and print an error that a required flag is m= issing. > + > + @param [in] FlagName Name of the missing flag. > +**/ > +STATIC > +VOID > +EFIAPI > +LogCacheFlagError ( > + IN CONST CHAR16* FlagName > + ) > +{ > + IncrementErrorCount (); > + Print ( > + L"\nERROR: On Arm based systems, all cache properties must be" > + L"provided in the cache type structure." > + L"Missing '%s' flag.", > + *FlagName > + ); > +} > + > +/** > + This function validates the Cache Type Structure (Type 1) Cache Flags = field. > + > + @param [in] Ptr Pointer to the start of the field data. > + @param [in] Context Pointer to context specific information e.g. this > + could be a pointer to the ACPI table header. > +**/ > +STATIC > +VOID > +EFIAPI > +ValidateCacheFlags ( > + IN UINT8* Ptr, > + IN VOID* Context > + ) > +{ > +#if defined(MDE_CPU_ARM) || defined(MDE_CPU_AARCH64) > + CacheFlags =3D (EFI_ACPI_6_4_PPTT_STRUCTURE_CACHE_FLAGS*)Ptr; > + > + if (CacheFlags =3D=3D NULL) { > + IncrementErrorCount (); > + Print (L"\nERROR: Cache Structure Flags were not successfully read."= ); > + return; > + } > + > + if (CacheFlags->SizePropertyValid =3D=3D > EFI_ACPI_6_4_PPTT_CACHE_SIZE_INVALID) { > + LogCacheFlagError (L"Size Property Valid"); > + } > + if (CacheFlags->NumberOfSetsValid =3D=3D > EFI_ACPI_6_4_PPTT_NUMBER_OF_SETS_INVALID) { > + LogCacheFlagError (L"Number Of Sets Valid"); > + } > + if (CacheFlags->AssociativityValid =3D=3D > EFI_ACPI_6_4_PPTT_ASSOCIATIVITY_INVALID) { > + LogCacheFlagError (L"Associativity Valid"); > + } > + if (CacheFlags->AllocationTypeValid =3D=3D > EFI_ACPI_6_4_PPTT_ALLOCATION_TYPE_INVALID) { > + LogCacheFlagError (L"Allocation Type Valid"); > + } > + if (CacheFlags->CacheTypeValid =3D=3D > EFI_ACPI_6_4_PPTT_CACHE_TYPE_INVALID) { > + LogCacheFlagError (L"Cache Type Valid"); > + } > + if (CacheFlags->WritePolicyValid =3D=3D > EFI_ACPI_6_4_PPTT_WRITE_POLICY_INVALID) { > + LogCacheFlagError (L"Write Policy Valid"); > + } > + if (CacheFlags->LineSizeValid =3D=3D EFI_ACPI_6_4_PPTT_LINE_SIZE_INVAL= ID) > { > + LogCacheFlagError (L"Line Size Valid"); > + } > + // Cache ID was only introduced in revision 3 > + if (*(AcpiHdrInfo.Revision) >=3D 3) { > + if (CacheFlags->CacheIdValid =3D=3D EFI_ACPI_6_4_PPTT_CACHE_ID_INVAL= ID) > { > + LogCacheFlagError (L"Cache Id Valid"); > + } > + } > +#endif > +} > + > /** > This function validates the Cache Type Structure (Type 1) 'Number of s= ets' > field. > @@ -141,6 +217,44 @@ ValidateCacheLineSize ( #endif } >=20 > +/** > + This function validates the Cache Type Structure (Type 1) Cache ID fie= ld. > + > + @param [in] Ptr Pointer to the start of the field data. > + @param [in] Context Pointer to context specific information e.g. this > + could be a pointer to the ACPI table header. > +**/ > +STATIC > +VOID > +EFIAPI > +ValidateCacheId ( > + IN UINT8* Ptr, > + IN VOID* Context > + ) > +{ > + UINT32 CacheId; > + CacheId =3D *(UINT32*)Ptr; > + > + // Cache ID was only introduced in revision 3 if > + (*(AcpiHdrInfo.Revision) < 3) { > + return; > + } > + > + if (CacheFlags =3D=3D NULL) { > + IncrementErrorCount (); > + Print (L"\nERROR: Cache Structure Flags were not successfully read."= ); > + return; > + } > + > + if (CacheFlags->CacheIdValid =3D=3D EFI_ACPI_6_4_PPTT_CACHE_ID_VALID) = { > + if (CacheId =3D=3D 0) { > + IncrementErrorCount (); > + Print (L"\nERROR: 0 is not a valid Cache ID."); > + return; > + } > + } > +} > + > /** > This function validates the Cache Type Structure (Type 1) Attributes f= ield. >=20 > @@ -213,13 +327,15 @@ STATIC CONST ACPI_PARSER > CacheTypeStructureParser[] =3D { > {L"Length", 1, 1, L"%d", NULL, NULL, NULL, NULL}, > {L"Reserved", 2, 2, L"0x%x", NULL, NULL, NULL, NULL}, >=20 > - {L"Flags", 4, 4, L"0x%x", NULL, NULL, NULL, NULL}, > + {L"Flags", 4, 4, L"0x%x", NULL, (VOID**)&CacheFlags, ValidateCacheFlag= s, > + NULL}, > {L"Next Level of Cache", 4, 8, L"0x%x", NULL, NULL, NULL, NULL}, > {L"Size", 4, 12, L"0x%x", NULL, NULL, NULL, NULL}, > {L"Number of sets", 4, 16, L"%d", NULL, NULL, ValidateCacheNumberOfSet= s, > NULL}, > {L"Associativity", 1, 20, L"%d", NULL, NULL, ValidateCacheAssociativit= y, > NULL}, > {L"Attributes", 1, 21, L"0x%x", NULL, NULL, ValidateCacheAttributes, N= ULL}, > - {L"Line size", 2, 22, L"%d", NULL, NULL, ValidateCacheLineSize, NULL} > + {L"Line size", 2, 22, L"%d", NULL, NULL, ValidateCacheLineSize, > + NULL}, {L"Cache ID", 4, 24, L"%d", NULL, NULL, ValidateCacheId, NULL} > }; >=20 > /** > -- > Guid("CE165669-3EF3-493F-B85D-6190EE5B9759") >=20 >=20 >=20 >=20 >=20