xref: /linux/Documentation/devicetree/bindings/media/i2c/ov7670.txt (revision 8c994eff8fcfe8ecb1f1dbebed25b4d7bb75be12)
1* Omnivision OV7670 CMOS sensor
2
3The Omnivision OV7670 sensor supports multiple resolutions output, such as
4CIF, SVGA, UXGA. It also can support the YUV422/420, RGB565/555 or raw RGB
5output formats.
6
7Required Properties:
8- compatible: should be "ovti,ov7670"
9- clocks: reference to the xclk input clock.
10- clock-names: should be "xclk".
11
12Required Endpoint Properties:
13- hsync-active: active state of the HSYNC signal, 0/1 for LOW/HIGH respectively.
14- vsync-active: active state of the VSYNC signal, 0/1 for LOW/HIGH respectively.
15
16Optional Properties:
17- reset-gpios: reference to the GPIO connected to the resetb pin, if any.
18  Active is low.
19- powerdown-gpios: reference to the GPIO connected to the pwdn pin, if any.
20  Active is high.
21- ov7670,pclk-hb-disable: a boolean property to suppress pixel clock output
22  signal during horizontal blankings.
23
24The device node must contain one 'port' child node with one 'endpoint' child
25sub-node for its digital output video port, in accordance with the video
26interface bindings defined in:
27Documentation/devicetree/bindings/media/video-interfaces.txt.
28
29Example:
30
31	i2c1: i2c@f0018000 {
32		ov7670: camera@21 {
33			compatible = "ovti,ov7670";
34			reg = <0x21>;
35			pinctrl-names = "default";
36			pinctrl-0 = <&pinctrl_pck0_as_isi_mck &pinctrl_sensor_power &pinctrl_sensor_reset>;
37			reset-gpios = <&pioE 11 GPIO_ACTIVE_LOW>;
38			powerdown-gpios = <&pioE 13 GPIO_ACTIVE_HIGH>;
39			clocks = <&pck0>;
40			clock-names = "xclk";
41			assigned-clocks = <&pck0>;
42			assigned-clock-rates = <25000000>;
43
44			ov7670,pclk-hb-disable;
45
46			port {
47				ov7670_0: endpoint {
48					hsync-active = <0>;
49					vsync-active = <0>;
50
51					remote-endpoint = <&isi_0>;
52				};
53			};
54		};
55	};
56