devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Peter Hilber <peter.hilber@opensynergy.com>
To: <linux-arm-kernel@lists.infradead.org>,
	<devicetree@vger.kernel.org>,
	<virtualization@lists.linux-foundation.org>,
	<virtio-dev@lists.oasis-open.org>
Cc: Rob Herring <robh+dt@kernel.org>, <linux-kernel@vger.kernel.org>,
	<sudeep.holla@arm.com>, <souvik.chakravarty@arm.com>,
	<alex.bennee@linaro.org>, <jean-philippe@linaro.org>,
	<igor.skalkin@opensynergy.com>, <mikhail.golubev@opensynergy.com>,
	<anton.yakovlev@opensynergy.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Jason Wang <jasowang@redhat.com>,
	Peter Hilber <peter.hilber@opensynergy.com>
Subject: [RFC PATCH 6/7] dt-bindings: arm: Add virtio transport for SCMI
Date: Fri, 18 Sep 2020 18:55:58 +0200	[thread overview]
Message-ID: <20200918165558.257086-1-peter.hilber@opensynergy.com> (raw)
In-Reply-To: <20200918162311.254564-1-peter.hilber@opensynergy.com>

From: Igor Skalkin <igor.skalkin@opensynergy.com>

Document the properties for arm,scmi-virtio compatible nodes. The
backing virtio SCMI device is described in patch [1].

[1] https://lists.oasis-open.org/archives/virtio-comment/202005/msg00096.html

Co-developed-by: Peter Hilber <peter.hilber@opensynergy.com>
Signed-off-by: Peter Hilber <peter.hilber@opensynergy.com>
Signed-off-by: Igor Skalkin <igor.skalkin@opensynergy.com>
---
 .../devicetree/bindings/arm/arm,scmi.txt      | 38 ++++++++++++++++++-
 1 file changed, 36 insertions(+), 2 deletions(-)

diff --git a/Documentation/devicetree/bindings/arm/arm,scmi.txt b/Documentation/devicetree/bindings/arm/arm,scmi.txt
index 55deb68230eb..844ff3c40a49 100644
--- a/Documentation/devicetree/bindings/arm/arm,scmi.txt
+++ b/Documentation/devicetree/bindings/arm/arm,scmi.txt
@@ -13,6 +13,9 @@ the device tree.
 Required properties:
 
 The scmi node with the following properties shall be under the /firmware/ node.
+Some properties are specific to a transport type.
+
+shmem-based transports (mailbox, smc/hvc):
 
 - compatible : shall be "arm,scmi" or "arm,scmi-smc" for smc/hvc transports
 - mboxes: List of phandle and mailbox channel specifiers. It should contain
@@ -21,6 +24,17 @@ The scmi node with the following properties shall be under the /firmware/ node.
 	  supported.
 - shmem : List of phandle pointing to the shared memory(SHM) area as per
 	  generic mailbox client binding.
+
+Virtio transport:
+
+- compatible : shall be "arm,scmi-virtio".
+- virtio_transport : phandle of the virtio device. This device must support one
+                     virtqueue for transmitting commands ("tx", cmdq), and,
+		     optionally, one more virtqueue for receiving notifications
+		     and delayed responses ("rx", eventq).
+
+Additional required properties:
+
 - #address-cells : should be '1' if the device has sub-nodes, maps to
 	  protocol identifier for a given sub-node.
 - #size-cells : should be '0' as 'reg' property doesn't have any size
@@ -42,7 +56,8 @@ Each protocol supported shall have a sub-node with corresponding compatible
 as described in the following sections. If the platform supports dedicated
 communication channel for a particular protocol, the 3 properties namely:
 mboxes, mbox-names and shmem shall be present in the sub-node corresponding
-to that protocol.
+to that protocol. The virtio transport does not support dedicated communication
+channels.
 
 Clock/Performance bindings for the clocks/OPPs based on SCMI Message Protocol
 ------------------------------------------------------------
@@ -106,7 +121,8 @@ Required sub-node properties:
 [4] Documentation/devicetree/bindings/sram/sram.yaml
 [5] Documentation/devicetree/bindings/reset/reset.txt
 
-Example:
+Example (mailbox transport):
+----------------------------
 
 sram@50000000 {
 	compatible = "mmio-sram";
@@ -195,3 +211,21 @@ thermal-zones {
 		...
 	};
 };
+
+Example (virtio transport):
+---------------------------
+
+virtio_mmio_scmi: virtio_mmio@4b001000 {
+	compatible = "virtio,mmio";
+	...
+};
+
+firmware {
+	...
+	scmi {
+		compatible = "arm,scmi-virtio";
+		virtio_transport = <&virtio_mmio_scmi>;
+		...
+
+The rest is similar to the mailbox transport example, when omitting the
+mailbox/shmem-specific properties.
-- 
2.25.1


  parent reply	other threads:[~2020-09-18 16:56 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-09-18 16:23 [RFC PATCH 0/7] firmware: arm_scmi: Add virtio transport Peter Hilber
2020-09-18 16:46 ` [RFC PATCH 1/7] firmware: arm_scmi, smccc, mailbox: Make shmem based transports optional Peter Hilber
2020-09-18 16:52 ` [RFC PATCH 2/7] firmware: arm_scmi: Document that max_msg is a per channel type limit Peter Hilber
2020-09-18 16:53 ` [RFC PATCH 3/7] firmware: arm_scmi: Add op to override max message # Peter Hilber
2020-09-18 16:54 ` [RFC PATCH 4/7] firmware: arm_scmi: Add per message transport data Peter Hilber
2020-09-18 16:55 ` [RFC PATCH 5/7] firmware: arm_scmi: Add xfer_init_buffers transport op Peter Hilber
2020-09-18 16:55 ` Peter Hilber [this message]
2020-09-23 20:54   ` [RFC PATCH 6/7] dt-bindings: arm: Add virtio transport for SCMI Rob Herring
2020-10-02  8:18     ` Peter Hilber
2020-09-18 16:56 ` [RFC PATCH 7/7] firmware: arm_scmi: Add virtio transport Peter Hilber

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=20200918165558.257086-1-peter.hilber@opensynergy.com \
    --to=peter.hilber@opensynergy.com \
    --cc=alex.bennee@linaro.org \
    --cc=anton.yakovlev@opensynergy.com \
    --cc=devicetree@vger.kernel.org \
    --cc=igor.skalkin@opensynergy.com \
    --cc=jasowang@redhat.com \
    --cc=jean-philippe@linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mikhail.golubev@opensynergy.com \
    --cc=mst@redhat.com \
    --cc=robh+dt@kernel.org \
    --cc=souvik.chakravarty@arm.com \
    --cc=sudeep.holla@arm.com \
    --cc=virtio-dev@lists.oasis-open.org \
    --cc=virtualization@lists.linux-foundation.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).