linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Georgi Djakov <georgi.djakov@linaro.org>
To: linux-pm@vger.kernel.org
Cc: gregkh@linuxfoundation.org, rjw@rjwysocki.net,
	robh+dt@kernel.org, mturquette@baylibre.com,
	khilman@baylibre.com, vincent.guittot@linaro.org,
	skannan@codeaurora.org, bjorn.andersson@linaro.org,
	amit.kucheria@linaro.org, seansw@qti.qualcomm.com,
	daidavid1@codeaurora.org, evgreen@chromium.org,
	mark.rutland@arm.com, lorenzo.pieralisi@arm.com,
	abailon@baylibre.com, maxime.ripard@bootlin.com, arnd@arndb.de,
	thierry.reding@gmail.com, ksitaraman@nvidia.com,
	sanjayc@nvidia.com, devicetree@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org,
	linux-arm-msm@vger.kernel.org, linux-tegra@vger.kernel.org,
	georgi.djakov@linaro.org
Subject: [PATCH v10 2/7] dt-bindings: Introduce interconnect binding
Date: Tue, 27 Nov 2018 20:03:44 +0200	[thread overview]
Message-ID: <20181127180349.29997-3-georgi.djakov@linaro.org> (raw)
In-Reply-To: <20181127180349.29997-1-georgi.djakov@linaro.org>

This binding is intended to represent the relations between the interconnect
controllers (providers) and consumer device nodes. It will allow creating links
between consumers and interconnect paths (exposed by interconnect providers).

Signed-off-by: Georgi Djakov <georgi.djakov@linaro.org>
---
 .../bindings/interconnect/interconnect.txt    | 60 +++++++++++++++++++
 1 file changed, 60 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/interconnect/interconnect.txt

diff --git a/Documentation/devicetree/bindings/interconnect/interconnect.txt b/Documentation/devicetree/bindings/interconnect/interconnect.txt
new file mode 100644
index 000000000000..6775c07e1574
--- /dev/null
+++ b/Documentation/devicetree/bindings/interconnect/interconnect.txt
@@ -0,0 +1,60 @@
+Interconnect Provider Device Tree Bindings
+=========================================
+
+The purpose of this document is to define a common set of generic interconnect
+providers/consumers properties.
+
+
+= interconnect providers =
+
+The interconnect provider binding is intended to represent the interconnect
+controllers in the system. Each provider registers a set of interconnect
+nodes, which expose the interconnect related capabilities of the interconnect
+to consumer drivers. These capabilities can be throughput, latency, priority
+etc. The consumer drivers set constraints on interconnect path (or endpoints)
+depending on the use case. Interconnect providers can also be interconnect
+consumers, such as in the case where two network-on-chip fabrics interface
+directly.
+
+Required properties:
+- compatible : contains the interconnect provider compatible string
+- #interconnect-cells : number of cells in a interconnect specifier needed to
+			encode the interconnect node id
+
+Example:
+
+		snoc: interconnect@580000 {
+			compatible = "qcom,msm8916-snoc";
+			#interconnect-cells = <1>;
+			reg = <0x580000 0x14000>;
+			clock-names = "bus_clk", "bus_a_clk";
+			clocks = <&rpmcc RPM_SMD_SNOC_CLK>,
+				 <&rpmcc RPM_SMD_SNOC_A_CLK>;
+		};
+
+
+= interconnect consumers =
+
+The interconnect consumers are device nodes which dynamically express their
+bandwidth requirements along interconnect paths they are connected to. There
+can be multiple interconnect providers on a SoC and the consumer may consume
+multiple paths from different providers depending on use case and the
+components it has to interact with.
+
+Required properties:
+interconnects : Pairs of phandles and interconnect provider specifier to denote
+	        the edge source and destination ports of the interconnect path.
+
+Optional properties:
+interconnect-names : List of interconnect path name strings sorted in the same
+		     order as the interconnects property. Consumers drivers will use
+		     interconnect-names to match interconnect paths with interconnect
+		     specifier pairs.
+
+Example:
+
+	sdhci@7864000 {
+		...
+		interconnects = <&pnoc MASTER_SDCC_1 &bimc SLAVE_EBI_CH0>;
+		interconnect-names = "sdhc-ddr";
+	};

  parent reply	other threads:[~2018-11-27 18:04 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-11-27 18:03 [PATCH v10 0/8] Introduce on-chip interconnect API Georgi Djakov
2018-11-27 18:03 ` [PATCH v10 1/7] interconnect: Add generic " Georgi Djakov
2018-11-27 18:35   ` Joe Perches
2018-11-28 18:18     ` Georgi Djakov
2018-12-01  0:38   ` Evan Green
2018-12-05 15:57     ` Georgi Djakov
2018-12-05 16:16   ` Rob Herring
2018-12-07 15:24     ` Georgi Djakov
2018-11-27 18:03 ` Georgi Djakov [this message]
2018-12-01  0:38   ` [PATCH v10 2/7] dt-bindings: Introduce interconnect binding Evan Green
2018-11-27 18:03 ` [PATCH v10 3/7] interconnect: Allow endpoints translation via DT Georgi Djakov
2018-12-01  0:38   ` Evan Green
2018-12-05 15:59     ` Georgi Djakov
2018-11-27 18:03 ` [PATCH v10 4/7] interconnect: Add debugfs support Georgi Djakov
2018-11-27 18:03 ` [PATCH v10 5/7] interconnect: qcom: Add sdm845 interconnect provider driver Georgi Djakov
2018-12-01  0:39   ` Evan Green
2018-12-05 16:00     ` Georgi Djakov
2018-12-06 21:53       ` David Dai
2018-11-27 18:03 ` [PATCH v10 6/7] arm64: dts: sdm845: Add interconnect provider DT nodes Georgi Djakov
2018-12-01  0:39   ` Evan Green
2018-12-05 16:01     ` Georgi Djakov
2018-11-27 18:03 ` [PATCH v10 7/7] MAINTAINERS: add a maintainer for the interconnect API Georgi Djakov
2018-12-05 20:41 ` [PATCH v10 0/8] Introduce on-chip " Evan Green
2018-12-06 14:55   ` Greg KH
2018-12-07 10:06     ` Georgi Djakov
2018-12-10  9:04     ` Rafael J. Wysocki
2018-12-10 10:18       ` Georgi Djakov
2018-12-10 11:00         ` Rafael J. Wysocki
2018-12-10 14:50           ` Georgi Djakov
2018-12-11  6:58             ` Greg Kroah-Hartman
2018-12-17 11:17               ` Georgi Djakov
2019-01-10 14:19                 ` Georgi Djakov
2019-01-10 16:29                   ` Greg Kroah-Hartman
2019-01-10 16:34                     ` Georgi Djakov

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=20181127180349.29997-3-georgi.djakov@linaro.org \
    --to=georgi.djakov@linaro.org \
    --cc=abailon@baylibre.com \
    --cc=amit.kucheria@linaro.org \
    --cc=arnd@arndb.de \
    --cc=bjorn.andersson@linaro.org \
    --cc=daidavid1@codeaurora.org \
    --cc=devicetree@vger.kernel.org \
    --cc=evgreen@chromium.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=khilman@baylibre.com \
    --cc=ksitaraman@nvidia.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=linux-tegra@vger.kernel.org \
    --cc=lorenzo.pieralisi@arm.com \
    --cc=mark.rutland@arm.com \
    --cc=maxime.ripard@bootlin.com \
    --cc=mturquette@baylibre.com \
    --cc=rjw@rjwysocki.net \
    --cc=robh+dt@kernel.org \
    --cc=sanjayc@nvidia.com \
    --cc=seansw@qti.qualcomm.com \
    --cc=skannan@codeaurora.org \
    --cc=thierry.reding@gmail.com \
    --cc=vincent.guittot@linaro.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).