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.web11.11183.1619613385584548727 for ; Wed, 28 Apr 2021 05:36:25 -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 377C51FB; Wed, 28 Apr 2021 05:36:25 -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 0CC633F694; Wed, 28 Apr 2021 05:36:23 -0700 (PDT) From: "Pranav Madhu" To: devel@edk2.groups.io Cc: Ard Biesheuvel , Sami Mujawar Subject: [edk2-platforms][PATCH V1 06/17] Platform/Sgi: Add DSDT ACPI table for RD-N1-Edge dual-chip platform Date: Wed, 28 Apr 2021 18:05:49 +0530 Message-Id: <20210428123600.2385-7-pranav.madhu@arm.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20210428123600.2385-1-pranav.madhu@arm.com> References: <20210428123600.2385-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 91d219d14506..617519d9dd38 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/Pptt.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