From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by mx.groups.io with SMTP id smtpd.web12.2770.1620677196950832567 for ; Mon, 10 May 2021 13:06:37 -0700 Authentication-Results: mx.groups.io; dkim=missing; spf=pass (domain: arm.com, ip: 217.140.110.172, mailfrom: pranav.madhu@arm.com) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 968B9168F; Mon, 10 May 2021 13:06:36 -0700 (PDT) Received: from usa.arm.com (a074742.blr.arm.com [10.162.16.32]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 33CEA3F719; Mon, 10 May 2021 13:06:34 -0700 (PDT) From: "Pranav Madhu" To: devel@edk2.groups.io Cc: Ard Biesheuvel , Sami Mujawar , Pierre Gondois Subject: [edk2-platforms][PATCH V3 06/14] Platform/Sgi: Add DSDT ACPI table for RD-N1-Edge dual-chip platform Date: Tue, 11 May 2021 01:36:07 +0530 Message-Id: <20210510200615.26879-7-pranav.madhu@arm.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20210510200615.26879-1-pranav.madhu@arm.com> References: <20210510200615.26879-1-pranav.madhu@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable The RD-N1-Edge dual-chip platform is composed of two RD-N1-Edge platforms connected over a coherent link. Each chip has two clusters with four CPUs in each cluster. Add the Differentiated System Description Table (DSDT) ACPI table for this platform with processor container devices defined containing the corresponding processor devices. Signed-off-by: Pranav Madhu --- Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf | 2 +- Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2/Dsdt.asl | 136 ++++++++++= ++++++++++ 2 files changed, 137 insertions(+), 1 deletion(-) diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf b/Pl= atform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf index 76886d1c6a17..c7c29b9c5946 100644 --- a/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf +++ b/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2AcpiTables.inf @@ -21,7 +21,7 @@ Gtdt.aslc Iort.aslc Mcfg.aslc - RdN1Edge/Dsdt.asl + RdN1EdgeX2/Dsdt.asl RdN1EdgeX2/Hmat.aslc RdN1EdgeX2/Madt.aslc RdN1EdgeX2/Srat.aslc diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2/Dsdt.asl b/Platfor= m/ARM/SgiPkg/AcpiTables/RdN1EdgeX2/Dsdt.asl new file mode 100644 index 000000000000..2379f20a79ef --- /dev/null +++ b/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2/Dsdt.asl @@ -0,0 +1,136 @@ +/** @file +* Differentiated System Description Table Fields (DSDT) +* +* Copyright (c) 2021, ARM Ltd. All rights reserved. +* +* SPDX-License-Identifier: BSD-2-Clause-Patent +* +* @par Specification Reference: +* - ACPI 6.3, Section 5.2.11.1, Differentiated System Description Table +**/ + +#include "SgiAcpiHeader.h" +#include "SgiPlatform.h" + +DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD", "ARMSGI", + EFI_ACPI_ARM_OEM_REVISION) { + Scope (_SB) { + /* Chip 0 CPUs */ + Device (CLU0) { // Cluster 0 + Name (_HID, "ACPI0010") + Name (_UID, 0) + + Device (CP00) { // Neoverse-N1: Cluster 0, Cpu 0 + Name (_HID, "ACPI0007") + Name (_UID, 0) + Name (_STA, 0xF) + } + + Device (CP01) { // Neoverse-N1: Cluster 0, Cpu 1 + Name (_HID, "ACPI0007") + Name (_UID, 1) + Name (_STA, 0xF) + } + + Device (CP02) { // Neoverse-N1: Cluster 0, Cpu 2 + Name (_HID, "ACPI0007") + Name (_UID, 2) + Name (_STA, 0xF) + } + + Device (CP03) { // Neoverse-N1: Cluster 0, Cpu 3 + Name (_HID, "ACPI0007") + Name (_UID, 3) + Name (_STA, 0xF) + } + } + + Device (CLU1) { // Cluster 1 + Name (_HID, "ACPI0010") + Name (_UID, 1) + + Device (CP04) { // Neoverse-N1: Cluster 1, Cpu 0 + Name (_HID, "ACPI0007") + Name (_UID, 4) + Name (_STA, 0xF) + } + + Device (CP05) { // Neoverse-N1: Cluster 1, Cpu 1 + Name (_HID, "ACPI0007") + Name (_UID, 5) + Name (_STA, 0xF) + } + + Device (CP06) { // Neoverse-N1: Cluster 1, Cpu 2 + Name (_HID, "ACPI0007") + Name (_UID, 6) + Name (_STA, 0xF) + } + + Device (CP07) { // Neoverse-N1: Cluster 1, Cpu 3 + Name (_HID, "ACPI0007") + Name (_UID, 7) + Name (_STA, 0xF) + } + } + + /* Chip 1 CPUs */ + Device (CLU2) { // Cluster 2 + Name (_HID, "ACPI0010") + Name (_UID, 2) + + Device (CP08) { // Neoverse-N1: Cluster 2, Cpu 0 + Name (_HID, "ACPI0007") + Name (_UID, 8) + Name (_STA, 0xF) + } + + Device (CP09) { // Neoverse-N1: Cluster 2, Cpu 1 + Name (_HID, "ACPI0007") + Name (_UID, 9) + Name (_STA, 0xF) + } + + Device (CP10) { // Neoverse-N1: Cluster 2, Cpu 2 + Name (_HID, "ACPI0007") + Name (_UID, 10) + Name (_STA, 0xF) + } + + Device (CP11) { // Neoverse-N1: Cluster 2, Cpu 3 + Name (_HID, "ACPI0007") + Name (_UID, 11) + Name (_STA, 0xF) + } + } + + Device (CLU3) { // Cluster 3 + Name (_HID, "ACPI0010") + Name (_UID, 3) + + Device (CP12) { // Neoverse-N1: Cluster 3, Cpu 0 + Name (_HID, "ACPI0007") + Name (_UID, 12) + Name (_STA, 0xF) + } + + Device (CP13) { // Neoverse-N1: Cluster 3, Cpu 1 + Name (_HID, "ACPI0007") + Name (_UID, 13) + Name (_STA, 0xF) + } + + Device (CP14) { // Neoverse-N1: Cluster 3, Cpu 2 + Name (_HID, "ACPI0007") + Name (_UID, 14) + Name (_STA, 0xF) + } + + Device (CP15) { // Neoverse-N1: Cluster 3, Cpu 3 + Name (_HID, "ACPI0007") + Name (_UID, 15) + Name (_STA, 0xF) + } + } + } // Scope(_SB) +} --=20 2.17.1