162306a36Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0-only 262306a36Sopenharmony_ci# Copyright (C) 2020 Renesas Electronics Corp. 362306a36Sopenharmony_ci%YAML 1.2 462306a36Sopenharmony_ci--- 562306a36Sopenharmony_ci$id: http://devicetree.org/schemas/media/renesas,csi2.yaml# 662306a36Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml# 762306a36Sopenharmony_ci 862306a36Sopenharmony_cititle: Renesas R-Car MIPI CSI-2 receiver 962306a36Sopenharmony_ci 1062306a36Sopenharmony_cimaintainers: 1162306a36Sopenharmony_ci - Niklas Söderlund <niklas.soderlund@ragnatech.se> 1262306a36Sopenharmony_ci 1362306a36Sopenharmony_cidescription: 1462306a36Sopenharmony_ci The R-Car CSI-2 receiver device provides MIPI CSI-2 capabilities for the 1562306a36Sopenharmony_ci Renesas R-Car and RZ/G2 family of devices. It is used in conjunction with the 1662306a36Sopenharmony_ci R-Car VIN module, which provides the video capture capabilities. 1762306a36Sopenharmony_ci 1862306a36Sopenharmony_ciproperties: 1962306a36Sopenharmony_ci compatible: 2062306a36Sopenharmony_ci items: 2162306a36Sopenharmony_ci - enum: 2262306a36Sopenharmony_ci - renesas,r8a774a1-csi2 # RZ/G2M 2362306a36Sopenharmony_ci - renesas,r8a774b1-csi2 # RZ/G2N 2462306a36Sopenharmony_ci - renesas,r8a774c0-csi2 # RZ/G2E 2562306a36Sopenharmony_ci - renesas,r8a774e1-csi2 # RZ/G2H 2662306a36Sopenharmony_ci - renesas,r8a7795-csi2 # R-Car H3 2762306a36Sopenharmony_ci - renesas,r8a7796-csi2 # R-Car M3-W 2862306a36Sopenharmony_ci - renesas,r8a77961-csi2 # R-Car M3-W+ 2962306a36Sopenharmony_ci - renesas,r8a77965-csi2 # R-Car M3-N 3062306a36Sopenharmony_ci - renesas,r8a77970-csi2 # R-Car V3M 3162306a36Sopenharmony_ci - renesas,r8a77980-csi2 # R-Car V3H 3262306a36Sopenharmony_ci - renesas,r8a77990-csi2 # R-Car E3 3362306a36Sopenharmony_ci - renesas,r8a779a0-csi2 # R-Car V3U 3462306a36Sopenharmony_ci - renesas,r8a779g0-csi2 # R-Car V4H 3562306a36Sopenharmony_ci 3662306a36Sopenharmony_ci reg: 3762306a36Sopenharmony_ci maxItems: 1 3862306a36Sopenharmony_ci 3962306a36Sopenharmony_ci interrupts: 4062306a36Sopenharmony_ci maxItems: 1 4162306a36Sopenharmony_ci 4262306a36Sopenharmony_ci clocks: 4362306a36Sopenharmony_ci maxItems: 1 4462306a36Sopenharmony_ci 4562306a36Sopenharmony_ci power-domains: 4662306a36Sopenharmony_ci maxItems: 1 4762306a36Sopenharmony_ci 4862306a36Sopenharmony_ci resets: 4962306a36Sopenharmony_ci maxItems: 1 5062306a36Sopenharmony_ci 5162306a36Sopenharmony_ci ports: 5262306a36Sopenharmony_ci $ref: /schemas/graph.yaml#/properties/ports 5362306a36Sopenharmony_ci 5462306a36Sopenharmony_ci properties: 5562306a36Sopenharmony_ci port@0: 5662306a36Sopenharmony_ci $ref: /schemas/graph.yaml#/$defs/port-base 5762306a36Sopenharmony_ci unevaluatedProperties: false 5862306a36Sopenharmony_ci description: 5962306a36Sopenharmony_ci Input port node, single endpoint describing the CSI-2 transmitter. 6062306a36Sopenharmony_ci 6162306a36Sopenharmony_ci properties: 6262306a36Sopenharmony_ci endpoint: 6362306a36Sopenharmony_ci $ref: video-interfaces.yaml# 6462306a36Sopenharmony_ci unevaluatedProperties: false 6562306a36Sopenharmony_ci 6662306a36Sopenharmony_ci properties: 6762306a36Sopenharmony_ci clock-lanes: 6862306a36Sopenharmony_ci maxItems: 1 6962306a36Sopenharmony_ci 7062306a36Sopenharmony_ci data-lanes: 7162306a36Sopenharmony_ci minItems: 1 7262306a36Sopenharmony_ci maxItems: 4 7362306a36Sopenharmony_ci items: 7462306a36Sopenharmony_ci maximum: 4 7562306a36Sopenharmony_ci 7662306a36Sopenharmony_ci required: 7762306a36Sopenharmony_ci - clock-lanes 7862306a36Sopenharmony_ci - data-lanes 7962306a36Sopenharmony_ci 8062306a36Sopenharmony_ci port@1: 8162306a36Sopenharmony_ci $ref: /schemas/graph.yaml#/properties/port 8262306a36Sopenharmony_ci description: 8362306a36Sopenharmony_ci Output port node, multiple endpoints describing all the R-Car VIN 8462306a36Sopenharmony_ci modules connected the CSI-2 receiver. 8562306a36Sopenharmony_ci 8662306a36Sopenharmony_ci required: 8762306a36Sopenharmony_ci - port@0 8862306a36Sopenharmony_ci - port@1 8962306a36Sopenharmony_ci 9062306a36Sopenharmony_cirequired: 9162306a36Sopenharmony_ci - compatible 9262306a36Sopenharmony_ci - reg 9362306a36Sopenharmony_ci - interrupts 9462306a36Sopenharmony_ci - clocks 9562306a36Sopenharmony_ci - power-domains 9662306a36Sopenharmony_ci - resets 9762306a36Sopenharmony_ci - ports 9862306a36Sopenharmony_ci 9962306a36Sopenharmony_ciadditionalProperties: false 10062306a36Sopenharmony_ci 10162306a36Sopenharmony_ciexamples: 10262306a36Sopenharmony_ci - | 10362306a36Sopenharmony_ci #include <dt-bindings/clock/r8a7796-cpg-mssr.h> 10462306a36Sopenharmony_ci #include <dt-bindings/interrupt-controller/arm-gic.h> 10562306a36Sopenharmony_ci #include <dt-bindings/power/r8a7796-sysc.h> 10662306a36Sopenharmony_ci 10762306a36Sopenharmony_ci csi20: csi2@fea80000 { 10862306a36Sopenharmony_ci compatible = "renesas,r8a7796-csi2"; 10962306a36Sopenharmony_ci reg = <0xfea80000 0x10000>; 11062306a36Sopenharmony_ci interrupts = <0 184 IRQ_TYPE_LEVEL_HIGH>; 11162306a36Sopenharmony_ci clocks = <&cpg CPG_MOD 714>; 11262306a36Sopenharmony_ci power-domains = <&sysc R8A7796_PD_ALWAYS_ON>; 11362306a36Sopenharmony_ci resets = <&cpg 714>; 11462306a36Sopenharmony_ci 11562306a36Sopenharmony_ci ports { 11662306a36Sopenharmony_ci #address-cells = <1>; 11762306a36Sopenharmony_ci #size-cells = <0>; 11862306a36Sopenharmony_ci 11962306a36Sopenharmony_ci port@0 { 12062306a36Sopenharmony_ci reg = <0>; 12162306a36Sopenharmony_ci 12262306a36Sopenharmony_ci csi20_in: endpoint { 12362306a36Sopenharmony_ci clock-lanes = <0>; 12462306a36Sopenharmony_ci data-lanes = <1>; 12562306a36Sopenharmony_ci remote-endpoint = <&adv7482_txb>; 12662306a36Sopenharmony_ci }; 12762306a36Sopenharmony_ci }; 12862306a36Sopenharmony_ci 12962306a36Sopenharmony_ci port@1 { 13062306a36Sopenharmony_ci #address-cells = <1>; 13162306a36Sopenharmony_ci #size-cells = <0>; 13262306a36Sopenharmony_ci 13362306a36Sopenharmony_ci reg = <1>; 13462306a36Sopenharmony_ci 13562306a36Sopenharmony_ci csi20vin0: endpoint@0 { 13662306a36Sopenharmony_ci reg = <0>; 13762306a36Sopenharmony_ci remote-endpoint = <&vin0csi20>; 13862306a36Sopenharmony_ci }; 13962306a36Sopenharmony_ci csi20vin1: endpoint@1 { 14062306a36Sopenharmony_ci reg = <1>; 14162306a36Sopenharmony_ci remote-endpoint = <&vin1csi20>; 14262306a36Sopenharmony_ci }; 14362306a36Sopenharmony_ci csi20vin2: endpoint@2 { 14462306a36Sopenharmony_ci reg = <2>; 14562306a36Sopenharmony_ci remote-endpoint = <&vin2csi20>; 14662306a36Sopenharmony_ci }; 14762306a36Sopenharmony_ci csi20vin3: endpoint@3 { 14862306a36Sopenharmony_ci reg = <3>; 14962306a36Sopenharmony_ci remote-endpoint = <&vin3csi20>; 15062306a36Sopenharmony_ci }; 15162306a36Sopenharmony_ci csi20vin4: endpoint@4 { 15262306a36Sopenharmony_ci reg = <4>; 15362306a36Sopenharmony_ci remote-endpoint = <&vin4csi20>; 15462306a36Sopenharmony_ci }; 15562306a36Sopenharmony_ci csi20vin5: endpoint@5 { 15662306a36Sopenharmony_ci reg = <5>; 15762306a36Sopenharmony_ci remote-endpoint = <&vin5csi20>; 15862306a36Sopenharmony_ci }; 15962306a36Sopenharmony_ci csi20vin6: endpoint@6 { 16062306a36Sopenharmony_ci reg = <6>; 16162306a36Sopenharmony_ci remote-endpoint = <&vin6csi20>; 16262306a36Sopenharmony_ci }; 16362306a36Sopenharmony_ci csi20vin7: endpoint@7 { 16462306a36Sopenharmony_ci reg = <7>; 16562306a36Sopenharmony_ci remote-endpoint = <&vin7csi20>; 16662306a36Sopenharmony_ci }; 16762306a36Sopenharmony_ci }; 16862306a36Sopenharmony_ci }; 16962306a36Sopenharmony_ci }; 170