15def4c47SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
25def4c47SEmmanuel Vadot# Copyright (c) 2020 MediaTek Inc.
35def4c47SEmmanuel Vadot%YAML 1.2
45def4c47SEmmanuel Vadot---
55def4c47SEmmanuel Vadot$id: http://devicetree.org/schemas/media/i2c/ovti,ov02a10.yaml#
65def4c47SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
75def4c47SEmmanuel Vadot
88bab661aSEmmanuel Vadottitle: Omnivision OV02A10 CMOS Sensor
95def4c47SEmmanuel Vadot
105def4c47SEmmanuel Vadotmaintainers:
115def4c47SEmmanuel Vadot  - Dongchun Zhu <dongchun.zhu@mediatek.com>
125def4c47SEmmanuel Vadot
135def4c47SEmmanuel Vadotdescription: |-
145def4c47SEmmanuel Vadot  The Omnivision OV02A10 is a low-cost, high performance, 1/5-inch, 2 megapixel
155def4c47SEmmanuel Vadot  image sensor, which is the latest production derived from Omnivision's CMOS
165def4c47SEmmanuel Vadot  image sensor technology. Ihis chip supports high frame rate speeds up to 30fps
175def4c47SEmmanuel Vadot  @ 1600x1200 (UXGA) resolution transferred over a 1-lane MIPI interface. The
185def4c47SEmmanuel Vadot  sensor output is available via CSI-2 serial data output.
195def4c47SEmmanuel Vadot
205def4c47SEmmanuel VadotallOf:
215def4c47SEmmanuel Vadot  - $ref: /schemas/media/video-interface-devices.yaml#
225def4c47SEmmanuel Vadot
235def4c47SEmmanuel Vadotproperties:
245def4c47SEmmanuel Vadot  compatible:
255def4c47SEmmanuel Vadot    const: ovti,ov02a10
265def4c47SEmmanuel Vadot
275def4c47SEmmanuel Vadot  reg:
285def4c47SEmmanuel Vadot    maxItems: 1
295def4c47SEmmanuel Vadot
305def4c47SEmmanuel Vadot  clocks:
315def4c47SEmmanuel Vadot    maxItems: 1
325def4c47SEmmanuel Vadot
335def4c47SEmmanuel Vadot  clock-names:
345def4c47SEmmanuel Vadot    description:
355def4c47SEmmanuel Vadot      External clock for the sensor.
365def4c47SEmmanuel Vadot    items:
375def4c47SEmmanuel Vadot      - const: eclk
385def4c47SEmmanuel Vadot
395def4c47SEmmanuel Vadot  clock-frequency:
405def4c47SEmmanuel Vadot    description:
415def4c47SEmmanuel Vadot      Frequency of the eclk clock in Hz.
425def4c47SEmmanuel Vadot
435def4c47SEmmanuel Vadot  dovdd-supply:
445def4c47SEmmanuel Vadot    description:
455def4c47SEmmanuel Vadot      Definition of the regulator used as Digital I/O voltage supply.
465def4c47SEmmanuel Vadot
475def4c47SEmmanuel Vadot  avdd-supply:
485def4c47SEmmanuel Vadot    description:
495def4c47SEmmanuel Vadot      Definition of the regulator used as Analog voltage supply.
505def4c47SEmmanuel Vadot
515def4c47SEmmanuel Vadot  dvdd-supply:
525def4c47SEmmanuel Vadot    description:
535def4c47SEmmanuel Vadot      Definition of the regulator used as Digital core voltage supply.
545def4c47SEmmanuel Vadot
555def4c47SEmmanuel Vadot  powerdown-gpios:
565def4c47SEmmanuel Vadot    description:
575def4c47SEmmanuel Vadot      Must be the device tree identifier of the GPIO connected to the
585def4c47SEmmanuel Vadot      PD_PAD pin. This pin is used to place the OV02A10 into standby mode
595def4c47SEmmanuel Vadot      or shutdown mode. As the line needs to be high for the powerdown mode
605def4c47SEmmanuel Vadot      to be active, it should be marked GPIO_ACTIVE_HIGH.
615def4c47SEmmanuel Vadot    maxItems: 1
625def4c47SEmmanuel Vadot
635def4c47SEmmanuel Vadot  reset-gpios:
645def4c47SEmmanuel Vadot    description:
655def4c47SEmmanuel Vadot      Must be the device tree identifier of the GPIO connected to the
665def4c47SEmmanuel Vadot      RST_PD pin. If specified, it will be asserted during driver probe.
675def4c47SEmmanuel Vadot      As the line needs to be low for the reset to be active, it should be
685def4c47SEmmanuel Vadot      marked GPIO_ACTIVE_LOW.
695def4c47SEmmanuel Vadot    maxItems: 1
705def4c47SEmmanuel Vadot
715def4c47SEmmanuel Vadot  port:
725def4c47SEmmanuel Vadot    $ref: /schemas/graph.yaml#/$defs/port-base
735def4c47SEmmanuel Vadot    additionalProperties: false
745def4c47SEmmanuel Vadot    description:
755def4c47SEmmanuel Vadot      Output port node, single endpoint describing the CSI-2 transmitter.
765def4c47SEmmanuel Vadot
775def4c47SEmmanuel Vadot    properties:
785def4c47SEmmanuel Vadot      endpoint:
795def4c47SEmmanuel Vadot        $ref: /schemas/media/video-interfaces.yaml#
805def4c47SEmmanuel Vadot        unevaluatedProperties: false
815def4c47SEmmanuel Vadot
825def4c47SEmmanuel Vadot        properties:
835def4c47SEmmanuel Vadot          link-frequencies: true
845def4c47SEmmanuel Vadot          ovti,mipi-clock-voltage:
85fac71e4eSEmmanuel Vadot            $ref: /schemas/types.yaml#/definitions/uint32
865def4c47SEmmanuel Vadot            description:
875def4c47SEmmanuel Vadot              Definition of MIPI clock voltage unit. This entry corresponds to
885def4c47SEmmanuel Vadot              the link speed defined by the 'link-frequencies' property.
895def4c47SEmmanuel Vadot              If present, the value shall be in the range of 0-4.
905def4c47SEmmanuel Vadot            default: 4
915def4c47SEmmanuel Vadot
925def4c47SEmmanuel Vadot        required:
935def4c47SEmmanuel Vadot          - link-frequencies
945def4c47SEmmanuel Vadot
955def4c47SEmmanuel Vadot    required:
965def4c47SEmmanuel Vadot      - endpoint
975def4c47SEmmanuel Vadot
985def4c47SEmmanuel Vadotrequired:
995def4c47SEmmanuel Vadot  - compatible
1005def4c47SEmmanuel Vadot  - reg
1015def4c47SEmmanuel Vadot  - clocks
1025def4c47SEmmanuel Vadot  - clock-names
1035def4c47SEmmanuel Vadot  - clock-frequency
1045def4c47SEmmanuel Vadot  - dovdd-supply
1055def4c47SEmmanuel Vadot  - avdd-supply
1065def4c47SEmmanuel Vadot  - dvdd-supply
1075def4c47SEmmanuel Vadot  - powerdown-gpios
1085def4c47SEmmanuel Vadot  - reset-gpios
1095def4c47SEmmanuel Vadot  - port
1105def4c47SEmmanuel Vadot
111*84943d6fSEmmanuel VadotunevaluatedProperties: false
1125def4c47SEmmanuel Vadot
1135def4c47SEmmanuel Vadotexamples:
1145def4c47SEmmanuel Vadot  - |
1155def4c47SEmmanuel Vadot    #include <dt-bindings/gpio/gpio.h>
1165def4c47SEmmanuel Vadot
1175def4c47SEmmanuel Vadot    i2c {
1185def4c47SEmmanuel Vadot        #address-cells = <1>;
1195def4c47SEmmanuel Vadot        #size-cells = <0>;
1205def4c47SEmmanuel Vadot
1215def4c47SEmmanuel Vadot        ov02a10: camera-sensor@3d {
1225def4c47SEmmanuel Vadot            compatible = "ovti,ov02a10";
1235def4c47SEmmanuel Vadot            reg = <0x3d>;
1245def4c47SEmmanuel Vadot
1255def4c47SEmmanuel Vadot            powerdown-gpios = <&pio 107 GPIO_ACTIVE_HIGH>;
1265def4c47SEmmanuel Vadot            reset-gpios = <&pio 109 GPIO_ACTIVE_LOW>;
1275def4c47SEmmanuel Vadot
1285def4c47SEmmanuel Vadot            clocks = <&ov02a10_clk>;
1295def4c47SEmmanuel Vadot            clock-names = "eclk";
1305def4c47SEmmanuel Vadot            clock-frequency = <24000000>;
1315def4c47SEmmanuel Vadot
1325def4c47SEmmanuel Vadot            rotation = <180>;
1335def4c47SEmmanuel Vadot
1345def4c47SEmmanuel Vadot            dovdd-supply = <&ov02a10_dovdd>;
1355def4c47SEmmanuel Vadot            avdd-supply = <&ov02a10_avdd>;
1365def4c47SEmmanuel Vadot            dvdd-supply = <&ov02a10_dvdd>;
1375def4c47SEmmanuel Vadot
1385def4c47SEmmanuel Vadot            port {
1395def4c47SEmmanuel Vadot                wcam_out: endpoint {
1405def4c47SEmmanuel Vadot                    link-frequencies = /bits/ 64 <390000000>;
1415def4c47SEmmanuel Vadot                    ovti,mipi-clock-voltage = <3>;
1425def4c47SEmmanuel Vadot                    remote-endpoint = <&mipi_in_wcam>;
1435def4c47SEmmanuel Vadot                };
1445def4c47SEmmanuel Vadot            };
1455def4c47SEmmanuel Vadot        };
1465def4c47SEmmanuel Vadot    };
1475def4c47SEmmanuel Vadot
1485def4c47SEmmanuel Vadot...
149