From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from NAM11-CO1-obe.outbound.protection.outlook.com (NAM11-CO1-obe.outbound.protection.outlook.com [40.107.220.51]) by mx.groups.io with SMTP id smtpd.web09.153.1667577905164552739 for ; Fri, 04 Nov 2022 09:05:05 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@nvidia.com header.s=selector2 header.b=FZ5oLHlZ; spf=permerror, err=parse error for token &{10 18 %{i}._ip.%{h}._ehlo.%{d}._spf.vali.email}: invalid domain name (domain: nvidia.com, ip: 40.107.220.51, mailfrom: jbrasen@nvidia.com) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=cNZ1nwEKgly4ACvh+NkpRT6hAeBsnRp5XLfZutBfcZE489iW8NG/StGvNG01kPK/01Dy8Bwal7XQzghXxUl5JCDn842AjIWOdBxkFOedBr38UzsKk5jKZlrf1tb3OtqKWk0H2ERXQMtU9PXNV1hZpm1S8831VZUm4PWN/tEm6fqlEBhvhO9ZN43MR0pORfT+9NMo6NsuL60qe4V9Xe1XqX0+iUvwjBd9LBstCXo2rFvL10hjUjdX15iLqhHXwl4tS/RuL9jWeVoKg0/WxePA/81/VhtWq632Iz5ejhoA1evDFTFqjpvnmigiveE+N7oWyQ0vxgP0OnxBOVNIwqdMlA== 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=UTz0UGkA8KCo2K8ka2tgkbBpQnBEW2cF6L5h3n0Eih0=; b=DW9K0oGlD4u1CBHupmfcDs60X2tBYTLm8PZhrjkA+bYo0h94bkiwW8GGpoikXE76f7UvvD3lFYDYfz/AdanU+m78OrRi94EDLkQ5M2ko6KvYpH9q7WcjEk34KHZZG/G3Xo3olOspe6AlCsOBkSlyHMz+wEsDc2bN3r3cipxBieHejbU06efqxbfPRiGqb1oJM9pefRD9Jv822vofaGtBxvdmtE4VvvvSf/ruTgcXuR06tNFcWFNw0d3xTMipJbC9Ahom8D0YfL4Qavf8MCYS917W3IH3Z7vs4WIqPrcq1eymrLaVklV0RF+dE6IfrnthCLRqdgFIfdsV9hhIb8/YBw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 216.228.117.161) smtp.rcpttodomain=edk2.groups.io smtp.mailfrom=nvidia.com; dmarc=pass (p=reject sp=reject pct=100) action=none header.from=nvidia.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=UTz0UGkA8KCo2K8ka2tgkbBpQnBEW2cF6L5h3n0Eih0=; b=FZ5oLHlZkImpBN7mhl9UK9XCmjyWkz9OEpq3XQf6cOcryXz45kP61UMr4UoN1cOqWzZ1rFabXABIp2k2rtWc1rEWp7tqHDJg4NnGhMwu6pCa3ClLvU+V+e8DEkoCUq5k91HRr2M5Bhznw0fS1qWsLpPIu/31fCQhRcWhZApX/QVI8viTVwTj/TEwog6vyPNlGjYA9oAIj2fHEnZvy4/7ewjPJKa2CKkekyDsRKrlVgu1HJeAqSvYSFoMZUqa7/+uGWbq3GkRTOPiq2U9xb/1I2WdgQ8M3LiI2uX4tlyteX4/rQlwI+nzRa2G0NFzvBD6ttMFzt5bRXtFDp+E6lohlQ== Received: from DM6PR06CA0015.namprd06.prod.outlook.com (2603:10b6:5:120::28) by SJ0PR12MB6944.namprd12.prod.outlook.com (2603:10b6:a03:47b::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5769.19; Fri, 4 Nov 2022 16:05:02 +0000 Received: from DM6NAM11FT108.eop-nam11.prod.protection.outlook.com (2603:10b6:5:120:cafe::43) by DM6PR06CA0015.outlook.office365.com (2603:10b6:5:120::28) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5791.22 via Frontend Transport; Fri, 4 Nov 2022 16:05:02 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 216.228.117.161) smtp.mailfrom=nvidia.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=nvidia.com; Received-SPF: Pass (protection.outlook.com: domain of nvidia.com designates 216.228.117.161 as permitted sender) receiver=protection.outlook.com; client-ip=216.228.117.161; helo=mail.nvidia.com; pr=C Received: from mail.nvidia.com (216.228.117.161) by DM6NAM11FT108.mail.protection.outlook.com (10.13.172.95) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5791.20 via Frontend Transport; Fri, 4 Nov 2022 16:05:02 +0000 Received: from rnnvmail205.nvidia.com (10.129.68.10) by mail.nvidia.com (10.129.200.67) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.26; Fri, 4 Nov 2022 09:04:50 -0700 Received: from rnnvmail201.nvidia.com (10.129.68.8) by rnnvmail205.nvidia.com (10.129.68.10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.29; Fri, 4 Nov 2022 09:04:50 -0700 Received: from f9050a1d9579.nvidia.com (10.127.8.13) by mail.nvidia.com (10.129.68.8) with Microsoft SMTP Server id 15.2.986.29 via Frontend Transport; Fri, 4 Nov 2022 09:04:49 -0700 From: "Jeff Brasen" To: CC: , , , , , , , Jeff Brasen Subject: [PATCH v2 1/2] MdePkg/IndustryStandard: add definitions for ACPI APMT Date: Fri, 4 Nov 2022 10:04:47 -0600 Message-ID: X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 X-NVConfidentiality: public Return-Path: jbrasen@nvidia.com X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM6NAM11FT108:EE_|SJ0PR12MB6944:EE_ X-MS-Office365-Filtering-Correlation-Id: 85736767-d6c0-41b3-3579-08dabe7e550c X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: JpwaAgCzHO4VAxJpm94xD30jB3x8tchp97Mj51SEFo5no3Fpws5DEa8BnZwd1mRiDYjjnVqgVeROT0FMmpSkkbzU4IBqOyT+aEk7VB2v44+Xb8sPbQlgJSIqYbOMI/E9ouSCizqeTpIcqds1hcPK+6sIz/fZqoD/3tCCFdfj0d8PR+TJDdhiAlW44qF7AmcTJNP8YbaLoH8HP31tHpwxNY3jH4nLUAfCRpiHYQQR7Q68Vxzreq1Z6zO9oX/uCNosv7oGs+xRVZaSsopXa/aFrXOZJYfgdOO9jp/UETsgMkLzdHeobALGLCaSNKqvcYmV7ozqXB9C+s+CSfZf9fhNl0UCppqpnFBQPISslM8WpUo/0CF88FZqmUCAvjsFExP/+An3kmzWlmO40quIl7G98i/ZDeB7qG1eRpoqJnhKiabqfnf30ZTzvawSUvkTN+7r7GgQQUTE3ttYT4H4m4mzPPv9zQt2TR+ex1mAGkiF5b/+6dL1XGv0DkEz0xaImT/K7uGiaBECKMQzuaheggoF426wQvXGvp/ROEUw+Q53BRnEUfQL5J4azxoo6097bwkWoKXfzzad4s5PiBBSDzk5bbDOI9IIH1TAqKobnyh2RFG6U5gZJXFgFEZ67xbQtdXsxewLrkzFMCIb9ffJLDvzPzppwggrs6jAvUQyxPDRaxIQvYxvRE4BTlfCZE3rks0+8Q0eV1VljwwHEMI0pinzkemJl8U5H9wRe8m/fZ3V8awXehPPLrQ2sBDSG2hdJji0LmpDFgSZcLoaH+KS+4lZJw== X-Forefront-Antispam-Report: CIP:216.228.117.161;CTRY:US;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:mail.nvidia.com;PTR:dc6edge2.nvidia.com;CAT:NONE;SFS:(13230022)(4636009)(136003)(396003)(346002)(39860400002)(376002)(451199015)(46966006)(40470700004)(36840700001)(40460700003)(36756003)(86362001)(356005)(82740400003)(7636003)(186003)(336012)(426003)(2616005)(2906002)(107886003)(478600001)(36860700001)(7696005)(26005)(19627235002)(47076005)(83380400001)(40480700001)(6916009)(8676002)(4326008)(82310400005)(5660300002)(70586007)(70206006)(316002)(8936002)(54906003)(41300700001);DIR:OUT;SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Nov 2022 16:05:02.6804 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 85736767-d6c0-41b3-3579-08dabe7e550c X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a;Ip=[216.228.117.161];Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: DM6NAM11FT108.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR12MB6944 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain This adds #defines and struct typedefs for the various node types in=0D the ACPI Arm Performance Monitoring Unit (APMT) table.=0D =0D Signed-off-by: Jeff Brasen =0D ---=0D MdePkg/Include/IndustryStandard/Acpi64.h | 5 ++=0D .../ArmPerformanceMonitoringUnitTable.h | 69 +++++++++++++++++++=0D 2 files changed, 74 insertions(+)=0D create mode 100644 MdePkg/Include/IndustryStandard/ArmPerformanceMonitorin= gUnitTable.h=0D =0D diff --git a/MdePkg/Include/IndustryStandard/Acpi64.h b/MdePkg/Include/Indu= stryStandard/Acpi64.h=0D index fe5ebfac2b..575ca0430c 100644=0D --- a/MdePkg/Include/IndustryStandard/Acpi64.h=0D +++ b/MdePkg/Include/IndustryStandard/Acpi64.h=0D @@ -2847,6 +2847,11 @@ typedef struct {=0D ///=0D #define EFI_ACPI_6_4_MULTIPLE_APIC_DESCRIPTION_TABLE_SIGNATURE SIGNATURE_= 32('A', 'P', 'I', 'C')=0D =0D +///=0D +/// "APMT" Arm Performance Monitoring Unit Table=0D +///=0D +#define EFI_ACPI_6_4_ARM_PERFORMANCE_MONITORING_UNIT_TABLE_SIGNATURE SIGN= ATURE_32('A', 'P', 'M', 'T')=0D +=0D ///=0D /// "BERT" Boot Error Record Table=0D ///=0D diff --git a/MdePkg/Include/IndustryStandard/ArmPerformanceMonitoringUnitTa= ble.h b/MdePkg/Include/IndustryStandard/ArmPerformanceMonitoringUnitTable.h= =0D new file mode 100644=0D index 0000000000..fe7084cffd=0D --- /dev/null=0D +++ b/MdePkg/Include/IndustryStandard/ArmPerformanceMonitoringUnitTable.h=0D @@ -0,0 +1,69 @@=0D +/** @file=0D + ACPI Arm Performance Monitoring Unit (APMT) table=0D + as specified in ARM spec DEN0117=0D +=0D + Copyright (c) 2022, NVIDIA CORPORATION. All rights reserved.=0D + Copyright (c) 2022, ARM Limited. All rights reserved.=0D + SPDX-License-Identifier: BSD-2-Clause-Patent=0D +**/=0D +=0D +#ifndef ARM_PERFORMANCE_MONITORING_UNIT_TABLE_H_=0D +#define ARM_PERFORMANCE_MONITORING_UNIT_TABLE_H_=0D +=0D +#include =0D +=0D +#pragma pack(1)=0D +=0D +///=0D +/// Arm Performance Monitoring Unit (APMT) tabl=0D +///=0D +typedef struct {=0D + EFI_ACPI_DESCRIPTION_HEADER Header;=0D +} EFI_ACPI_ARM_PERFORMANCE_MONITORING_UNIT_TABLE_HEADER;=0D +=0D +///=0D +/// APMT Revision (as defined in DEN0117.)=0D +///=0D +#define EFI_ACPI_ARM_PERFORMANCE_MONITORING_UNIT_TABLE_REVISION 0x00=0D +=0D +///=0D +/// Arm PMU Node Structure=0D +///=0D +=0D +// Node Flags=0D +#define EFI_ACPI_APMT_DUAL_PAGE_EXTENSION_SUPPORTED BIT0=0D +#define EFI_ACPI_APMT_PROCESSOR_AFFINITY_TYPE_CONTAINER BIT1=0D +#define EFI_ACPI_APMT_PROCESSOR_AFFINITY_TYPE_PROCESSOR 0 // BIT 1=0D +#define EFI_ACPI_APMT_64BIT_SINGLE_COPY_ATOMICITY_SUPPORTED BIT2=0D +=0D +// Interrupt Flags=0D +#define EFI_ACPI_APMT_INTERRUPT_MODE_EDGE_TRIGGERED BIT0=0D +#define EFI_ACPI_APMT_INTERRUPT_MODE_LEVEL_TRIGGERED 0 // BIT 0=0D +#define EFI_ACPI_APMT_INTERRUPT_TYPE_WIRED 0 // BIT 1=0D +=0D +// Node Type=0D +#define EFI_ACPI_APMT_NODE_TYPE_MEMORY_CONTROLLER 0x00=0D +#define EFI_ACPI_APMT_NODE_TYPE_SMMU 0x01=0D +#define EFI_ACPI_APMT_NODE_TYPE_PCIE_ROOT_COMPLEX 0x02=0D +#define EFI_ACPI_APMT_NODE_TYPE_ACPI_DEVICE 0x03=0D +#define EFI_ACPI_APMT_NODE_TYPE_CPU_CACHE 0x04=0D +=0D +typedef struct {=0D + UINT16 Length;=0D + UINT8 NodeFlags;=0D + UINT8 NodeType;=0D + UINT32 Identifier;=0D + UINT64 NodeInstancePrimary;=0D + UINT32 NodeInstanceSecondary;=0D + UINT64 BaseAddress0;=0D + UINT64 BaseAddress1;=0D + UINT32 OverflowInterrupt;=0D + UINT32 Reserved1;=0D + UINT32 OverflowInterruptFlags;=0D + UINT32 ProcessorAffinity;=0D + UINT32 ImplementationId;=0D +} EFI_ACPI_ARM_PERFORMANCE_MONITORING_UNIT_NODE;=0D +=0D +#pragma pack()=0D +=0D +#endif=0D -- =0D 2.25.1=0D =0D