0001 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
0002 # Copyright (C) 2021 Renesas Electronics Corp.
0003 %YAML 1.2
0004 ---
0005 $id: http://devicetree.org/schemas/media/renesas,isp.yaml#
0006 $schema: http://devicetree.org/meta-schemas/core.yaml#
0007
0008 title: Renesas R-Car ISP Channel Selector
0009
0010 maintainers:
0011 - Niklas Söderlund <niklas.soderlund@ragnatech.se>
0012
0013 description:
0014 The R-Car ISP Channel Selector provides MIPI CSI-2 VC and DT filtering
0015 capabilities for the Renesas R-Car family of devices. It is used in
0016 conjunction with the R-Car VIN and CSI-2 modules, which provides the video
0017 capture capabilities.
0018
0019 properties:
0020 compatible:
0021 items:
0022 - enum:
0023 - renesas,r8a779a0-isp # V3U
0024 reg:
0025 maxItems: 1
0026
0027 interrupts:
0028 maxItems: 1
0029
0030 clocks:
0031 maxItems: 1
0032
0033 power-domains:
0034 maxItems: 1
0035
0036 resets:
0037 maxItems: 1
0038
0039 ports:
0040 $ref: /schemas/graph.yaml#/properties/ports
0041
0042 properties:
0043 port@0:
0044 $ref: /schemas/graph.yaml#/properties/port
0045 description:
0046 Input port node, multiple endpoints describing the connected R-Car
0047 CSI-2 receivers.
0048
0049 port@1:
0050 $ref: /schemas/graph.yaml#/properties/port
0051 description:
0052 Single endpoint describing the R-Car VIN connected to output port 0.
0053
0054 port@2:
0055 $ref: /schemas/graph.yaml#/properties/port
0056 description:
0057 Single endpoint describing the R-Car VIN connected to output port 1.
0058
0059 port@3:
0060 $ref: /schemas/graph.yaml#/properties/port
0061 description:
0062 Single endpoint describing the R-Car VIN connected to output port 2.
0063
0064 port@4:
0065 $ref: /schemas/graph.yaml#/properties/port
0066 description:
0067 Single endpoint describing the R-Car VIN connected to output port 3.
0068
0069 port@5:
0070 $ref: /schemas/graph.yaml#/properties/port
0071 description:
0072 Single endpoint describing the R-Car VIN connected to output port 4.
0073
0074 port@6:
0075 $ref: /schemas/graph.yaml#/properties/port
0076 description:
0077 Single endpoint describing the R-Car VIN connected to output port 5.
0078
0079 port@7:
0080 $ref: /schemas/graph.yaml#/properties/port
0081 description:
0082 Single endpoint describing the R-Car VIN connected to output port 6.
0083
0084 port@8:
0085 $ref: /schemas/graph.yaml#/properties/port
0086 description:
0087 Single endpoint describing the R-Car VIN connected to output port 7.
0088
0089 required:
0090 - port@0
0091 - port@1
0092 - port@2
0093 - port@3
0094 - port@4
0095 - port@5
0096 - port@6
0097 - port@7
0098 - port@8
0099
0100 required:
0101 - compatible
0102 - reg
0103 - interrupts
0104 - clocks
0105 - power-domains
0106 - resets
0107 - ports
0108
0109 additionalProperties: false
0110
0111 examples:
0112 - |
0113 #include <dt-bindings/clock/r8a779a0-cpg-mssr.h>
0114 #include <dt-bindings/interrupt-controller/arm-gic.h>
0115 #include <dt-bindings/power/r8a779a0-sysc.h>
0116
0117 isp1: isp@fed20000 {
0118 compatible = "renesas,r8a779a0-isp";
0119 reg = <0xfed20000 0x10000>;
0120 interrupts = <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>;
0121 clocks = <&cpg CPG_MOD 613>;
0122 power-domains = <&sysc R8A779A0_PD_A3ISP01>;
0123 resets = <&cpg 613>;
0124
0125 ports {
0126 #address-cells = <1>;
0127 #size-cells = <0>;
0128
0129 port@0 {
0130 #address-cells = <1>;
0131 #size-cells = <0>;
0132
0133 reg = <0>;
0134 isp1csi41: endpoint@1 {
0135 reg = <1>;
0136 remote-endpoint = <&csi41isp1>;
0137 };
0138 };
0139
0140 port@1 {
0141 reg = <1>;
0142 isp1vin08: endpoint {
0143 remote-endpoint = <&vin08isp1>;
0144 };
0145 };
0146
0147 port@2 {
0148 reg = <2>;
0149 isp1vin09: endpoint {
0150 remote-endpoint = <&vin09isp1>;
0151 };
0152 };
0153
0154 port@3 {
0155 reg = <3>;
0156 isp1vin10: endpoint {
0157 remote-endpoint = <&vin10isp1>;
0158 };
0159 };
0160
0161 port@4 {
0162 reg = <4>;
0163 isp1vin11: endpoint {
0164 remote-endpoint = <&vin11isp1>;
0165 };
0166 };
0167
0168 port@5 {
0169 reg = <5>;
0170 isp1vin12: endpoint {
0171 remote-endpoint = <&vin12isp1>;
0172 };
0173 };
0174
0175 port@6 {
0176 reg = <6>;
0177 isp1vin13: endpoint {
0178 remote-endpoint = <&vin13isp1>;
0179 };
0180 };
0181
0182 port@7 {
0183 reg = <7>;
0184 isp1vin14: endpoint {
0185 remote-endpoint = <&vin14isp1>;
0186 };
0187 };
0188
0189 port@8 {
0190 reg = <8>;
0191 isp1vin15: endpoint {
0192 remote-endpoint = <&vin15isp1>;
0193 };
0194 };
0195 };
0196 };