summaryrefslogtreecommitdiff
path: root/Documentation/devicetree/bindings/media/i2c/ovti,ov5693.yaml
blob: 3368b3bd8ef2f0b648b239a8ec7d948d4d795bd6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
# Copyright (c) 2022 Amarulasolutions
%YAML 1.2
---
$id: http://devicetree.org/schemas/media/i2c/ovti,ov5693.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Omnivision OV5693/OV5695 CMOS Sensors

maintainers:
  - Tommaso Merciai <tomm.merciai@gmail.com>

description: |
  The Omnivision OV5693/OV5695 are high performance, 1/4-inch, 5 megapixel, CMOS
  image sensors that deliver 2592x1944 at 30fps. It provides full-frame,
  sub-sampled, and windowed 10-bit MIPI images in various formats via the
  Serial Camera Control Bus (SCCB) interface.

  OV5693/OV5695 are controlled via I2C and two-wire Serial Camera Control Bus
  (SCCB). The sensor output is available via CSI-2 serial data output (up to
  2-lane).

allOf:
  - $ref: /schemas/media/video-interface-devices.yaml#
  - if:
      properties:
        compatible:
          contains:
            const: ovti,ov5693
    then:
      properties:
        port:
          properties:
            endpoint:
              required:
                - link-frequencies

properties:
  compatible:
    enum:
      - ovti,ov5693
      - ovti,ov5695

  reg:
    maxItems: 1

  clocks:
    description:
      System input clock (aka XVCLK). From 6 to 27 MHz.
    maxItems: 1

  clock-names:
    const: xvclk

  dovdd-supply:
    description:
      Digital I/O voltage supply, 1.8V.

  avdd-supply:
    description:
      Analog voltage supply, 2.8V.

  dvdd-supply:
    description:
      Digital core voltage supply, 1.2V.

  reset-gpios:
    description:
      The phandle and specifier for the GPIO that controls sensor reset.
      This corresponds to the hardware pin XSHUTDN which is physically
      active low.
    maxItems: 1

  port:
    description: MIPI CSI-2 transmitter port
    $ref: /schemas/graph.yaml#/$defs/port-base
    additionalProperties: false

    properties:
      endpoint:
        $ref: /schemas/media/video-interfaces.yaml#
        unevaluatedProperties: false

        properties:
          link-frequencies: true

          data-lanes:
            minItems: 1
            maxItems: 2

        required:
          - data-lanes

required:
  - compatible
  - reg
  - clocks
  - port

unevaluatedProperties: false

examples:
  - |
    #include <dt-bindings/clock/px30-cru.h>
    #include <dt-bindings/gpio/gpio.h>
    #include <dt-bindings/pinctrl/rockchip.h>

    i2c {
        #address-cells = <1>;
        #size-cells = <0>;

        ov5693: camera@36 {
            compatible = "ovti,ov5693";
            reg = <0x36>;

            reset-gpios = <&gpio2 RK_PB1 GPIO_ACTIVE_LOW>;
            pinctrl-names = "default";
            pinctrl-0 = <&cif_clkout_m0>;

            clocks = <&cru SCLK_CIF_OUT>;
            assigned-clocks = <&cru SCLK_CIF_OUT>;
            assigned-clock-rates = <19200000>;

            avdd-supply = <&vcc_1v8>;
            dvdd-supply = <&vcc_1v2>;
            dovdd-supply = <&vcc_2v8>;

            rotation = <90>;
            orientation = <0>;

            port {
                ucam_out: endpoint {
                    remote-endpoint = <&mipi_in_ucam>;
                    data-lanes = <1 2>;
                    link-frequencies = /bits/ 64 <450000000>;
                };
            };
        };
    };

...