19536cc94SJack Zhu# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 29536cc94SJack Zhu%YAML 1.2 39536cc94SJack Zhu--- 49536cc94SJack Zhu$id: http://devicetree.org/schemas/media/cdns,csi2rx.yaml# 59536cc94SJack Zhu$schema: http://devicetree.org/meta-schemas/core.yaml# 69536cc94SJack Zhu 79536cc94SJack Zhutitle: Cadence MIPI-CSI2 RX controller 89536cc94SJack Zhu 99536cc94SJack Zhumaintainers: 109536cc94SJack Zhu - Maxime Ripard <mripard@kernel.org> 119536cc94SJack Zhu 129536cc94SJack Zhudescription: 139536cc94SJack Zhu The Cadence MIPI-CSI2 RX controller is a CSI-2 bridge supporting up to 4 CSI 149536cc94SJack Zhu lanes in input, and 4 different pixel streams in output. 159536cc94SJack Zhu 169536cc94SJack Zhuproperties: 179536cc94SJack Zhu compatible: 189536cc94SJack Zhu items: 199536cc94SJack Zhu - enum: 209536cc94SJack Zhu - starfive,jh7110-csi2rx 21*cdb17514SJai Luthra - ti,j721e-csi2rx 229536cc94SJack Zhu - const: cdns,csi2rx 239536cc94SJack Zhu 249536cc94SJack Zhu reg: 259536cc94SJack Zhu maxItems: 1 269536cc94SJack Zhu 279536cc94SJack Zhu clocks: 289536cc94SJack Zhu items: 299536cc94SJack Zhu - description: CSI2Rx system clock 309536cc94SJack Zhu - description: Gated Register bank clock for APB interface 319536cc94SJack Zhu - description: pixel Clock for Stream interface 0 329536cc94SJack Zhu - description: pixel Clock for Stream interface 1 339536cc94SJack Zhu - description: pixel Clock for Stream interface 2 349536cc94SJack Zhu - description: pixel Clock for Stream interface 3 359536cc94SJack Zhu 369536cc94SJack Zhu clock-names: 379536cc94SJack Zhu items: 389536cc94SJack Zhu - const: sys_clk 399536cc94SJack Zhu - const: p_clk 409536cc94SJack Zhu - const: pixel_if0_clk 419536cc94SJack Zhu - const: pixel_if1_clk 429536cc94SJack Zhu - const: pixel_if2_clk 439536cc94SJack Zhu - const: pixel_if3_clk 449536cc94SJack Zhu 45ae08124dSJack Zhu resets: 46ae08124dSJack Zhu items: 47ae08124dSJack Zhu - description: CSI2Rx system reset 48ae08124dSJack Zhu - description: Gated Register bank reset for APB interface 49ae08124dSJack Zhu - description: pixel reset for Stream interface 0 50ae08124dSJack Zhu - description: pixel reset for Stream interface 1 51ae08124dSJack Zhu - description: pixel reset for Stream interface 2 52ae08124dSJack Zhu - description: pixel reset for Stream interface 3 53ae08124dSJack Zhu 54ae08124dSJack Zhu reset-names: 55ae08124dSJack Zhu items: 56ae08124dSJack Zhu - const: sys 57ae08124dSJack Zhu - const: reg_bank 58ae08124dSJack Zhu - const: pixel_if0 59ae08124dSJack Zhu - const: pixel_if1 60ae08124dSJack Zhu - const: pixel_if2 61ae08124dSJack Zhu - const: pixel_if3 62ae08124dSJack Zhu 639536cc94SJack Zhu phys: 649536cc94SJack Zhu maxItems: 1 659536cc94SJack Zhu description: MIPI D-PHY 669536cc94SJack Zhu 679536cc94SJack Zhu phy-names: 689536cc94SJack Zhu items: 699536cc94SJack Zhu - const: dphy 709536cc94SJack Zhu 719536cc94SJack Zhu ports: 729536cc94SJack Zhu $ref: /schemas/graph.yaml#/properties/ports 739536cc94SJack Zhu 749536cc94SJack Zhu properties: 759536cc94SJack Zhu port@0: 769536cc94SJack Zhu $ref: /schemas/graph.yaml#/$defs/port-base 779536cc94SJack Zhu unevaluatedProperties: false 789536cc94SJack Zhu description: 799536cc94SJack Zhu Input port node, single endpoint describing the CSI-2 transmitter. 809536cc94SJack Zhu 819536cc94SJack Zhu properties: 829536cc94SJack Zhu endpoint: 839536cc94SJack Zhu $ref: video-interfaces.yaml# 849536cc94SJack Zhu unevaluatedProperties: false 859536cc94SJack Zhu 869536cc94SJack Zhu properties: 879536cc94SJack Zhu bus-type: 889536cc94SJack Zhu const: 4 899536cc94SJack Zhu 909536cc94SJack Zhu clock-lanes: 919536cc94SJack Zhu const: 0 929536cc94SJack Zhu 939536cc94SJack Zhu data-lanes: 949536cc94SJack Zhu minItems: 1 959536cc94SJack Zhu maxItems: 4 969536cc94SJack Zhu items: 979536cc94SJack Zhu maximum: 4 989536cc94SJack Zhu 999536cc94SJack Zhu required: 1009536cc94SJack Zhu - data-lanes 1019536cc94SJack Zhu 1029536cc94SJack Zhu port@1: 1039536cc94SJack Zhu $ref: /schemas/graph.yaml#/properties/port 1049536cc94SJack Zhu description: 1059536cc94SJack Zhu Stream 0 Output port node 1069536cc94SJack Zhu 1079536cc94SJack Zhu port@2: 1089536cc94SJack Zhu $ref: /schemas/graph.yaml#/properties/port 1099536cc94SJack Zhu description: 1109536cc94SJack Zhu Stream 1 Output port node 1119536cc94SJack Zhu 1129536cc94SJack Zhu port@3: 1139536cc94SJack Zhu $ref: /schemas/graph.yaml#/properties/port 1149536cc94SJack Zhu description: 1159536cc94SJack Zhu Stream 2 Output port node 1169536cc94SJack Zhu 1179536cc94SJack Zhu port@4: 1189536cc94SJack Zhu $ref: /schemas/graph.yaml#/properties/port 1199536cc94SJack Zhu description: 1209536cc94SJack Zhu Stream 3 Output port node 1219536cc94SJack Zhu 1229536cc94SJack Zhu required: 1239536cc94SJack Zhu - port@0 1249536cc94SJack Zhu 1259536cc94SJack Zhurequired: 1269536cc94SJack Zhu - compatible 1279536cc94SJack Zhu - reg 1289536cc94SJack Zhu - clocks 1299536cc94SJack Zhu - clock-names 1309536cc94SJack Zhu - ports 1319536cc94SJack Zhu 1329536cc94SJack ZhuadditionalProperties: false 1339536cc94SJack Zhu 1349536cc94SJack Zhuexamples: 1359536cc94SJack Zhu - | 1369536cc94SJack Zhu csi@d060000 { 1379536cc94SJack Zhu compatible = "starfive,jh7110-csi2rx", "cdns,csi2rx"; 1389536cc94SJack Zhu reg = <0x0d060000 0x1000>; 1399536cc94SJack Zhu clocks = <&byteclock 7>, <&byteclock 6>, 1409536cc94SJack Zhu <&coreclock 8>, <&coreclock 9>, 1419536cc94SJack Zhu <&coreclock 10>, <&coreclock 11>; 1429536cc94SJack Zhu clock-names = "sys_clk", "p_clk", 1439536cc94SJack Zhu "pixel_if0_clk", "pixel_if1_clk", 1449536cc94SJack Zhu "pixel_if2_clk", "pixel_if3_clk"; 145ae08124dSJack Zhu resets = <&bytereset 9>, <&bytereset 4>, 146ae08124dSJack Zhu <&corereset 5>, <&corereset 6>, 147ae08124dSJack Zhu <&corereset 7>, <&corereset 8>; 148ae08124dSJack Zhu reset-names = "sys", "reg_bank", 149ae08124dSJack Zhu "pixel_if0", "pixel_if1", 150ae08124dSJack Zhu "pixel_if2", "pixel_if3"; 1519536cc94SJack Zhu phys = <&csi_phy>; 1529536cc94SJack Zhu phy-names = "dphy"; 1539536cc94SJack Zhu 1549536cc94SJack Zhu ports { 1559536cc94SJack Zhu #address-cells = <1>; 1569536cc94SJack Zhu #size-cells = <0>; 1579536cc94SJack Zhu 1589536cc94SJack Zhu port@0 { 1599536cc94SJack Zhu reg = <0>; 1609536cc94SJack Zhu 1619536cc94SJack Zhu csi2rx_in_sensor: endpoint { 1629536cc94SJack Zhu remote-endpoint = <&sensor_out_csi2rx>; 1639536cc94SJack Zhu clock-lanes = <0>; 1649536cc94SJack Zhu data-lanes = <1 2>; 1659536cc94SJack Zhu }; 1669536cc94SJack Zhu }; 1679536cc94SJack Zhu 1689536cc94SJack Zhu port@1 { 1699536cc94SJack Zhu reg = <1>; 1709536cc94SJack Zhu 1719536cc94SJack Zhu csi2rx_out_grabber0: endpoint { 1729536cc94SJack Zhu remote-endpoint = <&grabber0_in_csi2rx>; 1739536cc94SJack Zhu }; 1749536cc94SJack Zhu }; 1759536cc94SJack Zhu 1769536cc94SJack Zhu port@2 { 1779536cc94SJack Zhu reg = <2>; 1789536cc94SJack Zhu 1799536cc94SJack Zhu csi2rx_out_grabber1: endpoint { 1809536cc94SJack Zhu remote-endpoint = <&grabber1_in_csi2rx>; 1819536cc94SJack Zhu }; 1829536cc94SJack Zhu }; 1839536cc94SJack Zhu 1849536cc94SJack Zhu port@3 { 1859536cc94SJack Zhu reg = <3>; 1869536cc94SJack Zhu 1879536cc94SJack Zhu csi2rx_out_grabber2: endpoint { 1889536cc94SJack Zhu remote-endpoint = <&grabber2_in_csi2rx>; 1899536cc94SJack Zhu }; 1909536cc94SJack Zhu }; 1919536cc94SJack Zhu 1929536cc94SJack Zhu port@4 { 1939536cc94SJack Zhu reg = <4>; 1949536cc94SJack Zhu 1959536cc94SJack Zhu csi2rx_out_grabber3: endpoint { 1969536cc94SJack Zhu remote-endpoint = <&grabber3_in_csi2rx>; 1979536cc94SJack Zhu }; 1989536cc94SJack Zhu }; 1999536cc94SJack Zhu }; 2009536cc94SJack Zhu }; 2019536cc94SJack Zhu 2029536cc94SJack Zhu... 203