1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/media/i2c/ovti,ov7251.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: OmniVision OV7251 Image Sensor
8
9description:
10  The Omnivision OV7251 is a 1/7.5-Inch CMOS active pixel digital image sensor
11  with an active array size of 640H x 480V. It is programmable through a serial
12  I2C interface.
13
14maintainers:
15  - Todor Tomov <todor.too@gmail.com>
16
17properties:
18  compatible:
19    const: ovti,ov7251
20
21  reg:
22    maxItems: 1
23
24  clocks:
25    description: XCLK Input Clock
26
27  clock-names:
28    const: xclk
29
30  clock-frequency:
31    description: Frequency of the xclk clock in Hz.
32
33  vdda-supply:
34    description: Analog voltage supply, 2.8 volts
35
36  vddd-supply:
37    description: Digital core voltage supply, 1.2 volts
38
39  vdddo-supply:
40    description: Digital I/O voltage supply, 1.8 volts
41
42  enable-gpios:
43    maxItems: 1
44    description:
45      Reference to the GPIO connected to the XSHUTDOWN pin, if any. Polarity
46      is GPIO_ACTIVE_HIGH.
47
48  port:
49    description: Digital Output Port
50    $ref: /schemas/graph.yaml#/$defs/port-base
51    additionalProperties: false
52
53    properties:
54      endpoint:
55        $ref: /schemas/media/video-interfaces.yaml#
56        unevaluatedProperties: false
57
58        properties:
59          clock-lanes:
60            maximum: 1
61
62          data-lanes:
63            maxItems: 1
64
65          link-frequencies: true
66
67        required:
68          - data-lanes
69          - link-frequencies
70
71required:
72  - compatible
73  - reg
74  - clocks
75  - vdddo-supply
76  - vdda-supply
77  - port
78
79additionalProperties: false
80
81examples:
82  - |
83    #include <dt-bindings/gpio/gpio.h>
84
85    i2c {
86        #address-cells = <1>;
87        #size-cells = <0>;
88
89        camera@3c {
90            compatible = "ovti,ov7251";
91            reg = <0x3c>;
92            clocks = <&clks 1>;
93            clock-frequency = <24000000>;
94            vdddo-supply = <&ov7251_vdddo_1v8>;
95            vdda-supply = <&ov7251_vdda_2v8>;
96            vddd-supply = <&ov7251_vddd_1v5>;
97            enable-gpios = <&gpio1 19 GPIO_ACTIVE_HIGH>;
98
99            port {
100                ov7251_ep: endpoint {
101                    remote-endpoint = <&csi0_ep>;
102                    clock-lanes = <1>;
103                    data-lanes = <0>;
104                    link-frequencies = /bits/ 64 <240000000 319200000>;
105                };
106            };
107        };
108    };
109...
110