134487ad0SDongchun Zhu# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
234487ad0SDongchun Zhu# Copyright (c) 2020 MediaTek Inc.
334487ad0SDongchun Zhu%YAML 1.2
434487ad0SDongchun Zhu---
534487ad0SDongchun Zhu$id: http://devicetree.org/schemas/media/i2c/ovti,ov02a10.yaml#
634487ad0SDongchun Zhu$schema: http://devicetree.org/meta-schemas/core.yaml#
734487ad0SDongchun Zhu
8a612130cSKrzysztof Kozlowskititle: Omnivision OV02A10 CMOS Sensor
934487ad0SDongchun Zhu
1034487ad0SDongchun Zhumaintainers:
1134487ad0SDongchun Zhu  - Dongchun Zhu <dongchun.zhu@mediatek.com>
1234487ad0SDongchun Zhu
1334487ad0SDongchun Zhudescription: |-
1434487ad0SDongchun Zhu  The Omnivision OV02A10 is a low-cost, high performance, 1/5-inch, 2 megapixel
1534487ad0SDongchun Zhu  image sensor, which is the latest production derived from Omnivision's CMOS
1634487ad0SDongchun Zhu  image sensor technology. Ihis chip supports high frame rate speeds up to 30fps
1734487ad0SDongchun Zhu  @ 1600x1200 (UXGA) resolution transferred over a 1-lane MIPI interface. The
1834487ad0SDongchun Zhu  sensor output is available via CSI-2 serial data output.
1934487ad0SDongchun Zhu
20066a94e2SRob HerringallOf:
21066a94e2SRob Herring  - $ref: /schemas/media/video-interface-devices.yaml#
22066a94e2SRob Herring
2334487ad0SDongchun Zhuproperties:
2434487ad0SDongchun Zhu  compatible:
2534487ad0SDongchun Zhu    const: ovti,ov02a10
2634487ad0SDongchun Zhu
2734487ad0SDongchun Zhu  reg:
2834487ad0SDongchun Zhu    maxItems: 1
2934487ad0SDongchun Zhu
3034487ad0SDongchun Zhu  clocks:
3134487ad0SDongchun Zhu    maxItems: 1
3234487ad0SDongchun Zhu
3334487ad0SDongchun Zhu  clock-names:
3434487ad0SDongchun Zhu    description:
3534487ad0SDongchun Zhu      External clock for the sensor.
3634487ad0SDongchun Zhu    items:
3734487ad0SDongchun Zhu      - const: eclk
3834487ad0SDongchun Zhu
3934487ad0SDongchun Zhu  clock-frequency:
4034487ad0SDongchun Zhu    description:
4134487ad0SDongchun Zhu      Frequency of the eclk clock in Hz.
4234487ad0SDongchun Zhu
4334487ad0SDongchun Zhu  dovdd-supply:
4434487ad0SDongchun Zhu    description:
4534487ad0SDongchun Zhu      Definition of the regulator used as Digital I/O voltage supply.
4634487ad0SDongchun Zhu
4734487ad0SDongchun Zhu  avdd-supply:
4834487ad0SDongchun Zhu    description:
4934487ad0SDongchun Zhu      Definition of the regulator used as Analog voltage supply.
5034487ad0SDongchun Zhu
5134487ad0SDongchun Zhu  dvdd-supply:
5234487ad0SDongchun Zhu    description:
5334487ad0SDongchun Zhu      Definition of the regulator used as Digital core voltage supply.
5434487ad0SDongchun Zhu
5534487ad0SDongchun Zhu  powerdown-gpios:
5634487ad0SDongchun Zhu    description:
5734487ad0SDongchun Zhu      Must be the device tree identifier of the GPIO connected to the
5834487ad0SDongchun Zhu      PD_PAD pin. This pin is used to place the OV02A10 into standby mode
5934487ad0SDongchun Zhu      or shutdown mode. As the line needs to be high for the powerdown mode
6034487ad0SDongchun Zhu      to be active, it should be marked GPIO_ACTIVE_HIGH.
6134487ad0SDongchun Zhu    maxItems: 1
6234487ad0SDongchun Zhu
6334487ad0SDongchun Zhu  reset-gpios:
6434487ad0SDongchun Zhu    description:
6534487ad0SDongchun Zhu      Must be the device tree identifier of the GPIO connected to the
6634487ad0SDongchun Zhu      RST_PD pin. If specified, it will be asserted during driver probe.
6734487ad0SDongchun Zhu      As the line needs to be low for the reset to be active, it should be
6834487ad0SDongchun Zhu      marked GPIO_ACTIVE_LOW.
6934487ad0SDongchun Zhu    maxItems: 1
7034487ad0SDongchun Zhu
7134487ad0SDongchun Zhu  rotation:
72066a94e2SRob Herring    enum:
7334487ad0SDongchun Zhu      - 0    # Sensor Mounted Upright
7434487ad0SDongchun Zhu      - 180  # Sensor Mounted Upside Down
7534487ad0SDongchun Zhu    default: 0
7634487ad0SDongchun Zhu
7734487ad0SDongchun Zhu  port:
78066a94e2SRob Herring    $ref: /schemas/graph.yaml#/$defs/port-base
7934487ad0SDongchun Zhu    additionalProperties: false
8034487ad0SDongchun Zhu    description:
8134487ad0SDongchun Zhu      Output port node, single endpoint describing the CSI-2 transmitter.
8234487ad0SDongchun Zhu
8334487ad0SDongchun Zhu    properties:
8434487ad0SDongchun Zhu      endpoint:
85066a94e2SRob Herring        $ref: /schemas/media/video-interfaces.yaml#
86066a94e2SRob Herring        unevaluatedProperties: false
8734487ad0SDongchun Zhu
8834487ad0SDongchun Zhu        properties:
8934487ad0SDongchun Zhu          link-frequencies: true
9034487ad0SDongchun Zhu          ovti,mipi-clock-voltage:
91*ab190665SRob Herring            $ref: /schemas/types.yaml#/definitions/uint32
9234487ad0SDongchun Zhu            description:
9334487ad0SDongchun Zhu              Definition of MIPI clock voltage unit. This entry corresponds to
9434487ad0SDongchun Zhu              the link speed defined by the 'link-frequencies' property.
9534487ad0SDongchun Zhu              If present, the value shall be in the range of 0-4.
9634487ad0SDongchun Zhu            default: 4
9734487ad0SDongchun Zhu
9834487ad0SDongchun Zhu        required:
9934487ad0SDongchun Zhu          - link-frequencies
10034487ad0SDongchun Zhu
10134487ad0SDongchun Zhu    required:
10234487ad0SDongchun Zhu      - endpoint
10334487ad0SDongchun Zhu
10434487ad0SDongchun Zhurequired:
10534487ad0SDongchun Zhu  - compatible
10634487ad0SDongchun Zhu  - reg
10734487ad0SDongchun Zhu  - clocks
10834487ad0SDongchun Zhu  - clock-names
10934487ad0SDongchun Zhu  - clock-frequency
11034487ad0SDongchun Zhu  - dovdd-supply
11134487ad0SDongchun Zhu  - avdd-supply
11234487ad0SDongchun Zhu  - dvdd-supply
11334487ad0SDongchun Zhu  - powerdown-gpios
11434487ad0SDongchun Zhu  - reset-gpios
11534487ad0SDongchun Zhu  - port
11634487ad0SDongchun Zhu
11734487ad0SDongchun ZhuadditionalProperties: false
11834487ad0SDongchun Zhu
11934487ad0SDongchun Zhuexamples:
12034487ad0SDongchun Zhu  - |
12134487ad0SDongchun Zhu    #include <dt-bindings/gpio/gpio.h>
12234487ad0SDongchun Zhu
12334487ad0SDongchun Zhu    i2c {
12434487ad0SDongchun Zhu        #address-cells = <1>;
12534487ad0SDongchun Zhu        #size-cells = <0>;
12634487ad0SDongchun Zhu
12734487ad0SDongchun Zhu        ov02a10: camera-sensor@3d {
12834487ad0SDongchun Zhu            compatible = "ovti,ov02a10";
12934487ad0SDongchun Zhu            reg = <0x3d>;
13034487ad0SDongchun Zhu
13134487ad0SDongchun Zhu            powerdown-gpios = <&pio 107 GPIO_ACTIVE_HIGH>;
13234487ad0SDongchun Zhu            reset-gpios = <&pio 109 GPIO_ACTIVE_LOW>;
13334487ad0SDongchun Zhu
13434487ad0SDongchun Zhu            clocks = <&ov02a10_clk>;
13534487ad0SDongchun Zhu            clock-names = "eclk";
13634487ad0SDongchun Zhu            clock-frequency = <24000000>;
13734487ad0SDongchun Zhu
13834487ad0SDongchun Zhu            rotation = <180>;
13934487ad0SDongchun Zhu
14034487ad0SDongchun Zhu            dovdd-supply = <&ov02a10_dovdd>;
14134487ad0SDongchun Zhu            avdd-supply = <&ov02a10_avdd>;
14234487ad0SDongchun Zhu            dvdd-supply = <&ov02a10_dvdd>;
14334487ad0SDongchun Zhu
14434487ad0SDongchun Zhu            port {
14534487ad0SDongchun Zhu                wcam_out: endpoint {
14634487ad0SDongchun Zhu                    link-frequencies = /bits/ 64 <390000000>;
14734487ad0SDongchun Zhu                    ovti,mipi-clock-voltage = <3>;
14834487ad0SDongchun Zhu                    remote-endpoint = <&mipi_in_wcam>;
14934487ad0SDongchun Zhu                };
15034487ad0SDongchun Zhu            };
15134487ad0SDongchun Zhu        };
15234487ad0SDongchun Zhu    };
15334487ad0SDongchun Zhu
15434487ad0SDongchun Zhu...
155