From: Lina Iyer <lina.iyer-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org> To: ulf.hansson-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org, khilman-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org, rjw-LthD3rsA81gm4RdzfppkhA@public.gmane.org, linux-pm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org Cc: geert-Td1EMuHUCqxL1ZNQvxDV9g@public.gmane.org, k.kozlowski-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org, andy.gross-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org, sboyd-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org, linux-arm-msm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, lorenzo.pieralisi-5wv7dgnIgG8@public.gmane.org, ahaslam-rdvid1DuHRBWk0Htik3J/w@public.gmane.org, mtitinger-rdvid1DuHRBWk0Htik3J/w@public.gmane.org, Axel Haslam <ahaslam+renesas-rdvid1DuHRBWk0Htik3J/w@public.gmane.org>, devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, Marc Titinger <mtitinger+renesas-rdvid1DuHRBWk0Htik3J/w@public.gmane.org>, Lina Iyer <lina.iyer-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org> Subject: [PATCH 02/14] dt/bindings: update binding for PM domain idle states Date: Wed, 22 Jun 2016 13:36:37 -0600 [thread overview] Message-ID: <1466624209-27432-3-git-send-email-lina.iyer@linaro.org> (raw) In-Reply-To: <1466624209-27432-1-git-send-email-lina.iyer-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org> From: Axel Haslam <ahaslam+renesas-rdvid1DuHRBWk0Htik3J/w@public.gmane.org> Update DT bindings to describe idle states of PM domains. Cc: <devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org> Signed-off-by: Marc Titinger <mtitinger+renesas-rdvid1DuHRBWk0Htik3J/w@public.gmane.org> Signed-off-by: Lina Iyer <lina.iyer-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org> [Lina: Added state properties, removed state names, wakeup-latency, added of_pm_genpd_init() API, pruned commit text] Signed-off-by: Ulf Hansson <ulf.hansson-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org> [Ulf: Moved around code to make it compile properly, rebased on top of multiple state support] --- .../devicetree/bindings/power/power_domain.txt | 70 ++++++++++++++++++++++ 1 file changed, 70 insertions(+) diff --git a/Documentation/devicetree/bindings/power/power_domain.txt b/Documentation/devicetree/bindings/power/power_domain.txt index 025b5e7..41e8dda 100644 --- a/Documentation/devicetree/bindings/power/power_domain.txt +++ b/Documentation/devicetree/bindings/power/power_domain.txt @@ -29,6 +29,43 @@ Optional properties: specified by this binding. More details about power domain specifier are available in the next section. +- power-states : A phandle of an idle-state that shall be soaked into a + generic domain power state. + +==Power state== + +A PM domain power state describes an idle state of a domain and must be +have the following properties - + + - entry-latency-us + Usage: Not required if wakeup-latency-us is provided. + Value type: <prop-encoded-array> + Definition: u32 value representing worst case latency in + microseconds required to enter the idle state. + The exit-latency-us duration may be guaranteed + only after entry-latency-us has passed. + + - exit-latency-us + Usage: Not required if wakeup-latency-us is provided. + Value type: <prop-encoded-array> + Definition: u32 value representing worst case latency + in microseconds required to exit the idle state. + + - residency-us: + Usage: Optional + Value type: <prop-encoded-array> + Definition: A u32 value representing the time for which a + domain must be idle in the state to reap power saving benefits + of entering the state. + + - state-param: + Usage: Optional + Value type: <prop-encoded-array> + Definition: A u32 value as defined by the state. May be used + by the driver to hold state related u32 data. In the case of + PSCI, an extended state-id for the domain may be encoded in + this value. + Example: power: power-controller@12340000 { @@ -55,6 +92,39 @@ Example 2: #power-domain-cells = <1>; }; +Example 3: + + pm-domains { + a57_pd: a57_pd@ { + /* will have a57 platform ARM_PD_METHOD_OF_DECLARE*/ + compatible = "arm,pd","arm,cortex-a57"; + #power-domain-cells = <0>; + power-states = <&CLUSTER_SLEEP_0>; + }; + + a53_pd: a53_pd@ { + /* will have a a53 platform ARM_PD_METHOD_OF_DECLARE*/ + compatible = "arm,pd","arm,cortex-a53"; + #power-domain-cells = <0>; + power-states = <&CLUSTER_SLEEP_0>, <&CLUSTER_SLEEP_1>; + }; + + CLUSTER_SLEEP_0: power-state@0 { + entry-latency-us = <1000>; + exit-latency-us = <2000>; + residency-us = <10000>; + state-param = <0x1000010>; + }; + + CLUSTER_SLEEP_1: power-state@1 { + entry-latency-us = <5000>; + exit-latency-us = <5000>; + residency-us = <100000>; + state-param = <0x1000020>; + }; + }; + + The nodes above define two power controllers: 'parent' and 'child'. Domains created by the 'child' power controller are subdomains of '0' power domain provided by the 'parent' power controller. -- 2.7.4 -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html
WARNING: multiple messages have this Message-ID (diff)
From: lina.iyer@linaro.org (Lina Iyer) To: linux-arm-kernel@lists.infradead.org Subject: [PATCH 02/14] dt/bindings: update binding for PM domain idle states Date: Wed, 22 Jun 2016 13:36:37 -0600 [thread overview] Message-ID: <1466624209-27432-3-git-send-email-lina.iyer@linaro.org> (raw) In-Reply-To: <1466624209-27432-1-git-send-email-lina.iyer@linaro.org> From: Axel Haslam <ahaslam+renesas@baylibre.com> Update DT bindings to describe idle states of PM domains. Cc: <devicetree@vger.kernel.org> Signed-off-by: Marc Titinger <mtitinger+renesas@baylibre.com> Signed-off-by: Lina Iyer <lina.iyer@linaro.org> [Lina: Added state properties, removed state names, wakeup-latency, added of_pm_genpd_init() API, pruned commit text] Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> [Ulf: Moved around code to make it compile properly, rebased on top of multiple state support] --- .../devicetree/bindings/power/power_domain.txt | 70 ++++++++++++++++++++++ 1 file changed, 70 insertions(+) diff --git a/Documentation/devicetree/bindings/power/power_domain.txt b/Documentation/devicetree/bindings/power/power_domain.txt index 025b5e7..41e8dda 100644 --- a/Documentation/devicetree/bindings/power/power_domain.txt +++ b/Documentation/devicetree/bindings/power/power_domain.txt @@ -29,6 +29,43 @@ Optional properties: specified by this binding. More details about power domain specifier are available in the next section. +- power-states : A phandle of an idle-state that shall be soaked into a + generic domain power state. + +==Power state== + +A PM domain power state describes an idle state of a domain and must be +have the following properties - + + - entry-latency-us + Usage: Not required if wakeup-latency-us is provided. + Value type: <prop-encoded-array> + Definition: u32 value representing worst case latency in + microseconds required to enter the idle state. + The exit-latency-us duration may be guaranteed + only after entry-latency-us has passed. + + - exit-latency-us + Usage: Not required if wakeup-latency-us is provided. + Value type: <prop-encoded-array> + Definition: u32 value representing worst case latency + in microseconds required to exit the idle state. + + - residency-us: + Usage: Optional + Value type: <prop-encoded-array> + Definition: A u32 value representing the time for which a + domain must be idle in the state to reap power saving benefits + of entering the state. + + - state-param: + Usage: Optional + Value type: <prop-encoded-array> + Definition: A u32 value as defined by the state. May be used + by the driver to hold state related u32 data. In the case of + PSCI, an extended state-id for the domain may be encoded in + this value. + Example: power: power-controller at 12340000 { @@ -55,6 +92,39 @@ Example 2: #power-domain-cells = <1>; }; +Example 3: + + pm-domains { + a57_pd: a57_pd@ { + /* will have a57 platform ARM_PD_METHOD_OF_DECLARE*/ + compatible = "arm,pd","arm,cortex-a57"; + #power-domain-cells = <0>; + power-states = <&CLUSTER_SLEEP_0>; + }; + + a53_pd: a53_pd@ { + /* will have a a53 platform ARM_PD_METHOD_OF_DECLARE*/ + compatible = "arm,pd","arm,cortex-a53"; + #power-domain-cells = <0>; + power-states = <&CLUSTER_SLEEP_0>, <&CLUSTER_SLEEP_1>; + }; + + CLUSTER_SLEEP_0: power-state at 0 { + entry-latency-us = <1000>; + exit-latency-us = <2000>; + residency-us = <10000>; + state-param = <0x1000010>; + }; + + CLUSTER_SLEEP_1: power-state at 1 { + entry-latency-us = <5000>; + exit-latency-us = <5000>; + residency-us = <100000>; + state-param = <0x1000020>; + }; + }; + + The nodes above define two power controllers: 'parent' and 'child'. Domains created by the 'child' power controller are subdomains of '0' power domain provided by the 'parent' power controller. -- 2.7.4
next prev parent reply other threads:[~2016-06-22 19:36 UTC|newest] Thread overview: 63+ messages / expand[flat|nested] mbox.gz Atom feed top 2016-06-22 19:36 [PATCH 00/14] PM: SoC idle support using PM domains Lina Iyer 2016-06-22 19:36 ` Lina Iyer 2016-06-22 19:36 ` [PATCH 01/14] PM / Domains: Allow domain power states to be read from DT Lina Iyer 2016-06-22 19:36 ` Lina Iyer 2016-06-23 17:38 ` Mark Rutland 2016-06-23 17:38 ` Mark Rutland [not found] ` <1466624209-27432-1-git-send-email-lina.iyer-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org> 2016-06-22 19:36 ` Lina Iyer [this message] 2016-06-22 19:36 ` [PATCH 02/14] dt/bindings: update binding for PM domain idle states Lina Iyer [not found] ` <1466624209-27432-3-git-send-email-lina.iyer-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org> 2016-06-23 17:35 ` Mark Rutland 2016-06-23 17:35 ` Mark Rutland 2016-06-23 18:04 ` Lina Iyer 2016-06-23 18:04 ` Lina Iyer [not found] ` <20160623180451.GD1115-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org> 2016-06-23 18:19 ` Mark Rutland 2016-06-23 18:19 ` Mark Rutland 2016-06-23 18:39 ` Lina Iyer 2016-06-23 18:39 ` Lina Iyer 2016-07-27 11:11 ` [draft] " Brendan Jackman 2016-06-22 19:36 ` [PATCH 03/14] PM / Domains: Abstract genpd locking Lina Iyer 2016-06-22 19:36 ` Lina Iyer 2016-06-22 19:36 ` [PATCH 04/14] PM / Domains: Support IRQ safe PM domains Lina Iyer 2016-06-22 19:36 ` Lina Iyer 2016-06-22 19:36 ` [PATCH 05/14] PM / doc: update device documentation for devices in " Lina Iyer 2016-06-22 19:36 ` Lina Iyer 2016-07-25 22:50 ` Kevin Hilman 2016-07-25 22:50 ` Kevin Hilman 2016-07-25 23:21 ` Lina Iyer 2016-07-25 23:21 ` Lina Iyer 2016-06-22 19:36 ` [PATCH 06/14] PM / cpu_domains: Setup PM domains for CPUs/clusters Lina Iyer 2016-06-22 19:36 ` Lina Iyer 2016-06-22 19:36 ` [PATCH 07/14] ARM: cpuidle: Add runtime PM support for CPUs Lina Iyer 2016-06-22 19:36 ` Lina Iyer 2016-06-22 19:36 ` [PATCH 08/14] timer: Export next wake up of a CPU Lina Iyer 2016-06-22 19:36 ` Lina Iyer 2016-07-26 18:26 ` Kevin Hilman 2016-07-26 18:26 ` Kevin Hilman 2016-07-27 9:14 ` Thomas Gleixner 2016-07-27 9:14 ` Thomas Gleixner 2016-07-27 15:04 ` Lina Iyer 2016-07-27 15:04 ` Lina Iyer 2016-06-22 19:36 ` [PATCH 09/14] PM / cpu_domains: Add PM Domain governor for CPUs Lina Iyer 2016-06-22 19:36 ` Lina Iyer 2016-06-22 19:36 ` [PATCH 10/14] doc / cpu_domains: Describe CPU PM domains setup and governor Lina Iyer 2016-06-22 19:36 ` Lina Iyer 2016-06-22 19:36 ` [PATCH 11/14] drivers: firmware: psci: Allow OS Initiated suspend mode Lina Iyer 2016-06-22 19:36 ` Lina Iyer 2016-06-24 4:25 ` Vikas Sajjan 2016-06-24 4:25 ` Vikas Sajjan 2016-06-24 16:53 ` Lina Iyer 2016-06-24 16:53 ` Lina Iyer 2016-06-27 10:12 ` Mark Rutland 2016-06-27 10:12 ` Mark Rutland 2016-06-28 6:07 ` Vikas Sajjan 2016-06-28 6:07 ` Vikas Sajjan 2016-06-22 19:36 ` [PATCH 12/14] drivers: firmware: psci: Support cluster idle states for OS-Initiated Lina Iyer 2016-06-22 19:36 ` Lina Iyer 2016-06-22 19:36 ` [PATCH 13/14] ARM64: dts: Add PSCI cpuidle support for MSM8916 Lina Iyer 2016-06-22 19:36 ` Lina Iyer 2016-06-22 19:36 ` [PATCH 14/14] ARM64: dts: Define CPU power domain " Lina Iyer 2016-06-22 19:36 ` Lina Iyer 2016-07-26 22:08 ` [PATCH 00/14] PM: SoC idle support using PM domains Kevin Hilman 2016-07-26 22:08 ` Kevin Hilman 2016-07-27 15:06 ` Lina Iyer 2016-07-27 15:06 ` Lina Iyer
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=1466624209-27432-3-git-send-email-lina.iyer@linaro.org \ --to=lina.iyer-qsej5fyqhm4dnm+yrofe0a@public.gmane.org \ --cc=ahaslam+renesas-rdvid1DuHRBWk0Htik3J/w@public.gmane.org \ --cc=ahaslam-rdvid1DuHRBWk0Htik3J/w@public.gmane.org \ --cc=andy.gross-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org \ --cc=devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \ --cc=geert-Td1EMuHUCqxL1ZNQvxDV9g@public.gmane.org \ --cc=k.kozlowski-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org \ --cc=khilman-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org \ --cc=linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org \ --cc=linux-arm-msm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \ --cc=linux-pm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \ --cc=lorenzo.pieralisi-5wv7dgnIgG8@public.gmane.org \ --cc=mtitinger+renesas-rdvid1DuHRBWk0Htik3J/w@public.gmane.org \ --cc=mtitinger-rdvid1DuHRBWk0Htik3J/w@public.gmane.org \ --cc=rjw-LthD3rsA81gm4RdzfppkhA@public.gmane.org \ --cc=sboyd-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org \ --cc=ulf.hansson-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.