# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/media/i2c/ovti,ov2685.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: OmniVision OV2685 Image Sensor

maintainers:
  - Shunqian Zheng <zhengsq@rock-chips.com>

properties:
  compatible:
    const: ovti,ov2685

  reg:
    maxItems: 1

  clocks:
    items:
      - description: XVCLK clock

  clock-names:
    items:
      - const: xvclk

  dvdd-supply:
    description: Digital Domain Power Supply

  avdd-supply:
    description: Analog Domain Power Supply

  dovdd-supply:
    description: I/O Domain Power Supply

  reset-gpios:
    maxItems: 1
    description: Reset Pin GPIO Control (active low)

  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:
          data-lanes:
            minItems: 1
            maxItems: 2

        required:
          - data-lanes

required:
  - compatible
  - reg
  - clocks
  - clock-names
  - dvdd-supply
  - avdd-supply
  - dovdd-supply
  - port

additionalProperties: false

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

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

        ov2685: camera-sensor@3c {
            compatible = "ovti,ov2685";
            reg = <0x3c>;
            pinctrl-names = "default";
            pinctrl-0 = <&clk_24m_cam>;

            clocks = <&cru SCLK_TESTCLKOUT1>;
            clock-names = "xvclk";

            avdd-supply = <&pp2800_cam>;
            dovdd-supply = <&pp1800>;
            dvdd-supply = <&pp1800>;
            reset-gpios = <&gpio2 3 GPIO_ACTIVE_LOW>;

            port {
                ucam_out: endpoint {
                    remote-endpoint = <&mipi_in_ucam>;
                    data-lanes = <1>;
                };
            };
        };
    };

...
