Linux kernel mirror (for testing)
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel
os
linux
1# SPDX-License-Identifier: GPL-2.0-only
2# Copyright (C) 2020 Renesas Electronics Corp.
3%YAML 1.2
4---
5$id: http://devicetree.org/schemas/media/renesas,csi2.yaml#
6$schema: http://devicetree.org/meta-schemas/core.yaml#
7
8title: Renesas R-Car MIPI CSI-2 receiver
9
10maintainers:
11 - Niklas Söderlund <niklas.soderlund@ragnatech.se>
12
13description:
14 The R-Car CSI-2 receiver device provides MIPI CSI-2 capabilities for the
15 Renesas R-Car and RZ/G2 family of devices. It is used in conjunction with the
16 R-Car VIN module, which provides the video capture capabilities.
17
18properties:
19 compatible:
20 items:
21 - enum:
22 - renesas,r8a774a1-csi2 # RZ/G2M
23 - renesas,r8a774b1-csi2 # RZ/G2N
24 - renesas,r8a774c0-csi2 # RZ/G2E
25 - renesas,r8a774e1-csi2 # RZ/G2H
26 - renesas,r8a7795-csi2 # R-Car H3
27 - renesas,r8a7796-csi2 # R-Car M3-W
28 - renesas,r8a77961-csi2 # R-Car M3-W+
29 - renesas,r8a77965-csi2 # R-Car M3-N
30 - renesas,r8a77970-csi2 # R-Car V3M
31 - renesas,r8a77980-csi2 # R-Car V3H
32 - renesas,r8a77990-csi2 # R-Car E3
33 - renesas,r8a779a0-csi2 # R-Car V3U
34 - renesas,r8a779g0-csi2 # R-Car V4H
35 - renesas,r8a779h0-csi2 # R-Car V4M
36
37 reg:
38 maxItems: 1
39
40 interrupts:
41 maxItems: 1
42
43 clocks:
44 maxItems: 1
45
46 power-domains:
47 maxItems: 1
48
49 resets:
50 maxItems: 1
51
52 ports:
53 $ref: /schemas/graph.yaml#/properties/ports
54
55 properties:
56 port@0:
57 $ref: /schemas/graph.yaml#/$defs/port-base
58 unevaluatedProperties: false
59 description:
60 Input port node, single endpoint describing the CSI-2 transmitter.
61
62 properties:
63 endpoint:
64 $ref: video-interfaces.yaml#
65 unevaluatedProperties: false
66
67 properties:
68 clock-lanes:
69 maxItems: 1
70
71 data-lanes:
72 minItems: 1
73 maxItems: 4
74 items:
75 maximum: 4
76
77 required:
78 - clock-lanes
79 - data-lanes
80
81 port@1:
82 $ref: /schemas/graph.yaml#/properties/port
83 description:
84 Output port node, multiple endpoints describing all the R-Car VIN
85 modules connected the CSI-2 receiver.
86
87 required:
88 - port@0
89 - port@1
90
91required:
92 - compatible
93 - reg
94 - interrupts
95 - clocks
96 - power-domains
97 - resets
98 - ports
99
100additionalProperties: false
101
102examples:
103 - |
104 #include <dt-bindings/clock/r8a7796-cpg-mssr.h>
105 #include <dt-bindings/interrupt-controller/arm-gic.h>
106 #include <dt-bindings/power/r8a7796-sysc.h>
107
108 csi20: csi2@fea80000 {
109 compatible = "renesas,r8a7796-csi2";
110 reg = <0xfea80000 0x10000>;
111 interrupts = <0 184 IRQ_TYPE_LEVEL_HIGH>;
112 clocks = <&cpg CPG_MOD 714>;
113 power-domains = <&sysc R8A7796_PD_ALWAYS_ON>;
114 resets = <&cpg 714>;
115
116 ports {
117 #address-cells = <1>;
118 #size-cells = <0>;
119
120 port@0 {
121 reg = <0>;
122
123 csi20_in: endpoint {
124 clock-lanes = <0>;
125 data-lanes = <1>;
126 remote-endpoint = <&adv7482_txb>;
127 };
128 };
129
130 port@1 {
131 #address-cells = <1>;
132 #size-cells = <0>;
133
134 reg = <1>;
135
136 csi20vin0: endpoint@0 {
137 reg = <0>;
138 remote-endpoint = <&vin0csi20>;
139 };
140 csi20vin1: endpoint@1 {
141 reg = <1>;
142 remote-endpoint = <&vin1csi20>;
143 };
144 csi20vin2: endpoint@2 {
145 reg = <2>;
146 remote-endpoint = <&vin2csi20>;
147 };
148 csi20vin3: endpoint@3 {
149 reg = <3>;
150 remote-endpoint = <&vin3csi20>;
151 };
152 csi20vin4: endpoint@4 {
153 reg = <4>;
154 remote-endpoint = <&vin4csi20>;
155 };
156 csi20vin5: endpoint@5 {
157 reg = <5>;
158 remote-endpoint = <&vin5csi20>;
159 };
160 csi20vin6: endpoint@6 {
161 reg = <6>;
162 remote-endpoint = <&vin6csi20>;
163 };
164 csi20vin7: endpoint@7 {
165 reg = <7>;
166 remote-endpoint = <&vin7csi20>;
167 };
168 };
169 };
170 };