1 Renesas R-Car Video Input driver (rcar_vin)
2 -------------------------------------------
4 The rcar_vin device provides video input capabilities for the Renesas R-Car
7 Each VIN instance has a single parallel input that supports RGB and YUV video,
8 with both external synchronization and BT.656 synchronization for the latter.
9 Depending on the instance the VIN input is connected to external SoC pins, or
10 on Gen3 and RZ/G2 platforms to a CSI-2 receiver.
12 - compatible: Must be one or more of the following
13 - "renesas,vin-r8a7743" for the R8A7743 device
14 - "renesas,vin-r8a7744" for the R8A7744 device
15 - "renesas,vin-r8a7745" for the R8A7745 device
16 - "renesas,vin-r8a77470" for the R8A77470 device
17 - "renesas,vin-r8a774a1" for the R8A774A1 device
18 - "renesas,vin-r8a774b1" for the R8A774B1 device
19 - "renesas,vin-r8a774c0" for the R8A774C0 device
20 - "renesas,vin-r8a7778" for the R8A7778 device
21 - "renesas,vin-r8a7779" for the R8A7779 device
22 - "renesas,vin-r8a7790" for the R8A7790 device
23 - "renesas,vin-r8a7791" for the R8A7791 device
24 - "renesas,vin-r8a7792" for the R8A7792 device
25 - "renesas,vin-r8a7793" for the R8A7793 device
26 - "renesas,vin-r8a7794" for the R8A7794 device
27 - "renesas,vin-r8a7795" for the R8A7795 device
28 - "renesas,vin-r8a7796" for the R8A7796 device
29 - "renesas,vin-r8a77965" for the R8A77965 device
30 - "renesas,vin-r8a77970" for the R8A77970 device
31 - "renesas,vin-r8a77980" for the R8A77980 device
32 - "renesas,vin-r8a77990" for the R8A77990 device
33 - "renesas,vin-r8a77995" for the R8A77995 device
34 - "renesas,rcar-gen2-vin" for a generic R-Car Gen2 or RZ/G1 compatible
37 When compatible with the generic version nodes must list the
38 SoC-specific version corresponding to the platform first
39 followed by the generic version.
41 - reg: the register base and size for the device registers
42 - interrupts: the interrupt for the device
43 - clocks: Reference to the parent clock
45 The per-board settings for Gen2 and RZ/G1 platforms:
47 - port - sub-node describing a single endpoint connected to the VIN
48 from external SoC pins as described in video-interfaces.txt[1].
49 Only the first one will be considered as each vin interface has one
52 - Optional properties for endpoint nodes:
53 - hsync-active: see [1] for description. Default is active high.
54 - vsync-active: see [1] for description. Default is active high.
55 If both HSYNC and VSYNC polarities are not specified, embedded
56 synchronization is selected.
57 - field-active-even: see [1] for description. Default is active high.
58 - bus-width: see [1] for description. The selected bus width depends on
59 the SoC type and selected input image format.
60 Valid values are: 8, 10, 12, 16, 24 and 32.
61 - data-shift: see [1] for description. Valid values are 0 and 8.
62 - data-enable-active: polarity of CLKENB signal, see [1] for
63 description. Default is active high.
65 The per-board settings for Gen3 and RZ/G2 platforms:
67 Gen3 and RZ/G2 platforms can support both a single connected parallel input
68 source from external SoC pins (port@0) and/or multiple parallel input sources
69 from local SoC CSI-2 receivers (port@1) depending on SoC.
71 - renesas,id - ID number of the VIN, VINx in the documentation.
73 - port@0 - sub-node describing a single endpoint connected to the VIN
74 from external SoC pins as described in video-interfaces.txt[1].
75 Describing more than one endpoint in port@0 is invalid. Only VIN
76 instances that are connected to external pins should have port@0.
78 Endpoint nodes of port@0 support the optional properties listed in
79 the Gen2 per-board settings description.
81 - port@1 - sub-nodes describing one or more endpoints connected to
82 the VIN from local SoC CSI-2 receivers. The endpoint numbers must
83 use the following schema.
85 - endpoint@0 - sub-node describing the endpoint connected to CSI20
86 - endpoint@1 - sub-node describing the endpoint connected to CSI21
87 - endpoint@2 - sub-node describing the endpoint connected to CSI40
88 - endpoint@3 - sub-node describing the endpoint connected to CSI41
90 Endpoint nodes of port@1 do not support any optional endpoint property.
92 Device node example for Gen2 platforms
93 --------------------------------------
100 compatible = "renesas,vin-r8a7790", "renesas,rcar-gen2-vin";
101 clocks = <&mstp8_clks R8A7790_CLK_VIN0>;
102 reg = <0 0xe6ef0000 0 0x1000>;
103 interrupts = <0 188 IRQ_TYPE_LEVEL_HIGH>;
107 Board setup example for Gen2 platforms (vin1 composite video input)
108 -------------------------------------------------------------------
112 pinctrl-0 = <&i2c2_pins>;
113 pinctrl-names = "default";
116 compatible = "adi,adv7180";
123 remote-endpoint = <&vin1ep0>;
129 /* composite video input */
131 pinctrl-0 = <&vin1_pins>;
132 pinctrl-names = "default";
138 remote-endpoint = <&adv7180>;
144 Device node example for Gen3 platforms
145 --------------------------------------
147 vin0: video@e6ef0000 {
148 compatible = "renesas,vin-r8a7795";
149 reg = <0 0xe6ef0000 0 0x1000>;
150 interrupts = <GIC_SPI 188 IRQ_TYPE_LEVEL_HIGH>;
151 clocks = <&cpg CPG_MOD 811>;
152 power-domains = <&sysc R8A7795_PD_ALWAYS_ON>;
157 #address-cells = <1>;
161 #address-cells = <1>;
166 vin0csi20: endpoint@0 {
168 remote-endpoint= <&csi20vin0>;
170 vin0csi21: endpoint@1 {
172 remote-endpoint= <&csi21vin0>;
174 vin0csi40: endpoint@2 {
176 remote-endpoint= <&csi40vin0>;
182 csi20: csi2@fea80000 {
183 compatible = "renesas,r8a7795-csi2";
184 reg = <0 0xfea80000 0 0x10000>;
185 interrupts = <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>;
186 clocks = <&cpg CPG_MOD 714>;
187 power-domains = <&sysc R8A7795_PD_ALWAYS_ON>;
191 #address-cells = <1>;
199 remote-endpoint = <&adv7482_txb>;
204 #address-cells = <1>;
209 csi20vin0: endpoint@0 {
211 remote-endpoint = <&vin0csi20>;
217 [1] video-interfaces.txt common video media interface