summaryrefslogtreecommitdiff
path: root/Documentation/devicetree/bindings/media/i2c/ovti,ov5670.yaml
blob: 6e089fe1d6134fc57db5135afda44a7a46bd2765 (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
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/media/i2c/ovti,ov5670.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Omnivision OV5670 5 Megapixels raw image sensor

maintainers:
  - Jacopo Mondi <jacopo.mondi@ideasonboard.com>

description: |-
  The OV5670 is a 5 Megapixels raw image sensor which provides images in 10-bits
  RAW BGGR Bayer format on a 2 data lanes MIPI CSI-2 serial interface and is
  controlled through an I2C compatible control bus.

properties:
  compatible:
    const: ovti,ov5670

  reg:
    maxItems: 1

  clocks:
    description: System clock. From 6 to 27 MHz.
    maxItems: 1

  powerdown-gpios:
    description: Reference to the GPIO connected to the PWDNB pin. Active low.

  reset-gpios:
    description: Reference to the GPIO connected to the XSHUTDOWN pin. Active low.
    maxItems: 1

  avdd-supply:
    description: Analog circuit power. Typically 2.8V.

  dvdd-supply:
    description: Digital circuit power. Typically 1.2V.

  dovdd-supply:
    description: Digital I/O circuit power. Typically 2.8V or 1.8V.

  port:
    $ref: /schemas/graph.yaml#/$defs/port-base
    additionalProperties: false

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

        properties:
          data-lanes:
            minItems: 1
            maxItems: 2
            items:
              enum: [1, 2]

          clock-noncontinuous: true
          remote-endpoint: true

required:
  - compatible
  - reg
  - clocks
  - port

additionalProperties: false

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

        ov5670: sensor@36 {
            compatible = "ovti,ov5670";
            reg = <0x36>;

            clocks = <&sensor_xclk>;

            port {
                ov5670_ep: endpoint {
                    remote-endpoint = <&csi_ep>;
                    data-lanes = <1 2>;
                    clock-noncontinuous;
                };
            };
        };
    };

...