From nobody Thu Apr 18 14:24:31 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) client-ip=66.175.222.108; envelope-from=bounce+27952+74542+1787277+3901457@groups.io; helo=mail02.groups.io; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+74542+1787277+3901457@groups.io; dmarc=fail(p=none dis=none) header.from=arm.com ARC-Seal: i=1; a=rsa-sha256; t=1619613378; cv=none; d=zohomail.com; s=zohoarc; b=cCZDj242FYF/9Nk3MlZeztMIW8xIkmV+2PPAhLpTHiFqkKAe7Wz+N4Qiy6R8HrLbCw/NkD4BW3IqM74Hp3JhWv0+MVcDKsig5LLtFDGLwkxPx4NRUQT8a7HlJRLk/XY+UbJ1X9qnWCKN4liePVkLU7xe2zjHcSNJobhID3jdRJA= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1619613378; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:References:Sender:Subject:To; bh=SrHP53wCubF/u2ByDiZN9+4KjjSpBSA8es6fNLOgSGA=; b=KpfaoudTtgD0ukHRnOCwNHPbQBh4NZqY2Bm7NPSeD+xABje1T3SXy0kj4EbS8QOKfbJH4rnmMAWbTELNlpZWeDE7RsHcgrImQwqhsNLRRNP+k4yQmB4zfS1sGkTN4vSkaEcKYQNYT+BQ8wzZMZFlgV2UZ5pfLa0LLRmvDX+k4Y4= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+74542+1787277+3901457@groups.io; dmarc=fail header.from= (p=none dis=none) header.from= Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1619613378400954.4299513048358; Wed, 28 Apr 2021 05:36:18 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id XsTdYY1788612x47lsDfxjOY; Wed, 28 Apr 2021 05:36:18 -0700 X-Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by mx.groups.io with SMTP id smtpd.web10.11284.1619613377498393862 for ; Wed, 28 Apr 2021 05:36:17 -0700 X-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 1E6241042; Wed, 28 Apr 2021 05:36:17 -0700 (PDT) X-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 E7C413F694; Wed, 28 Apr 2021 05:36:15 -0700 (PDT) From: "Pranav Madhu" To: devel@edk2.groups.io Cc: Ard Biesheuvel , Sami Mujawar Subject: [edk2-devel] [edk2-platforms][PATCH V1 01/17] Platform/Sgi: Macro definitions for ACPI _OSC Date: Wed, 28 Apr 2021 18:05:44 +0530 Message-Id: <20210428123600.2385-2-pranav.madhu@arm.com> In-Reply-To: <20210428123600.2385-1-pranav.madhu@arm.com> References: <20210428123600.2385-1-pranav.madhu@arm.com> MIME-Version: 1.0 Precedence: Bulk List-Unsubscribe: List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,pranav.madhu@arm.com X-Gm-Message-State: SJB40iEnjFiuYuBogGjhOVAbx1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1619613378; bh=Vtn4Zne/GkhKoqLbJWgA02bSJeONjIQueYaHAI3ECQw=; h=Cc:Date:From:Reply-To:Subject:To; b=lv5xPzSqeEHcPzxRt7S1TjOZlcHGPw5C6REIAKyiS0W9P+uztQSdHNwd+XPc5VpLu/8 JGHjtoJBJoMep3SDo0SFNbuhBkPXTxss1sDkYm4OzaGoHtEVaDQg1YCEOKhOppP7mVJm8 G2TAgH1XOCxqlIE7KExa6ThAHTtSD64B0EE= X-ZohoMail-DKIM: pass (identity @groups.io) Content-Type: text/plain; charset="utf-8" Add helper macros required for use with ACPI Operating System Capabilities (_OSC) control method. The macros for capability DWORD and return status value DWORD are defined. Signed-off-by: Pranav Madhu Reviewed-by: Thomas Abraham --- Platform/ARM/SgiPkg/Include/SgiAcpiHeader.h | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/Platform/ARM/SgiPkg/Include/SgiAcpiHeader.h b/Platform/ARM/Sgi= Pkg/Include/SgiAcpiHeader.h index 57f6a8444b63..4977d4d898aa 100644 --- a/Platform/ARM/SgiPkg/Include/SgiAcpiHeader.h +++ b/Platform/ARM/SgiPkg/Include/SgiAcpiHeader.h @@ -23,6 +23,22 @@ #define CORE_COUNT FixedPcdGet32 (PcdCoreCount) #define CLUSTER_COUNT FixedPcdGet32 (PcdClusterCount) =20 +// ACPI OSC Status bits +#define OSC_STS_BIT0_RES (1U << 0) +#define OSC_STS_FAILURE (1U << 1) +#define OSC_STS_UNRECOGNIZED_UUID (1U << 2) +#define OSC_STS_UNRECOGNIZED_REV (1U << 3) +#define OSC_STS_CAPABILITY_MASKED (1U << 4) +#define OSC_STS_MASK (OSC_STS_BIT0_RES | \ + OSC_STS_FAILURE | \ + OSC_STS_UNRECOGNIZED_UUID | \ + OSC_STS_UNRECOGNIZED_REV | \ + OSC_STS_CAPABILITY_MASKED) + +// ACPI OSC for Platform-Wide Capability +#define OSC_CAP_CPPC_SUPPORT (1U << 5) +#define OSC_CAP_OS_INITIATED_LPI (1U << 8) + #pragma pack(1) // PPTT processor core structure typedef struct { --=20 2.17.1 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#74542): https://edk2.groups.io/g/devel/message/74542 Mute This Topic: https://groups.io/mt/82428255/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- From nobody Thu Apr 18 14:24:31 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) client-ip=66.175.222.108; envelope-from=bounce+27952+74543+1787277+3901457@groups.io; helo=mail02.groups.io; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+74543+1787277+3901457@groups.io; dmarc=fail(p=none dis=none) header.from=arm.com ARC-Seal: i=1; a=rsa-sha256; t=1619613380; cv=none; d=zohomail.com; s=zohoarc; b=mtbVNUpLztCPX84QcJNKxuelIydqWeq8DJ/FNpBsmepf4ddY2usL9njkmrl6+T4xFMKaCxzIes7i3WPNWhpCQD4Bpfku/HmI9+K8xCpugGlhY8LgFI6G+udKpO/+jicaSFpk7+2cgxoEdQqtU/Pu+HgGTFTFweeS1JW6Mk1dX78= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1619613380; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:References:Sender:Subject:To; bh=CTFLZTjgqYlLrm7KQGCFB8QyLyLrENZzmM17AamA5lM=; b=A7iNcYz2uzBlQKF+cm31VdyQuJYI2GWcwZHERoSiUN75ld+dMevAI02DbMtnsvHwVi2nAnd7GtnFlyVCxa80/DfAwQJYq9W4vnACnu8aNdyoG4LHvWAKW7Jds+88Dn+h2woSPjj5MnPX2DyiVxMbBYkXMb8bzB8LGru105TdaS0= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+74543+1787277+3901457@groups.io; dmarc=fail header.from= (p=none dis=none) header.from= Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1619613380130618.8633013770385; Wed, 28 Apr 2021 05:36:20 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id IYN4YY1788612xnQ5ndiWX5n; Wed, 28 Apr 2021 05:36:19 -0700 X-Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by mx.groups.io with SMTP id smtpd.web08.10940.1619613379180633448 for ; Wed, 28 Apr 2021 05:36:19 -0700 X-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 B55F61FB; Wed, 28 Apr 2021 05:36:18 -0700 (PDT) X-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 8A36E3F694; Wed, 28 Apr 2021 05:36:17 -0700 (PDT) From: "Pranav Madhu" To: devel@edk2.groups.io Cc: Ard Biesheuvel , Sami Mujawar Subject: [edk2-devel] [edk2-platforms][PATCH V1 02/17] Platform/Sgi: Add CPU container for SGI-575 Date: Wed, 28 Apr 2021 18:05:45 +0530 Message-Id: <20210428123600.2385-3-pranav.madhu@arm.com> In-Reply-To: <20210428123600.2385-1-pranav.madhu@arm.com> References: <20210428123600.2385-1-pranav.madhu@arm.com> MIME-Version: 1.0 Precedence: Bulk List-Unsubscribe: List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,pranav.madhu@arm.com X-Gm-Message-State: 4F3k7mXO3cynHQ28qYzXU657x1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1619613379; bh=oasb8zkQkTa/Vp4ZIArQIsAYbIcTPhAaQ2T2xDSjcX0=; h=Cc:Date:From:Reply-To:Subject:To; b=fDmHAnQ73vgTaPJqR1y2FkTAlblhs4CaYY0YaqAJPo+E2nsDto4fWWQCnqWfrDMubCs krp4DVUA7OJKntnMkDbNlQb7Irc1cvpHaTgeNeQrPZYQNjV3NVoS04etFhF1lb5swhiQQ f4p3jhpZz79f1O2QL7ZM+cITas9jhti8PIQ= X-ZohoMail-DKIM: pass (identity @groups.io) Content-Type: text/plain; charset="utf-8" The SGI-575 platform includes two clusters with four single-thread CPUs. Add processor container devices for the two clusters on the SGI-575 platform and move the existing processor devices into respective processor containers. Signed-off-by: Pranav Madhu Reviewed-by: Thomas Abraham --- Platform/ARM/SgiPkg/AcpiTables/Sgi575/Dsdt.asl | 99 +++++++++++--------- 1 file changed, 54 insertions(+), 45 deletions(-) diff --git a/Platform/ARM/SgiPkg/AcpiTables/Sgi575/Dsdt.asl b/Platform/ARM/= SgiPkg/AcpiTables/Sgi575/Dsdt.asl index fe0b92137bde..7390849e6231 100644 --- a/Platform/ARM/SgiPkg/AcpiTables/Sgi575/Dsdt.asl +++ b/Platform/ARM/SgiPkg/AcpiTables/Sgi575/Dsdt.asl @@ -12,53 +12,62 @@ =20 DefinitionBlock("DsdtTable.aml", "DSDT", 2, "ARMLTD", "ARMSGI", EFI_ACPI_A= RM_OEM_REVISION) { Scope(_SB) { - - Device(CP00) { // A75-0: Cluster 0, Cpu 0 - Name(_HID, "ACPI0007") - Name(_UID, 0) - Name(_STA, 0xF) - } - - Device(CP01) { // A75-0: Cluster 0, Cpu 1 - Name(_HID, "ACPI0007") - Name(_UID, 1) - Name(_STA, 0xF) - } - - Device(CP02) { // A75-0: Cluster 0, Cpu 2 - Name(_HID, "ACPI0007") - Name(_UID, 2) - Name(_STA, 0xF) - } - - Device(CP03) { // A75-0: Cluster 0, Cpu 3 - Name(_HID, "ACPI0007") - Name(_UID, 3) - Name(_STA, 0xF) - } - - Device(CP04) { // A75-0: Cluster 1, Cpu 0 - Name(_HID, "ACPI0007") - Name(_UID, 4) - Name(_STA, 0xF) - } - - Device(CP05) { // A75-0: Cluster 1, Cpu 1 - Name(_HID, "ACPI0007") - Name(_UID, 5) - Name(_STA, 0xF) - } - - Device(CP06) { // A75-0: Cluster 1, Cpu 2 - Name(_HID, "ACPI0007") - Name(_UID, 6) - Name(_STA, 0xF) + Device (CLU0) { // Cluster 0 + Name (_HID, "ACPI0010") + Name (_UID, 0) + + Device (CP00) { // A75-0: Cluster 0, Cpu 0 + Name (_HID, "ACPI0007") + Name (_UID, 0) + Name (_STA, 0xF) + } + + Device (CP01) { // A75-0: Cluster 0, Cpu 1 + Name (_HID, "ACPI0007") + Name (_UID, 1) + Name (_STA, 0xF) + } + + Device (CP02) { // A75-0: Cluster 0, Cpu 2 + Name (_HID, "ACPI0007") + Name (_UID, 2) + Name (_STA, 0xF) + } + + Device (CP03) { // A75-0: Cluster 0, Cpu 3 + Name (_HID, "ACPI0007") + Name (_UID, 3) + Name (_STA, 0xF) + } } =20 - Device(CP07) { // A75-0: Cluster 1, Cpu 3 - Name(_HID, "ACPI0007") - Name(_UID, 7) - Name(_STA, 0xF) + Device (CLU1) { // Cluster 1 + Name (_HID, "ACPI0010") + Name (_UID, 1) + + Device (CP04) { // A75-0: Cluster 1, Cpu 0 + Name (_HID, "ACPI0007") + Name (_UID, 4) + Name (_STA, 0xF) + } + + Device (CP05) { // A75-0: Cluster 1, Cpu 1 + Name (_HID, "ACPI0007") + Name (_UID, 5) + Name (_STA, 0xF) + } + + Device (CP06) { // A75-0: Cluster 1, Cpu 2 + Name (_HID, "ACPI0007") + Name (_UID, 6) + Name (_STA, 0xF) + } + + Device (CP07) { // A75-0: Cluster 1, Cpu 3 + Name (_HID, "ACPI0007") + Name (_UID, 7) + Name (_STA, 0xF) + } } =20 // UART PL011 --=20 2.17.1 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#74543): https://edk2.groups.io/g/devel/message/74543 Mute This Topic: https://groups.io/mt/82428257/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- From nobody Thu Apr 18 14:24:31 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) client-ip=66.175.222.108; envelope-from=bounce+27952+74544+1787277+3901457@groups.io; helo=mail02.groups.io; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+74544+1787277+3901457@groups.io; dmarc=fail(p=none dis=none) header.from=arm.com ARC-Seal: i=1; a=rsa-sha256; t=1619613381; cv=none; d=zohomail.com; s=zohoarc; b=Qi26rI4f7tQComrhWMYnt3DvrpRzeWLbHHpIHY3bUpnrk/Uo7w90iK4y++FNpsrMOLs9E5aY4uLSxWvVG1T9kwLpsznKSPUT55/IcvKuKToQi4MiK8SeY4uM7u9FfmKV25MLLFw3otIzx54Zcag+TEhxoLhWLgG9aANzm6CvHEE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1619613381; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:References:Sender:Subject:To; bh=HWRONvgsAB9Kx2M0r49Y52hmwwfFLlGdonWnqg9hxzw=; b=mUQApXwtKSeUu7+/ejBLQu1IyIJ60UubVDQi0x2/pEwknElg1eQifjQIBPs1Vt1Mv38ojC+dGglzZ9NsNCWJ4AM2dahLZvVEsXyhH5LqYBxIDBoe+K7i09y9lF0v56l/0dr2x+gluOz0slC8BrHgk1wBbYymhjWrw5EA55odiOY= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+74544+1787277+3901457@groups.io; dmarc=fail header.from= (p=none dis=none) header.from= Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1619613381832662.6593837686149; Wed, 28 Apr 2021 05:36:21 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id heMPYY1788612xlfATSxrGHS; Wed, 28 Apr 2021 05:36:21 -0700 X-Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by mx.groups.io with SMTP id smtpd.web12.10880.1619613380779345224 for ; Wed, 28 Apr 2021 05:36:20 -0700 X-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 5A8211FB; Wed, 28 Apr 2021 05:36:20 -0700 (PDT) X-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 2CFCB3F694; Wed, 28 Apr 2021 05:36:18 -0700 (PDT) From: "Pranav Madhu" To: devel@edk2.groups.io Cc: Ard Biesheuvel , Sami Mujawar Subject: [edk2-devel] [edk2-platforms][PATCH V1 03/17] Platform/Sgi: Low Power Idle states for SGI-575 Date: Wed, 28 Apr 2021 18:05:46 +0530 Message-Id: <20210428123600.2385-4-pranav.madhu@arm.com> In-Reply-To: <20210428123600.2385-1-pranav.madhu@arm.com> References: <20210428123600.2385-1-pranav.madhu@arm.com> MIME-Version: 1.0 Precedence: Bulk List-Unsubscribe: List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,pranav.madhu@arm.com X-Gm-Message-State: 22s6gdxxKuJlpxk9y2o63oKrx1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1619613381; bh=MMrx5MFdePQFl/lSNRa0op/FqR8C6QDKnHrshlTYCUw=; h=Cc:Date:From:Reply-To:Subject:To; b=F7GNoGuXZGeFy/Hmi2OXWl+SJhAU+e70tojxaIG5BZV+ENCLntlvgImq5o0Caps8If2 Fe30AbHdWQcYzi2kqYNO8c/5idbaHI/QvX5DgVnGmsBNqSmbMbwpwAcMmGdHzDPMzyJid +zN26V/aGIFb1jg4KvNBYYosgjajT9whgsQ= X-ZohoMail-DKIM: pass (identity @groups.io) Content-Type: text/plain; charset="utf-8" SGI-575 platform supports 2 LPI states, LPI1 (Standby WFI) and LPI3 (Power-down) and the cluster supports LPI2 (Power-down) state. The LPI implementation also supports combined power state for core and cluster. Signed-off-by: Pranav Madhu Reviewed-by: Thomas Abraham --- Platform/ARM/SgiPkg/AcpiTables/Sgi575/Dsdt.asl | 132 ++++++++++++++++++++ 1 file changed, 132 insertions(+) diff --git a/Platform/ARM/SgiPkg/AcpiTables/Sgi575/Dsdt.asl b/Platform/ARM/= SgiPkg/AcpiTables/Sgi575/Dsdt.asl index 7390849e6231..e879a681fabf 100644 --- a/Platform/ARM/SgiPkg/AcpiTables/Sgi575/Dsdt.asl +++ b/Platform/ARM/SgiPkg/AcpiTables/Sgi575/Dsdt.asl @@ -12,61 +12,193 @@ =20 DefinitionBlock("DsdtTable.aml", "DSDT", 2, "ARMLTD", "ARMSGI", EFI_ACPI_A= RM_OEM_REVISION) { Scope(_SB) { + /* _OSC: Operating System Capabilities */ + Method (_OSC, 4, Serialized) { + CreateDWordField (Arg3, 0x00, STS0) + CreateDWordField (Arg3, 0x04, CAP0) + + /* Platform-wide Capabilities */ + If (LEqual (Arg0, ToUUID("0811b06e-4a27-44f9-8d60-3cbbc22e7b48"))) { + /* OSC rev 1 supported, for other version, return failure */ + If (LEqual (Arg1, One)) { + And (STS0, Not (OSC_STS_MASK), STS0) + + If (And (CAP0, OSC_CAP_OS_INITIATED_LPI)) { + /* OS initiated LPI not supported */ + And (CAP0, Not (OSC_CAP_OS_INITIATED_LPI), CAP0) + Or (STS0, OSC_STS_CAPABILITY_MASKED, STS0) + } + } Else { + And (STS0, Not (OSC_STS_MASK), STS0) + Or (STS0, Or (OSC_STS_FAILURE, OSC_STS_UNRECOGNIZED_REV), STS0) + } + } Else { + And (STS0, Not (OSC_STS_MASK), STS0) + Or (STS0, Or (OSC_STS_FAILURE, OSC_STS_UNRECOGNIZED_UUID), STS0) + } + + Return (Arg3) + } + + Name (CLPI, Package () { /* LPI for Cluster, support 1 LPI state */ + 0, // Version + 0, // Level Index + 1, // Count + Package () { // Power Gating state for Cluster + 2500, // Min residency (uS) + 1150, // Wake latency (uS) + 1, // Flags + 1, // Arch Context Flags + 100, // Residency Counter Frequency + 0, // No Parent State + 0x00000020, // Integer Entry method + ResourceTemplate () { // Null Residency Counter + Register (SystemMemory, 0, 0, 0, 0) + }, + ResourceTemplate () { // Null Usage Counter + Register (SystemMemory, 0, 0, 0, 0) + }, + "LPI2-Cluster" + }, + }) + + Name (PLPI, Package () { /* LPI for Processor, support 2 LPI states */ + 0, // Version + 1, // Level Index + 2, // Count + Package () { // WFI for CPU + 1, // Min residency (uS) + 1, // Wake latency (uS) + 1, // Flags + 0, // Arch Context lost Flags (no loss) + 100, // Residency Counter Frequency + 0, // No parent state + ResourceTemplate () { // Register Entry method + Register (FFixedHW, + 32, // Bit Width + 0, // Bit Offset + 0xFFFFFFFF, // Address + 3, // Access Size + ) + }, + ResourceTemplate () { // Null Residency Counter + Register (SystemMemory, 0, 0, 0, 0) + }, + ResourceTemplate () { // Null Usage Counter + Register (SystemMemory, 0, 0, 0, 0) + }, + "LPI1-Core" + }, + Package () { // Power Gating state for CPU + 150, // Min residency (uS) + 350, // Wake latency (uS) + 1, // Flags + 1, // Arch Context lost Flags (Core context los= t) + 100, // Residency Counter Frequency + 1, // Parent node can be in any shallower state + ResourceTemplate () { // Register Entry method + Register (FFixedHW, + 32, // Bit Width + 0, // Bit Offset + 0x40000002, // Address (PwrLvl:core, StateTyp:PwrDn) + 3, // Access Size + ) + }, + ResourceTemplate () { // Null Residency Counter + Register (SystemMemory, 0, 0, 0, 0) + }, + ResourceTemplate () { // Null Usage Counter + Register (SystemMemory, 0, 0, 0, 0) + }, + "LPI3-Core" + }, + }) + Device (CLU0) { // Cluster 0 Name (_HID, "ACPI0010") Name (_UID, 0) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.CLPI) + } =20 Device (CP00) { // A75-0: Cluster 0, Cpu 0 Name (_HID, "ACPI0007") Name (_UID, 0) Name (_STA, 0xF) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } =20 Device (CP01) { // A75-0: Cluster 0, Cpu 1 Name (_HID, "ACPI0007") Name (_UID, 1) Name (_STA, 0xF) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } =20 Device (CP02) { // A75-0: Cluster 0, Cpu 2 Name (_HID, "ACPI0007") Name (_UID, 2) Name (_STA, 0xF) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } =20 Device (CP03) { // A75-0: Cluster 0, Cpu 3 Name (_HID, "ACPI0007") Name (_UID, 3) Name (_STA, 0xF) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } =20 Device (CLU1) { // Cluster 1 Name (_HID, "ACPI0010") Name (_UID, 1) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.CLPI) + } =20 Device (CP04) { // A75-0: Cluster 1, Cpu 0 Name (_HID, "ACPI0007") Name (_UID, 4) Name (_STA, 0xF) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } =20 Device (CP05) { // A75-0: Cluster 1, Cpu 1 Name (_HID, "ACPI0007") Name (_UID, 5) Name (_STA, 0xF) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } =20 Device (CP06) { // A75-0: Cluster 1, Cpu 2 Name (_HID, "ACPI0007") Name (_UID, 6) Name (_STA, 0xF) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } =20 Device (CP07) { // A75-0: Cluster 1, Cpu 3 Name (_HID, "ACPI0007") Name (_UID, 7) Name (_STA, 0xF) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } =20 --=20 2.17.1 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#74544): https://edk2.groups.io/g/devel/message/74544 Mute This Topic: https://groups.io/mt/82428259/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- From nobody Thu Apr 18 14:24:31 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) client-ip=66.175.222.108; envelope-from=bounce+27952+74545+1787277+3901457@groups.io; helo=mail02.groups.io; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+74545+1787277+3901457@groups.io; dmarc=fail(p=none dis=none) header.from=arm.com ARC-Seal: i=1; a=rsa-sha256; t=1619613383; cv=none; d=zohomail.com; s=zohoarc; b=kQGm5JKqHeWy+Wv0LF+mvrdgG0hhZaz/MQXvV/SXQSiuvQVaJtDminqfTmWz2bIPbBHfhHZSO5qav/JFokZGHbi1JISXoS1VP2zvxD6JlfGPZRPC6hMDz/qRx8a5Vsttu/JSsHIyxe7IRhS7ZziAxnGr5bcyJShPq/DJQEHKHIo= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1619613383; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:References:Sender:Subject:To; bh=RQNtfnkz7TP95WkAVk7F++ugj3eMKbKN/OlhVagSqa4=; b=Iv1OuYdo5mAPtMku6kc3GawREOTvuNTlm3OByC7zS/f8gRH4PkRMCjTI2cBSnce0e6y5B9w7zY6JApzTeC4TydVmCYuGvZ5JvWKbJarBOlIY+2FEsSFgnJiIagtZXmVXQ5eWAJKVN+lOFqooEbtwJvLwl/o+SUWoLMuKwSKOn8Q= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+74545+1787277+3901457@groups.io; dmarc=fail header.from= (p=none dis=none) header.from= Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1619613383413667.7061624921355; Wed, 28 Apr 2021 05:36:23 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id Z6OXYY1788612x9VKWRm4xJz; Wed, 28 Apr 2021 05:36:22 -0700 X-Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by mx.groups.io with SMTP id smtpd.web10.11287.1619613382374266757 for ; Wed, 28 Apr 2021 05:36:22 -0700 X-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 F28211042; Wed, 28 Apr 2021 05:36:21 -0700 (PDT) X-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 C38BE3F694; Wed, 28 Apr 2021 05:36:20 -0700 (PDT) From: "Pranav Madhu" To: devel@edk2.groups.io Cc: Ard Biesheuvel , Sami Mujawar Subject: [edk2-devel] [edk2-platforms][PATCH V1 04/17] Platform/Sgi: Add CPU container for RD-N1-Edge Date: Wed, 28 Apr 2021 18:05:47 +0530 Message-Id: <20210428123600.2385-5-pranav.madhu@arm.com> In-Reply-To: <20210428123600.2385-1-pranav.madhu@arm.com> References: <20210428123600.2385-1-pranav.madhu@arm.com> MIME-Version: 1.0 Precedence: Bulk List-Unsubscribe: List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,pranav.madhu@arm.com X-Gm-Message-State: zB15EpA9LUJ2xhjbEabfUx9Ox1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1619613382; bh=AxNZ8hCabVegSN1t8kIXT2awR4XBNm4SiuSdmuo4FHs=; h=Cc:Date:From:Reply-To:Subject:To; b=hfHkR0KA2eMqs9Ct96cnoG3OgPiE+GPgsNP58D8Fidg6rFagwZU4PHhTKKvcYe50RC4 uUVUhjLdeKgBAlhXgB/m6yYHJn4dLcluDkYkMU8hWpWixFDgDeD7Z+XtvTe3o5lXOKx4x UMPxh2O4ZoWsMTXJ6XQqAtX0U3UC+G31lnE= X-ZohoMail-DKIM: pass (identity @groups.io) Content-Type: text/plain; charset="utf-8" The RD-N1-Edge platform includes two clusters with four single-thread CPUs. Add processor container devices for the two clusters on the RD-N1-Edge platform and move the existing processor devices into respective processor containers. Signed-off-by: Pranav Madhu Reviewed-by: Thomas Abraham --- Platform/ARM/SgiPkg/AcpiTables/RdN1Edge/Dsdt.asl | 88 +++++++++++--------- 1 file changed, 48 insertions(+), 40 deletions(-) diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdN1Edge/Dsdt.asl b/Platform/AR= M/SgiPkg/AcpiTables/RdN1Edge/Dsdt.asl index d9bac33898b1..b88344c3a7ba 100644 --- a/Platform/ARM/SgiPkg/AcpiTables/RdN1Edge/Dsdt.asl +++ b/Platform/ARM/SgiPkg/AcpiTables/RdN1Edge/Dsdt.asl @@ -13,54 +13,62 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD", "ARMSGI", EFI_ACPI_ARM_OEM_REVISION) { Scope (_SB) { - - Device (CP00) { // Neoverse-N1: Cluster 0, Cpu 0 - Name (_HID, "ACPI0007") + Device (CLU0) { // Cluster 0 + Name (_HID, "ACPI0010") Name (_UID, 0) - Name (_STA, 0xF) + + 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) + } } =20 - Device (CP01) { // Neoverse-N1: Cluster 0, Cpu 1 - Name (_HID, "ACPI0007") + Device (CLU1) { // Cluster 1 + Name (_HID, "ACPI0010") Name (_UID, 1) - Name (_STA, 0xF) - } =20 - Device (CP02) { // Neoverse-N1: Cluster 0, Cpu 2 - Name (_HID, "ACPI0007") - Name (_UID, 2) - Name (_STA, 0xF) - } + Device (CP04) { // Neoverse-N1: Cluster 1, Cpu 0 + Name (_HID, "ACPI0007") + Name (_UID, 4) + Name (_STA, 0xF) + } =20 - Device (CP03) { // Neoverse-N1: Cluster 0, Cpu 3 - Name (_HID, "ACPI0007") - Name (_UID, 3) - Name (_STA, 0xF) - } + Device (CP05) { // Neoverse-N1: Cluster 1, Cpu 1 + Name (_HID, "ACPI0007") + Name (_UID, 5) + Name (_STA, 0xF) + } =20 - Device (CP04) { // Neoverse-N1: Cluster 1, Cpu 0 - Name (_HID, "ACPI0007") - Name (_UID, 4) - Name (_STA, 0xF) - } + Device (CP06) { // Neoverse-N1: Cluster 1, Cpu 2 + Name (_HID, "ACPI0007") + Name (_UID, 6) + Name (_STA, 0xF) + } =20 - Device (CP05) { // Neoverse-N1: Cluster 1, Cpu 1 - Name (_HID, "ACPI0007") - Name (_UID, 5) - Name (_STA, 0xF) + Device (CP07) { // Neoverse-N1: Cluster 1, Cpu 3 + Name (_HID, "ACPI0007") + Name (_UID, 7) + 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) - } - } // Scope(_SB) } --=20 2.17.1 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#74545): https://edk2.groups.io/g/devel/message/74545 Mute This Topic: https://groups.io/mt/82428261/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- From nobody Thu Apr 18 14:24:31 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) client-ip=66.175.222.108; envelope-from=bounce+27952+74546+1787277+3901457@groups.io; helo=mail02.groups.io; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+74546+1787277+3901457@groups.io; dmarc=fail(p=none dis=none) header.from=arm.com ARC-Seal: i=1; a=rsa-sha256; t=1619613384; cv=none; d=zohomail.com; s=zohoarc; b=NuOTiLKfgAzyB+To/ixppbc4Y9aw9hbZTp42BaTjAbSJ5F5Rntte4/XxCESO2rQsh0ge2FEG2lFpUfQVV5JbKJM5jt7OdqnSJzQKtnCGxbeorLxeS5SBMcDI0mGY/6EXAK9J0PWDuQ6nD6Rs4vq9qSmKmWHtmsXhYxL+171Qu44= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1619613384; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:References:Sender:Subject:To; bh=TSTOSkrm5cFKdHY0bN1LKN1ei3Goowax8BKuRJZdL7Y=; b=H7fVYZQz4bcFTaHu8xwDaI9mJK2H9yovC7PVMuv+DB6GbJzfj+/2pxXG2noKfbYSsgcDB7OTdEOer0hvMI9A42zUPOQXhU5kaPDQax3izA0f+HprwcfOGUwMcM9zj3ky/zkZC3917dPYXC7V1IQU6HtaffKBXCB4+EFkhdRZfCI= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+74546+1787277+3901457@groups.io; dmarc=fail header.from= (p=none dis=none) header.from= Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1619613384982724.4942003945798; Wed, 28 Apr 2021 05:36:24 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id vfQHYY1788612xyjdNJt7iJb; Wed, 28 Apr 2021 05:36:24 -0700 X-Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by mx.groups.io with SMTP id smtpd.web09.11079.1619613383969805871 for ; Wed, 28 Apr 2021 05:36:24 -0700 X-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 94DB41FB; Wed, 28 Apr 2021 05:36:23 -0700 (PDT) X-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 67B413F792; Wed, 28 Apr 2021 05:36:22 -0700 (PDT) From: "Pranav Madhu" To: devel@edk2.groups.io Cc: Ard Biesheuvel , Sami Mujawar Subject: [edk2-devel] [edk2-platforms][PATCH V1 05/17] Platform/Sgi: Low Power Idle states for RD-N1-Edge Date: Wed, 28 Apr 2021 18:05:48 +0530 Message-Id: <20210428123600.2385-6-pranav.madhu@arm.com> In-Reply-To: <20210428123600.2385-1-pranav.madhu@arm.com> References: <20210428123600.2385-1-pranav.madhu@arm.com> MIME-Version: 1.0 Precedence: Bulk List-Unsubscribe: List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,pranav.madhu@arm.com X-Gm-Message-State: ndCu0IORCj4K96b5SOwBHda5x1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1619613384; bh=kYbcIkeuHytg+ZoDnOJvq4lDODPagXvivsxsrLS6Ip0=; h=Cc:Date:From:Reply-To:Subject:To; b=tE3PLUZCJQY4iCW/vJEi2sRZRYIjbdvH6v8z5i++lSboc//bPqmLekisQCJlVHocHfK aIzSQmoOi+fzw1WYzrhLOwhqyZ5gcYL+8EV8e41U4Cn+nF/zspMpY0bNfUWuBdlAnA0Cx NfCoIE+1vFavCY4qmubiuHOy8BtXjLOpaPA= X-ZohoMail-DKIM: pass (identity @groups.io) Content-Type: text/plain; charset="utf-8" RD-N1-Edge platform supports 2 LPI states, LPI1 (Standby WFI) and LPI3 (Power-down) and the cluster supports LPI2 (Power-down) state. The LPI implementation also supports combined power state for core and cluster. Signed-off-by: Pranav Madhu Reviewed-by: Thomas Abraham --- Platform/ARM/SgiPkg/AcpiTables/RdN1Edge/Dsdt.asl | 132 ++++++++++++++++++++ 1 file changed, 132 insertions(+) diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdN1Edge/Dsdt.asl b/Platform/AR= M/SgiPkg/AcpiTables/RdN1Edge/Dsdt.asl index b88344c3a7ba..a2258f61aeca 100644 --- a/Platform/ARM/SgiPkg/AcpiTables/RdN1Edge/Dsdt.asl +++ b/Platform/ARM/SgiPkg/AcpiTables/RdN1Edge/Dsdt.asl @@ -13,61 +13,193 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD", "ARMSGI", EFI_ACPI_ARM_OEM_REVISION) { Scope (_SB) { + /* _OSC: Operating System Capabilities */ + Method (_OSC, 4, Serialized) { + CreateDWordField (Arg3, 0x00, STS0) + CreateDWordField (Arg3, 0x04, CAP0) + + /* Platform-wide Capabilities */ + If (LEqual (Arg0, ToUUID("0811b06e-4a27-44f9-8d60-3cbbc22e7b48"))) { + /* OSC rev 1 supported, for other version, return failure */ + If (LEqual (Arg1, One)) { + And (STS0, Not (OSC_STS_MASK), STS0) + + If (And (CAP0, OSC_CAP_OS_INITIATED_LPI)) { + /* OS initiated LPI not supported */ + And (CAP0, Not (OSC_CAP_OS_INITIATED_LPI), CAP0) + Or (STS0, OSC_STS_CAPABILITY_MASKED, STS0) + } + } Else { + And (STS0, Not (OSC_STS_MASK), STS0) + Or (STS0, Or (OSC_STS_FAILURE, OSC_STS_UNRECOGNIZED_REV), STS0) + } + } Else { + And (STS0, Not (OSC_STS_MASK), STS0) + Or (STS0, Or (OSC_STS_FAILURE, OSC_STS_UNRECOGNIZED_UUID), STS0) + } + + Return (Arg3) + } + + Name (CLPI, Package () { /* LPI for Cluster, support 1 LPI state */ + 0, // Version + 0, // Level Index + 1, // Count + Package () { // Power Gating state for Cluster + 2500, // Min residency (uS) + 1150, // Wake latency (uS) + 1, // Flags + 1, // Arch Context Flags + 100, // Residency Counter Frequency + 0, // No Parent State + 0x00000020, // Integer Entry method + ResourceTemplate () { // Null Residency Counter + Register (SystemMemory, 0, 0, 0, 0) + }, + ResourceTemplate () { // Null Usage Counter + Register (SystemMemory, 0, 0, 0, 0) + }, + "LPI2-Cluster" + }, + }) + + Name (PLPI, Package () { /* LPI for Processor, support 2 LPI states */ + 0, // Version + 1, // Level Index + 2, // Count + Package () { // WFI for CPU + 1, // Min residency (uS) + 1, // Wake latency (uS) + 1, // Flags + 0, // Arch Context lost Flags (no loss) + 100, // Residency Counter Frequency + 0, // No parent state + ResourceTemplate () { // Register Entry method + Register (FFixedHW, + 32, // Bit Width + 0, // Bit Offset + 0xFFFFFFFF, // Address + 3, // Access Size + ) + }, + ResourceTemplate () { // Null Residency Counter + Register (SystemMemory, 0, 0, 0, 0) + }, + ResourceTemplate () { // Null Usage Counter + Register (SystemMemory, 0, 0, 0, 0) + }, + "LPI1-Core" + }, + Package () { // Power Gating state for CPU + 150, // Min residency (uS) + 350, // Wake latency (uS) + 1, // Flags + 1, // Arch Context lost Flags (Core context los= t) + 100, // Residency Counter Frequency + 1, // Parent node can be in any shallower state + ResourceTemplate () { // Register Entry method + Register (FFixedHW, + 32, // Bit Width + 0, // Bit Offset + 0x40000002, // Address (PwrLvl:core, StateTyp:PwrDn) + 3, // Access Size + ) + }, + ResourceTemplate () { // Null Residency Counter + Register (SystemMemory, 0, 0, 0, 0) + }, + ResourceTemplate () { // Null Usage Counter + Register (SystemMemory, 0, 0, 0, 0) + }, + "LPI3-Core" + }, + }) + Device (CLU0) { // Cluster 0 Name (_HID, "ACPI0010") Name (_UID, 0) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.CLPI) + } =20 Device (CP00) { // Neoverse-N1: Cluster 0, Cpu 0 Name (_HID, "ACPI0007") Name (_UID, 0) Name (_STA, 0xF) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } =20 Device (CP01) { // Neoverse-N1: Cluster 0, Cpu 1 Name (_HID, "ACPI0007") Name (_UID, 1) Name (_STA, 0xF) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } =20 Device (CP02) { // Neoverse-N1: Cluster 0, Cpu 2 Name (_HID, "ACPI0007") Name (_UID, 2) Name (_STA, 0xF) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } =20 Device (CP03) { // Neoverse-N1: Cluster 0, Cpu 3 Name (_HID, "ACPI0007") Name (_UID, 3) Name (_STA, 0xF) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } =20 Device (CLU1) { // Cluster 1 Name (_HID, "ACPI0010") Name (_UID, 1) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.CLPI) + } =20 Device (CP04) { // Neoverse-N1: Cluster 1, Cpu 0 Name (_HID, "ACPI0007") Name (_UID, 4) Name (_STA, 0xF) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } =20 Device (CP05) { // Neoverse-N1: Cluster 1, Cpu 1 Name (_HID, "ACPI0007") Name (_UID, 5) Name (_STA, 0xF) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } =20 Device (CP06) { // Neoverse-N1: Cluster 1, Cpu 2 Name (_HID, "ACPI0007") Name (_UID, 6) Name (_STA, 0xF) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } =20 Device (CP07) { // Neoverse-N1: Cluster 1, Cpu 3 Name (_HID, "ACPI0007") Name (_UID, 7) Name (_STA, 0xF) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } } // Scope(_SB) --=20 2.17.1 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#74546): https://edk2.groups.io/g/devel/message/74546 Mute This Topic: https://groups.io/mt/82428262/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- From nobody Thu Apr 18 14:24:31 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) client-ip=66.175.222.108; envelope-from=bounce+27952+74547+1787277+3901457@groups.io; helo=mail02.groups.io; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+74547+1787277+3901457@groups.io; dmarc=fail(p=none dis=none) header.from=arm.com ARC-Seal: i=1; a=rsa-sha256; t=1619613386; cv=none; d=zohomail.com; s=zohoarc; b=JyR2c5EUMlrP8aNWRGA6Z+/M3nbyKg/D1sCfugAG3i3nfnHVo1/9QYhmv4brmz5lZSfVOO78ctose6566kMSPbITNGQs5qHdO8UmL96GH5/TWC1Uw4kZrlxgfMQz6gsz+ovLUeCd1pBTiPd5aXZLaPGVN5T04h65XakIhQif1Uw= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1619613386; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:References:Sender:Subject:To; bh=/TQStoY9ZGT2QCR+HO8xm263iwBubJh5ms68UecSkRQ=; b=JyZ5Beq0YNzJIhDv+VWaOfxAEd6io0qZOGv32Io7jom6maK03Qv+fP5nohkihUSKerFQ0JizcX9WJfIlm75H0M9EQNay3ghsE7Bv0DejNTnKAMp10u89JztqmXDfAgrof2iGnBnzTLCpsbONA+sX4jlraLZsN3/zup7fkJMVYaQ= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+74547+1787277+3901457@groups.io; dmarc=fail header.from= (p=none dis=none) header.from= Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1619613386636867.7290937959104; Wed, 28 Apr 2021 05:36:26 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id C1k8YY1788612xbxdScTXdaz; Wed, 28 Apr 2021 05:36:26 -0700 X-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 X-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) X-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-devel] [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> In-Reply-To: <20210428123600.2385-1-pranav.madhu@arm.com> References: <20210428123600.2385-1-pranav.madhu@arm.com> MIME-Version: 1.0 Precedence: Bulk List-Unsubscribe: List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,pranav.madhu@arm.com X-Gm-Message-State: YzlhphVsv7fGEqR5DTXEZA1fx1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1619613386; bh=HaOC3nh3V5DIEVfkHHsavbHN8cEouIkG+cfhVZAig6U=; h=Cc:Date:From:Reply-To:Subject:To; b=XJ/D82SMlp+qIdOqVvBpk0wfBYtdoxwZ0XUsNe6WeenTOGzhglZni2TCpel8/j9A5LR 4ZPZ4YZex1igSG26p+nTZDkbHwc0I7IymXH/+PPdBESB8EtAyaAK3BvSi1bAgMH7Vv5RG hWuaFrixqIfJvZtrj03GdOs5vrV/MwMJ+vk= X-ZohoMail-DKIM: pass (identity @groups.io) Content-Type: text/plain; charset="utf-8" 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 Reviewed-by: Thomas Abraham --- 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/Plat= form/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/Platform/= 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 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#74547): https://edk2.groups.io/g/devel/message/74547 Mute This Topic: https://groups.io/mt/82428265/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- From nobody Thu Apr 18 14:24:31 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) client-ip=66.175.222.108; envelope-from=bounce+27952+74548+1787277+3901457@groups.io; helo=mail02.groups.io; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+74548+1787277+3901457@groups.io; dmarc=fail(p=none dis=none) header.from=arm.com ARC-Seal: i=1; a=rsa-sha256; t=1619613388; cv=none; d=zohomail.com; s=zohoarc; b=IfaQuUBrqvFYrCJngYLP8bMS2Ls9nK4lDCPo46RC/LSxuQkPZD0zTCSXcnEJVeGaxrsWPeXxPrnOUdlDu697jpTY+DkAFfeJX6ZicTZRQwVWs0vvxHa5nl8iLyl1PUzvlnOI/6LxKaYeH4Udhz8ikw7bfluysDwBsTEvh3aGrds= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1619613388; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:References:Sender:Subject:To; bh=VcE6h1ysVmrTBtDFKBZtiREsd7FtDypMjNSM4eV9in4=; b=edvbfgw6wvsYYdmkquGAG8S4GIHONHvHC58BFpIBHX+CW+zCBc3gmGOus+dQlpMPqIW0Shpf7Q8hwyL4QM6E0k+D7RNHhE53fRJWdvW7saNbCXCP4J+KTfr91BUcKkVlctUKD2jzJrqdB1hIcDPjuteKBBlwxoXu3Ty/ObKMSX0= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+74548+1787277+3901457@groups.io; dmarc=fail header.from= (p=none dis=none) header.from= Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1619613388276374.01674534018036; Wed, 28 Apr 2021 05:36:28 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id 4D1UYY1788612xjnUUQQqG0t; Wed, 28 Apr 2021 05:36:27 -0700 X-Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by mx.groups.io with SMTP id smtpd.web10.11288.1619613387228378608 for ; Wed, 28 Apr 2021 05:36:27 -0700 X-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 CF8D61FB; Wed, 28 Apr 2021 05:36:26 -0700 (PDT) X-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 A325E3F694; Wed, 28 Apr 2021 05:36:25 -0700 (PDT) From: "Pranav Madhu" To: devel@edk2.groups.io Cc: Ard Biesheuvel , Sami Mujawar Subject: [edk2-devel] [edk2-platforms][PATCH V1 07/17] Platform/Sgi: Low Power Idle States for RD-N1-Edge dual-chip Date: Wed, 28 Apr 2021 18:05:50 +0530 Message-Id: <20210428123600.2385-8-pranav.madhu@arm.com> In-Reply-To: <20210428123600.2385-1-pranav.madhu@arm.com> References: <20210428123600.2385-1-pranav.madhu@arm.com> MIME-Version: 1.0 Precedence: Bulk List-Unsubscribe: List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,pranav.madhu@arm.com X-Gm-Message-State: C2sTOLVB5QX3O75oy9rUEKOax1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1619613387; bh=FEUXPBat8B+r/XMGzUucW7EUkU50ngDgJ9fd7bzGVKU=; h=Cc:Date:From:Reply-To:Subject:To; b=R3WaGRes5PO38BEuaZ1f4SNogb+DO5g4iyQADXh6yzL1DWZAIdqpCB3ClOsnNwhUdjY dwefeNT36l4p4pdz0jp2zg/JmJbdS4W3xw9qggt6frgJCNYDKGu7FHcF7/dgwJj3vwVj4 nSvu5XRZnKmEfSjunHKr76HLHONw8M3r2mY= X-ZohoMail-DKIM: pass (identity @groups.io) Content-Type: text/plain; charset="utf-8" RD-N1-Edge platform in multi chip configuration supports 2 LPI states, LPI1 (Standby WFI) and LPI3 (Power-down). The cluster supports LPI2 (Power-down) state. The LPI implementation also supports combined power state for core and cluster. Signed-off-by: Pranav Madhu Reviewed-by: Thomas Abraham --- Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2/Dsdt.asl | 162 +++++++++++++++++= +++ 1 file changed, 162 insertions(+) diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2/Dsdt.asl b/Platform/= ARM/SgiPkg/AcpiTables/RdN1EdgeX2/Dsdt.asl index 2379f20a79ef..5807658e7815 100644 --- a/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2/Dsdt.asl +++ b/Platform/ARM/SgiPkg/AcpiTables/RdN1EdgeX2/Dsdt.asl @@ -15,62 +15,194 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD", "ARMSGI", EFI_ACPI_ARM_OEM_REVISION) { Scope (_SB) { + /* _OSC: Operating System Capabilities */ + Method (_OSC, 4, Serialized) { + CreateDWordField (Arg3, 0x00, STS0) + CreateDWordField (Arg3, 0x04, CAP0) + + /* Platform-wide Capabilities */ + If (LEqual (Arg0, ToUUID("0811b06e-4a27-44f9-8d60-3cbbc22e7b48"))) { + /* OSC rev 1 supported, for other version, return failure */ + If (LEqual (Arg1, One)) { + And (STS0, Not (OSC_STS_MASK), STS0) + + If (And (CAP0, OSC_CAP_OS_INITIATED_LPI)) { + /* OS initiated LPI not supported */ + And (CAP0, Not (OSC_CAP_OS_INITIATED_LPI), CAP0) + Or (STS0, OSC_STS_CAPABILITY_MASKED, STS0) + } + } Else { + And (STS0, Not (OSC_STS_MASK), STS0) + Or (STS0, Or (OSC_STS_FAILURE, OSC_STS_UNRECOGNIZED_REV), STS0) + } + } Else { + And (STS0, Not (OSC_STS_MASK), STS0) + Or (STS0, Or (OSC_STS_FAILURE, OSC_STS_UNRECOGNIZED_UUID), STS0) + } + + Return (Arg3) + } + + Name (CLPI, Package () { /* LPI for Cluster, support 1 LPI state */ + 0, // Version + 0, // Level Index + 1, // Count + Package () { // Power Gating state for Cluster + 2500, // Min residency (uS) + 1150, // Wake latency (uS) + 1, // Flags + 1, // Arch Context Flags + 100, // Residency Counter Frequency + 0, // No Parent State + 0x00000020, // Integer Entry method + ResourceTemplate () { // Null Residency Counter + Register (SystemMemory, 0, 0, 0, 0) + }, + ResourceTemplate () { // Null Usage Counter + Register (SystemMemory, 0, 0, 0, 0) + }, + "LPI2-Cluster" + }, + }) + + Name (PLPI, Package () { /* LPI for Processor, support 2 LPI states */ + 0, // Version + 1, // Level Index + 2, // Count + Package () { // WFI for CPU + 1, // Min residency (uS) + 1, // Wake latency (uS) + 1, // Flags + 0, // Arch Context lost Flags (no loss) + 100, // Residency Counter Frequency + 0, // No parent state + ResourceTemplate () { // Register Entry method + Register (FFixedHW, + 32, // Bit Width + 0, // Bit Offset + 0xFFFFFFFF, // Address + 3, // Access Size + ) + }, + ResourceTemplate () { // Null Residency Counter + Register (SystemMemory, 0, 0, 0, 0) + }, + ResourceTemplate () { // Null Usage Counter + Register (SystemMemory, 0, 0, 0, 0) + }, + "LPI1-Core" + }, + Package () { // Power Gating state for CPU + 150, // Min residency (uS) + 350, // Wake latency (uS) + 1, // Flags + 1, // Arch Context lost Flags (Core context los= t) + 100, // Residency Counter Frequency + 1, // Parent node can be in any shallower state + ResourceTemplate () { // Register Entry method + Register (FFixedHW, + 32, // Bit Width + 0, // Bit Offset + 0x40000002, // Address (PwrLvl:core, StateTyp:PwrDn) + 3, // Access Size + ) + }, + ResourceTemplate () { // Null Residency Counter + Register (SystemMemory, 0, 0, 0, 0) + }, + ResourceTemplate () { // Null Usage Counter + Register (SystemMemory, 0, 0, 0, 0) + }, + "LPI3-Core" + }, + }) + /* Chip 0 CPUs */ Device (CLU0) { // Cluster 0 Name (_HID, "ACPI0010") Name (_UID, 0) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.CLPI) + } =20 Device (CP00) { // Neoverse-N1: Cluster 0, Cpu 0 Name (_HID, "ACPI0007") Name (_UID, 0) Name (_STA, 0xF) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } =20 Device (CP01) { // Neoverse-N1: Cluster 0, Cpu 1 Name (_HID, "ACPI0007") Name (_UID, 1) Name (_STA, 0xF) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } =20 Device (CP02) { // Neoverse-N1: Cluster 0, Cpu 2 Name (_HID, "ACPI0007") Name (_UID, 2) Name (_STA, 0xF) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } =20 Device (CP03) { // Neoverse-N1: Cluster 0, Cpu 3 Name (_HID, "ACPI0007") Name (_UID, 3) Name (_STA, 0xF) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } =20 Device (CLU1) { // Cluster 1 Name (_HID, "ACPI0010") Name (_UID, 1) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.CLPI) + } =20 Device (CP04) { // Neoverse-N1: Cluster 1, Cpu 0 Name (_HID, "ACPI0007") Name (_UID, 4) Name (_STA, 0xF) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } =20 Device (CP05) { // Neoverse-N1: Cluster 1, Cpu 1 Name (_HID, "ACPI0007") Name (_UID, 5) Name (_STA, 0xF) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } =20 Device (CP06) { // Neoverse-N1: Cluster 1, Cpu 2 Name (_HID, "ACPI0007") Name (_UID, 6) Name (_STA, 0xF) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } =20 Device (CP07) { // Neoverse-N1: Cluster 1, Cpu 3 Name (_HID, "ACPI0007") Name (_UID, 7) Name (_STA, 0xF) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } =20 @@ -78,58 +210,88 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Device (CLU2) { // Cluster 2 Name (_HID, "ACPI0010") Name (_UID, 2) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.CLPI) + } =20 Device (CP08) { // Neoverse-N1: Cluster 2, Cpu 0 Name (_HID, "ACPI0007") Name (_UID, 8) Name (_STA, 0xF) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } =20 Device (CP09) { // Neoverse-N1: Cluster 2, Cpu 1 Name (_HID, "ACPI0007") Name (_UID, 9) Name (_STA, 0xF) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } =20 Device (CP10) { // Neoverse-N1: Cluster 2, Cpu 2 Name (_HID, "ACPI0007") Name (_UID, 10) Name (_STA, 0xF) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } =20 Device (CP11) { // Neoverse-N1: Cluster 2, Cpu 3 Name (_HID, "ACPI0007") Name (_UID, 11) Name (_STA, 0xF) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } =20 Device (CLU3) { // Cluster 3 Name (_HID, "ACPI0010") Name (_UID, 3) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.CLPI) + } =20 Device (CP12) { // Neoverse-N1: Cluster 3, Cpu 0 Name (_HID, "ACPI0007") Name (_UID, 12) Name (_STA, 0xF) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } =20 Device (CP13) { // Neoverse-N1: Cluster 3, Cpu 1 Name (_HID, "ACPI0007") Name (_UID, 13) Name (_STA, 0xF) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } =20 Device (CP14) { // Neoverse-N1: Cluster 3, Cpu 2 Name (_HID, "ACPI0007") Name (_UID, 14) Name (_STA, 0xF) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } =20 Device (CP15) { // Neoverse-N1: Cluster 3, Cpu 3 Name (_HID, "ACPI0007") Name (_UID, 15) Name (_STA, 0xF) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } } // Scope(_SB) --=20 2.17.1 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#74548): https://edk2.groups.io/g/devel/message/74548 Mute This Topic: https://groups.io/mt/82428266/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- From nobody Thu Apr 18 14:24:31 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) client-ip=66.175.222.108; envelope-from=bounce+27952+74549+1787277+3901457@groups.io; helo=mail02.groups.io; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+74549+1787277+3901457@groups.io; dmarc=fail(p=none dis=none) header.from=arm.com ARC-Seal: i=1; a=rsa-sha256; t=1619613389; cv=none; d=zohomail.com; s=zohoarc; b=DZ7mtF82TdfFDetgtbpsH4dwfFBY2JQrZ5hKGsBzaV+oBq0sZjGJ1KtiTz5UzUTOFSN9vVYw078GM2XTi6W4waOBjEMVnKXoDehFZKIQcgtArf0YPRafLb50MyThs7S4S0r1JZelfo1wjsAyR0jRpTflscMwSHdsz1XgkEkJNXs= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1619613389; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:References:Sender:Subject:To; bh=XPElWNum8KLWGyAbifp0ycWTFQy9QCvboth4J/VMj7c=; b=dnS+QIxTmzUc+POrHHV+RQYMRceLFxtFjOdmPcFIMtrFqMysiCniLugz4kviAbOA+DFT3LyQpE1O/LPkZoqFjCDWZS4hc8h4R8/2t07LpNZ0Bj1j4AebUzuJ9b04ieNWcMPeIcE/QYHXgbnSGZKJEgD/Jw5US2myfk2Ks5XDdrY= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+74549+1787277+3901457@groups.io; dmarc=fail header.from= (p=none dis=none) header.from= Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1619613389733258.1200888020687; Wed, 28 Apr 2021 05:36:29 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id Kn0RYY1788612xKoAenFRG3F; Wed, 28 Apr 2021 05:36:29 -0700 X-Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by mx.groups.io with SMTP id smtpd.web08.10944.1619613388796764914 for ; Wed, 28 Apr 2021 05:36:29 -0700 X-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 727BB1FB; Wed, 28 Apr 2021 05:36:28 -0700 (PDT) X-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 475EB3F694; Wed, 28 Apr 2021 05:36:27 -0700 (PDT) From: "Pranav Madhu" To: devel@edk2.groups.io Cc: Ard Biesheuvel , Sami Mujawar Subject: [edk2-devel] [edk2-platforms][PATCH V1 08/17] Platform/Sgi: Add CPU container for RD-V1 platform Date: Wed, 28 Apr 2021 18:05:51 +0530 Message-Id: <20210428123600.2385-9-pranav.madhu@arm.com> In-Reply-To: <20210428123600.2385-1-pranav.madhu@arm.com> References: <20210428123600.2385-1-pranav.madhu@arm.com> MIME-Version: 1.0 Precedence: Bulk List-Unsubscribe: List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,pranav.madhu@arm.com X-Gm-Message-State: a6lKbPc2CxZ7Rv6VWcNweNpSx1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1619613389; bh=BAPTnndP5FHD2m6yqF3hXcWvGKRhTUUxTF2/LWU7RC0=; h=Cc:Date:From:Reply-To:Subject:To; b=BEHWxritkQ0L/JzUWWd46eAUikbRkWGB++pvL4lNcy9oVWF+ugt2sHjD2vNOshctIxl v+JUQciluxxm23TE9Wuuth8VS1OPMIMrUf56sa7udqEeMnsiSoGOCv3CrCCHaA4MG8I+4 bdmDdUim6e/F0KECJCjwG1xt+5K6dM8GcrM= X-ZohoMail-DKIM: pass (identity @groups.io) Content-Type: text/plain; charset="utf-8" The RD-V1 platform is a sixteen core platform with each core contained in a minimal cluster logic. Update the processor device entries accordingly in the DSDT ACPI table by moving each of the processor device entries into a separate processor container device. Signed-off-by: Pranav Madhu Reviewed-by: Thomas Abraham --- Platform/ARM/SgiPkg/AcpiTables/RdV1/Dsdt.asl | 176 ++++++++++++++------ 1 file changed, 128 insertions(+), 48 deletions(-) diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdV1/Dsdt.asl b/Platform/ARM/Sg= iPkg/AcpiTables/RdV1/Dsdt.asl index f3e31e4085a3..05e8601290e2 100644 --- a/Platform/ARM/SgiPkg/AcpiTables/RdV1/Dsdt.asl +++ b/Platform/ARM/SgiPkg/AcpiTables/RdV1/Dsdt.asl @@ -13,100 +13,180 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD", "ARMSGI", EFI_ACPI_ARM_OEM_REVISION) { Scope (_SB) { - Device (CP00) { // Neoverse V1 core 0 - Name (_HID, "ACPI0007") + Device (CL00) { // Cluster 0 + Name (_HID, "ACPI0010") Name (_UID, 0) - Name (_STA, 0xF) + + Device (CP00) { // Neoverse V1 core 0 + Name (_HID, "ACPI0007") + Name (_UID, 0) + Name (_STA, 0xF) + } } =20 - Device (CP01) { // Neoverse V1 core 1 - Name (_HID, "ACPI0007") + Device (CL01) { // Cluster 1 + Name (_HID, "ACPI0010") Name (_UID, 1) - Name (_STA, 0xF) + + Device (CP01) { // Neoverse V1 core 1 + Name (_HID, "ACPI0007") + Name (_UID, 1) + Name (_STA, 0xF) + } } =20 - Device (CP02) { // Neoverse V1 core 2 - Name (_HID, "ACPI0007") + Device (CL02) { // Cluster 2 + Name (_HID, "ACPI0010") Name (_UID, 2) - Name (_STA, 0xF) + + Device (CP02) { // Neoverse V1 core 2 + Name (_HID, "ACPI0007") + Name (_UID, 2) + Name (_STA, 0xF) + } } =20 - Device (CP03) { // Neoverse V1 core 3 - Name (_HID, "ACPI0007") + Device (CL03) { // Cluster 3 + Name (_HID, "ACPI0010") Name (_UID, 3) - Name (_STA, 0xF) + + Device (CP03) { // Neoverse V1 core 3 + Name (_HID, "ACPI0007") + Name (_UID, 3) + Name (_STA, 0xF) + } } =20 - Device (CP04) { // Neoverse V1 core 4 - Name (_HID, "ACPI0007") + Device (CL04) { // Cluster 4 + Name (_HID, "ACPI0010") Name (_UID, 4) - Name (_STA, 0xF) + + Device (CP04) { // Neoverse V1 core 4 + Name (_HID, "ACPI0007") + Name (_UID, 4) + Name (_STA, 0xF) + } } =20 - Device (CP05) { // Neoverse V1 core 5 - Name (_HID, "ACPI0007") + Device (CL05) { // Cluster 5 + Name (_HID, "ACPI0010") Name (_UID, 5) - Name (_STA, 0xF) + + Device (CP05) { // Neoverse V1 core 5 + Name (_HID, "ACPI0007") + Name (_UID, 5) + Name (_STA, 0xF) + } } =20 - Device (CP06) { // Neoverse V1 core 6 - Name (_HID, "ACPI0007") + Device (CL06) { // Cluster 6 + Name (_HID, "ACPI0010") Name (_UID, 6) - Name (_STA, 0xF) + + Device (CP06) { // Neoverse V1 core 6 + Name (_HID, "ACPI0007") + Name (_UID, 6) + Name (_STA, 0xF) + } } =20 - Device (CP07) { // Neoverse V1 core 7 - Name (_HID, "ACPI0007") + Device (CL07) { // Cluster 7 + Name (_HID, "ACPI0010") Name (_UID, 7) - Name (_STA, 0xF) + + Device (CP07) { // Neoverse V1 core 7 + Name (_HID, "ACPI0007") + Name (_UID, 7) + Name (_STA, 0xF) + } } =20 - Device (CP08) { // Neoverse V1 core 8 - Name (_HID, "ACPI0007") + Device (CL08) { // Cluster 8 + Name (_HID, "ACPI0010") Name (_UID, 8) - Name (_STA, 0xF) + + Device (CP08) { // Neoverse V1 core 8 + Name (_HID, "ACPI0007") + Name (_UID, 8) + Name (_STA, 0xF) + } } =20 - Device (CP09) { // Neoverse V1 core 9 - Name (_HID, "ACPI0007") + Device (CL09) { // Cluster 9 + Name (_HID, "ACPI0010") Name (_UID, 9) - Name (_STA, 0xF) + + Device (CP09) { // Neoverse V1 core 9 + Name (_HID, "ACPI0007") + Name (_UID, 9) + Name (_STA, 0xF) + } } =20 - Device (CP10) { // Neoverse V1 core 10 - Name (_HID, "ACPI0007") + Device (CL10) { // Cluster 10 + Name (_HID, "ACPI0010") Name (_UID, 10) - Name (_STA, 0xF) + + Device (CP10) { // Neoverse V1 core 10 + Name (_HID, "ACPI0007") + Name (_UID, 10) + Name (_STA, 0xF) + } } =20 - Device (CP11) { // Neoverse V1 core 11 - Name (_HID, "ACPI0007") + Device (CL11) { // Cluster 11 + Name (_HID, "ACPI0010") Name (_UID, 11) - Name (_STA, 0xF) + + Device (CP11) { // Neoverse V1 core 11 + Name (_HID, "ACPI0007") + Name (_UID, 11) + Name (_STA, 0xF) + } } =20 - Device (CP12) { // Neoverse V1 core 12 - Name (_HID, "ACPI0007") + Device (CL12) { // Cluster 12 + Name (_HID, "ACPI0010") Name (_UID, 12) - Name (_STA, 0xF) + + Device (CP12) { // Neoverse V1 core 12 + Name (_HID, "ACPI0007") + Name (_UID, 12) + Name (_STA, 0xF) + } } =20 - Device (CP13) { // Neoverse V1 core 13 - Name (_HID, "ACPI0007") + Device (CL13) { // Cluster 13 + Name (_HID, "ACPI0010") Name (_UID, 13) - Name (_STA, 0xF) + + Device (CP13) { // Neoverse V1 core 13 + Name (_HID, "ACPI0007") + Name (_UID, 13) + Name (_STA, 0xF) + } } =20 - Device (CP14) { // Neoverse V1 core 14 - Name (_HID, "ACPI0007") + Device (CL14) { // Cluster 14 + Name (_HID, "ACPI0010") Name (_UID, 14) - Name (_STA, 0xF) + + Device (CP14) { // Neoverse V1 core 14 + Name (_HID, "ACPI0007") + Name (_UID, 14) + Name (_STA, 0xF) + } } =20 - Device (CP15) { // Neoverse V1 core 15 - Name (_HID, "ACPI0007") + Device (CL15) { // Cluster 15 + Name (_HID, "ACPI0010") Name (_UID, 15) - Name (_STA, 0xF) + + Device (CP15) { // Neoverse V1 core 15 + Name (_HID, "ACPI0007") + Name (_UID, 15) + Name (_STA, 0xF) + } } } // Scope(_SB) } --=20 2.17.1 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#74549): https://edk2.groups.io/g/devel/message/74549 Mute This Topic: https://groups.io/mt/82428268/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- From nobody Thu Apr 18 14:24:31 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) client-ip=66.175.222.108; envelope-from=bounce+27952+74550+1787277+3901457@groups.io; helo=mail02.groups.io; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+74550+1787277+3901457@groups.io; dmarc=fail(p=none dis=none) header.from=arm.com ARC-Seal: i=1; a=rsa-sha256; t=1619613391; cv=none; d=zohomail.com; s=zohoarc; b=dYDSgqS+5oQfBeuRtZL0f5geHNEdQ/BeyV4Oghd1OLEJkfHwJkR8baKYtCarFoLoktSumPWkv+DYsXyVZq9PMgTdMiHo8VS5hEcH6RFqQA2q88YR0pnxRpmuyX1ilvhv9Yen3zLS7NN/7xTO86pH20uFXgOiOtzdMvEMwGtT0nk= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1619613391; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:References:Sender:Subject:To; bh=uKJMvbTdeE9/2JZhMfDjpriApLAKaYaqi4RZoFd+0q8=; b=aks67H0uVeZJyY8CkCebw1nitcn7c/oIr8bVVn1HQDRKfTuY8kbHU/ngr45jJVykjSBqE6Tn2OcC5NTJqRJv7EGlTQZutxAN9D4ieRsKr6ATHQZA7g76D14r8kNTL/nl5Vp9JLl8AWjVZPqJWAlidMG/okoyrVXiaJjFM/jQdeo= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+74550+1787277+3901457@groups.io; dmarc=fail header.from= (p=none dis=none) header.from= Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1619613391513372.3586378418597; Wed, 28 Apr 2021 05:36:31 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id 0cGjYY1788612xS2u7tHpOKv; Wed, 28 Apr 2021 05:36:31 -0700 X-Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by mx.groups.io with SMTP id smtpd.web12.10883.1619613390403054668 for ; Wed, 28 Apr 2021 05:36:30 -0700 X-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 14FF11FB; Wed, 28 Apr 2021 05:36:30 -0700 (PDT) X-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 DE3E93F694; Wed, 28 Apr 2021 05:36:28 -0700 (PDT) From: "Pranav Madhu" To: devel@edk2.groups.io Cc: Ard Biesheuvel , Sami Mujawar Subject: [edk2-devel] [edk2-platforms][PATCH V1 09/17] Platform/Sgi: Low Power Idle states for RD-V1 platform Date: Wed, 28 Apr 2021 18:05:52 +0530 Message-Id: <20210428123600.2385-10-pranav.madhu@arm.com> In-Reply-To: <20210428123600.2385-1-pranav.madhu@arm.com> References: <20210428123600.2385-1-pranav.madhu@arm.com> MIME-Version: 1.0 Precedence: Bulk List-Unsubscribe: List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,pranav.madhu@arm.com X-Gm-Message-State: eVV8zF5FtU8kGKpeq7OvrbUkx1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1619613391; bh=tf91GiricGRvU3M+beDvva28ngcVzk7/oH8fpHePZ64=; h=Cc:Date:From:Reply-To:Subject:To; b=Am/FqP1R+G5aw7V6xdMpmxmi5eC1q/1FPutc74H5YzjcRQ7v7JHNVbyFP9jnOCG3qae Cz8Veldg6riNTQ7dQ9meoM7kq7NWrQ+JvhmlVV8BdTdFlo1DPuR4eii/nCFZWyF5bOGrW Z1apxxQnFNsTx9c1FetTL1mjLInOwG4uFyc= X-ZohoMail-DKIM: pass (identity @groups.io) Content-Type: text/plain; charset="utf-8" RD-V1 platform supports 2 LPI states, LPI1 (Standby WFI) and LPI3 (Power-down). Add idle support for RD-V1 platform. Signed-off-by: Pranav Madhu Reviewed-by: Thomas Abraham --- Platform/ARM/SgiPkg/AcpiTables/RdV1/Dsdt.asl | 128 ++++++++++++++++++++ 1 file changed, 128 insertions(+) diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdV1/Dsdt.asl b/Platform/ARM/Sg= iPkg/AcpiTables/RdV1/Dsdt.asl index 05e8601290e2..fe33b74e3a5b 100644 --- a/Platform/ARM/SgiPkg/AcpiTables/RdV1/Dsdt.asl +++ b/Platform/ARM/SgiPkg/AcpiTables/RdV1/Dsdt.asl @@ -13,6 +13,86 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD", "ARMSGI", EFI_ACPI_ARM_OEM_REVISION) { Scope (_SB) { + /* _OSC: Operating System Capabilities */ + Method (_OSC, 4, Serialized) { + CreateDWordField (Arg3, 0x00, STS0) + CreateDWordField (Arg3, 0x04, CAP0) + + /* Platform-wide Capabilities */ + If (LEqual (Arg0, ToUUID("0811b06e-4a27-44f9-8d60-3cbbc22e7b48"))) { + /* OSC rev 1 supported, for other version, return failure */ + If (LEqual (Arg1, One)) { + And (STS0, Not (OSC_STS_MASK), STS0) + + If (And (CAP0, OSC_CAP_OS_INITIATED_LPI)) { + /* OS initiated LPI not supported */ + And (CAP0, Not (OSC_CAP_OS_INITIATED_LPI), CAP0) + Or (STS0, OSC_STS_CAPABILITY_MASKED, STS0) + } + } Else { + And (STS0, Not (OSC_STS_MASK), STS0) + Or (STS0, Or (OSC_STS_FAILURE, OSC_STS_UNRECOGNIZED_REV), STS0) + } + } Else { + And (STS0, Not (OSC_STS_MASK), STS0) + Or (STS0, Or (OSC_STS_FAILURE, OSC_STS_UNRECOGNIZED_UUID), STS0) + } + + Return (Arg3) + } + + Name (PLPI, Package () { /* LPI for Processor, support 2 LPI states */ + 0, // Version + 1, // Level Index + 2, // Count + Package () { // WFI for CPU + 1, // Min residency (uS) + 1, // Wake latency (uS) + 1, // Flags + 0, // Arch Context lost Flags (no loss) + 100, // Residency Counter Frequency + 0, // No parent state + ResourceTemplate () { // Register Entry method + Register (FFixedHW, + 32, // Bit Width + 0, // Bit Offset + 0xFFFFFFFF, // Address + 3, // Access Size + ) + }, + ResourceTemplate () { // Null Residency Counter + Register (SystemMemory, 0, 0, 0, 0) + }, + ResourceTemplate () { // Null Usage Counter + Register (SystemMemory, 0, 0, 0, 0) + }, + "LPI1-Core" + }, + Package () { // Power Gating state for CPU + 150, // Min residency (uS) + 350, // Wake latency (uS) + 1, // Flags + 1, // Arch Context lost Flags (Core context los= t) + 100, // Residency Counter Frequency + 1, // Parent node can be in any shallower state + ResourceTemplate () { // Register Entry method + Register (FFixedHW, + 32, // Bit Width + 0, // Bit Offset + 0x40000002, // Address (PwrLvl:core, StateTyp:PwrDn) + 3, // Access Size + ) + }, + ResourceTemplate () { // Null Residency Counter + Register (SystemMemory, 0, 0, 0, 0) + }, + ResourceTemplate () { // Null Usage Counter + Register (SystemMemory, 0, 0, 0, 0) + }, + "LPI3-Core" + }, + }) + Device (CL00) { // Cluster 0 Name (_HID, "ACPI0010") Name (_UID, 0) @@ -21,6 +101,9 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD", "= ARMSGI", Name (_HID, "ACPI0007") Name (_UID, 0) Name (_STA, 0xF) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } =20 @@ -32,6 +115,9 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD", "= ARMSGI", Name (_HID, "ACPI0007") Name (_UID, 1) Name (_STA, 0xF) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } =20 @@ -43,6 +129,9 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD", "= ARMSGI", Name (_HID, "ACPI0007") Name (_UID, 2) Name (_STA, 0xF) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } =20 @@ -54,6 +143,9 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD", "= ARMSGI", Name (_HID, "ACPI0007") Name (_UID, 3) Name (_STA, 0xF) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } =20 @@ -65,6 +157,9 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD", "= ARMSGI", Name (_HID, "ACPI0007") Name (_UID, 4) Name (_STA, 0xF) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } =20 @@ -76,6 +171,9 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD", "= ARMSGI", Name (_HID, "ACPI0007") Name (_UID, 5) Name (_STA, 0xF) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } =20 @@ -87,6 +185,9 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD", "= ARMSGI", Name (_HID, "ACPI0007") Name (_UID, 6) Name (_STA, 0xF) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } =20 @@ -98,6 +199,9 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD", "= ARMSGI", Name (_HID, "ACPI0007") Name (_UID, 7) Name (_STA, 0xF) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } =20 @@ -109,6 +213,9 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD", = "ARMSGI", Name (_HID, "ACPI0007") Name (_UID, 8) Name (_STA, 0xF) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } =20 @@ -120,6 +227,9 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD", = "ARMSGI", Name (_HID, "ACPI0007") Name (_UID, 9) Name (_STA, 0xF) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } =20 @@ -131,6 +241,9 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD", = "ARMSGI", Name (_HID, "ACPI0007") Name (_UID, 10) Name (_STA, 0xF) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } =20 @@ -142,6 +255,9 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD", = "ARMSGI", Name (_HID, "ACPI0007") Name (_UID, 11) Name (_STA, 0xF) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } =20 @@ -153,6 +269,9 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD", = "ARMSGI", Name (_HID, "ACPI0007") Name (_UID, 12) Name (_STA, 0xF) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } =20 @@ -164,6 +283,9 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD", = "ARMSGI", Name (_HID, "ACPI0007") Name (_UID, 13) Name (_STA, 0xF) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } =20 @@ -175,6 +297,9 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD", = "ARMSGI", Name (_HID, "ACPI0007") Name (_UID, 14) Name (_STA, 0xF) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } =20 @@ -186,6 +311,9 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD", = "ARMSGI", Name (_HID, "ACPI0007") Name (_UID, 15) Name (_STA, 0xF) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } } // Scope(_SB) --=20 2.17.1 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#74550): https://edk2.groups.io/g/devel/message/74550 Mute This Topic: https://groups.io/mt/82428269/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- From nobody Thu Apr 18 14:24:31 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) client-ip=66.175.222.108; envelope-from=bounce+27952+74551+1787277+3901457@groups.io; helo=mail02.groups.io; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+74551+1787277+3901457@groups.io; dmarc=fail(p=none dis=none) header.from=arm.com ARC-Seal: i=1; a=rsa-sha256; t=1619613393; cv=none; d=zohomail.com; s=zohoarc; b=kroyAh2MUlfD89p3NrLRkqNvcwnUd3tTWgZAtStUPMSq473Bw25YyzRs71+EhzibTfu7puaAsL/IFwoNjavDkqDBHbR7okx9RmerSEDbPG/jI9GgPvNa0Qt5e2PuFqNjMZtJ6xVyJwexx+6Ogvm2VXA4JE85PYGwKo0NZl8AR4g= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1619613393; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:References:Sender:Subject:To; bh=UWXUXMpa1P96GgCM5qlP1r0yNxH2PgPVkKi4zqirlaA=; b=aJDwzZAK+wbXttOdj/igPL0mcD5sO3mM9chxTZofLnF3x+t7rzdKrUsovntMzaQQkdiHCoDbOdZ9hWfgC8fahf5CQOyRHW0uwfG6qtTTixuvp0+mODEteZ6Lq/Er8IJzlA9bTQ3ruGtACdG6Vda+xXcw8gi7TxXewZmmz6lP7rg= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+74551+1787277+3901457@groups.io; dmarc=fail header.from= (p=none dis=none) header.from= Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1619613393966386.2773674605793; Wed, 28 Apr 2021 05:36:33 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id 51GQYY1788612xev9s8EHw1d; Wed, 28 Apr 2021 05:36:33 -0700 X-Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by mx.groups.io with SMTP id smtpd.web10.11289.1619613392026841187 for ; Wed, 28 Apr 2021 05:36:32 -0700 X-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 AC24B1042; Wed, 28 Apr 2021 05:36:31 -0700 (PDT) X-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 80E493F694; Wed, 28 Apr 2021 05:36:30 -0700 (PDT) From: "Pranav Madhu" To: devel@edk2.groups.io Cc: Ard Biesheuvel , Sami Mujawar Subject: [edk2-devel] [edk2-platforms][PATCH V1 10/17] Platform/Sgi: Macro definitions for ACPI CPPC Date: Wed, 28 Apr 2021 18:05:53 +0530 Message-Id: <20210428123600.2385-11-pranav.madhu@arm.com> In-Reply-To: <20210428123600.2385-1-pranav.madhu@arm.com> References: <20210428123600.2385-1-pranav.madhu@arm.com> MIME-Version: 1.0 Precedence: Bulk List-Unsubscribe: List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,pranav.madhu@arm.com X-Gm-Message-State: PVcKeDJJ10x4FmxGcl0uLjf3x1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1619613393; bh=Km1lu+Efy0x0Ko3ZGPsCkEAuxwRgpQyy25+a3zCaVPE=; h=Cc:Date:From:Reply-To:Subject:To; b=AmyTLo/2ogJyb5xjJkqQj78bnLONCq6sbZB0t/kCpq1Ffbx4sC0Ued68rXNTy4gqBG9 B+CzPI+SUs3ONNYS0U2XnUI2CDFD+p05++pt1gWCGH9bsIw84mt3H0Udu3V3IahETuZ11 8uVcxT1qArpl+1no56YRwJTZuh9fx36acGo= X-ZohoMail-DKIM: pass (identity @groups.io) Content-Type: text/plain; charset="utf-8" Add helper macros required for use with ACPI collaborative processor performance control (CPPC). This patch adds macros for initializing ACPI _CPC and _PSD control method. The CPC initializer macro initializes _CPC control method with revision 3 as specified in Arm FFH specification 1.1. The CPC initilizer exposes the reference performance counter and delivered perfrmance counter (AMU registers) as FFixedHW registers. The initilizer also expose the fastchannel memories for performance level set performance limit set protocols as desired performance register and performance limited register respectively. Signed-off-by: Pranav Madhu Reviewed-by: Thomas Abraham --- Platform/ARM/SgiPkg/Include/SgiAcpiHeader.h | 53 ++++++++++++++++++++ 1 file changed, 53 insertions(+) diff --git a/Platform/ARM/SgiPkg/Include/SgiAcpiHeader.h b/Platform/ARM/Sgi= Pkg/Include/SgiAcpiHeader.h index 4977d4d898aa..1b5305f15fb8 100644 --- a/Platform/ARM/SgiPkg/Include/SgiAcpiHeader.h +++ b/Platform/ARM/SgiPkg/Include/SgiAcpiHeader.h @@ -423,4 +423,57 @@ typedef struct { LineSize /* Line size in byte= s */ \ } =20 +// CPPC _CPC object initialization +#define CPPC_PACKAGE_INIT(DesiredPerfReg, PerfLimitedReg, GranularityMHz, = \ + HighestPerf, NominalPerf, LowestNonlinearPerf, LowestPerf, RefPerf) = \ + { = \ + 23, /* NumEntries */ = \ + 3, /* Revision */ = \ + HighestPerf, /* Highest Performance */ = \ + NominalPerf, /* Nominal Performance */ = \ + LowestNonlinearPerf, /* Lowest Nonlinear Performance */= \ + LowestPerf, /* Lowest Performance */ = \ + /* Guaranteed Performance Register */ = \ + ResourceTemplate () { Register (SystemMemory, 0, 0, 0, 0) }, = \ + /* Desired Performance Register */ = \ + ResourceTemplate () { Register (SystemMemory, 32, 0, DesiredPerfReg, 3= ) }, \ + /* Minimum Performance Register */ = \ + ResourceTemplate () { Register (SystemMemory, 0, 0, 0, 0) }, = \ + /* Maximum Performance Register */ = \ + ResourceTemplate () { Register (SystemMemory, 0, 0, 0, 0) }, = \ + /* Performance Reduction Tolerance Register */ = \ + ResourceTemplate () { Register (SystemMemory, 0, 0, 0, 0) }, = \ + /* Time Window Register */ = \ + ResourceTemplate () { Register (SystemMemory, 0, 0, 0, 0) }, = \ + /* Counter Wraparound Time */ = \ + ResourceTemplate () { Register (SystemMemory, 0, 0, 0, 0) }, = \ + /* Reference Performance Counter Register */ = \ + ResourceTemplate () { Register (FFixedHW, 64, 0, 1, 4) }, = \ + /* Delivered Performance Counter Register */ = \ + ResourceTemplate () { Register (FFixedHW, 64, 0, 0, 4) }, = \ + /* Performance Limited Register */ = \ + ResourceTemplate () { Register (SystemMemory, 32, 0, PerfLimitedReg, 3= ) }, \ + /* CPPC Enable Register */ = \ + ResourceTemplate () { Register (SystemMemory, 0, 0, 0, 0) }, = \ + /* Autonomous Selection Enable Register */ = \ + ResourceTemplate () { Register (SystemMemory, 0, 0, 0, 0) }, = \ + /* Autonomous Activity Window Register */ = \ + ResourceTemplate () { Register (SystemMemory, 0, 0, 0, 0) }, = \ + /* Energy Performance Preference Register */ = \ + ResourceTemplate () { Register (SystemMemory, 0, 0, 0, 0) }, = \ + RefPerf, /* Reference Performance */ = \ + (LowestPerf * GranularityMHz), /* Lowest Frequency */ = \ + (NominalPerf * GranularityMHz), /* Nominal Frequency */ = \ + } + +// Power state dependancy (_PSD) for CPPC +#define PSD_INIT(Domain) = \ + { = \ + 5, /* Entries */ = \ + 0, /* Revision */ = \ + Domain, /* Domain */ = \ + 0xFD, /* Coord Type- SW_ANY */ = \ + 1 /* Processors */ = \ + } + #endif /* __SGI_ACPI_HEADER__ */ --=20 2.17.1 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#74551): https://edk2.groups.io/g/devel/message/74551 Mute This Topic: https://groups.io/mt/82428272/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- From nobody Thu Apr 18 14:24:31 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) client-ip=66.175.222.108; envelope-from=bounce+27952+74552+1787277+3901457@groups.io; helo=mail02.groups.io; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+74552+1787277+3901457@groups.io; dmarc=fail(p=none dis=none) header.from=arm.com ARC-Seal: i=1; a=rsa-sha256; t=1619613394; cv=none; d=zohomail.com; s=zohoarc; b=IxHKB0pcI8Ov49ldshlwVCd/gd/DQd2SRYxd+G8W/4dgdfJzK9e7ERKcBV2nFbap767G9xZt6BhHdaS13SGCGXwTSFMEHntDf6YZwMgn/tjNVlj1sJFiaEHV+MYDptDegqRW0CeNpq+rN7+GDvSVmQl13zdlXfIkzRpahtnsj7E= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1619613394; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:References:Sender:Subject:To; bh=U8onfQvOYL9GgH35LBf54vMI0n5Z3SHI501xaVjfA7U=; b=LjvAXTgtFCIKuPd6SzRvkBxPd+T41INqCLHHIr5oRItiGyFuoRiQAS0W2KaL+YbJhHHXE0MrPI6B7jMbtCuCAcXtljNlJ2TCe5q37HkLX4vfv9Ef0OyhHRf9t6E1CYu5vunXaelUx1fwGXsMkrtm/nC4ApIP7nvwRWiavrkwK3s= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+74552+1787277+3901457@groups.io; dmarc=fail header.from= (p=none dis=none) header.from= Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1619613394896141.44619999404802; Wed, 28 Apr 2021 05:36:34 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id FOu9YY1788612xULkDpgby3f; Wed, 28 Apr 2021 05:36:34 -0700 X-Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by mx.groups.io with SMTP id smtpd.web11.11184.1619613393608072052 for ; Wed, 28 Apr 2021 05:36:33 -0700 X-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 4E7701FB; Wed, 28 Apr 2021 05:36:33 -0700 (PDT) X-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 23BC73F694; Wed, 28 Apr 2021 05:36:31 -0700 (PDT) From: "Pranav Madhu" To: devel@edk2.groups.io Cc: Ard Biesheuvel , Sami Mujawar Subject: [edk2-devel] [edk2-platforms][PATCH V1 11/17] Platform/Sgi: ACPI CPPC support for RD-V1 Date: Wed, 28 Apr 2021 18:05:54 +0530 Message-Id: <20210428123600.2385-12-pranav.madhu@arm.com> In-Reply-To: <20210428123600.2385-1-pranav.madhu@arm.com> References: <20210428123600.2385-1-pranav.madhu@arm.com> MIME-Version: 1.0 Precedence: Bulk List-Unsubscribe: List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,pranav.madhu@arm.com X-Gm-Message-State: sG5xQdJ0tQT2BMZyVBFo1HFNx1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1619613394; bh=HvDE/BPY7oa3FPiTW+Yp+2AkPIXk0sVhUiU5yLTadM4=; h=Cc:Date:From:Reply-To:Subject:To; b=XFl/Cw6989bNfqPlYqbL37nvkcI/OBveabpoyE/pNGN94+HIQziaZB5zS2NHYvILcwg 5ZnMHLHvrxD9Sbh8ay56Meh/GFtFmcN2qESEBObH4JIBUxjyxc+NXTmfCYuG3KVfYOG4A hR/LeYqcTwb8zQCR/sQ9rxs2WezQaUNz0Ro= X-ZohoMail-DKIM: pass (identity @groups.io) Content-Type: text/plain; charset="utf-8" Enable CPPC mechanism for RD-V1 platform as defined by the ACPI specification. The implementation uses AMU registers accessible as Fixed-feature Hardware (FFixedHW) for monitoring the performance. Non-secure SCMI fastchannels are used to communicate with SCP to set the desired performance. RD-V1 platform does not support CPPC revision 1 and below. So update the _OSC method to let OSPM know about this fact. Signed-off-by: Pranav Madhu Reviewed-by: Thomas Abraham --- Platform/ARM/SgiPkg/AcpiTables/RdV1/Dsdt.asl | 166 ++++++++++++++++++++ 1 file changed, 166 insertions(+) diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdV1/Dsdt.asl b/Platform/ARM/Sg= iPkg/AcpiTables/RdV1/Dsdt.asl index fe33b74e3a5b..0f632673d050 100644 --- a/Platform/ARM/SgiPkg/AcpiTables/RdV1/Dsdt.asl +++ b/Platform/ARM/SgiPkg/AcpiTables/RdV1/Dsdt.asl @@ -29,6 +29,12 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD", "= ARMSGI", And (CAP0, Not (OSC_CAP_OS_INITIATED_LPI), CAP0) Or (STS0, OSC_STS_CAPABILITY_MASKED, STS0) } + + If (And (CAP0, OSC_CAP_CPPC_SUPPORT)) { + /* CPPC revision 1 and below not supported */ + And (CAP0, Not (OSC_CAP_CPPC_SUPPORT), CAP0) + Or (STS0, OSC_STS_CAPABILITY_MASKED, STS0) + } } Else { And (STS0, Not (OSC_STS_MASK), STS0) Or (STS0, Or (OSC_STS_FAILURE, OSC_STS_UNRECOGNIZED_REV), STS0) @@ -101,6 +107,16 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_HID, "ACPI0007") Name (_UID, 0) Name (_STA, 0xF) + + Name (_CPC, Package() + CPPC_PACKAGE_INIT (0x06000500, 0x06000504, 20, 130, 130, 65, 65,= 5) + ) + + Name (_PSD, Package () { + Package () + PSD_INIT (0) + }) + Method (_LPI, 0, NotSerialized) { Return (\_SB.PLPI) } @@ -115,6 +131,16 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_HID, "ACPI0007") Name (_UID, 1) Name (_STA, 0xF) + + Name (_CPC, Package() + CPPC_PACKAGE_INIT (0x06000518, 0x0600051C, 20, 130, 130, 65, 65,= 5) + ) + + Name (_PSD, Package () { + Package () + PSD_INIT (1) + }) + Method (_LPI, 0, NotSerialized) { Return (\_SB.PLPI) } @@ -129,6 +155,16 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_HID, "ACPI0007") Name (_UID, 2) Name (_STA, 0xF) + + Name (_CPC, Package() + CPPC_PACKAGE_INIT (0x06000530, 0x06000534, 20, 130, 130, 65, 65,= 5) + ) + + Name (_PSD, Package () { + Package () + PSD_INIT (2) + }) + Method (_LPI, 0, NotSerialized) { Return (\_SB.PLPI) } @@ -143,6 +179,16 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_HID, "ACPI0007") Name (_UID, 3) Name (_STA, 0xF) + + Name (_CPC, Package() + CPPC_PACKAGE_INIT (0x06000548, 0x0600054C, 20, 130, 130, 65, 65,= 5) + ) + + Name (_PSD, Package () { + Package () + PSD_INIT (3) + }) + Method (_LPI, 0, NotSerialized) { Return (\_SB.PLPI) } @@ -157,6 +203,16 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_HID, "ACPI0007") Name (_UID, 4) Name (_STA, 0xF) + + Name (_CPC, Package() + CPPC_PACKAGE_INIT (0x06000560, 0x06000564, 20, 130, 130, 65, 65,= 5) + ) + + Name (_PSD, Package () { + Package () + PSD_INIT (4) + }) + Method (_LPI, 0, NotSerialized) { Return (\_SB.PLPI) } @@ -171,6 +227,16 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_HID, "ACPI0007") Name (_UID, 5) Name (_STA, 0xF) + + Name (_CPC, Package() + CPPC_PACKAGE_INIT (0x06000578, 0x0600057C, 20, 130, 130, 65, 65,= 5) + ) + + Name (_PSD, Package () { + Package () + PSD_INIT (5) + }) + Method (_LPI, 0, NotSerialized) { Return (\_SB.PLPI) } @@ -185,6 +251,16 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_HID, "ACPI0007") Name (_UID, 6) Name (_STA, 0xF) + + Name (_CPC, Package() + CPPC_PACKAGE_INIT (0x06000590, 0x06000594, 20, 130, 130, 65, 65,= 5) + ) + + Name (_PSD, Package () { + Package () + PSD_INIT (6) + }) + Method (_LPI, 0, NotSerialized) { Return (\_SB.PLPI) } @@ -199,6 +275,16 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_HID, "ACPI0007") Name (_UID, 7) Name (_STA, 0xF) + + Name (_CPC, Package() + CPPC_PACKAGE_INIT (0x060005A8, 0x060005AC, 20, 130, 130, 65, 65,= 5) + ) + + Name (_PSD, Package () { + Package () + PSD_INIT (7) + }) + Method (_LPI, 0, NotSerialized) { Return (\_SB.PLPI) } @@ -213,6 +299,16 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_HID, "ACPI0007") Name (_UID, 8) Name (_STA, 0xF) + + Name (_CPC, Package() + CPPC_PACKAGE_INIT (0x060005C0, 0x060005C4, 20, 130, 130, 65, 65,= 5) + ) + + Name (_PSD, Package () { + Package () + PSD_INIT (8) + }) + Method (_LPI, 0, NotSerialized) { Return (\_SB.PLPI) } @@ -227,6 +323,16 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_HID, "ACPI0007") Name (_UID, 9) Name (_STA, 0xF) + + Name (_CPC, Package() + CPPC_PACKAGE_INIT (0x060005D8, 0x060005DC, 20, 130, 130, 65, 65,= 5) + ) + + Name (_PSD, Package () { + Package () + PSD_INIT (9) + }) + Method (_LPI, 0, NotSerialized) { Return (\_SB.PLPI) } @@ -241,6 +347,16 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_HID, "ACPI0007") Name (_UID, 10) Name (_STA, 0xF) + + Name (_CPC, Package() + CPPC_PACKAGE_INIT (0x060005F0, 0x060005F4, 20, 130, 130, 65, 65,= 5) + ) + + Name (_PSD, Package () { + Package () + PSD_INIT (10) + }) + Method (_LPI, 0, NotSerialized) { Return (\_SB.PLPI) } @@ -255,6 +371,16 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_HID, "ACPI0007") Name (_UID, 11) Name (_STA, 0xF) + + Name (_CPC, Package() + CPPC_PACKAGE_INIT (0x06000608, 0x0600060C, 20, 130, 130, 65, 65,= 5) + ) + + Name (_PSD, Package () { + Package () + PSD_INIT (11) + }) + Method (_LPI, 0, NotSerialized) { Return (\_SB.PLPI) } @@ -269,6 +395,16 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_HID, "ACPI0007") Name (_UID, 12) Name (_STA, 0xF) + + Name (_CPC, Package() + CPPC_PACKAGE_INIT (0x06000620, 0x06000624, 20, 130, 130, 65, 65,= 5) + ) + + Name (_PSD, Package () { + Package () + PSD_INIT (12) + }) + Method (_LPI, 0, NotSerialized) { Return (\_SB.PLPI) } @@ -283,6 +419,16 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_HID, "ACPI0007") Name (_UID, 13) Name (_STA, 0xF) + + Name (_CPC, Package() + CPPC_PACKAGE_INIT (0x06000638, 0x0600063C, 20, 130, 130, 65, 65,= 5) + ) + + Name (_PSD, Package () { + Package () + PSD_INIT (13) + }) + Method (_LPI, 0, NotSerialized) { Return (\_SB.PLPI) } @@ -297,6 +443,16 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_HID, "ACPI0007") Name (_UID, 14) Name (_STA, 0xF) + + Name (_CPC, Package() + CPPC_PACKAGE_INIT (0x06000650, 0x06000654, 20, 130, 130, 65, 65,= 5) + ) + + Name (_PSD, Package () { + Package () + PSD_INIT (14) + }) + Method (_LPI, 0, NotSerialized) { Return (\_SB.PLPI) } @@ -311,6 +467,16 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_HID, "ACPI0007") Name (_UID, 15) Name (_STA, 0xF) + + Name (_CPC, Package() + CPPC_PACKAGE_INIT (0x06000668, 0x0600066C, 20, 130, 130, 65, 65,= 5) + ) + + Name (_PSD, Package () { + Package () + PSD_INIT (15) + }) + Method (_LPI, 0, NotSerialized) { Return (\_SB.PLPI) } --=20 2.17.1 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#74552): https://edk2.groups.io/g/devel/message/74552 Mute This Topic: https://groups.io/mt/82428273/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- From nobody Thu Apr 18 14:24:31 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) client-ip=66.175.222.108; envelope-from=bounce+27952+74553+1787277+3901457@groups.io; helo=mail02.groups.io; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+74553+1787277+3901457@groups.io; dmarc=fail(p=none dis=none) header.from=arm.com ARC-Seal: i=1; a=rsa-sha256; t=1619613396; cv=none; d=zohomail.com; s=zohoarc; b=EWLILt7QjRMGm01edkocZp72iydW40JAasMpYQuRr6XJW4hpsZgjtBLhb6hBayrkHgvvpKOyvwApP4JCuN7ki8SALZc3OrIRxCncRRe5w/EAKNxL8pLGeTlkN6XudJY5RDGoEPqDHsL2byUGTdW/yftJfjsjlm0dmYiqpHZaTKc= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1619613396; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:References:Sender:Subject:To; bh=Nlj2PAJb/DypqEwn3A96bQZMqE5VqirtwVzDqk3zT5s=; b=bzx7TkzQuP6qwyQJM1IPNbRA5L3RARb/RvnWxNVNHrdDfgiHxwIS5f6yPmj5Qnio1HSDdGZl0AgBl9m+autyWC3pkkdxbwJiRp0tQ10/YOkH0Q3HYfX/EUIxnuil4Wq3k2s/G7N6VJDyHhIpB9CW6f/pmiusFv/RkjlBsrC9XdI= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+74553+1787277+3901457@groups.io; dmarc=fail header.from= (p=none dis=none) header.from= Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1619613396432449.35990873886817; Wed, 28 Apr 2021 05:36:36 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id X5hNYY1788612xdPEwdyFTaf; Wed, 28 Apr 2021 05:36:36 -0700 X-Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by mx.groups.io with SMTP id smtpd.web12.10885.1619613395327576683 for ; Wed, 28 Apr 2021 05:36:35 -0700 X-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 E57831042; Wed, 28 Apr 2021 05:36:34 -0700 (PDT) X-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 BAE223F694; Wed, 28 Apr 2021 05:36:33 -0700 (PDT) From: "Pranav Madhu" To: devel@edk2.groups.io Cc: Ard Biesheuvel , Sami Mujawar Subject: [edk2-devel] [edk2-platforms][PATCH V1 12/17] Platform/Sgi: Add CPU container for RD-V1 quad-chip platform Date: Wed, 28 Apr 2021 18:05:55 +0530 Message-Id: <20210428123600.2385-13-pranav.madhu@arm.com> In-Reply-To: <20210428123600.2385-1-pranav.madhu@arm.com> References: <20210428123600.2385-1-pranav.madhu@arm.com> MIME-Version: 1.0 Precedence: Bulk List-Unsubscribe: List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,pranav.madhu@arm.com X-Gm-Message-State: CAiL3Pj4zJ5HuHyctf0UE4Uex1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1619613396; bh=cfxOkBWb52l5kv4OAqlJoil3Ryqxg73S8YF6bLf1S6Q=; h=Cc:Date:From:Reply-To:Subject:To; b=a+tTaBcK2P9okSbxprOfGNb8xbIA4RVoEB7V+kXXNYVTbDfeS+V+ysl5+rpnRqDsshk lH8knhqZyytif4Faf21g2TO4vzVUMTu6ttquXFvcoN948RibTSNs7caTspWjhCIcDBBbP tP7YWYC5BkDFy+RHMaeCQ/ozxm3AqiW+grs= X-ZohoMail-DKIM: pass (identity @groups.io) Content-Type: text/plain; charset="utf-8" The RD-V1 quad-chip platform is composed of four RD-V1 platforms connected over a coherent link. Each chip has four CPU cores with each core contained in a minimal cluster logic. Update the processor device entries accordingly in the DSDT ACPI table by moving each of the processor device entries into a separate processor container devices. Signed-off-by: Pranav Madhu Reviewed-by: Thomas Abraham --- Platform/ARM/SgiPkg/AcpiTables/RdV1Mc/Dsdt.asl | 177 ++++++++++++++------ 1 file changed, 128 insertions(+), 49 deletions(-) diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdV1Mc/Dsdt.asl b/Platform/ARM/= SgiPkg/AcpiTables/RdV1Mc/Dsdt.asl index b1e88587080c..16919cc5aaa0 100644 --- a/Platform/ARM/SgiPkg/AcpiTables/RdV1Mc/Dsdt.asl +++ b/Platform/ARM/SgiPkg/AcpiTables/RdV1Mc/Dsdt.asl @@ -13,101 +13,180 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD", "ARMSGI", EFI_ACPI_ARM_OEM_REVISION) { Scope (_SB) { - - Device (CP00) { // Neoverse V1 core 0 - Name (_HID, "ACPI0007") + Device (CL00) { // Cluster 0 + Name (_HID, "ACPI0010") Name (_UID, 0) - Name (_STA, 0xF) + + Device (CP00) { // Neoverse V1 core 0 + Name (_HID, "ACPI0007") + Name (_UID, 0) + Name (_STA, 0xF) + } } =20 - Device (CP01) { // Neoverse V1 core 1 - Name (_HID, "ACPI0007") + Device (CL01) { // Cluster 1 + Name (_HID, "ACPI0010") Name (_UID, 1) - Name (_STA, 0xF) + + Device (CP01) { // Neoverse V1 core 1 + Name (_HID, "ACPI0007") + Name (_UID, 1) + Name (_STA, 0xF) + } } =20 - Device (CP02) { // Neoverse V1 core 2 - Name (_HID, "ACPI0007") + Device (CL02) { // Cluster 2 + Name (_HID, "ACPI0010") Name (_UID, 2) - Name (_STA, 0xF) + + Device (CP02) { // Neoverse V1 core 2 + Name (_HID, "ACPI0007") + Name (_UID, 2) + Name (_STA, 0xF) + } } =20 - Device (CP03) { // Neoverse V1 core 3 - Name (_HID, "ACPI0007") + Device (CL03) { // Cluster 3 + Name (_HID, "ACPI0010") Name (_UID, 3) - Name (_STA, 0xF) + + Device (CP03) { // Neoverse V1 core 3 + Name (_HID, "ACPI0007") + Name (_UID, 3) + Name (_STA, 0xF) + } } =20 - Device (CP04) { // Neoverse V1 core 4 - Name (_HID, "ACPI0007") + Device (CL04) { // Cluster 4 + Name (_HID, "ACPI0010") Name (_UID, 4) - Name (_STA, 0xF) + + Device (CP04) { // Neoverse V1 core 4 + Name (_HID, "ACPI0007") + Name (_UID, 4) + Name (_STA, 0xF) + } } =20 - Device (CP05) { // Neoverse V1 core 5 - Name (_HID, "ACPI0007") + Device (CL05) { // Cluster 5 + Name (_HID, "ACPI0010") Name (_UID, 5) - Name (_STA, 0xF) + + Device (CP05) { // Neoverse V1 core 5 + Name (_HID, "ACPI0007") + Name (_UID, 5) + Name (_STA, 0xF) + } } =20 - Device (CP06) { // Neoverse V1 core 6 - Name (_HID, "ACPI0007") + Device (CL06) { // Cluster 6 + Name (_HID, "ACPI0010") Name (_UID, 6) - Name (_STA, 0xF) + + Device (CP06) { // Neoverse V1 core 6 + Name (_HID, "ACPI0007") + Name (_UID, 6) + Name (_STA, 0xF) + } } =20 - Device (CP07) { // Neoverse V1 core 7 - Name (_HID, "ACPI0007") + Device (CL07) { // Cluster 7 + Name (_HID, "ACPI0010") Name (_UID, 7) - Name (_STA, 0xF) + + Device (CP07) { // Neoverse V1 core 7 + Name (_HID, "ACPI0007") + Name (_UID, 7) + Name (_STA, 0xF) + } } =20 - Device (CP08) { // Neoverse V1 core 8 - Name (_HID, "ACPI0007") + Device (CL08) { // Cluster 8 + Name (_HID, "ACPI0010") Name (_UID, 8) - Name (_STA, 0xF) + + Device (CP08) { // Neoverse V1 core 8 + Name (_HID, "ACPI0007") + Name (_UID, 8) + Name (_STA, 0xF) + } } =20 - Device (CP09) { // Neoverse V1 core 9 - Name (_HID, "ACPI0007") + Device (CL09) { // Cluster 9 + Name (_HID, "ACPI0010") Name (_UID, 9) - Name (_STA, 0xF) + + Device (CP09) { // Neoverse V1 core 9 + Name (_HID, "ACPI0007") + Name (_UID, 9) + Name (_STA, 0xF) + } } =20 - Device (CP10) { // Neoverse V1 core 10 - Name (_HID, "ACPI0007") + Device (CL10) { // Cluster 10 + Name (_HID, "ACPI0010") Name (_UID, 10) - Name (_STA, 0xF) + + Device (CP10) { // Neoverse V1 core 10 + Name (_HID, "ACPI0007") + Name (_UID, 10) + Name (_STA, 0xF) + } } =20 - Device (CP11) { // Neoverse V1 core 11 - Name (_HID, "ACPI0007") + Device (CL11) { // Cluster 11 + Name (_HID, "ACPI0010") Name (_UID, 11) - Name (_STA, 0xF) + + Device (CP11) { // Neoverse V1 core 11 + Name (_HID, "ACPI0007") + Name (_UID, 11) + Name (_STA, 0xF) + } } =20 - Device (CP12) { // Neoverse V1 core 12 - Name (_HID, "ACPI0007") + Device (CL12) { // Cluster 12 + Name (_HID, "ACPI0010") Name (_UID, 12) - Name (_STA, 0xF) + + Device (CP12) { // Neoverse V1 core 12 + Name (_HID, "ACPI0007") + Name (_UID, 12) + Name (_STA, 0xF) + } } =20 - Device (CP13) { // Neoverse V1 core 13 - Name (_HID, "ACPI0007") + Device (CL13) { // Cluster 13 + Name (_HID, "ACPI0010") Name (_UID, 13) - Name (_STA, 0xF) + + Device (CP13) { // Neoverse V1 core 13 + Name (_HID, "ACPI0007") + Name (_UID, 13) + Name (_STA, 0xF) + } } =20 - Device (CP14) { // Neoverse V1 core 14 - Name (_HID, "ACPI0007") + Device (CL14) { // Cluster 14 + Name (_HID, "ACPI0010") Name (_UID, 14) - Name (_STA, 0xF) + + Device (CP14) { // Neoverse V1 core 14 + Name (_HID, "ACPI0007") + Name (_UID, 14) + Name (_STA, 0xF) + } } =20 - Device (CP15) { // Neoverse V1 core 15 - Name (_HID, "ACPI0007") + Device (CL15) { // Cluster 15 + Name (_HID, "ACPI0010") Name (_UID, 15) - Name (_STA, 0xF) + + Device (CP15) { // Neoverse V1 core 15 + Name (_HID, "ACPI0007") + Name (_UID, 15) + Name (_STA, 0xF) + } } } // Scope(_SB) } --=20 2.17.1 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#74553): https://edk2.groups.io/g/devel/message/74553 Mute This Topic: https://groups.io/mt/82428274/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- From nobody Thu Apr 18 14:24:31 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) client-ip=66.175.222.108; envelope-from=bounce+27952+74554+1787277+3901457@groups.io; helo=mail02.groups.io; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+74554+1787277+3901457@groups.io; dmarc=fail(p=none dis=none) header.from=arm.com ARC-Seal: i=1; a=rsa-sha256; t=1619613397; cv=none; d=zohomail.com; s=zohoarc; b=ghSavEeVs/hezvT4dyB+06QLf54xy+yFG0mtl3hpVsbh746pRSSI75zbhBhLixL7ze1UiQJo1FmQffNxaeNbxUcx3JsjcAZNLEtwDM98AvcTMkMpG8bkKdgMW4L0X0vbDg5LqvLDS6Igc2ymVria1ffUk4FG1sUJaeGZaEIcJqI= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1619613397; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:References:Sender:Subject:To; bh=8SYcIrYBFeN1ab5PaiTNqewaPeXEM5ZzTgMFdDKTZjE=; b=gvsCNf/+EwAFUcrUc3e5xwcGG+Osd3aW63ZH4YAqaYj6hVXwlx+CXK1m3BqY/vLELYN5Lq4bOQL2/oiqvpSlCrDokyiveLx2N4BvjF29PGIPghMsx8UVD2VJWlcqc8Ghp6Yxm1G/vhkz00pC5SYobrQ55ydS5YOYxtmVJ8Gy1Nw= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+74554+1787277+3901457@groups.io; dmarc=fail header.from= (p=none dis=none) header.from= Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1619613397903238.49377783080377; Wed, 28 Apr 2021 05:36:37 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id myU9YY1788612xk9h3sfUejz; Wed, 28 Apr 2021 05:36:37 -0700 X-Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by mx.groups.io with SMTP id smtpd.web12.10886.1619613396854891750 for ; Wed, 28 Apr 2021 05:36:37 -0700 X-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 8919E1FB; Wed, 28 Apr 2021 05:36:36 -0700 (PDT) X-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 5D1013F694; Wed, 28 Apr 2021 05:36:35 -0700 (PDT) From: "Pranav Madhu" To: devel@edk2.groups.io Cc: Ard Biesheuvel , Sami Mujawar Subject: [edk2-devel] [edk2-platforms][PATCH V1 13/17] Platform/Sgi: Low Power Idle States for RD-V1 quad-chip platform Date: Wed, 28 Apr 2021 18:05:56 +0530 Message-Id: <20210428123600.2385-14-pranav.madhu@arm.com> In-Reply-To: <20210428123600.2385-1-pranav.madhu@arm.com> References: <20210428123600.2385-1-pranav.madhu@arm.com> MIME-Version: 1.0 Precedence: Bulk List-Unsubscribe: List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,pranav.madhu@arm.com X-Gm-Message-State: 0eV6wGVtKkNeCrBwlfhvH2Fax1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1619613397; bh=L6zpSO2YkuY09Bb3nsGWGcqsqqVDnjJRLRd8HXL5KHs=; h=Cc:Date:From:Reply-To:Subject:To; b=Dsf6mbL4fICti0g1/wg1O9DE7kR7KWwwLApulapKc1dGGpxxIRQux7kV3WuqsGNiQMU HhxHNKhj0JC4D0j1nKeccUPcc4bIG14DFWdRPFHj1otTsS01FIYnlUnT6mR+5gfrnxOYW 4AUu/EbudW2It8aIV2NWOJ6Xo0Ilfp8jqQI= X-ZohoMail-DKIM: pass (identity @groups.io) Content-Type: text/plain; charset="utf-8" RD-V1 quad-chip platform supports two LPI states, LPI1 (Standby WFI) and LPI3 (Power-down). Add idle support for RD-V1 quad-chip platform. Signed-off-by: Pranav Madhu Reviewed-by: Thomas Abraham --- Platform/ARM/SgiPkg/AcpiTables/RdV1Mc/Dsdt.asl | 144 ++++++++++++++++++++ 1 file changed, 144 insertions(+) diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdV1Mc/Dsdt.asl b/Platform/ARM/= SgiPkg/AcpiTables/RdV1Mc/Dsdt.asl index 16919cc5aaa0..82eb91638426 100644 --- a/Platform/ARM/SgiPkg/AcpiTables/RdV1Mc/Dsdt.asl +++ b/Platform/ARM/SgiPkg/AcpiTables/RdV1Mc/Dsdt.asl @@ -13,6 +13,86 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD", "ARMSGI", EFI_ACPI_ARM_OEM_REVISION) { Scope (_SB) { + /* _OSC: Operating System Capabilities */ + Method (_OSC, 4, Serialized) { + CreateDWordField (Arg3, 0x00, STS0) + CreateDWordField (Arg3, 0x04, CAP0) + + /* Platform-wide Capabilities */ + If (LEqual (Arg0, ToUUID("0811b06e-4a27-44f9-8d60-3cbbc22e7b48"))) { + /* OSC rev 1 supported, for other version, return failure */ + If (LEqual (Arg1, One)) { + And (STS0, Not (OSC_STS_MASK), STS0) + + If (And (CAP0, OSC_CAP_OS_INITIATED_LPI)) { + /* OS initiated LPI not supported */ + And (CAP0, Not (OSC_CAP_OS_INITIATED_LPI), CAP0) + Or (STS0, OSC_STS_CAPABILITY_MASKED, STS0) + } + } Else { + And (STS0, Not (OSC_STS_MASK), STS0) + Or (STS0, Or (OSC_STS_FAILURE, OSC_STS_UNRECOGNIZED_REV), STS0) + } + } Else { + And (STS0, Not (OSC_STS_MASK), STS0) + Or (STS0, Or (OSC_STS_FAILURE, OSC_STS_UNRECOGNIZED_UUID), STS0) + } + + Return (Arg3) + } + + Name (PLPI, Package () { /* LPI for Processor, support 2 LPI states */ + 0, // Version + 1, // Level Index + 2, // Count + Package () { // WFI for CPU + 1, // Min residency (uS) + 1, // Wake latency (uS) + 1, // Flags + 0, // Arch Context lost Flags (no loss) + 100, // Residency Counter Frequency + 0, // No parent state + ResourceTemplate () { // Register Entry method + Register (FFixedHW, + 32, // Bit Width + 0, // Bit Offset + 0xFFFFFFFF, // Address + 3, // Access Size + ) + }, + ResourceTemplate () { // Null Residency Counter + Register (SystemMemory, 0, 0, 0, 0) + }, + ResourceTemplate () { // Null Usage Counter + Register (SystemMemory, 0, 0, 0, 0) + }, + "LPI1-Core" + }, + Package () { // Power Gating state for CPU + 150, // Min residency (uS) + 350, // Wake latency (uS) + 1, // Flags + 1, // Arch Context lost Flags (Core context los= t) + 100, // Residency Counter Frequency + 1, // Parent node can be in any shallower state + ResourceTemplate () { // Register Entry method + Register (FFixedHW, + 32, // Bit Width + 0, // Bit Offset + 0x40000002, // Address (PwrLvl:core, StateTyp:PwrDn) + 3, // Access Size + ) + }, + ResourceTemplate () { // Null Residency Counter + Register (SystemMemory, 0, 0, 0, 0) + }, + ResourceTemplate () { // Null Usage Counter + Register (SystemMemory, 0, 0, 0, 0) + }, + "LPI3-Core" + }, + }) + Device (CL00) { // Cluster 0 Name (_HID, "ACPI0010") Name (_UID, 0) @@ -21,6 +101,10 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD", = "ARMSGI", Name (_HID, "ACPI0007") Name (_UID, 0) Name (_STA, 0xF) + + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } =20 @@ -32,6 +116,10 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD", = "ARMSGI", Name (_HID, "ACPI0007") Name (_UID, 1) Name (_STA, 0xF) + + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } =20 @@ -43,6 +131,10 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD", = "ARMSGI", Name (_HID, "ACPI0007") Name (_UID, 2) Name (_STA, 0xF) + + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } =20 @@ -54,6 +146,10 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD", = "ARMSGI", Name (_HID, "ACPI0007") Name (_UID, 3) Name (_STA, 0xF) + + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } =20 @@ -65,6 +161,10 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD", = "ARMSGI", Name (_HID, "ACPI0007") Name (_UID, 4) Name (_STA, 0xF) + + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } =20 @@ -76,6 +176,10 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD", = "ARMSGI", Name (_HID, "ACPI0007") Name (_UID, 5) Name (_STA, 0xF) + + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } =20 @@ -87,6 +191,10 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD", = "ARMSGI", Name (_HID, "ACPI0007") Name (_UID, 6) Name (_STA, 0xF) + + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } =20 @@ -98,6 +206,10 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD", = "ARMSGI", Name (_HID, "ACPI0007") Name (_UID, 7) Name (_STA, 0xF) + + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } =20 @@ -109,6 +221,10 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_HID, "ACPI0007") Name (_UID, 8) Name (_STA, 0xF) + + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } =20 @@ -120,6 +236,10 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_HID, "ACPI0007") Name (_UID, 9) Name (_STA, 0xF) + + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } =20 @@ -131,6 +251,10 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_HID, "ACPI0007") Name (_UID, 10) Name (_STA, 0xF) + + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } =20 @@ -142,6 +266,10 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_HID, "ACPI0007") Name (_UID, 11) Name (_STA, 0xF) + + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } =20 @@ -153,6 +281,10 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_HID, "ACPI0007") Name (_UID, 12) Name (_STA, 0xF) + + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } =20 @@ -164,6 +296,10 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_HID, "ACPI0007") Name (_UID, 13) Name (_STA, 0xF) + + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } =20 @@ -175,6 +311,10 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_HID, "ACPI0007") Name (_UID, 14) Name (_STA, 0xF) + + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } =20 @@ -186,6 +326,10 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_HID, "ACPI0007") Name (_UID, 15) Name (_STA, 0xF) + + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } } // Scope(_SB) --=20 2.17.1 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#74554): https://edk2.groups.io/g/devel/message/74554 Mute This Topic: https://groups.io/mt/82428275/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- From nobody Thu Apr 18 14:24:31 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) client-ip=66.175.222.108; envelope-from=bounce+27952+74555+1787277+3901457@groups.io; helo=mail02.groups.io; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+74555+1787277+3901457@groups.io; dmarc=fail(p=none dis=none) header.from=arm.com ARC-Seal: i=1; a=rsa-sha256; t=1619613399; cv=none; d=zohomail.com; s=zohoarc; b=Rl6YFv4jHblmcbRRiTGdm2h2UDeotAdw7SggX7BIu4YtulXxNkA0cuSjLxlYW4uwDR2oW6Mw+uBTfMVcwIL9ibyoXkvm5wofR+7SMfeKCXOCNAtGryJq10cKIBk6oRog+XL1jn387iKYD9JPj/bzgzDozh75RdvcTXWAef+JR0Q= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1619613399; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:References:Sender:Subject:To; bh=XEL0uMZ8YbQyUZPZ9ADKafsxb1ppx19jZJugsa5ZaLI=; b=AG52MRyGeZSWNRjQ+5p93lhQvVyVgn9IaIOtXiWcIebFi++q/zckcNaYOOENCkCmCOICuyqSy8MHDrosegNZVVtAG+SpR+dlXe6Ar4KEqlZmpPhEOVv+KTGdGaf32VNUSnJYpWCf6+sKXQ+r8rpfLYy8G3YY1YHCnD46Q/6xA3I= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+74555+1787277+3901457@groups.io; dmarc=fail header.from= (p=none dis=none) header.from= Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1619613399830686.7917156925301; Wed, 28 Apr 2021 05:36:39 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id aEXUYY1788612xaglbKuhvAE; Wed, 28 Apr 2021 05:36:39 -0700 X-Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by mx.groups.io with SMTP id smtpd.web10.11291.1619613398762073438 for ; Wed, 28 Apr 2021 05:36:38 -0700 X-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 2B7831FB; Wed, 28 Apr 2021 05:36:38 -0700 (PDT) X-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 00B1B3F694; Wed, 28 Apr 2021 05:36:36 -0700 (PDT) From: "Pranav Madhu" To: devel@edk2.groups.io Cc: Ard Biesheuvel , Sami Mujawar Subject: [edk2-devel] [edk2-platforms][PATCH V1 14/17] Platform/Sgi: ACPI CPPC support for RD-V1 quad-chip platform Date: Wed, 28 Apr 2021 18:05:57 +0530 Message-Id: <20210428123600.2385-15-pranav.madhu@arm.com> In-Reply-To: <20210428123600.2385-1-pranav.madhu@arm.com> References: <20210428123600.2385-1-pranav.madhu@arm.com> MIME-Version: 1.0 Precedence: Bulk List-Unsubscribe: List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,pranav.madhu@arm.com X-Gm-Message-State: AYTAgytTTfyVGFtdJEbzg173x1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1619613399; bh=HNEIix//gEBAH6NjN8CwrPLILxe1zrwU8aWWPmD2zi8=; h=Cc:Date:From:Reply-To:Subject:To; b=FIe9Ktovs4Emllt7aL69lcWly4FWcWnToYe7kQ5HvY0Gazu8AiUNQ/ykVHU1oCUBnMw r/HwG1W/EpkeJEmnhuhHqKY5w1VY3AhUHqzfhu1eS1UqW9yMz478VYfg78ckbIgNe51rp iyXdpbf/HZuZMGvzjx6YqrInAiEkJ7+Fx8Y= X-ZohoMail-DKIM: pass (identity @groups.io) Content-Type: text/plain; charset="utf-8" Enable ACPI CPPC mechanism for RD-V1 quad-chip platform as defined by the ACPI specification. The implementation uses AMU registers accessible as Fixed-feature Hardware (FFixedHW) for monitoring the performance. Non-secure SCMI fastchannels are used to communicate with SCP to set the desired performance. RD-V1 quad-chip platform does not support CPPC revision 1 and below. So update the _OSC method to let OSPM know about this fact. Signed-off-by: Pranav Madhu Reviewed-by: Thomas Abraham --- Platform/ARM/SgiPkg/AcpiTables/RdV1Mc/Dsdt.asl | 162 ++++++++++++++++++++ 1 file changed, 162 insertions(+) diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdV1Mc/Dsdt.asl b/Platform/ARM/= SgiPkg/AcpiTables/RdV1Mc/Dsdt.asl index 82eb91638426..622d522532a3 100644 --- a/Platform/ARM/SgiPkg/AcpiTables/RdV1Mc/Dsdt.asl +++ b/Platform/ARM/SgiPkg/AcpiTables/RdV1Mc/Dsdt.asl @@ -29,6 +29,12 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD", "= ARMSGI", And (CAP0, Not (OSC_CAP_OS_INITIATED_LPI), CAP0) Or (STS0, OSC_STS_CAPABILITY_MASKED, STS0) } + + If (And (CAP0, OSC_CAP_CPPC_SUPPORT)) { + /* CPPC revision 1 and below not supported */ + And (CAP0, Not (OSC_CAP_CPPC_SUPPORT), CAP0) + Or (STS0, OSC_STS_CAPABILITY_MASKED, STS0) + } } Else { And (STS0, Not (OSC_STS_MASK), STS0) Or (STS0, Or (OSC_STS_FAILURE, OSC_STS_UNRECOGNIZED_REV), STS0) @@ -102,6 +108,15 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_UID, 0) Name (_STA, 0xF) =20 + Name (_CPC, Package() + CPPC_PACKAGE_INIT (0x06000500, 0x06000504, 20, 130, 130, 65, 65,= 5) + ) + + Name (_PSD, Package () { + Package () + PSD_INIT (0) + }) + Method (_LPI, 0, NotSerialized) { Return (\_SB.PLPI) } @@ -117,6 +132,15 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_UID, 1) Name (_STA, 0xF) =20 + Name (_CPC, Package() + CPPC_PACKAGE_INIT (0x06000518, 0x0600051C, 20, 130, 130, 65, 65,= 5) + ) + + Name (_PSD, Package () { + Package () + PSD_INIT (1) + }) + Method (_LPI, 0, NotSerialized) { Return (\_SB.PLPI) } @@ -132,6 +156,15 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_UID, 2) Name (_STA, 0xF) =20 + Name (_CPC, Package() + CPPC_PACKAGE_INIT (0x06000530, 0x06000534, 20, 130, 130, 65, 65,= 5) + ) + + Name (_PSD, Package () { + Package () + PSD_INIT (2) + }) + Method (_LPI, 0, NotSerialized) { Return (\_SB.PLPI) } @@ -147,6 +180,15 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_UID, 3) Name (_STA, 0xF) =20 + Name (_CPC, Package() + CPPC_PACKAGE_INIT (0x06000548, 0x0600054C, 20, 130, 130, 65, 65,= 5) + ) + + Name (_PSD, Package () { + Package () + PSD_INIT (3) + }) + Method (_LPI, 0, NotSerialized) { Return (\_SB.PLPI) } @@ -162,6 +204,16 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_UID, 4) Name (_STA, 0xF) =20 + Name (_CPC, Package() + CPPC_PACKAGE_INIT (0x040006000500, 0x040006000504, 20, 130, 130,= 65, + 65, 5) + ) + + Name (_PSD, Package () { + Package () + PSD_INIT (4) + }) + Method (_LPI, 0, NotSerialized) { Return (\_SB.PLPI) } @@ -177,6 +229,16 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_UID, 5) Name (_STA, 0xF) =20 + Name (_CPC, Package() + CPPC_PACKAGE_INIT (0x040006000518, 0x04000600051C, 20, 130, 130,= 65, + 65, 5) + ) + + Name (_PSD, Package () { + Package () + PSD_INIT (5) + }) + Method (_LPI, 0, NotSerialized) { Return (\_SB.PLPI) } @@ -192,6 +254,16 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_UID, 6) Name (_STA, 0xF) =20 + Name (_CPC, Package() + CPPC_PACKAGE_INIT (0x040006000530, 0x040006000534, 20, 130, 130,= 65, + 65, 5) + ) + + Name (_PSD, Package () { + Package () + PSD_INIT (6) + }) + Method (_LPI, 0, NotSerialized) { Return (\_SB.PLPI) } @@ -207,6 +279,16 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_UID, 7) Name (_STA, 0xF) =20 + Name (_CPC, Package() + CPPC_PACKAGE_INIT (0x040006000548, 0x04000600054C, 20, 130, 130,= 65, + 65, 5) + ) + + Name (_PSD, Package () { + Package () + PSD_INIT (7) + }) + Method (_LPI, 0, NotSerialized) { Return (\_SB.PLPI) } @@ -222,6 +304,16 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_UID, 8) Name (_STA, 0xF) =20 + Name (_CPC, Package() + CPPC_PACKAGE_INIT (0x080006000500, 0x080006000504, 20, 130, 130,= 65, + 65, 5) + ) + + Name (_PSD, Package () { + Package () + PSD_INIT (8) + }) + Method (_LPI, 0, NotSerialized) { Return (\_SB.PLPI) } @@ -237,6 +329,16 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_UID, 9) Name (_STA, 0xF) =20 + Name (_CPC, Package() + CPPC_PACKAGE_INIT (0x080006000518, 0x08000600051C, 20, 130, 130,= 65, + 65, 5) + ) + + Name (_PSD, Package () { + Package () + PSD_INIT (9) + }) + Method (_LPI, 0, NotSerialized) { Return (\_SB.PLPI) } @@ -252,6 +354,16 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_UID, 10) Name (_STA, 0xF) =20 + Name (_CPC, Package() + CPPC_PACKAGE_INIT (0x080006000530, 0x080006000534, 20, 130, 130,= 65, + 65, 5) + ) + + Name (_PSD, Package () { + Package () + PSD_INIT (10) + }) + Method (_LPI, 0, NotSerialized) { Return (\_SB.PLPI) } @@ -267,6 +379,16 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_UID, 11) Name (_STA, 0xF) =20 + Name (_CPC, Package() + CPPC_PACKAGE_INIT (0x080006000548, 0x08000600054C, 20, 130, 130,= 65, + 65, 5) + ) + + Name (_PSD, Package () { + Package () + PSD_INIT (11) + }) + Method (_LPI, 0, NotSerialized) { Return (\_SB.PLPI) } @@ -282,6 +404,16 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_UID, 12) Name (_STA, 0xF) =20 + Name (_CPC, Package() + CPPC_PACKAGE_INIT (0x0C0006000500, 0x0C0006000504, 20, 130, 130,= 65, + 65, 5) + ) + + Name (_PSD, Package () { + Package () + PSD_INIT (12) + }) + Method (_LPI, 0, NotSerialized) { Return (\_SB.PLPI) } @@ -297,6 +429,16 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_UID, 13) Name (_STA, 0xF) =20 + Name (_CPC, Package() + CPPC_PACKAGE_INIT (0x0C0006000518, 0x0C000600051C, 20, 130, 130,= 65, + 65, 5) + ) + + Name (_PSD, Package () { + Package () + PSD_INIT (13) + }) + Method (_LPI, 0, NotSerialized) { Return (\_SB.PLPI) } @@ -312,6 +454,16 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_UID, 14) Name (_STA, 0xF) =20 + Name (_CPC, Package() + CPPC_PACKAGE_INIT (0x0C0006000530, 0x0C0006000534, 20, 130, 130,= 65, + 65, 5) + ) + + Name (_PSD, Package () { + Package () + PSD_INIT (14) + }) + Method (_LPI, 0, NotSerialized) { Return (\_SB.PLPI) } @@ -327,6 +479,16 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_UID, 15) Name (_STA, 0xF) =20 + Name (_CPC, Package() + CPPC_PACKAGE_INIT (0x0C0006000548, 0x0C000600054C, 20, 130, 130,= 65, + 65, 5) + ) + + Name (_PSD, Package () { + Package () + PSD_INIT (15) + }) + Method (_LPI, 0, NotSerialized) { Return (\_SB.PLPI) } --=20 2.17.1 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#74555): https://edk2.groups.io/g/devel/message/74555 Mute This Topic: https://groups.io/mt/82428276/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- From nobody Thu Apr 18 14:24:31 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) client-ip=66.175.222.108; envelope-from=bounce+27952+74556+1787277+3901457@groups.io; helo=mail02.groups.io; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+74556+1787277+3901457@groups.io; dmarc=fail(p=none dis=none) header.from=arm.com ARC-Seal: i=1; a=rsa-sha256; t=1619613401; cv=none; d=zohomail.com; s=zohoarc; b=JHI2RM7ifP0+mLcTjgxyot7vmQXn0y5hkX8/LVoLVWoiq1vjpAFPTf62uz0GGmWHUBWbFTdfekiHq7yX4C9flzux/SD8cNdQjkyM8+ph3vUdzz8ZvLPKzhSChII6DsTMI99HqshB8mcrVevGRNL6Vx68oBbA/N34I/7r4nRvZUk= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1619613401; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:References:Sender:Subject:To; bh=zDKjkmB04035R9nxC0HX84WdVqpQwgv/jrJtn5M9n0k=; b=J6dqxH9sgrzsCI572baanS1DIPMKIt3aeX1aogsl0r2vwbqnUUCRtzVJJpqxLcb5spDanI2RP8gfMoa5f1ZLOvUICVJHEHj6t4YbWVrWOg3ioS7QtwIwTdw5F9fLJT6ijeIieOh+0HM/bhEdD0h35ycKTCZN6PYdmb0ptNrlLJ0= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+74556+1787277+3901457@groups.io; dmarc=fail header.from= (p=none dis=none) header.from= Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1619613401126698.2874271070323; Wed, 28 Apr 2021 05:36:41 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id evO6YY1788612xQIc3Dcfr2d; Wed, 28 Apr 2021 05:36:40 -0700 X-Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by mx.groups.io with SMTP id smtpd.web12.10887.1619613400123051865 for ; Wed, 28 Apr 2021 05:36:40 -0700 X-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 C61D01FB; Wed, 28 Apr 2021 05:36:39 -0700 (PDT) X-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 972253F694; Wed, 28 Apr 2021 05:36:38 -0700 (PDT) From: "Pranav Madhu" To: devel@edk2.groups.io Cc: Ard Biesheuvel , Sami Mujawar Subject: [edk2-devel] [edk2-platforms][PATCH V1 15/17] Platform/Sgi: Add CPU container for RD-N2 platform Date: Wed, 28 Apr 2021 18:05:58 +0530 Message-Id: <20210428123600.2385-16-pranav.madhu@arm.com> In-Reply-To: <20210428123600.2385-1-pranav.madhu@arm.com> References: <20210428123600.2385-1-pranav.madhu@arm.com> MIME-Version: 1.0 Precedence: Bulk List-Unsubscribe: List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,pranav.madhu@arm.com X-Gm-Message-State: bnmlb4xUMXogrOWrkYTstzCtx1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1619613400; bh=WxorKOvXfn28dX9oTmQUNFGHCsaaBG6k/0c9W0Yxtaw=; h=Cc:Date:From:Reply-To:Subject:To; b=psONlxk+aR6GxsVf7WaAjYpVQQKlh4jaAioV0VNhhl4lCODfyDhGSiG0zLSjJ74wC3v OjeONa8UHrq4vBXKV41Kg53BrXed/Mp12ScJQJTkESaDlBBPare1WzFoRXAL4rQOGwDKI Eaau32p6Kon5ALh1tW8cufAFFBeJUe7/Z+4= X-ZohoMail-DKIM: pass (identity @groups.io) Content-Type: text/plain; charset="utf-8" The RD-N2 platform is a sixteen core platform with each core contained in a minimal cluster logic. Update the processor device entries accordingly in the DSDT ACPI table by moving each of the processor device entries into a separate processor container devices. Signed-off-by: Pranav Madhu Reviewed-by: Thomas Abraham --- Platform/ARM/SgiPkg/AcpiTables/RdN2/Dsdt.asl | 176 ++++++++++++++------ 1 file changed, 128 insertions(+), 48 deletions(-) diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdN2/Dsdt.asl b/Platform/ARM/Sg= iPkg/AcpiTables/RdN2/Dsdt.asl index 42cb8655b4fb..c5d6f44b3e44 100644 --- a/Platform/ARM/SgiPkg/AcpiTables/RdN2/Dsdt.asl +++ b/Platform/ARM/SgiPkg/AcpiTables/RdN2/Dsdt.asl @@ -13,100 +13,180 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD", "ARMSGI", EFI_ACPI_ARM_OEM_REVISION) { Scope (_SB) { - Device (CP00) { // Neoverse N2 core 0 - Name (_HID, "ACPI0007") + Device (CL00) { // Cluster 0 + Name (_HID, "ACPI0010") Name (_UID, 0) - Name (_STA, 0xF) + + Device (CP00) { // Neoverse N2 core 0 + Name (_HID, "ACPI0007") + Name (_UID, 0) + Name (_STA, 0xF) + } } =20 - Device (CP01) { // Neoverse N2 core 1 - Name (_HID, "ACPI0007") + Device (CL01) { // Cluster 1 + Name (_HID, "ACPI0010") Name (_UID, 1) - Name (_STA, 0xF) + + Device (CP01) { // Neoverse N2 core 1 + Name (_HID, "ACPI0007") + Name (_UID, 1) + Name (_STA, 0xF) + } } =20 - Device (CP02) { // Neoverse N2 core 2 - Name (_HID, "ACPI0007") + Device (CL02) { // Cluster 2 + Name (_HID, "ACPI0010") Name (_UID, 2) - Name (_STA, 0xF) + + Device (CP02) { // Neoverse N2 core 2 + Name (_HID, "ACPI0007") + Name (_UID, 2) + Name (_STA, 0xF) + } } =20 - Device (CP03) { // Neoverse N2 core 3 - Name (_HID, "ACPI0007") + Device (CL03) { // Cluster 3 + Name (_HID, "ACPI0010") Name (_UID, 3) - Name (_STA, 0xF) + + Device (CP03) { // Neoverse N2 core 3 + Name (_HID, "ACPI0007") + Name (_UID, 3) + Name (_STA, 0xF) + } } =20 - Device (CP04) { // Neoverse N2 core 4 - Name (_HID, "ACPI0007") + Device (CL04) { // Cluster 4 + Name (_HID, "ACPI0010") Name (_UID, 4) - Name (_STA, 0xF) + + Device (CP04) { // Neoverse N2 core 4 + Name (_HID, "ACPI0007") + Name (_UID, 4) + Name (_STA, 0xF) + } } =20 - Device (CP05) { // Neoverse N2 core 5 - Name (_HID, "ACPI0007") + Device (CL05) { // Cluster 5 + Name (_HID, "ACPI0010") Name (_UID, 5) - Name (_STA, 0xF) + + Device (CP05) { // Neoverse N2 core 5 + Name (_HID, "ACPI0007") + Name (_UID, 5) + Name (_STA, 0xF) + } } =20 - Device (CP06) { // Neoverse N2 core 6 - Name (_HID, "ACPI0007") + Device (CL06) { // Cluster 6 + Name (_HID, "ACPI0010") Name (_UID, 6) - Name (_STA, 0xF) + + Device (CP06) { // Neoverse N2 core 6 + Name (_HID, "ACPI0007") + Name (_UID, 6) + Name (_STA, 0xF) + } } =20 - Device (CP07) { // Neoverse N2 core 7 - Name (_HID, "ACPI0007") + Device (CL07) { // Cluster 7 + Name (_HID, "ACPI0010") Name (_UID, 7) - Name (_STA, 0xF) + + Device (CP07) { // Neoverse N2 core 7 + Name (_HID, "ACPI0007") + Name (_UID, 7) + Name (_STA, 0xF) + } } =20 - Device (CP08) { // Neoverse N2 core 8 - Name (_HID, "ACPI0007") + Device (CL08) { // Cluster 8 + Name (_HID, "ACPI0010") Name (_UID, 8) - Name (_STA, 0xF) + + Device (CP08) { // Neoverse N2 core 8 + Name (_HID, "ACPI0007") + Name (_UID, 8) + Name (_STA, 0xF) + } } =20 - Device (CP09) { // Neoverse N2 core 9 - Name (_HID, "ACPI0007") + Device (CL09) { // Cluster 9 + Name (_HID, "ACPI0010") Name (_UID, 9) - Name (_STA, 0xF) + + Device (CP09) { // Neoverse N2 core 9 + Name (_HID, "ACPI0007") + Name (_UID, 9) + Name (_STA, 0xF) + } } =20 - Device (CP10) { // Neoverse N2 core 10 - Name (_HID, "ACPI0007") + Device (CL10) { // Cluster 10 + Name (_HID, "ACPI0010") Name (_UID, 10) - Name (_STA, 0xF) + + Device (CP10) { // Neoverse N2 core 10 + Name (_HID, "ACPI0007") + Name (_UID, 10) + Name (_STA, 0xF) + } } =20 - Device (CP11) { // Neoverse N2 core 11 - Name (_HID, "ACPI0007") + Device (CL11) { // Cluster 11 + Name (_HID, "ACPI0010") Name (_UID, 11) - Name (_STA, 0xF) + + Device (CP11) { // Neoverse N2 core 11 + Name (_HID, "ACPI0007") + Name (_UID, 11) + Name (_STA, 0xF) + } } =20 - Device (CP12) { // Neoverse N2 core 12 - Name (_HID, "ACPI0007") + Device (CL12) { // Cluster 12 + Name (_HID, "ACPI0010") Name (_UID, 12) - Name (_STA, 0xF) + + Device (CP12) { // Neoverse N2 core 12 + Name (_HID, "ACPI0007") + Name (_UID, 12) + Name (_STA, 0xF) + } } =20 - Device (CP13) { // Neoverse N2 core 13 - Name (_HID, "ACPI0007") + Device (CL13) { // Cluster 13 + Name (_HID, "ACPI0010") Name (_UID, 13) - Name (_STA, 0xF) + + Device (CP13) { // Neoverse N2 core 13 + Name (_HID, "ACPI0007") + Name (_UID, 13) + Name (_STA, 0xF) + } } =20 - Device (CP14) { // Neoverse N2 core 14 - Name (_HID, "ACPI0007") + Device (CL14) { // Cluster 14 + Name (_HID, "ACPI0010") Name (_UID, 14) - Name (_STA, 0xF) + + Device (CP14) { // Neoverse N2 core 14 + Name (_HID, "ACPI0007") + Name (_UID, 14) + Name (_STA, 0xF) + } } =20 - Device (CP15) { // Neoverse N2 core 15 - Name (_HID, "ACPI0007") + Device (CL15) { // Cluster 15 + Name (_HID, "ACPI0010") Name (_UID, 15) - Name (_STA, 0xF) + + Device (CP15) { // Neoverse N2 core 15 + Name (_HID, "ACPI0007") + Name (_UID, 15) + Name (_STA, 0xF) + } } } // Scope(_SB) } --=20 2.17.1 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#74556): https://edk2.groups.io/g/devel/message/74556 Mute This Topic: https://groups.io/mt/82428279/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- From nobody Thu Apr 18 14:24:31 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) client-ip=66.175.222.108; envelope-from=bounce+27952+74557+1787277+3901457@groups.io; helo=mail02.groups.io; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+74557+1787277+3901457@groups.io; dmarc=fail(p=none dis=none) header.from=arm.com ARC-Seal: i=1; a=rsa-sha256; t=1619613402; cv=none; d=zohomail.com; s=zohoarc; b=IhdSpscNqob/cghhQWTSpDQPooz8eA1z8RsrUCz/IhVqkJNG4GDfopLtSV3S9GhUVDCmnVVffYv/gfOo9PiqsPwqK6a7d/mrW8nUzczffkXdJFvfSy3a5lAFeOZ1sAdYZ/GTfkdo8dmyGaXJ20oOYkLIMQFjOBwOareoe5Rc2dM= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1619613402; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:References:Sender:Subject:To; bh=j/VKmX120x/SEh60xmfEazzS4P3E14kBItQKSx23bOQ=; b=ZqV1fNRew6+UJEr+xA0iUaKCb6Dt92LmzG5CKSSqtenCIKbRWeBKqYaitykc+KbPQxxMrQgBhF6Mgw7KZbYBXpgpyXWftUFeUJucm7Jz+jC1RVieDymR7JzJAE2p/qBsS/K3mhYktmCd5NsGjWSh5Q8n3Ea3YLWeiJTyh62/KYY= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+74557+1787277+3901457@groups.io; dmarc=fail header.from= (p=none dis=none) header.from= Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1619613402731865.4799111692624; Wed, 28 Apr 2021 05:36:42 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id eM9cYY1788612xzTZLkOl8iu; Wed, 28 Apr 2021 05:36:42 -0700 X-Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by mx.groups.io with SMTP id smtpd.web11.11186.1619613401698792062 for ; Wed, 28 Apr 2021 05:36:41 -0700 X-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 651C31042; Wed, 28 Apr 2021 05:36:41 -0700 (PDT) X-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 39AB93F694; Wed, 28 Apr 2021 05:36:40 -0700 (PDT) From: "Pranav Madhu" To: devel@edk2.groups.io Cc: Ard Biesheuvel , Sami Mujawar Subject: [edk2-devel] [edk2-platforms][PATCH V1 16/17] Platform/Sgi: Low Power Idle States for RD-N2 Date: Wed, 28 Apr 2021 18:05:59 +0530 Message-Id: <20210428123600.2385-17-pranav.madhu@arm.com> In-Reply-To: <20210428123600.2385-1-pranav.madhu@arm.com> References: <20210428123600.2385-1-pranav.madhu@arm.com> MIME-Version: 1.0 Precedence: Bulk List-Unsubscribe: List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,pranav.madhu@arm.com X-Gm-Message-State: CB0u3KJ5O4LaGGi9GbRuAZvHx1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1619613402; bh=/uNmpGKHXuzBNIJoCDWY8wy07VioGB371THz3t7mHLA=; h=Cc:Date:From:Reply-To:Subject:To; b=kY8cXxs8dA11/pxBERQu89mHLmHmSjUPAUNx4ORNjA0hzmu790Zh6FwP+szXy6F2A0b 4zG6tbAzFSvIxJNHLD1C0igLVKHFyGEx+HYGP2axYMP2LK1TSa6hDiEPOdDOvH6aGbD/n 7jW/f4uBvaBbuoWdT+gy3PRQx68KLwBp9sc= X-ZohoMail-DKIM: pass (identity @groups.io) Content-Type: text/plain; charset="utf-8" RD-N2 platform supports two LPI states, LPI1 (Standby WFI) and LPI3 (Power-down). The cluster supports LPI2 (Power-down) state. The LPI implementation also supports combined power state for core and cluster. Signed-off-by: Pranav Madhu Reviewed-by: Thomas Abraham --- Platform/ARM/SgiPkg/AcpiTables/RdN2/Dsdt.asl | 214 ++++++++++++++++++++ 1 file changed, 214 insertions(+) diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdN2/Dsdt.asl b/Platform/ARM/Sg= iPkg/AcpiTables/RdN2/Dsdt.asl index c5d6f44b3e44..125b20b64cee 100644 --- a/Platform/ARM/SgiPkg/AcpiTables/RdN2/Dsdt.asl +++ b/Platform/ARM/SgiPkg/AcpiTables/RdN2/Dsdt.asl @@ -13,179 +13,393 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD", "ARMSGI", EFI_ACPI_ARM_OEM_REVISION) { Scope (_SB) { + /* _OSC: Operating System Capabilities */ + Method (_OSC, 4, Serialized) { + CreateDWordField (Arg3, 0x00, STS0) + CreateDWordField (Arg3, 0x04, CAP0) + + /* Platform-wide Capabilities */ + If (LEqual (Arg0, ToUUID("0811b06e-4a27-44f9-8d60-3cbbc22e7b48"))) { + /* OSC rev 1 supported, for other version, return failure */ + If (LEqual (Arg1, One)) { + And (STS0, Not (OSC_STS_MASK), STS0) + + If (And (CAP0, OSC_CAP_OS_INITIATED_LPI)) { + /* OS initiated LPI not supported */ + And (CAP0, Not (OSC_CAP_OS_INITIATED_LPI), CAP0) + Or (STS0, OSC_STS_CAPABILITY_MASKED, STS0) + } + } Else { + And (STS0, Not (OSC_STS_MASK), STS0) + Or (STS0, Or (OSC_STS_FAILURE, OSC_STS_UNRECOGNIZED_REV), STS0) + } + } Else { + And (STS0, Not (OSC_STS_MASK), STS0) + Or (STS0, Or (OSC_STS_FAILURE, OSC_STS_UNRECOGNIZED_UUID), STS0) + } + + Return (Arg3) + } + + Name (CLPI, Package () { /* LPI for Cluster, support 1 LPI state */ + 0, // Version + 0, // Level Index + 1, // Count + Package () { // Power Gating state for Cluster + 2500, // Min residency (uS) + 1150, // Wake latency (uS) + 1, // Flags + 1, // Arch Context Flags + 100, // Residency Counter Frequency + 0, // No Parent State + 0x00000020, // Integer Entry method + ResourceTemplate () { // Null Residency Counter + Register (SystemMemory, 0, 0, 0, 0) + }, + ResourceTemplate () { // Null Usage Counter + Register (SystemMemory, 0, 0, 0, 0) + }, + "LPI2-Cluster" + }, + }) + + Name (PLPI, Package () { /* LPI for Processor, support 2 LPI states */ + 0, // Version + 1, // Level Index + 2, // Count + Package () { // WFI for CPU + 1, // Min residency (uS) + 1, // Wake latency (uS) + 1, // Flags + 0, // Arch Context lost Flags (no loss) + 100, // Residency Counter Frequency + 0, // No parent state + ResourceTemplate () { // Register Entry method + Register (FFixedHW, + 32, // Bit Width + 0, // Bit Offset + 0xFFFFFFFF, // Address + 3, // Access Size + ) + }, + ResourceTemplate () { // Null Residency Counter + Register (SystemMemory, 0, 0, 0, 0) + }, + ResourceTemplate () { // Null Usage Counter + Register (SystemMemory, 0, 0, 0, 0) + }, + "LPI1-Core" + }, + Package () { // Power Gating state for CPU + 150, // Min residency (uS) + 350, // Wake latency (uS) + 1, // Flags + 1, // Arch Context lost Flags (Core context los= t) + 100, // Residency Counter Frequency + 1, // Parent node can be in any shallower state + ResourceTemplate () { // Register Entry method + Register (FFixedHW, + 32, // Bit Width + 0, // Bit Offset + 0x40000002, // Address (PwrLvl:core, StateTyp:PwrDn) + 3, // Access Size + ) + }, + ResourceTemplate () { // Null Residency Counter + Register (SystemMemory, 0, 0, 0, 0) + }, + ResourceTemplate () { // Null Usage Counter + Register (SystemMemory, 0, 0, 0, 0) + }, + "LPI3-Core" + }, + }) + Device (CL00) { // Cluster 0 Name (_HID, "ACPI0010") Name (_UID, 0) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.CLPI) + } =20 Device (CP00) { // Neoverse N2 core 0 Name (_HID, "ACPI0007") Name (_UID, 0) Name (_STA, 0xF) + + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } =20 Device (CL01) { // Cluster 1 Name (_HID, "ACPI0010") Name (_UID, 1) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.CLPI) + } =20 Device (CP01) { // Neoverse N2 core 1 Name (_HID, "ACPI0007") Name (_UID, 1) Name (_STA, 0xF) + + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } =20 Device (CL02) { // Cluster 2 Name (_HID, "ACPI0010") Name (_UID, 2) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.CLPI) + } =20 Device (CP02) { // Neoverse N2 core 2 Name (_HID, "ACPI0007") Name (_UID, 2) Name (_STA, 0xF) + + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } =20 Device (CL03) { // Cluster 3 Name (_HID, "ACPI0010") Name (_UID, 3) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.CLPI) + } =20 Device (CP03) { // Neoverse N2 core 3 Name (_HID, "ACPI0007") Name (_UID, 3) Name (_STA, 0xF) + + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } =20 Device (CL04) { // Cluster 4 Name (_HID, "ACPI0010") Name (_UID, 4) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.CLPI) + } =20 Device (CP04) { // Neoverse N2 core 4 Name (_HID, "ACPI0007") Name (_UID, 4) Name (_STA, 0xF) + + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } =20 Device (CL05) { // Cluster 5 Name (_HID, "ACPI0010") Name (_UID, 5) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.CLPI) + } =20 Device (CP05) { // Neoverse N2 core 5 Name (_HID, "ACPI0007") Name (_UID, 5) Name (_STA, 0xF) + + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } =20 Device (CL06) { // Cluster 6 Name (_HID, "ACPI0010") Name (_UID, 6) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.CLPI) + } =20 Device (CP06) { // Neoverse N2 core 6 Name (_HID, "ACPI0007") Name (_UID, 6) Name (_STA, 0xF) + + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } =20 Device (CL07) { // Cluster 7 Name (_HID, "ACPI0010") Name (_UID, 7) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.CLPI) + } =20 Device (CP07) { // Neoverse N2 core 7 Name (_HID, "ACPI0007") Name (_UID, 7) Name (_STA, 0xF) + + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } =20 Device (CL08) { // Cluster 8 Name (_HID, "ACPI0010") Name (_UID, 8) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.CLPI) + } =20 Device (CP08) { // Neoverse N2 core 8 Name (_HID, "ACPI0007") Name (_UID, 8) Name (_STA, 0xF) + + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } =20 Device (CL09) { // Cluster 9 Name (_HID, "ACPI0010") Name (_UID, 9) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.CLPI) + } =20 Device (CP09) { // Neoverse N2 core 9 Name (_HID, "ACPI0007") Name (_UID, 9) Name (_STA, 0xF) + + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } =20 Device (CL10) { // Cluster 10 Name (_HID, "ACPI0010") Name (_UID, 10) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.CLPI) + } =20 Device (CP10) { // Neoverse N2 core 10 Name (_HID, "ACPI0007") Name (_UID, 10) Name (_STA, 0xF) + + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } =20 Device (CL11) { // Cluster 11 Name (_HID, "ACPI0010") Name (_UID, 11) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.CLPI) + } =20 Device (CP11) { // Neoverse N2 core 11 Name (_HID, "ACPI0007") Name (_UID, 11) Name (_STA, 0xF) + + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } =20 Device (CL12) { // Cluster 12 Name (_HID, "ACPI0010") Name (_UID, 12) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.CLPI) + } =20 Device (CP12) { // Neoverse N2 core 12 Name (_HID, "ACPI0007") Name (_UID, 12) Name (_STA, 0xF) + + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } =20 Device (CL13) { // Cluster 13 Name (_HID, "ACPI0010") Name (_UID, 13) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.CLPI) + } =20 Device (CP13) { // Neoverse N2 core 13 Name (_HID, "ACPI0007") Name (_UID, 13) Name (_STA, 0xF) + + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } =20 Device (CL14) { // Cluster 14 Name (_HID, "ACPI0010") Name (_UID, 14) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.CLPI) + } =20 Device (CP14) { // Neoverse N2 core 14 Name (_HID, "ACPI0007") Name (_UID, 14) Name (_STA, 0xF) + + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } =20 Device (CL15) { // Cluster 15 Name (_HID, "ACPI0010") Name (_UID, 15) + Method (_LPI, 0, NotSerialized) { + Return (\_SB.CLPI) + } =20 Device (CP15) { // Neoverse N2 core 15 Name (_HID, "ACPI0007") Name (_UID, 15) Name (_STA, 0xF) + + Method (_LPI, 0, NotSerialized) { + Return (\_SB.PLPI) + } } } } // Scope(_SB) --=20 2.17.1 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#74557): https://edk2.groups.io/g/devel/message/74557 Mute This Topic: https://groups.io/mt/82428281/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- From nobody Thu Apr 18 14:24:31 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) client-ip=66.175.222.108; envelope-from=bounce+27952+74558+1787277+3901457@groups.io; helo=mail02.groups.io; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+74558+1787277+3901457@groups.io; dmarc=fail(p=none dis=none) header.from=arm.com ARC-Seal: i=1; a=rsa-sha256; t=1619613404; cv=none; d=zohomail.com; s=zohoarc; b=EKMsp21WuORNhZgmqIJVbwnSs5gyu28PBB69mODDPpltxAbCQnUqqe2EZIAM2POQeT7gjZuCt9j68umKXFfa5NFkV3udIpR/n5ed6qezc5axPqGWSTFP90dPUWd6/mxqZvwR0PbVUFyunTqmW86fcS+eDtXASIFlenBJnpbD2Ag= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1619613404; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:References:Sender:Subject:To; bh=NYkjj4gHpKE4WX3+S3V0vfB+YFK3yz4+i1cngdF8Sc8=; b=X4Paa4KjPlgdPUH/nLCp0rPkiphDOEyGnEndZ2/udsP0Rf86OFL5m4LGLAVT9eChD+iQJLwvVh6UUJWBMI5AvVoQDbYHI/CYdaiyRhreUYZT8DLg7OHRrANGYf7ofxwLZfKqk6c/Gk4+CF8DTqmgcZ01UgHfe+PoSnxz22BudF8= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+74558+1787277+3901457@groups.io; dmarc=fail header.from= (p=none dis=none) header.from= Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1619613404610340.45350311007337; Wed, 28 Apr 2021 05:36:44 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id LkeKYY1788612xyA9Gl7jaT7; Wed, 28 Apr 2021 05:36:44 -0700 X-Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by mx.groups.io with SMTP id smtpd.web12.10888.1619613403436406341 for ; Wed, 28 Apr 2021 05:36:43 -0700 X-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 0D7071042; Wed, 28 Apr 2021 05:36:43 -0700 (PDT) X-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 D0C883F694; Wed, 28 Apr 2021 05:36:41 -0700 (PDT) From: "Pranav Madhu" To: devel@edk2.groups.io Cc: Ard Biesheuvel , Sami Mujawar Subject: [edk2-devel] [edk2-platforms][PATCH V1 17/17] Platform/Sgi: ACPI CPPC support for RD-N2 Date: Wed, 28 Apr 2021 18:06:00 +0530 Message-Id: <20210428123600.2385-18-pranav.madhu@arm.com> In-Reply-To: <20210428123600.2385-1-pranav.madhu@arm.com> References: <20210428123600.2385-1-pranav.madhu@arm.com> MIME-Version: 1.0 Precedence: Bulk List-Unsubscribe: List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,pranav.madhu@arm.com X-Gm-Message-State: 0gPxZmQgBfsOGaCDL8lSI8rkx1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1619613404; bh=5SOrrJH6RarTpHS/HzcCYgwV91u5q/UEoa7Kdj2obp0=; h=Cc:Date:From:Reply-To:Subject:To; b=ph3IxxANSGZzLEsALo8ELZNOVABPvDSMHE7+1rfOvzS7OWDTNRxAfqAbeXIOEvZuXGG FrrdAI4NRr0u6Z1e4pTa0FHZmrh8Le/ddsNes9XDSclGLE84i9/5qN9IFi8h/GFok677X F3rWJ6UIGfQIsDqZQtPqkImV+ZzZnOfQOE0= X-ZohoMail-DKIM: pass (identity @groups.io) Content-Type: text/plain; charset="utf-8" Enable ACPI CPPC mechanism for RD-N2 as defined by the ACPI specification. The implementation uses AMU registers accessible as Fixed-feature Hardware (FFixedHW) for monitoring the performance. Non-secure SCMI fastchannels are used to communicate with SCP to set the desired performance. RD-N2 platform does not support CPPC revision 1 and below. So update the _OSC method to let OSPM know about this fact. Signed-off-by: Pranav Madhu Reviewed-by: Thomas Abraham --- Platform/ARM/SgiPkg/AcpiTables/RdN2/Dsdt.asl | 150 ++++++++++++++++++++ 1 file changed, 150 insertions(+) diff --git a/Platform/ARM/SgiPkg/AcpiTables/RdN2/Dsdt.asl b/Platform/ARM/Sg= iPkg/AcpiTables/RdN2/Dsdt.asl index 125b20b64cee..a318ef48ded9 100644 --- a/Platform/ARM/SgiPkg/AcpiTables/RdN2/Dsdt.asl +++ b/Platform/ARM/SgiPkg/AcpiTables/RdN2/Dsdt.asl @@ -29,6 +29,12 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD", "= ARMSGI", And (CAP0, Not (OSC_CAP_OS_INITIATED_LPI), CAP0) Or (STS0, OSC_STS_CAPABILITY_MASKED, STS0) } + + If (And (CAP0, OSC_CAP_CPPC_SUPPORT)) { + /* CPPC revision 1 and below not supported */ + And (CAP0, Not (OSC_CAP_CPPC_SUPPORT), CAP0) + Or (STS0, OSC_STS_CAPABILITY_MASKED, STS0) + } } Else { And (STS0, Not (OSC_STS_MASK), STS0) Or (STS0, Or (OSC_STS_FAILURE, OSC_STS_UNRECOGNIZED_REV), STS0) @@ -127,6 +133,15 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_UID, 0) Name (_STA, 0xF) =20 + Name (_CPC, Package() + CPPC_PACKAGE_INIT (0x06000500, 0x06000504, 20, 160, 160, 115, 11= 5, 5) + ) + + Name (_PSD, Package () { + Package () + PSD_INIT (0) + }) + Method (_LPI, 0, NotSerialized) { Return (\_SB.PLPI) } @@ -145,6 +160,15 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_UID, 1) Name (_STA, 0xF) =20 + Name (_CPC, Package() + CPPC_PACKAGE_INIT (0x06000518, 0x0600051C, 20, 160, 160, 115, 11= 5, 5) + ) + + Name (_PSD, Package () { + Package () + PSD_INIT (1) + }) + Method (_LPI, 0, NotSerialized) { Return (\_SB.PLPI) } @@ -163,6 +187,15 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_UID, 2) Name (_STA, 0xF) =20 + Name (_CPC, Package() + CPPC_PACKAGE_INIT (0x06000530, 0x06000534, 20, 160, 160, 115, 11= 5, 5) + ) + + Name (_PSD, Package () { + Package () + PSD_INIT (2) + }) + Method (_LPI, 0, NotSerialized) { Return (\_SB.PLPI) } @@ -181,6 +214,15 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_UID, 3) Name (_STA, 0xF) =20 + Name (_CPC, Package() + CPPC_PACKAGE_INIT (0x06000548, 0x0600054C, 20, 160, 160, 115, 11= 5, 5) + ) + + Name (_PSD, Package () { + Package () + PSD_INIT (3) + }) + Method (_LPI, 0, NotSerialized) { Return (\_SB.PLPI) } @@ -199,6 +241,15 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_UID, 4) Name (_STA, 0xF) =20 + Name (_CPC, Package() + CPPC_PACKAGE_INIT (0x06000560, 0x06000564, 20, 160, 160, 115, 11= 5, 5) + ) + + Name (_PSD, Package () { + Package () + PSD_INIT (4) + }) + Method (_LPI, 0, NotSerialized) { Return (\_SB.PLPI) } @@ -217,6 +268,15 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_UID, 5) Name (_STA, 0xF) =20 + Name (_CPC, Package() + CPPC_PACKAGE_INIT (0x06000578, 0x0600057C, 20, 160, 160, 115, 11= 5, 5) + ) + + Name (_PSD, Package () { + Package () + PSD_INIT (5) + }) + Method (_LPI, 0, NotSerialized) { Return (\_SB.PLPI) } @@ -235,6 +295,15 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_UID, 6) Name (_STA, 0xF) =20 + Name (_CPC, Package() + CPPC_PACKAGE_INIT (0x06000590, 0x06000594, 20, 160, 160, 115, 11= 5, 5) + ) + + Name (_PSD, Package () { + Package () + PSD_INIT (6) + }) + Method (_LPI, 0, NotSerialized) { Return (\_SB.PLPI) } @@ -253,6 +322,15 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_UID, 7) Name (_STA, 0xF) =20 + Name (_CPC, Package() + CPPC_PACKAGE_INIT (0x060005A8, 0x060005AC, 20, 160, 160, 115, 11= 5, 5) + ) + + Name (_PSD, Package () { + Package () + PSD_INIT (7) + }) + Method (_LPI, 0, NotSerialized) { Return (\_SB.PLPI) } @@ -271,6 +349,15 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_UID, 8) Name (_STA, 0xF) =20 + Name (_CPC, Package() + CPPC_PACKAGE_INIT (0x060005C0, 0x060005C4, 20, 160, 160, 115, 11= 5, 5) + ) + + Name (_PSD, Package () { + Package () + PSD_INIT (8) + }) + Method (_LPI, 0, NotSerialized) { Return (\_SB.PLPI) } @@ -289,6 +376,15 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_UID, 9) Name (_STA, 0xF) =20 + Name (_CPC, Package() + CPPC_PACKAGE_INIT (0x060005D8, 0x060005DC, 20, 160, 160, 115, 11= 5, 5) + ) + + Name (_PSD, Package () { + Package () + PSD_INIT (9) + }) + Method (_LPI, 0, NotSerialized) { Return (\_SB.PLPI) } @@ -307,6 +403,15 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_UID, 10) Name (_STA, 0xF) =20 + Name (_CPC, Package() + CPPC_PACKAGE_INIT (0x060005F0, 0x060005F4, 20, 160, 160, 115, 11= 5, 5) + ) + + Name (_PSD, Package () { + Package () + PSD_INIT (10) + }) + Method (_LPI, 0, NotSerialized) { Return (\_SB.PLPI) } @@ -325,6 +430,15 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_UID, 11) Name (_STA, 0xF) =20 + Name (_CPC, Package() + CPPC_PACKAGE_INIT (0x06000608, 0x0600060C, 20, 160, 160, 115, 11= 5, 5) + ) + + Name (_PSD, Package () { + Package () + PSD_INIT (11) + }) + Method (_LPI, 0, NotSerialized) { Return (\_SB.PLPI) } @@ -343,6 +457,15 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_UID, 12) Name (_STA, 0xF) =20 + Name (_CPC, Package() + CPPC_PACKAGE_INIT (0x06000620, 0x06000624, 20, 160, 160, 115, 11= 5, 5) + ) + + Name (_PSD, Package () { + Package () + PSD_INIT (12) + }) + Method (_LPI, 0, NotSerialized) { Return (\_SB.PLPI) } @@ -361,6 +484,15 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_UID, 13) Name (_STA, 0xF) =20 + Name (_CPC, Package() + CPPC_PACKAGE_INIT (0x06000638, 0x0600063C, 20, 160, 160, 115, 11= 5, 5) + ) + + Name (_PSD, Package () { + Package () + PSD_INIT (13) + }) + Method (_LPI, 0, NotSerialized) { Return (\_SB.PLPI) } @@ -379,6 +511,15 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_UID, 14) Name (_STA, 0xF) =20 + Name (_CPC, Package() + CPPC_PACKAGE_INIT (0x06000650, 0x06000654, 20, 160, 160, 115, 11= 5, 5) + ) + + Name (_PSD, Package () { + Package () + PSD_INIT (14) + }) + Method (_LPI, 0, NotSerialized) { Return (\_SB.PLPI) } @@ -397,6 +538,15 @@ DefinitionBlock ("DsdtTable.aml", "DSDT", 2, "ARMLTD",= "ARMSGI", Name (_UID, 15) Name (_STA, 0xF) =20 + Name (_CPC, Package() + CPPC_PACKAGE_INIT (0x06000668, 0x0600066C, 20, 160, 160, 115, 11= 5, 5) + ) + + Name (_PSD, Package () { + Package () + PSD_INIT (15) + }) + Method (_LPI, 0, NotSerialized) { Return (\_SB.PLPI) } --=20 2.17.1 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#74558): https://edk2.groups.io/g/devel/message/74558 Mute This Topic: https://groups.io/mt/82428282/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-