xref: /linux/Documentation/devicetree/bindings/media/i2c/ovti,ov5693.yaml (revision 6b9ab6ab7d7d74ee03528d8cb4593a140e2fe3c8)
1*6b9ab6abSTommaso Merciai# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*6b9ab6abSTommaso Merciai# Copyright (c) 2022 Amarulasolutions
3*6b9ab6abSTommaso Merciai%YAML 1.2
4*6b9ab6abSTommaso Merciai---
5*6b9ab6abSTommaso Merciai$id: http://devicetree.org/schemas/media/i2c/ovti,ov5693.yaml#
6*6b9ab6abSTommaso Merciai$schema: http://devicetree.org/meta-schemas/core.yaml#
7*6b9ab6abSTommaso Merciai
8*6b9ab6abSTommaso Merciaititle: Omnivision OV5693 CMOS Sensor
9*6b9ab6abSTommaso Merciai
10*6b9ab6abSTommaso Merciaimaintainers:
11*6b9ab6abSTommaso Merciai  - Tommaso Merciai <tommaso.merciai@amarulasolutions.com>
12*6b9ab6abSTommaso Merciai
13*6b9ab6abSTommaso Merciaidescription: |
14*6b9ab6abSTommaso Merciai  The Omnivision OV5693 is a high performance, 1/4-inch, 5 megapixel, CMOS
15*6b9ab6abSTommaso Merciai  image sensor that delivers 2592x1944 at 30fps. It provides full-frame,
16*6b9ab6abSTommaso Merciai  sub-sampled, and windowed 10-bit MIPI images in various formats via the
17*6b9ab6abSTommaso Merciai  Serial Camera Control Bus (SCCB) interface.
18*6b9ab6abSTommaso Merciai
19*6b9ab6abSTommaso Merciai  OV5693 is controlled via I2C and two-wire Serial Camera Control Bus (SCCB).
20*6b9ab6abSTommaso Merciai  The sensor output is available via CSI-2 serial data output (up to 2-lane).
21*6b9ab6abSTommaso Merciai
22*6b9ab6abSTommaso MerciaiallOf:
23*6b9ab6abSTommaso Merciai  - $ref: /schemas/media/video-interface-devices.yaml#
24*6b9ab6abSTommaso Merciai
25*6b9ab6abSTommaso Merciaiproperties:
26*6b9ab6abSTommaso Merciai  compatible:
27*6b9ab6abSTommaso Merciai    const: ovti,ov5693
28*6b9ab6abSTommaso Merciai
29*6b9ab6abSTommaso Merciai  reg:
30*6b9ab6abSTommaso Merciai    maxItems: 1
31*6b9ab6abSTommaso Merciai
32*6b9ab6abSTommaso Merciai  clocks:
33*6b9ab6abSTommaso Merciai    description:
34*6b9ab6abSTommaso Merciai      System input clock (aka XVCLK). From 6 to 27 MHz.
35*6b9ab6abSTommaso Merciai    maxItems: 1
36*6b9ab6abSTommaso Merciai
37*6b9ab6abSTommaso Merciai  dovdd-supply:
38*6b9ab6abSTommaso Merciai    description:
39*6b9ab6abSTommaso Merciai      Digital I/O voltage supply, 1.8V.
40*6b9ab6abSTommaso Merciai
41*6b9ab6abSTommaso Merciai  avdd-supply:
42*6b9ab6abSTommaso Merciai    description:
43*6b9ab6abSTommaso Merciai      Analog voltage supply, 2.8V.
44*6b9ab6abSTommaso Merciai
45*6b9ab6abSTommaso Merciai  dvdd-supply:
46*6b9ab6abSTommaso Merciai    description:
47*6b9ab6abSTommaso Merciai      Digital core voltage supply, 1.2V.
48*6b9ab6abSTommaso Merciai
49*6b9ab6abSTommaso Merciai  reset-gpios:
50*6b9ab6abSTommaso Merciai    description:
51*6b9ab6abSTommaso Merciai      The phandle and specifier for the GPIO that controls sensor reset.
52*6b9ab6abSTommaso Merciai      This corresponds to the hardware pin XSHUTDN which is physically
53*6b9ab6abSTommaso Merciai      active low.
54*6b9ab6abSTommaso Merciai    maxItems: 1
55*6b9ab6abSTommaso Merciai
56*6b9ab6abSTommaso Merciai  port:
57*6b9ab6abSTommaso Merciai    description: MIPI CSI-2 transmitter port
58*6b9ab6abSTommaso Merciai    $ref: /schemas/graph.yaml#/$defs/port-base
59*6b9ab6abSTommaso Merciai    additionalProperties: false
60*6b9ab6abSTommaso Merciai
61*6b9ab6abSTommaso Merciai    properties:
62*6b9ab6abSTommaso Merciai      endpoint:
63*6b9ab6abSTommaso Merciai        $ref: /schemas/media/video-interfaces.yaml#
64*6b9ab6abSTommaso Merciai        unevaluatedProperties: false
65*6b9ab6abSTommaso Merciai
66*6b9ab6abSTommaso Merciai        properties:
67*6b9ab6abSTommaso Merciai          link-frequencies: true
68*6b9ab6abSTommaso Merciai
69*6b9ab6abSTommaso Merciai          data-lanes:
70*6b9ab6abSTommaso Merciai            minItems: 1
71*6b9ab6abSTommaso Merciai            maxItems: 2
72*6b9ab6abSTommaso Merciai
73*6b9ab6abSTommaso Merciai        required:
74*6b9ab6abSTommaso Merciai          - data-lanes
75*6b9ab6abSTommaso Merciai          - link-frequencies
76*6b9ab6abSTommaso Merciai
77*6b9ab6abSTommaso Merciairequired:
78*6b9ab6abSTommaso Merciai  - compatible
79*6b9ab6abSTommaso Merciai  - reg
80*6b9ab6abSTommaso Merciai  - clocks
81*6b9ab6abSTommaso Merciai  - port
82*6b9ab6abSTommaso Merciai
83*6b9ab6abSTommaso MerciaiunevaluatedProperties: false
84*6b9ab6abSTommaso Merciai
85*6b9ab6abSTommaso Merciaiexamples:
86*6b9ab6abSTommaso Merciai  - |
87*6b9ab6abSTommaso Merciai    #include <dt-bindings/clock/px30-cru.h>
88*6b9ab6abSTommaso Merciai    #include <dt-bindings/gpio/gpio.h>
89*6b9ab6abSTommaso Merciai    #include <dt-bindings/pinctrl/rockchip.h>
90*6b9ab6abSTommaso Merciai
91*6b9ab6abSTommaso Merciai    i2c {
92*6b9ab6abSTommaso Merciai        #address-cells = <1>;
93*6b9ab6abSTommaso Merciai        #size-cells = <0>;
94*6b9ab6abSTommaso Merciai
95*6b9ab6abSTommaso Merciai        ov5693: camera@36 {
96*6b9ab6abSTommaso Merciai            compatible = "ovti,ov5693";
97*6b9ab6abSTommaso Merciai            reg = <0x36>;
98*6b9ab6abSTommaso Merciai
99*6b9ab6abSTommaso Merciai            reset-gpios = <&gpio2 RK_PB1 GPIO_ACTIVE_LOW>;
100*6b9ab6abSTommaso Merciai            pinctrl-names = "default";
101*6b9ab6abSTommaso Merciai            pinctrl-0 = <&cif_clkout_m0>;
102*6b9ab6abSTommaso Merciai
103*6b9ab6abSTommaso Merciai            clocks = <&cru SCLK_CIF_OUT>;
104*6b9ab6abSTommaso Merciai            assigned-clocks = <&cru SCLK_CIF_OUT>;
105*6b9ab6abSTommaso Merciai            assigned-clock-rates = <19200000>;
106*6b9ab6abSTommaso Merciai
107*6b9ab6abSTommaso Merciai            avdd-supply = <&vcc_1v8>;
108*6b9ab6abSTommaso Merciai            dvdd-supply = <&vcc_1v2>;
109*6b9ab6abSTommaso Merciai            dovdd-supply = <&vcc_2v8>;
110*6b9ab6abSTommaso Merciai
111*6b9ab6abSTommaso Merciai            rotation = <90>;
112*6b9ab6abSTommaso Merciai            orientation = <0>;
113*6b9ab6abSTommaso Merciai
114*6b9ab6abSTommaso Merciai            port {
115*6b9ab6abSTommaso Merciai                ucam_out: endpoint {
116*6b9ab6abSTommaso Merciai                    remote-endpoint = <&mipi_in_ucam>;
117*6b9ab6abSTommaso Merciai                    data-lanes = <1 2>;
118*6b9ab6abSTommaso Merciai                    link-frequencies = /bits/ 64 <450000000>;
119*6b9ab6abSTommaso Merciai                };
120*6b9ab6abSTommaso Merciai            };
121*6b9ab6abSTommaso Merciai        };
122*6b9ab6abSTommaso Merciai    };
123*6b9ab6abSTommaso Merciai
124*6b9ab6abSTommaso Merciai...
125