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
7title: Omnivision OV4689 CMOS
8
9maintainers:
10  - Mikhail Rudenko <mike.rudenko@gmail.com>
11
12description: |
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
19allOf:
20  - $ref: /schemas/media/video-interface-devices.yaml#
21
22properties:
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  orientation: true
56
57  rotation: true
58
59  port:
60    $ref: /schemas/graph.yaml#/$defs/port-base
61    additionalProperties: false
62    description:
63      Output port node, single endpoint describing the CSI-2 transmitter
64
65    properties:
66      endpoint:
67        $ref: /schemas/media/video-interfaces.yaml#
68        unevaluatedProperties: false
69
70        properties:
71          data-lanes:
72            oneOf:
73              - items:
74                  - const: 1
75                  - const: 2
76                  - const: 3
77                  - const: 4
78              - items:
79                  - const: 1
80                  - const: 2
81              - items:
82                  - const: 1
83          link-frequencies: true
84
85        required:
86          - data-lanes
87          - link-frequencies
88
89required:
90  - compatible
91  - reg
92  - clocks
93  - dovdd-supply
94  - avdd-supply
95  - dvdd-supply
96  - port
97
98additionalProperties: false
99
100examples:
101  - |
102    #include <dt-bindings/gpio/gpio.h>
103
104    i2c {
105        #address-cells = <1>;
106        #size-cells = <0>;
107
108        ov4689: camera@36 {
109            compatible = "ovti,ov4689";
110            reg = <0x36>;
111
112            clocks = <&ov4689_clk>;
113
114            avdd-supply = <&ov4689_avdd>;
115            dovdd-supply = <&ov4689_dovdd>;
116            dvdd-supply = <&ov4689_dvdd>;
117
118            powerdown-gpios = <&pio 107 GPIO_ACTIVE_LOW>;
119            reset-gpios = <&pio 109 GPIO_ACTIVE_LOW>;
120
121            orientation = <2>;
122            rotation = <0>;
123
124            port {
125                wcam_out: endpoint {
126                    remote-endpoint = <&mipi_in_wcam>;
127                    data-lanes = <1 2 3 4>;
128                    link-frequencies = /bits/ 64 <504000000>;
129                };
130            };
131        };
132    };
133
134...
135