16c08bd7aSLad Prabhakar# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 26c08bd7aSLad Prabhakar# Copyright (C) 2022 Renesas Electronics Corp. 36c08bd7aSLad Prabhakar%YAML 1.2 46c08bd7aSLad Prabhakar--- 56c08bd7aSLad Prabhakar$id: http://devicetree.org/schemas/media/renesas,rzg2l-csi2.yaml# 66c08bd7aSLad Prabhakar$schema: http://devicetree.org/meta-schemas/core.yaml# 76c08bd7aSLad Prabhakar 86c08bd7aSLad Prabhakartitle: Renesas RZ/G2L (and alike SoC's) MIPI CSI-2 receiver 96c08bd7aSLad Prabhakar 106c08bd7aSLad Prabhakarmaintainers: 116c08bd7aSLad Prabhakar - Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com> 126c08bd7aSLad Prabhakar 136c08bd7aSLad Prabhakardescription: 146c08bd7aSLad Prabhakar The CSI-2 receiver device provides MIPI CSI-2 capabilities for the Renesas RZ/G2L 156c08bd7aSLad Prabhakar (and alike SoCs). MIPI CSI-2 is part of the CRU block which is used in conjunction 166c08bd7aSLad Prabhakar with the Image Processing module, which provides the video capture capabilities. 176c08bd7aSLad Prabhakar 186c08bd7aSLad Prabhakarproperties: 196c08bd7aSLad Prabhakar compatible: 206c08bd7aSLad Prabhakar items: 216c08bd7aSLad Prabhakar - enum: 22*77b023baSBiju Das - renesas,r9a07g043-csi2 # RZ/G2UL 236c08bd7aSLad Prabhakar - renesas,r9a07g044-csi2 # RZ/G2{L,LC} 246c08bd7aSLad Prabhakar - renesas,r9a07g054-csi2 # RZ/V2L 256c08bd7aSLad Prabhakar - const: renesas,rzg2l-csi2 266c08bd7aSLad Prabhakar 276c08bd7aSLad Prabhakar reg: 286c08bd7aSLad Prabhakar maxItems: 1 296c08bd7aSLad Prabhakar 306c08bd7aSLad Prabhakar interrupts: 316c08bd7aSLad Prabhakar maxItems: 1 326c08bd7aSLad Prabhakar 336c08bd7aSLad Prabhakar clocks: 346c08bd7aSLad Prabhakar items: 356c08bd7aSLad Prabhakar - description: Internal clock for connecting CRU and MIPI 366c08bd7aSLad Prabhakar - description: CRU Main clock 376c08bd7aSLad Prabhakar - description: CRU Register access clock 386c08bd7aSLad Prabhakar 396c08bd7aSLad Prabhakar clock-names: 406c08bd7aSLad Prabhakar items: 416c08bd7aSLad Prabhakar - const: system 426c08bd7aSLad Prabhakar - const: video 436c08bd7aSLad Prabhakar - const: apb 446c08bd7aSLad Prabhakar 456c08bd7aSLad Prabhakar power-domains: 466c08bd7aSLad Prabhakar maxItems: 1 476c08bd7aSLad Prabhakar 486c08bd7aSLad Prabhakar resets: 496c08bd7aSLad Prabhakar items: 506c08bd7aSLad Prabhakar - description: CRU_PRESETN reset terminal 516c08bd7aSLad Prabhakar - description: CRU_CMN_RSTB reset terminal 526c08bd7aSLad Prabhakar 536c08bd7aSLad Prabhakar reset-names: 546c08bd7aSLad Prabhakar items: 556c08bd7aSLad Prabhakar - const: presetn 566c08bd7aSLad Prabhakar - const: cmn-rstb 576c08bd7aSLad Prabhakar 586c08bd7aSLad Prabhakar ports: 596c08bd7aSLad Prabhakar $ref: /schemas/graph.yaml#/properties/ports 606c08bd7aSLad Prabhakar 616c08bd7aSLad Prabhakar properties: 626c08bd7aSLad Prabhakar port@0: 636c08bd7aSLad Prabhakar $ref: /schemas/graph.yaml#/$defs/port-base 646c08bd7aSLad Prabhakar unevaluatedProperties: false 656c08bd7aSLad Prabhakar description: 666c08bd7aSLad Prabhakar Input port node, single endpoint describing the CSI-2 transmitter. 676c08bd7aSLad Prabhakar 686c08bd7aSLad Prabhakar properties: 696c08bd7aSLad Prabhakar endpoint: 706c08bd7aSLad Prabhakar $ref: video-interfaces.yaml# 716c08bd7aSLad Prabhakar unevaluatedProperties: false 726c08bd7aSLad Prabhakar 736c08bd7aSLad Prabhakar properties: 746c08bd7aSLad Prabhakar data-lanes: 756c08bd7aSLad Prabhakar minItems: 1 766c08bd7aSLad Prabhakar maxItems: 4 776c08bd7aSLad Prabhakar items: 786c08bd7aSLad Prabhakar maximum: 4 796c08bd7aSLad Prabhakar 806c08bd7aSLad Prabhakar required: 816c08bd7aSLad Prabhakar - clock-lanes 826c08bd7aSLad Prabhakar - data-lanes 836c08bd7aSLad Prabhakar 846c08bd7aSLad Prabhakar port@1: 856c08bd7aSLad Prabhakar $ref: /schemas/graph.yaml#/properties/port 866c08bd7aSLad Prabhakar description: 876c08bd7aSLad Prabhakar Output port node, Image Processing block connected to the CSI-2 receiver. 886c08bd7aSLad Prabhakar 896c08bd7aSLad Prabhakar required: 906c08bd7aSLad Prabhakar - port@0 916c08bd7aSLad Prabhakar - port@1 926c08bd7aSLad Prabhakar 936c08bd7aSLad Prabhakarrequired: 946c08bd7aSLad Prabhakar - compatible 956c08bd7aSLad Prabhakar - reg 966c08bd7aSLad Prabhakar - interrupts 976c08bd7aSLad Prabhakar - clocks 986c08bd7aSLad Prabhakar - clock-names 996c08bd7aSLad Prabhakar - power-domains 1006c08bd7aSLad Prabhakar - resets 1016c08bd7aSLad Prabhakar - reset-names 1026c08bd7aSLad Prabhakar - ports 1036c08bd7aSLad Prabhakar 1046c08bd7aSLad PrabhakaradditionalProperties: false 1056c08bd7aSLad Prabhakar 1066c08bd7aSLad Prabhakarexamples: 1076c08bd7aSLad Prabhakar - | 1086c08bd7aSLad Prabhakar #include <dt-bindings/clock/r9a07g044-cpg.h> 1096c08bd7aSLad Prabhakar #include <dt-bindings/interrupt-controller/arm-gic.h> 1106c08bd7aSLad Prabhakar 1116c08bd7aSLad Prabhakar csi: csi@10830400 { 1126c08bd7aSLad Prabhakar compatible = "renesas,r9a07g044-csi2", "renesas,rzg2l-csi2"; 1136c08bd7aSLad Prabhakar reg = <0x10830400 0xfc00>; 1146c08bd7aSLad Prabhakar interrupts = <GIC_SPI 166 IRQ_TYPE_LEVEL_HIGH>; 1156c08bd7aSLad Prabhakar clocks = <&cpg CPG_MOD R9A07G044_CRU_SYSCLK>, 1166c08bd7aSLad Prabhakar <&cpg CPG_MOD R9A07G044_CRU_VCLK>, 1176c08bd7aSLad Prabhakar <&cpg CPG_MOD R9A07G044_CRU_PCLK>; 1186c08bd7aSLad Prabhakar clock-names = "system", "video", "apb"; 1196c08bd7aSLad Prabhakar power-domains = <&cpg>; 1206c08bd7aSLad Prabhakar resets = <&cpg R9A07G044_CRU_PRESETN>, 1216c08bd7aSLad Prabhakar <&cpg R9A07G044_CRU_CMN_RSTB>; 1226c08bd7aSLad Prabhakar reset-names = "presetn", "cmn-rstb"; 1236c08bd7aSLad Prabhakar 1246c08bd7aSLad Prabhakar ports { 1256c08bd7aSLad Prabhakar #address-cells = <1>; 1266c08bd7aSLad Prabhakar #size-cells = <0>; 1276c08bd7aSLad Prabhakar 1286c08bd7aSLad Prabhakar port@0 { 1296c08bd7aSLad Prabhakar reg = <0>; 1306c08bd7aSLad Prabhakar 1316c08bd7aSLad Prabhakar csi2_in: endpoint { 1326c08bd7aSLad Prabhakar clock-lanes = <0>; 1336c08bd7aSLad Prabhakar data-lanes = <1 2>; 1346c08bd7aSLad Prabhakar remote-endpoint = <&ov5645_ep>; 1356c08bd7aSLad Prabhakar }; 1366c08bd7aSLad Prabhakar }; 1376c08bd7aSLad Prabhakar 1386c08bd7aSLad Prabhakar port@1 { 1396c08bd7aSLad Prabhakar #address-cells = <1>; 1406c08bd7aSLad Prabhakar #size-cells = <0>; 1416c08bd7aSLad Prabhakar 1426c08bd7aSLad Prabhakar reg = <1>; 1436c08bd7aSLad Prabhakar 1446c08bd7aSLad Prabhakar csi2cru: endpoint@0 { 1456c08bd7aSLad Prabhakar reg = <0>; 1466c08bd7aSLad Prabhakar remote-endpoint = <&crucsi2>; 1476c08bd7aSLad Prabhakar }; 1486c08bd7aSLad Prabhakar }; 1496c08bd7aSLad Prabhakar }; 1506c08bd7aSLad Prabhakar }; 151