From: "Niklas Söderlund" <niklas.soderlund+renesas@ragnatech.se>
To: Laurent Pinchart <laurent.pinchart@ideasonboard.com>,
Hans Verkuil <hverkuil@xs4all.nl>
Cc: linux-media@vger.kernel.org, linux-renesas-soc@vger.kernel.org,
tomoharu.fukawa.eb@renesas.com,
"Sakari Ailus" <sakari.ailus@linux.intel.com>,
"Geert Uytterhoeven" <geert@linux-m68k.org>,
"Niklas Söderlund" <niklas.soderlund+renesas@ragnatech.se>
Subject: [PATCHv2 30/32] media: rcar-vin: add Gen3 devicetree bindings documentation
Date: Sat, 12 Nov 2016 14:12:14 +0100 [thread overview]
Message-ID: <20161112131216.22635-31-niklas.soderlund+renesas@ragnatech.se> (raw)
In-Reply-To: <20161112131216.22635-1-niklas.soderlund+renesas@ragnatech.se>
Document the Gen3 devicetree bindings. The new bindings are all handled
in the port@1 node, if an endpoint is described as on Gen2 in port@0 the
driver will work in Gen2 mode and this is supported on Gen3. The new
CSI-2 video sources are only supported on Gen3.
Signed-off-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
---
.../devicetree/bindings/media/rcar_vin.txt | 116 +++++++++++++++++++--
1 file changed, 106 insertions(+), 10 deletions(-)
diff --git a/Documentation/devicetree/bindings/media/rcar_vin.txt b/Documentation/devicetree/bindings/media/rcar_vin.txt
index 6a4e61c..64b03f1 100644
--- a/Documentation/devicetree/bindings/media/rcar_vin.txt
+++ b/Documentation/devicetree/bindings/media/rcar_vin.txt
@@ -2,8 +2,12 @@ Renesas RCar Video Input driver (rcar_vin)
------------------------------------------
The rcar_vin device provides video input capabilities for the Renesas R-Car
-family of devices. The current blocks are always slaves and suppot one input
-channel which can be either RGB, YUYV or BT656.
+family of devices.
+
+On Gen2 the current blocks are always slaves and support one input channel
+which can be either RGB, YUYV or BT656. On Gen3 the current blocks are
+always slaves and support multiple input channels which can be either RGB,
+YUVU, BT656 or CSI-2.
- compatible: Must be one or more of the following
- "renesas,vin-r8a7795" for the R8A7795 device
@@ -28,7 +32,7 @@ channel which can be either RGB, YUYV or BT656.
Additionally, an alias named vinX will need to be created to specify
which video input device this is.
-The per-board settings:
+The per-board settings Gen2:
- port sub-node describing a single endpoint connected to the vin
as described in video-interfaces.txt[1]. Only the first one will
be considered as each vin interface has one input port.
@@ -36,13 +40,22 @@ The per-board settings:
These settings are used to work out video input format and widths
into the system.
+The per-board settings Gen3:
+
+- ports
+ - port@0 - Digital video source (same as port node on Gen2)
+ - port@1 - CSI-2 video sources
+ -reg 0 - sub-node describing the endpoint which is CSI20
+ -reg 1 - sub-node describing the endpoint which is CSI21
+ -reg 2 - sub-node describing the endpoint which is CSI40
+ -reg 3 - sub-node describing the endpoint which is CSI41
-Device node example
--------------------
+Device node example Gen2
+------------------------
- aliases {
- vin0 = &vin0;
- };
+ aliases {
+ vin0 = &vin0;
+ };
vin0: vin@0xe6ef0000 {
compatible = "renesas,vin-r8a7790", "renesas,rcar-gen2-vin";
@@ -52,8 +65,8 @@ Device node example
status = "disabled";
};
-Board setup example (vin1 composite video input)
-------------------------------------------------
+Board setup example Gen2 (vin1 composite video input)
+-----------------------------------------------------
&i2c2 {
status = "ok";
@@ -92,6 +105,89 @@ Board setup example (vin1 composite video input)
};
};
+Device node example Gen3
+------------------------
+
+ aliases {
+ vin0 = &vin0;
+ };
+
+ vin1: video@e6ef1000 {
+ compatible = "renesas,vin-r8a7796";
+ reg = <0 0xe6ef1000 0 0x1000>;
+ interrupts = <0 189 IRQ_TYPE_LEVEL_HIGH>;
+ clocks = <&cpg CPG_MOD 810>;
+ power-domains = <&sysc R8A7796_PD_ALWAYS_ON>;
+ status = "disabled";
+
+ ports {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ port@1 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ reg = <1>;
+
+ vin1csi20: endpoint@0 {
+ reg = <0>;
+ remote-endpoint= <&csi20vin1>;
+ };
+ };
+ };
+ };
+
+ csi20: csi2@fea80000 {
+ compatible = "renesas,r8a7796-csi2";
+ reg = <0 0xfea80000 0 0x10000>;
+ interrupts = <0 184 IRQ_TYPE_LEVEL_HIGH>;
+ clocks = <&cpg CPG_MOD 714>;
+ power-domains = <&sysc R8A7796_PD_ALWAYS_ON>;
+ status = "disabled";
+
+ ports {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ port@1 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ reg = <1>;
+
+ csi20vin1: endpoint@1 {
+ reg = <1>;
+ remote-endpoint = <&vin1csi20>;
+ };
+ };
+ };
+ };
+
+Board setup example Gen3 (CSI-2)
+--------------------------------
+
+ &vin0 {
+ status = "okay";
+ };
+
+ csi20 {
+ status = "okay";
+
+ ports {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ port@0 {
+ reg = <0>;
+ csi20_in: endpoint@0 {
+ clock-lanes = <0>;
+ data-lanes = <1>;
+ remote-endpoint = <&adv7482_txb>;
+ };
+ };
+ };
+ };
[1] video-interfaces.txt common video media interface
--
2.10.2
next prev parent reply other threads:[~2016-11-12 13:13 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-11-12 13:11 [PATCHv2 00/32] rcar-vin: Add Gen3 with media controller support Niklas Söderlund
2016-11-12 13:11 ` [PATCHv2 01/32] media: entity: Add has_route entity operation Niklas Söderlund
2016-11-12 13:11 ` [PATCHv2 02/32] media: entity: Add media_entity_has_route() function Niklas Söderlund
2016-11-12 13:11 ` [PATCHv2 03/32] media: rcar-vin: reset bytesperline and sizeimage when resetting format Niklas Söderlund
2016-11-12 13:11 ` [PATCHv2 04/32] media: rcar-vin: use rvin_reset_format() in S_DV_TIMINGS Niklas Söderlund
2016-11-12 13:11 ` [PATCHv2 05/32] media: rcar-vin: fix how pads are handled for v4l2 subdeivce operations Niklas Söderlund
2016-11-12 13:11 ` [PATCHv2 06/32] media: rcar-vin: fix standard in input enumeration Niklas Söderlund
2016-11-12 13:11 ` [PATCHv2 07/32] media: rcar-vin: add wrapper to get rvin_graph_entity Niklas Söderlund
2016-11-12 13:11 ` [PATCHv2 08/32] media: rcar-vin: move subdev source and sink pad index to rvin_graph_entity Niklas Söderlund
2016-11-12 13:11 ` [PATCHv2 09/32] media: rcar-vin: move pad number discovery to async complete handler Niklas Söderlund
2016-11-12 13:11 ` [PATCHv2 10/32] media: rcar-vin: use pad information when verifying media bus format Niklas Söderlund
2016-11-12 13:11 ` [PATCHv2 11/32] media: rcar-vin: refactor pad lookup code Niklas Söderlund
2016-11-12 13:11 ` [PATCHv2 12/32] media: rcar-vin: split rvin_s_fmt_vid_cap() Niklas Söderlund
2016-11-12 13:11 ` [PATCHv2 13/32] media: rcar-vin: register the video device early Niklas Söderlund
2016-11-12 13:11 ` [PATCHv2 14/32] media: rcar-vin: move chip information to own struct Niklas Söderlund
2016-11-12 13:11 ` [PATCHv2 15/32] media: rcar-vin: move max width and height information to chip information Niklas Söderlund
2016-11-12 13:12 ` [PATCHv2 16/32] media: rcar-vin: change name of video device Niklas Söderlund
2016-11-12 13:12 ` [PATCHv2 17/32] media: rcar-vin: clarify error message from the digital notifier Niklas Söderlund
2016-11-12 13:12 ` [PATCHv2 18/32] media: rcar-vin: enable Gen3 hardware configuration Niklas Söderlund
2016-11-12 13:12 ` [PATCHv2 19/32] media: rcar-vin: add functions to manipulate Gen3 CHSEL value Niklas Söderlund
2016-11-12 13:12 ` [PATCHv2 20/32] media: rcar-vin: expose a sink pad if we are on Gen3 Niklas Söderlund
2016-11-12 13:12 ` [PATCHv2 21/32] media: rcar-vin: add group allocator functions Niklas Söderlund
2016-11-12 13:12 ` [PATCHv2 22/32] media: rcar-vin: add chsel information to rvin_info Niklas Söderlund
2016-11-12 13:12 ` [PATCHv2 23/32] media: rcar-vin: parse Gen3 OF and setup media graph Niklas Söderlund
2016-11-12 13:12 ` [PATCHv2 24/32] media: rcar-vin: add link notify for Gen3 Niklas Söderlund
2016-11-12 13:12 ` [PATCHv2 25/32] media: rcar-vin: enable CSI2 group subdevices in lookup helpers Niklas Söderlund
2016-11-12 13:12 ` [PATCHv2 26/32] media: rcar-vin: add helpers for bridge Niklas Söderlund
2016-11-12 13:12 ` [PATCHv2 27/32] media: rcar-vin: start/stop the CSI2 bridge stream Niklas Söderlund
2016-11-12 13:12 ` [PATCHv2 28/32] media: rcar-vin: propagate format to bridge Niklas Söderlund
2016-11-12 13:12 ` [PATCHv2 29/32] media: rcar-vin: attach to CSI2 group when the video device is opened Niklas Söderlund
2016-11-12 13:12 ` Niklas Söderlund [this message]
2016-11-12 13:12 ` [PATCHv2 31/32] media: rcar-vin: enable support for r8a7795 Niklas Söderlund
2016-11-12 13:12 ` [PATCHv2 32/32] media: rcar-vin: enable support for r8a7796 Niklas Söderlund
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=20161112131216.22635-31-niklas.soderlund+renesas@ragnatech.se \
--to=niklas.soderlund+renesas@ragnatech.se \
--cc=geert@linux-m68k.org \
--cc=hverkuil@xs4all.nl \
--cc=laurent.pinchart@ideasonboard.com \
--cc=linux-media@vger.kernel.org \
--cc=linux-renesas-soc@vger.kernel.org \
--cc=sakari.ailus@linux.intel.com \
--cc=tomoharu.fukawa.eb@renesas.com \
/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).