[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20190318100605.29120-2-benjamin.gaignard@st.com>
Date: Mon, 18 Mar 2019 11:05:59 +0100
From: Benjamin Gaignard <benjamin.gaignard@...com>
To: <broonie@...nel.org>, <robh@...nel.org>, <arnd@...db.de>,
<shawnguo@...nel.org>, <s.hauer@...gutronix.de>,
<fabio.estevam@....com>
CC: <linux-kernel@...r.kernel.org>, <loic.pallardy@...com>,
<benjamin.gaignard@...aro.org>, <kernel@...gutronix.de>,
<linux-imx@....com>, <linux-arm-kernel@...ts.infradead.org>,
<gregkh@...uxfoundation.org>,
Benjamin Gaignard <benjamin.gaignard@...com>
Subject: [RESEND PATCH 1/7] devicetree: bindings: Document domains controller bindings
Document commons domains controller bindings for controller
and client devices.
Signed-off-by: Benjamin Gaignard <benjamin.gaignard@...com>
---
.../bindings/bus/domains/domainsctrl.txt | 55 ++++++++++++++++++++++
1 file changed, 55 insertions(+)
create mode 100644 Documentation/devicetree/bindings/bus/domains/domainsctrl.txt
diff --git a/Documentation/devicetree/bindings/bus/domains/domainsctrl.txt b/Documentation/devicetree/bindings/bus/domains/domainsctrl.txt
new file mode 100644
index 000000000000..f82e5e11ea64
--- /dev/null
+++ b/Documentation/devicetree/bindings/bus/domains/domainsctrl.txt
@@ -0,0 +1,55 @@
+Common Domains Controller bindings properties
+
+Bus domains controllers allow to divided system on chip into multiple domains
+that can be used to select by who hardware blocks could be accessed.
+A domain could be a cluster of CPUs (or coprocessors), a range of addresses or
+a group of hardware blocks.
+
+This device tree bindings can be used to bind bus domain consumer devices with
+their bus domains provided by bus domains controllers. A bus domain provider
+can be represented by any node in the device tree and can provide one or more
+bus domains. A consumer node can refer to the provider by a phandle and a set
+of phandle arguments of length specified by the #domainctrl-cells property in
+the bus domain provider node.
+
+==Bus domain provider==
+
+Required properties:
+- #domainctrl-cells : Number of cells in a bus domain specifier;
+ Can be any value as specified by device tree binding
+ documentation of a particular provider.
+
+==Bus domain consumer==
+
+Required properties:
+- domainsctrl-X : A list of bus domain specifiers, as defined by
+ bindings of the bus domain controller that is the
+ bus domain provider.
+
+Optional properties:
+- domainsctrl-names : A list of bus domain name string sorted in the same
+ order as the domainsctrl-X proprerties. Consumer
+ drivers will use domainsctrl-names to match bus
+ domains with bus domains specifiers.
+ Note that "default" and "unbind" are reserved names
+ used by the framework.
+
+Example of usage with:
+- a domains controller with a 2 parameters cell
+- a domains controller with a 3 parameters cell
+- a client device node using the both controllers and 2 configurations
+ named "default" and "unbind"
+
+ctrl0: ctrl@0 {
+ #domainctrl-cells = <2>;
+};
+
+ctrl1: ctrl@1 {
+ #domainctrl-cells = <3>;
+};
+
+foo@0 {
+ domains-names = "default", "unbind";
+ domainctrl-0 = <&ctrl0 1 2>, <&ctrl1 3 4 5>;
+ domainctrl-1 = <&ctrl0 6 7>, <&ctrl1 8 9 0>;
+};
--
2.15.0
Powered by blists - more mailing lists