Linux 6.7-rc7
[linux-modified.git] / Documentation / devicetree / bindings / media / i2c / ovti,ov4689.yaml
1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2 %YAML 1.2
3 ---
4 $id: http://devicetree.org/schemas/media/i2c/ovti,ov4689.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: Omnivision OV4689 CMOS
8
9 maintainers:
10   - Mikhail Rudenko <mike.rudenko@gmail.com>
11
12 description: |
13   The Omnivision OV4689 is a high performance, 1/3-inch, 4 megapixel
14   image sensor. Ihis chip supports high frame rate speeds up to 90 fps
15   at 2688x1520 resolution. It is programmable through an I2C
16   interface, and sensor output is sent via 1/2/4 lane MIPI CSI-2
17   connection.
18
19 allOf:
20   - $ref: /schemas/media/video-interface-devices.yaml#
21
22 properties:
23   compatible:
24     const: ovti,ov4689
25
26   reg:
27     maxItems: 1
28
29   clocks:
30     description:
31       External clock (XVCLK) for the sensor, 6-64 MHz
32     maxItems: 1
33
34   dovdd-supply:
35     description:
36       Digital I/O voltage supply, 1.7-3.0 V
37
38   avdd-supply:
39     description:
40       Analog voltage supply, 2.6-3.0 V
41
42   dvdd-supply:
43     description:
44       Digital core voltage supply, 1.1-1.3 V
45
46   powerdown-gpios:
47     description:
48       GPIO connected to the powerdown pin (active low)
49
50   reset-gpios:
51     maxItems: 1
52     description:
53       GPIO connected to the reset pin (active low)
54
55   port:
56     $ref: /schemas/graph.yaml#/$defs/port-base
57     additionalProperties: false
58     description:
59       Output port node, single endpoint describing the CSI-2 transmitter
60
61     properties:
62       endpoint:
63         $ref: /schemas/media/video-interfaces.yaml#
64         unevaluatedProperties: false
65
66         properties:
67           data-lanes:
68             oneOf:
69               - items:
70                   - const: 1
71                   - const: 2
72                   - const: 3
73                   - const: 4
74               - items:
75                   - const: 1
76                   - const: 2
77               - items:
78                   - const: 1
79           link-frequencies: true
80
81         required:
82           - data-lanes
83           - link-frequencies
84
85 required:
86   - compatible
87   - reg
88   - clocks
89   - dovdd-supply
90   - avdd-supply
91   - dvdd-supply
92   - port
93
94 unevaluatedProperties: false
95
96 examples:
97   - |
98     #include <dt-bindings/gpio/gpio.h>
99
100     i2c {
101         #address-cells = <1>;
102         #size-cells = <0>;
103
104         ov4689: camera@36 {
105             compatible = "ovti,ov4689";
106             reg = <0x36>;
107
108             clocks = <&ov4689_clk>;
109
110             avdd-supply = <&ov4689_avdd>;
111             dovdd-supply = <&ov4689_dovdd>;
112             dvdd-supply = <&ov4689_dvdd>;
113
114             powerdown-gpios = <&pio 107 GPIO_ACTIVE_LOW>;
115             reset-gpios = <&pio 109 GPIO_ACTIVE_LOW>;
116
117             orientation = <2>;
118             rotation = <0>;
119
120             port {
121                 wcam_out: endpoint {
122                     remote-endpoint = <&mipi_in_wcam>;
123                     data-lanes = <1 2 3 4>;
124                     link-frequencies = /bits/ 64 <504000000>;
125                 };
126             };
127         };
128     };
129
130 ...