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 }; 171