From patchwork Fri Mar 3 21:48:11 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Lina Iyer X-Patchwork-Id: 94869 Delivered-To: patch@linaro.org Received: by 10.140.82.71 with SMTP id g65csp443000qgd; Fri, 3 Mar 2017 13:55:29 -0800 (PST) X-Received: by 10.99.126.11 with SMTP id z11mr6083189pgc.51.1488578129810; Fri, 03 Mar 2017 13:55:29 -0800 (PST) Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id n21si11694599pgj.18.2017.03.03.13.55.29; Fri, 03 Mar 2017 13:55:29 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-pm-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org; spf=pass (google.com: best guess record for domain of linux-pm-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-pm-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751869AbdCCVz2 (ORCPT + 13 others); Fri, 3 Mar 2017 16:55:28 -0500 Received: from mail-pg0-f48.google.com ([74.125.83.48]:35802 "EHLO mail-pg0-f48.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752150AbdCCVz1 (ORCPT ); Fri, 3 Mar 2017 16:55:27 -0500 Received: by mail-pg0-f48.google.com with SMTP id b129so47945983pgc.2 for ; Fri, 03 Mar 2017 13:55:09 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id; bh=fmBDUBVAh/N67cnxXK8mI9cGsMDKzmgOu2T7xyS0YXU=; b=an5VqjzlmOMJvQ0YGhgdTtlp3E8f+9XzUJgVP2OekHiKwLMyXCPmycmtkDkgPiPMiF NU3wKzt1n64jk4B/1PKR5RsCHpDor0xN5ifheWD16JLMwvFo1nwI1f01DDc6bZHnWqVs 0qB24Zehcy2SXVoAOSFk7FMi1gT6pSWhFnLn4= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=fmBDUBVAh/N67cnxXK8mI9cGsMDKzmgOu2T7xyS0YXU=; b=OKo/qqHRkvlTetDeKDGSoI8fjDo24EF66JouMiYOTXsch1+q6NQn+5lZ34wIklXpBW LFV1DBIlD1MZdEDvC2dwYV295/f52+Q4TcAYv+BaN1Adp15OxqJkIuN5UbUHspZF861l zgluhqsRajXAGTpS8vPdc+aWs7FhMutS4QcwyYTRbUnSRM5HrXMa0K/gs42kFq7Pitm8 76QrQw5Qw2/X6cRrgn6FUhDbkUQY2l4UxWqFIWLOogyuGO6dxL9GwqVNfiV/NcTJ6E3w doHBbx1p8nT/gF/vd/A6d6yFEAqCPEOZkiM0HRs7mmeXj++05dFCsFEhlsmzE0GavGDi MWSQ== X-Gm-Message-State: AMke39mTc47KyZpc5lTwqi3PilKsXuBrdTGHiLXSuYT/oquJ66oHqY40XBnDTr8jfdsoXgmJ X-Received: by 10.98.80.209 with SMTP id g78mr6138138pfj.163.1488577702318; Fri, 03 Mar 2017 13:48:22 -0800 (PST) Received: from ubuntu.localdomain (i-global254.qualcomm.com. [199.106.103.254]) by smtp.gmail.com with ESMTPSA id q23sm25200585pfg.63.2017.03.03.13.48.19 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Fri, 03 Mar 2017 13:48:21 -0800 (PST) From: Lina Iyer To: ulf.hansson@linaro.org, khilman@kernel.org, rjw@rjwysocki.net, linux-pm@vger.kernel.org, linux-arm-kernel@lists.infradead.org Cc: andy.gross@linaro.org, sboyd@codeaurora.org, linux-arm-msm@vger.kernel.org, brendan.jackman@arm.com, lorenzo.pieralisi@arm.com, sudeep.holla@arm.com, Juri.Lelli@arm.com, Lina Iyer Subject: [PATCH V5 0/6] PSCI: Support hierarchical PM domains Date: Fri, 3 Mar 2017 13:48:11 -0800 Message-Id: <1488577697-127445-1-git-send-email-lina.iyer@linaro.org> X-Mailer: git-send-email 2.7.4 Sender: linux-pm-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-pm@vger.kernel.org Hi all, This series adds support for hierarchical idle states in PSCI. Up until and including PSCI v1.0, CPUs idle states could only be represented as flattened model with CPU as part of the cpu-idle-states property in DT. For ex., CPU0: cpu@0 { device_type = "cpu"; cpu-idle-states = <&CPU_PWRDN>, <&CLUSTER_RET>, <&CLUSTER_PWR_DWN>; }; This patchset adds support to split CPU and cluster idle states and present them in hierarchy. The documentation in patch 5 explains this difference. In order to be backwards compatible, the cpuidle driver and the PSCI driver has been updated to look for hierarchy first and if not present will revert to initializing using the flattened model. This patch uses CPU PM domains published earlier. Changes since last submission - - Support both hierarchical model and flattened model - Documentation updates. - Rebase on top of Rafael's linux-next Thanks, Lina Lina Iyer (6): drivers: cpuidle: Read CPU's idle state from PM domain drivers: firmware: psci: Allow OS Initiated suspend mode drivers: firmware: psci: Support cluster idle states for OS-Initiated drivers: firmwware: psci: Support hierachical idle states dt/bindings: Update binding for hierarchical PSCI states ARM64: dts: Define CPU power domain for MSM8916 Documentation/devicetree/bindings/arm/psci.txt | 156 +++++++++++++++++++++++ arch/arm64/boot/dts/qcom/msm8916.dtsi | 53 +++++++- drivers/cpuidle/dt_idle_states.c | 38 +++++- drivers/firmware/psci.c | 167 +++++++++++++++++++++---- include/uapi/linux/psci.h | 5 + 5 files changed, 388 insertions(+), 31 deletions(-) -- 2.7.4