# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) %YAML 1.2 --- $id: http://devicetree.org/schemas/media/fsl,imx6-mipi-csi2.yaml# $schema: http://devicetree.org/meta-schemas/core.yaml# title: MIPI CSI-2 Receiver core in the i.MX SoC description: This is the device node for the MIPI CSI-2 Receiver core in the i.MX SoC. This is a Synopsys Designware MIPI CSI-2 host controller core combined with a D-PHY core mixed into the same register block. In addition this device consists of an i.MX-specific "CSI2IPU gasket" glue logic, also controlled from the same register block. The CSI2IPU gasket demultiplexes the four virtual channel streams from the host controller's 32-bit output image bus onto four 16-bit parallel busses to the i.MX IPU CSIs. maintainers: - Frank Li properties: compatible: const: fsl,imx6-mipi-csi2 reg: maxItems: 1 clocks: items: - description: hsi_tx (the D-PHY clock) - description: video_27m (D-PHY PLL reference clock) - description: eim_podf; clock-names: items: - const: dphy - const: ref - const: pix interrupts: items: - description: CSI-2 ERR1 irq - description: CSI-2 ERR2 irq '#address-cells': const: 1 '#size-cells': const: 0 port@0: $ref: /schemas/graph.yaml#/$defs/port-base unevaluatedProperties: false description: Input port node, single endpoint describing the CSI-2 transmitter. properties: endpoint: $ref: video-interfaces.yaml# unevaluatedProperties: false properties: clock-lanes: const: 0 data-lanes: minItems: 1 items: - const: 1 - const: 2 - const: 3 - const: 4 required: - data-lanes patternProperties: '^port@[1-4]$': $ref: /schemas/graph.yaml#/$defs/port-base unevaluatedProperties: false description: ports 1 through 4 are output ports connecting with parallel bus sink endpoint nodes and correspond to the four MIPI CSI-2 virtual channel outputs. properties: endpoint@0: $ref: video-interfaces.yaml# unevaluatedProperties: false endpoint@1: $ref: video-interfaces.yaml# unevaluatedProperties: false required: - compatible - reg - clocks - clock-names additionalProperties: false examples: - | #include mipi@21dc000 { compatible = "fsl,imx6-mipi-csi2"; reg = <0x021dc000 0x4000>; #address-cells = <1>; #size-cells = <0>; clocks = <&clks IMX6QDL_CLK_HSI_TX>, <&clks IMX6QDL_CLK_VIDEO_27M>, <&clks IMX6QDL_CLK_EIM_PODF>; clock-names = "dphy", "ref", "pix"; port@0 { reg = <0>; endpoint { remote-endpoint = <&ov5640_to_mipi_csi2>; clock-lanes = <0>; data-lanes = <1 2>; }; }; port@1 { reg = <1>; #address-cells = <1>; #size-cells = <0>; endpoint@0 { reg = <0>; remote-endpoint = <&ipu1_csi0_mux_from_mipi_vc0>; }; endpoint@1 { reg = <1>; remote-endpoint = <&ipu1_csi1_mux_from_mipi_vc0>; }; }; };