All of lore.kernel.org
 help / color / mirror / Atom feed
From: Lee Jones <lee.jones@linaro.org>
To: linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org
Cc: lee.jones@linaro.org, kernel@stlinux.com, mturquette@linaro.org,
	sboyd@codeaurora.org, devicetree@vger.kernel.org
Subject: [PATCH v2 4/4] clk: dt: Introduce always-on clock domain documentation
Date: Wed, 18 Feb 2015 16:15:01 +0000	[thread overview]
Message-ID: <1424276101-30137-5-git-send-email-lee.jones@linaro.org> (raw)
In-Reply-To: <1424276101-30137-1-git-send-email-lee.jones@linaro.org>

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 .../devicetree/bindings/clock/clk-domain.txt       | 35 ++++++++++++++++++++++
 1 file changed, 35 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/clock/clk-domain.txt

diff --git a/Documentation/devicetree/bindings/clock/clk-domain.txt b/Documentation/devicetree/bindings/clock/clk-domain.txt
new file mode 100644
index 0000000..b86772f5
--- /dev/null
+++ b/Documentation/devicetree/bindings/clock/clk-domain.txt
@@ -0,0 +1,35 @@
+Always-on Clock Domain
+
+Some hardware is contains bunches of clocks which must never be
+turned off.  If drivers a) fail to obtain a reference to any of
+these or b) give up a previously obtained reference during suspend,
+the common clk framework will attempt to disable them and the
+hardware can fail irrecoverably.  Usually, the only way to recover
+from these failures is to restart.
+
+To avoid either of these two scenarios from catastrophically
+disabling an otherwise perfectly healthy running system, we have
+implemented a clock domain where clocks are consumed and references
+are taken, thus preventing them from being shut down by the
+framework.
+
+We use the generic clock bindings found in:
+  Documentation/devicetree/bindings/clock/clock-bindings.txt
+
+Required properties:
+- compatible : Must be "always-on-clk-domain"
+
+Example:
+
+clk-domain {
+	compatible = "always-on-clk-domain";
+	clocks = <&clk_s_c0_flexgen CLK_EXT2F_A9>,
+		 <&clk_s_c0_flexgen CLK_COMPO_DVP>,
+		 <&clk_s_c0_flexgen CLK_MMC_1>,
+		 <&clk_s_c0_flexgen CLK_ICN_SBC>,
+		 <&clk_s_c0_flexgen CLK_ICN_LMI>,
+		 <&clk_s_c0_flexgen CLK_ICN_CPU>,
+		 <&clk_s_c0_flexgen CLK_TX_ICN_DMU>,
+		 <&clk_s_a0_flexgen CLK_IC_LMI0>,
+		 <&clk_m_a9>;
+};
-- 
1.9.1


WARNING: multiple messages have this Message-ID (diff)
From: lee.jones@linaro.org (Lee Jones)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v2 4/4] clk: dt: Introduce always-on clock domain documentation
Date: Wed, 18 Feb 2015 16:15:01 +0000	[thread overview]
Message-ID: <1424276101-30137-5-git-send-email-lee.jones@linaro.org> (raw)
In-Reply-To: <1424276101-30137-1-git-send-email-lee.jones@linaro.org>

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 .../devicetree/bindings/clock/clk-domain.txt       | 35 ++++++++++++++++++++++
 1 file changed, 35 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/clock/clk-domain.txt

diff --git a/Documentation/devicetree/bindings/clock/clk-domain.txt b/Documentation/devicetree/bindings/clock/clk-domain.txt
new file mode 100644
index 0000000..b86772f5
--- /dev/null
+++ b/Documentation/devicetree/bindings/clock/clk-domain.txt
@@ -0,0 +1,35 @@
+Always-on Clock Domain
+
+Some hardware is contains bunches of clocks which must never be
+turned off.  If drivers a) fail to obtain a reference to any of
+these or b) give up a previously obtained reference during suspend,
+the common clk framework will attempt to disable them and the
+hardware can fail irrecoverably.  Usually, the only way to recover
+from these failures is to restart.
+
+To avoid either of these two scenarios from catastrophically
+disabling an otherwise perfectly healthy running system, we have
+implemented a clock domain where clocks are consumed and references
+are taken, thus preventing them from being shut down by the
+framework.
+
+We use the generic clock bindings found in:
+  Documentation/devicetree/bindings/clock/clock-bindings.txt
+
+Required properties:
+- compatible : Must be "always-on-clk-domain"
+
+Example:
+
+clk-domain {
+	compatible = "always-on-clk-domain";
+	clocks = <&clk_s_c0_flexgen CLK_EXT2F_A9>,
+		 <&clk_s_c0_flexgen CLK_COMPO_DVP>,
+		 <&clk_s_c0_flexgen CLK_MMC_1>,
+		 <&clk_s_c0_flexgen CLK_ICN_SBC>,
+		 <&clk_s_c0_flexgen CLK_ICN_LMI>,
+		 <&clk_s_c0_flexgen CLK_ICN_CPU>,
+		 <&clk_s_c0_flexgen CLK_TX_ICN_DMU>,
+		 <&clk_s_a0_flexgen CLK_IC_LMI0>,
+		 <&clk_m_a9>;
+};
-- 
1.9.1

  parent reply	other threads:[~2015-02-18 16:15 UTC|newest]

Thread overview: 79+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-02-18 16:14 Lee Jones
2015-02-18 16:14 ` No subject Lee Jones
2015-02-18 16:14 ` (unknown), Lee Jones
2015-02-18 16:14 ` [PATCH v2 1/4] ARM: sti: stih407-family: Supply defines for CLOCKGEN A0 Lee Jones
2015-02-18 16:14   ` Lee Jones
2015-02-18 16:14 ` [PATCH v2 2/4] ARM: sti: stih407-family: Provide Clock Domain information Lee Jones
2015-02-18 16:14   ` Lee Jones
2015-02-18 16:15 ` [PATCH v2 3/4] clk: Provide an always-on clock domain framework Lee Jones
2015-02-18 16:15   ` Lee Jones
2015-02-18 16:15   ` Lee Jones
2015-02-23 10:34   ` [STLinux Kernel] " Peter Griffin
2015-02-23 10:34     ` Peter Griffin
2015-02-23 17:23   ` Mike Turquette
2015-02-23 17:23     ` Mike Turquette
2015-02-23 17:23     ` Mike Turquette
2015-02-24 11:04     ` Lee Jones
2015-02-24 11:04       ` Lee Jones
2015-02-25 15:24     ` Rob Herring
2015-02-25 15:24       ` Rob Herring
2015-02-25 15:24       ` Rob Herring
2015-02-25 15:48       ` Lee Jones
2015-02-25 15:48         ` Lee Jones
2015-02-25 15:48         ` Lee Jones
2015-02-25 18:26         ` Mike Turquette
2015-02-25 18:26           ` Mike Turquette
2015-02-25 18:26           ` Mike Turquette
2015-02-25 18:23       ` Mike Turquette
2015-02-25 18:23         ` Mike Turquette
2015-02-18 16:15 ` Lee Jones [this message]
2015-02-18 16:15   ` [PATCH v2 4/4] clk: dt: Introduce always-on clock domain documentation Lee Jones
2015-02-18 16:54   ` Rob Herring
2015-02-18 16:54     ` Rob Herring
2015-02-18 16:54     ` Rob Herring
2015-02-18 17:12     ` Lee Jones
2015-02-18 17:12       ` Lee Jones
2015-02-18 17:12       ` Lee Jones
2015-02-18 18:50       ` Rob Herring
2015-02-18 18:50         ` Rob Herring
2015-02-18 18:50         ` Rob Herring
2015-02-18 21:54         ` Lee Jones
2015-02-18 21:54           ` Lee Jones
2015-02-18 21:54           ` Lee Jones
2015-02-18 23:45           ` Rob Herring
2015-02-18 23:45             ` Rob Herring
2015-02-18 23:45             ` Rob Herring
2015-02-19 10:05             ` Lee Jones
2015-02-19 10:05               ` Lee Jones
2015-02-19 10:05               ` Lee Jones
2015-02-19  9:27           ` Geert Uytterhoeven
2015-02-19  9:27             ` Geert Uytterhoeven
2015-02-19  9:27             ` Geert Uytterhoeven
2015-02-19  9:42             ` Lee Jones
2015-02-19  9:42               ` Lee Jones
2015-02-19  9:42               ` Lee Jones
2015-02-19  9:55               ` Geert Uytterhoeven
2015-02-19  9:55                 ` Geert Uytterhoeven
2015-02-19  9:55                 ` Geert Uytterhoeven
2015-02-19 10:11                 ` Lee Jones
2015-02-19 10:11                   ` Lee Jones
2015-02-19 10:11                   ` Lee Jones
2015-02-19 10:18                   ` Geert Uytterhoeven
2015-02-19 10:18                     ` Geert Uytterhoeven
2015-02-19 10:18                     ` Geert Uytterhoeven
2015-02-19 10:28                     ` Lee Jones
2015-02-19 10:28                       ` Lee Jones
2015-02-19 10:28                       ` Lee Jones
2015-02-19 10:35                       ` Geert Uytterhoeven
2015-02-19 10:35                         ` Geert Uytterhoeven
2015-02-19 10:35                         ` Geert Uytterhoeven
2015-02-19 10:43                         ` Lee Jones
2015-02-19 10:43                           ` Lee Jones
2015-02-19 10:43                           ` Lee Jones
2015-02-19 11:01                           ` Geert Uytterhoeven
2015-02-19 11:01                             ` Geert Uytterhoeven
2015-02-19 11:01                             ` Geert Uytterhoeven
2015-02-19 11:13                             ` Lee Jones
2015-02-19 11:13                               ` Lee Jones
2015-02-19 11:13                               ` Lee Jones
2015-02-19 16:53                               ` Rob Herring

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=1424276101-30137-5-git-send-email-lee.jones@linaro.org \
    --to=lee.jones@linaro.org \
    --cc=devicetree@vger.kernel.org \
    --cc=kernel@stlinux.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mturquette@linaro.org \
    --cc=sboyd@codeaurora.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: link
Be 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.