File Index
Files and directories
Sign in
FILE

renesas,isp.yaml

File preview with syntax highlighting.

linux-6.19.14/Documentation/devicetree/bindings/media/renesas,isp.yaml YAML
  1# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
  2# Copyright (C) 2021 Renesas Electronics Corp.
  3%YAML 1.2
  4---
  5$id: http://devicetree.org/schemas/media/renesas,isp.yaml#
  6$schema: http://devicetree.org/meta-schemas/core.yaml#
  7
  8title: Renesas R-Car ISP Channel Selector
  9
 10maintainers:
 11  - Niklas Söderlund <niklas.soderlund@ragnatech.se>
 12
 13description:
 14  The R-Car ISP Channel Selector provides MIPI CSI-2 VC and DT filtering
 15  capabilities for the Renesas R-Car family of devices. It is used in
 16  conjunction with the R-Car VIN and CSI-2 modules, which provides the video
 17  capture capabilities.
 18
 19properties:
 20  compatible:
 21    items:
 22      - enum:
 23          - renesas,r8a779a0-isp # V3U
 24          - renesas,r8a779g0-isp # V4H
 25          - renesas,r8a779h0-isp # V4M
 26      - const: renesas,rcar-gen4-isp # Generic R-Car Gen4
 27  reg:
 28    minItems: 1
 29    maxItems: 2
 30
 31  reg-names:
 32    minItems: 1
 33    items:
 34      - const: cs
 35      - const: core
 36
 37  interrupts:
 38    minItems: 1
 39    maxItems: 2
 40
 41  interrupt-names:
 42    minItems: 1
 43    items:
 44      - const: cs
 45      - const: core
 46
 47  clocks:
 48    minItems: 1
 49    maxItems: 2
 50
 51  clock-names:
 52    minItems: 1
 53    items:
 54      - const: cs
 55      - const: core
 56
 57  power-domains:
 58    maxItems: 1
 59
 60  resets:
 61    minItems: 1
 62    maxItems: 2
 63
 64  reset-names:
 65    minItems: 1
 66    items:
 67      - const: cs
 68      - const: core
 69
 70  renesas,vspx:
 71    $ref: /schemas/types.yaml#/definitions/phandle
 72    description:
 73      A phandle to the companion VSPX responsible for the Streaming Bridge
 74      functionality. The Streaming Bridge is responsible for feeding image
 75      and configuration data to the ISP when operating in memory-to-memory
 76      mode.
 77
 78  ports:
 79    $ref: /schemas/graph.yaml#/properties/ports
 80
 81    properties:
 82      port@0:
 83        $ref: /schemas/graph.yaml#/properties/port
 84        description:
 85          Input port node, multiple endpoints describing the connected R-Car
 86          CSI-2 receivers.
 87
 88      port@1:
 89        $ref: /schemas/graph.yaml#/properties/port
 90        description:
 91          Single endpoint describing the R-Car VIN connected to output port 0.
 92
 93      port@2:
 94        $ref: /schemas/graph.yaml#/properties/port
 95        description:
 96          Single endpoint describing the R-Car VIN connected to output port 1.
 97
 98      port@3:
 99        $ref: /schemas/graph.yaml#/properties/port
100        description:
101          Single endpoint describing the R-Car VIN connected to output port 2.
102
103      port@4:
104        $ref: /schemas/graph.yaml#/properties/port
105        description:
106          Single endpoint describing the R-Car VIN connected to output port 3.
107
108      port@5:
109        $ref: /schemas/graph.yaml#/properties/port
110        description:
111          Single endpoint describing the R-Car VIN connected to output port 4.
112
113      port@6:
114        $ref: /schemas/graph.yaml#/properties/port
115        description:
116          Single endpoint describing the R-Car VIN connected to output port 5.
117
118      port@7:
119        $ref: /schemas/graph.yaml#/properties/port
120        description:
121          Single endpoint describing the R-Car VIN connected to output port 6.
122
123      port@8:
124        $ref: /schemas/graph.yaml#/properties/port
125        description:
126          Single endpoint describing the R-Car VIN connected to output port 7.
127
128    required:
129      - port@0
130      - port@1
131      - port@2
132      - port@3
133      - port@4
134      - port@5
135      - port@6
136      - port@7
137      - port@8
138
139required:
140  - compatible
141  - reg
142  - reg-names
143  - interrupts
144  - interrupt-names
145  - clocks
146  - clock-names
147  - power-domains
148  - resets
149  - reset-names
150  - ports
151
152additionalProperties: false
153
154examples:
155  - |
156    #include <dt-bindings/clock/r8a779a0-cpg-mssr.h>
157    #include <dt-bindings/interrupt-controller/arm-gic.h>
158    #include <dt-bindings/power/r8a779a0-sysc.h>
159
160    isp1: isp@fed20000 {
161            compatible = "renesas,r8a779a0-isp", "renesas,rcar-gen4-isp";
162            reg = <0xfed20000 0x10000>, <0xfee00000 0x100000>;
163            reg-names = "cs", "core";
164            interrupts = <GIC_SPI 154 IRQ_TYPE_LEVEL_HIGH>,
165                         <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>;
166            interrupt-names = "cs", "core";
167            clocks = <&cpg CPG_MOD 613>, <&cpg CPG_MOD 17>;
168            clock-names = "cs", "core";
169            power-domains = <&sysc R8A779A0_PD_A3ISP01>;
170            resets = <&cpg 613>, <&cpg 17>;
171            reset-names = "cs", "core";
172
173            renesas,vspx = <&vspx1>;
174
175            ports {
176                    #address-cells = <1>;
177                    #size-cells = <0>;
178
179                    port@0 {
180                            #address-cells = <1>;
181                            #size-cells = <0>;
182
183                            reg = <0>;
184                            isp1csi41: endpoint@1 {
185                                    reg = <1>;
186                                    remote-endpoint = <&csi41isp1>;
187                            };
188                    };
189
190                    port@1 {
191                            reg = <1>;
192                            isp1vin08: endpoint {
193                                    remote-endpoint = <&vin08isp1>;
194                            };
195                    };
196
197                    port@2 {
198                            reg = <2>;
199                            isp1vin09: endpoint {
200                                    remote-endpoint = <&vin09isp1>;
201                            };
202                    };
203
204                    port@3 {
205                            reg = <3>;
206                            isp1vin10: endpoint {
207                                    remote-endpoint = <&vin10isp1>;
208                            };
209                    };
210
211                    port@4 {
212                            reg = <4>;
213                            isp1vin11: endpoint {
214                                    remote-endpoint = <&vin11isp1>;
215                            };
216                    };
217
218                    port@5 {
219                            reg = <5>;
220                            isp1vin12: endpoint {
221                                    remote-endpoint = <&vin12isp1>;
222                            };
223                    };
224
225                    port@6 {
226                            reg = <6>;
227                            isp1vin13: endpoint {
228                                    remote-endpoint = <&vin13isp1>;
229                            };
230                    };
231
232                    port@7 {
233                            reg = <7>;
234                            isp1vin14: endpoint {
235                                    remote-endpoint = <&vin14isp1>;
236                            };
237                    };
238
239                    port@8 {
240                            reg = <8>;
241                            isp1vin15: endpoint {
242                                    remote-endpoint = <&vin15isp1>;
243                            };
244                    };
245            };
246    };
~/ Read-only file preview.