From patchwork Tue Nov 11 05:31:37 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chander Kashyap X-Patchwork-Id: 5270681 Return-Path: X-Original-To: patchwork-linux-samsung-soc@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork1.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.19.201]) by patchwork1.web.kernel.org (Postfix) with ESMTP id 39BC49F2F1 for ; Tue, 11 Nov 2014 05:31:57 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 4E8E120165 for ; Tue, 11 Nov 2014 05:31:56 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id E691F20158 for ; Tue, 11 Nov 2014 05:31:54 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752337AbaKKFby (ORCPT ); Tue, 11 Nov 2014 00:31:54 -0500 Received: from mail-pd0-f172.google.com ([209.85.192.172]:55945 "EHLO mail-pd0-f172.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752326AbaKKFbv (ORCPT ); Tue, 11 Nov 2014 00:31:51 -0500 Received: by mail-pd0-f172.google.com with SMTP id r10so9391961pdi.31 for ; Mon, 10 Nov 2014 21:31:51 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:from:to:cc:subject:date:message-id; bh=xRGctlgYRnlbRWN1Jp/9OaotbEzHJ0v+pyUEH5J/S6k=; b=m1SxnLJZ1zaHmqPLdr1Pf7oOUrs9Qs8HZY917eLO3dJEiY+Xp6SyqDmCe1iN5sQKco sPd8sO5Xq2bULiGoKKfpvlAxvZA3Haz23i1edQsb6lBxYrardgk3KkhkXTWFZp/GQOqO YDwkRHXISCPNzMHcH3+SMMPC2e21ZSVQnrIO87GXDw19zU9cUl5S1FkRlU+NfTiCX3SX EVjCWSwA83lvlnzY7F0CDPSowX2EueYf+KHkyx+Le3uwwyvY0dalrV98GDsaDDYGwBad tJUUy53BqVkwOriU7DHkNrv7IZa5sGAd7247QDdJ68JEHa9LnJu76icuSvxxeZ9cFD9L QYYw== X-Received: by 10.69.20.74 with SMTP id ha10mr37560894pbd.122.1415683911196; Mon, 10 Nov 2014 21:31:51 -0800 (PST) Received: from chander-ubuntu.localdomain6 ([14.140.216.146]) by mx.google.com with ESMTPSA id zn2sm18092614pbb.41.2014.11.10.21.31.47 for (version=TLSv1.2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Mon, 10 Nov 2014 21:31:50 -0800 (PST) From: Chander Kashyap To: linux-pm@vger.kernel.org, linux-kernel@vger.kernel.org, linux-samsung-soc@vger.kernel.org Cc: linux-arm-kernel@lists.infradead.org, daniel.lezcano@linaro.org, lorenzo.pieralisi@arm.com, catalin.marinas@arm.com, mark.rutland@arm.com, rjw@rjwysocki.net, kgene.kim@samsung.com, Chander Kashyap Subject: [PATCH v5] arm64: dts: exynos7: add support for cpuidle core power down Date: Tue, 11 Nov 2014 11:01:37 +0530 Message-Id: <1415683897-983-1-git-send-email-k.chander@samsung.com> X-Mailer: git-send-email 1.9.1 Sender: linux-samsung-soc-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-samsung-soc@vger.kernel.org X-Spam-Status: No, score=-7.3 required=5.0 tests=BAYES_00,DKIM_SIGNED, RCVD_IN_DNSWL_HI,RP_MATCHES_RCVD,T_DKIM_INVALID,UNPARSEABLE_RELAY autolearn=ham version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Exynos7 supports multiple idle states. Core power down is one such idle state, where cores can be powered off independently. This patch adds support for core power down idle state. Entry latency for core power down idle state is calculated as follows: 1. Time difference is measured between cpuidle entry and exit. 2. WFI is skipped for measuring the time. 3. Select the worst case time in a set of 100000 cpuidle transactions, with varying load. Exit latency and min residency values are supplied as per HW team. Signed-off-by: Chander Kashyap Acked-by: Lorenzo Pieralisi --- This patch has following dependencies: - [PATCH v5 0/8] arch: arm64: Enable support for Samsung Exynos7 SoC www.spinics.net/lists/arm-kernel/msg375961.html Changes in v2: - Moved the cpu-idle-state property after reg property - removed the status property. Changes in v3: - Added the Entry latency calculation in commit message. Changes in v4: - Corrected the commit message. - Corrected the entry latency value. Changes in v5: - Commit message modified arch/arm64/boot/dts/exynos/exynos7.dtsi | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/arch/arm64/boot/dts/exynos/exynos7.dtsi b/arch/arm64/boot/dts/exynos/exynos7.dtsi index d7a37c3..891eef4 100644 --- a/arch/arm64/boot/dts/exynos/exynos7.dtsi +++ b/arch/arm64/boot/dts/exynos/exynos7.dtsi @@ -37,6 +37,7 @@ compatible = "arm,cortex-a57", "arm,armv8"; reg = <0x0>; enable-method = "psci"; + cpu-idle-states = <&CPU_SLEEP>; }; cpu@1 { @@ -44,6 +45,7 @@ compatible = "arm,cortex-a57", "arm,armv8"; reg = <0x1>; enable-method = "psci"; + cpu-idle-states = <&CPU_SLEEP>; }; cpu@2 { @@ -51,6 +53,7 @@ compatible = "arm,cortex-a57", "arm,armv8"; reg = <0x2>; enable-method = "psci"; + cpu-idle-states = <&CPU_SLEEP>; }; cpu@3 { @@ -58,6 +61,20 @@ compatible = "arm,cortex-a57", "arm,armv8"; reg = <0x3>; enable-method = "psci"; + cpu-idle-states = <&CPU_SLEEP>; + }; + + idle-states { + entry-method = "arm,psci"; + + CPU_SLEEP: cpu-sleep { + compatible = "arm,idle-state"; + local-timer-stop; + arm,psci-suspend-param = <0x0010000>; + entry-latency-us = <34>; + exit-latency-us = <150>; + min-residency-us = <2100>; + }; }; };