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

title: Omnivision OV4689 CMOS

maintainers:
  - Mikhail Rudenko <mike.rudenko@gmail.com>

description: |
  The Omnivision OV4689 is a high performance, 1/3-inch, 4 megapixel
  image sensor. Ihis chip supports high frame rate speeds up to 90 fps
  at 2688x1520 resolution. It is programmable through an I2C
  interface, and sensor output is sent via 1/2/4 lane MIPI CSI-2
  connection.

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

properties:
  compatible:
    const: ovti,ov4689

  reg:
    maxItems: 1

  clocks:
    description:
      External clock (XVCLK) for the sensor, 6-64 MHz
    maxItems: 1

  dovdd-supply:
    description:
      Digital I/O voltage supply, 1.7-3.0 V

  avdd-supply:
    description:
      Analog voltage supply, 2.6-3.0 V

  dvdd-supply:
    description:
      Digital core voltage supply, 1.1-1.3 V

  powerdown-gpios:
    description:
      GPIO connected to the powerdown pin (active low)

  reset-gpios:
    maxItems: 1
    description:
      GPIO connected to the reset pin (active low)

  port:
    $ref: /schemas/graph.yaml#/$defs/port-base
    additionalProperties: false
    description:
      Output port node, single endpoint describing the CSI-2 transmitter

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

        properties:
          data-lanes:
            oneOf:
              - items:
                  - const: 1
                  - const: 2
                  - const: 3
                  - const: 4
              - items:
                  - const: 1
                  - const: 2
              - items:
                  - const: 1
          link-frequencies: true

        required:
          - data-lanes
          - link-frequencies

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

unevaluatedProperties: false

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

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

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

            clocks = <&ov4689_clk>;

            avdd-supply = <&ov4689_avdd>;
            dovdd-supply = <&ov4689_dovdd>;
            dvdd-supply = <&ov4689_dvdd>;

            powerdown-gpios = <&pio 107 GPIO_ACTIVE_LOW>;
            reset-gpios = <&pio 109 GPIO_ACTIVE_LOW>;

            orientation = <2>;
            rotation = <0>;

            port {
                wcam_out: endpoint {
                    remote-endpoint = <&mipi_in_wcam>;
                    data-lanes = <1 2 3 4>;
                    link-frequencies = /bits/ 64 <504000000>;
                };
            };
        };
    };

...
