Freescale i.MX7 CMOS Sensor Interface
=====================================

csi node
--------

This is device node for the CMOS Sensor Interface (CSI) which enables the chip
to connect directly to external CMOS image sensors.

Required properties:

- compatible    : "fsl,imx7-csi" or "fsl,imx6ul-csi";
- reg           : base address and length of the register set for the device;
- interrupts    : should contain CSI interrupt;
- clocks        : list of clock specifiers, see
        Documentation/devicetree/bindings/clock/clock-bindings.txt for details;
- clock-names   : must contain "mclk";

The device node shall contain one 'port' child node with one child 'endpoint'
node, according to the bindings defined in:
Documentation/devicetree/bindings/media/video-interfaces.txt.

In the following example a remote endpoint is a video multiplexer.

example:

                csi: csi@30710000 {
                        #address-cells = <1>;
                        #size-cells = <0>;

                        compatible = "fsl,imx7-csi";
                        reg = <0x30710000 0x10000>;
                        interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>;
                        clocks = <&clks IMX7D_CSI_MCLK_ROOT_CLK>;
                        clock-names = "mclk";

                        port {
                                csi_from_csi_mux: endpoint {
                                        remote-endpoint = <&csi_mux_to_csi>;
                                };
                        };
                };
