summaryrefslogtreecommitdiff
path: root/Documentation/devicetree/bindings/media/renesas,ceu.txt
blob: 3e2a2652eb19a64e355c33dac6f508506150cd2a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
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>;
			};
		};
	};
};