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