Documentation / devicetree / bindings / media / i2c / ovti,ov02e10.yaml


Based on kernel version 6.16. Page generated on 2025-08-06 08:57 EST.

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 142 143 144 145 146 147 148 149 150 151 152
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
# Copyright (c) 2025 Linaro Ltd.
%YAML 1.2
---
$id: http://devicetree.org/schemas/media/i2c/ovti,ov02e10.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Omnivision OV02E10 CMOS Sensor

maintainers:
  - Bryan O'Donoghue <bryan.odonoghue@linaro.org>

description: |
  The Omnivision OV02E10 and OV02C10 sensors are 2 megapixel, CMOS image sensors which support:
  - Automatic black level calibration (ABLC)
  - Programmable controls for frame rate, mirror and flip, binning, cropping
    and windowing
  - OVO2C10
    - 10 bit RAW Bayer 1920x1080 60 fps 2-lane @ 800 Mbps/lane
    - 10 bit RAW Bayer 1920x1080 60 fps 1-lane @ 1500 Mbps/lane
    - 10 bit RAW Bayer 1280x720 60 fps cropped 1-lane @ 960 Mbps/lane
    - 10 bit RGB/BW 640x480 60 fps bin2 or skip2 1-lane @ 800 Mbps/lane
    - 10 bit RGB/BW 480x270 60 fps bin4 or skip4 1-lane @ 800 Mbps/lane
  - OV02E10
    - 10 bit RAW Bayer 1920x1088 60 fps 2-lane @ 720 Mbps/lane
    - 10 bit RAW Bayer 1280x1080 60 fps 2-lane @ 720 Mbps/lane
    - 10 bit Quad Bayer 960x540 60 fps 2-lane 360 Mbps/lane
    - 8 bit Quad Bayer 480x270 1/3/5/10 fps sub2 288 Mbps/lane
    - 8 bit Quad Bayer 232x132 1/3/5/10 fps sub4 144 Mbps/lane
  - Dynamic defect pixel cancellation
  - Standard SCCB command interface

allOf:
  - $ref: /schemas/media/video-interface-devices.yaml#

properties:
  compatible:
    enum:
      - ovti,ov02c10
      - ovti,ov02e10

  reg:
    maxItems: 1

  clocks:
    maxItems: 1

  avdd-supply:
    description: Analogue circuit voltage supply.

  dovdd-supply:
    description: I/O circuit voltage supply.

  dvdd-supply:
    description: Digital circuit voltage supply.

  reset-gpios:
    description: Active low GPIO connected to XSHUTDOWN pad of the sensor.

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

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

        properties:
          data-lanes:
            items:
              - const: 1
              - const: 2
          link-frequencies: true
          remote-endpoint: true

        required:
          - data-lanes
          - link-frequencies
          - remote-endpoint

required:
  - compatible
  - reg
  - clocks
  - port

unevaluatedProperties: false

examples:
  - |
    #include <dt-bindings/gpio/gpio.h>
 
    i2c {
        #address-cells = <1>;
        #size-cells = <0>;
 
        ov02e10: camera@10 {
            compatible = "ovti,ov02e10";
            reg = <0x10>;
 
            reset-gpios = <&tlmm 237 GPIO_ACTIVE_LOW>;
            pinctrl-names = "default";
            pinctrl-0 = <&cam_rgb_defaultt>;
 
            clocks = <&ov02e10_clk>;
 
            assigned-clocks = <&ov02e10_clk>;
            assigned-clock-parents = <&ov02e10_clk_parent>;
            assigned-clock-rates = <19200000>;
 
            avdd-supply = <&vreg_l7b_2p8>;
            dvdd-supply = <&vreg_l7b_1p8>;
            dovdd-supply = <&vreg_l3m_1p8>;
 
            port {
                ov02e10_ep: endpoint {
                    remote-endpoint = <&csiphy4_ep>;
                    data-lanes = <1 2>;
                    link-frequencies = /bits/ 64 <400000000>;
                };
            };
        };
 
        ov02c10: camera@36 {
            compatible = "ovti,ov02c10";
            reg = <0x36>;
 
            reset-gpios = <&tlmm 237 GPIO_ACTIVE_LOW>;
            pinctrl-names = "default";
            pinctrl-0 = <&cam_rgb_defaultt>;
 
            clocks = <&ov02c10_clk>;
 
            assigned-clocks = <&ov02c10_clk>;
            assigned-clock-parents = <&ov02c10_clk_parent>;
            assigned-clock-rates = <19200000>;
 
            avdd-supply = <&vreg_l7b_2p8>;
            dvdd-supply = <&vreg_l7b_1p8>;
            dovdd-supply = <&vreg_l3m_1p8>;
 
            port {
                ov02c10_ep: endpoint {
                    remote-endpoint = <&csiphy4_ep>;
                    data-lanes = <1 2>;
                    link-frequencies = /bits/ 64 <400000000>;
                };
            };
        };
    };
...