Renesas Capture Engine Unit (CEU)
----------------------------------------------

The Capture Engine Unit is the image capture interface found in the Renesas
SH Mobile, R-Mobile and RZ SoCs.

The interface supports a single parallel input with data bus width of 8 or 16
bits.

Required properties:
- compatible: Shall be one of the following values:
	"renesas,r7s72100-ceu" for CEU units found in RZ/A1H and RZ/A1M SoCs
	"renesas,r8a7740-ceu" for CEU units found in R-Mobile A1 R8A7740 SoCs
- reg: Registers address base and size.
- interrupts: The interrupt specifier.

The CEU supports a single parallel input and should contain a single 'port'
subnode with a single 'endpoint'. Connection to input devices are modeled
according to the video interfaces OF bindings specified in:
[1] Documentation/devicetree/bindings/media/video-interfaces.txt

Optional endpoint properties applicable to parallel input bus described in
the above mentioned "video-interfaces.txt" file are supported.

- hsync-active: See [1] for description. If property is not present,
  default is active high.
- vsync-active: See [1] for description. If property is not present,
  default is active high.
- bus-width: See [1] for description. Accepted values are '8' and '16'.
  If property is not present, default is '8'.
- field-even-active: See [1] for description. If property is not present,
  an even field is identified by a logic 0 (active-low signal).

Example:

The example describes the connection between the Capture Engine Unit and an
OV7670 image sensor connected to i2c1 interface.

ceu: ceu@e8210000 {
	reg = <0xe8210000 0x209c>;
	compatible = "renesas,r7s72100-ceu";
	interrupts = <GIC_SPI 332 IRQ_TYPE_LEVEL_HIGH>;

	pinctrl-names = "default";
	pinctrl-0 = <&vio_pins>;

	status = "okay";

	port {
		ceu_in: endpoint {
			remote-endpoint = <&ov7670_out>;

			hsync-active = <1>;
			vsync-active = <0>;
		};
	};
};

i2c1: i2c@fcfee400 {
	pinctrl-names = "default";
	pinctrl-0 = <&i2c1_pins>;

	status = "okay";

	clock-frequency = <100000>;

	ov7670: camera@21 {
		compatible = "ovti,ov7670";
		reg = <0x21>;

		pinctrl-names = "default";
		pinctrl-0 = <&vio_pins>;

		reset-gpios = <&port3 11 GPIO_ACTIVE_LOW>;
		powerdown-gpios = <&port3 12 GPIO_ACTIVE_HIGH>;

		port {
			ov7670_out: endpoint {
				remote-endpoint = <&ceu_in>;

				hsync-active = <1>;
				vsync-active = <0>;
			};
		};
	};
};
