1b97ee269SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2b97ee269SEmmanuel Vadot# Copyright (c) 2022 Amarulasolutions
3b97ee269SEmmanuel Vadot%YAML 1.2
4b97ee269SEmmanuel Vadot---
5b97ee269SEmmanuel Vadot$id: http://devicetree.org/schemas/media/i2c/ovti,ov5693.yaml#
6b97ee269SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
7b97ee269SEmmanuel Vadot
8aa1a8ff2SEmmanuel Vadottitle: Omnivision OV5693/OV5695 CMOS Sensors
9b97ee269SEmmanuel Vadot
10b97ee269SEmmanuel Vadotmaintainers:
11*84943d6fSEmmanuel Vadot  - Tommaso Merciai <tomm.merciai@gmail.com>
12b97ee269SEmmanuel Vadot
13b97ee269SEmmanuel Vadotdescription: |
14aa1a8ff2SEmmanuel Vadot  The Omnivision OV5693/OV5695 are high performance, 1/4-inch, 5 megapixel, CMOS
15aa1a8ff2SEmmanuel Vadot  image sensors that deliver 2592x1944 at 30fps. It provides full-frame,
16b97ee269SEmmanuel Vadot  sub-sampled, and windowed 10-bit MIPI images in various formats via the
17b97ee269SEmmanuel Vadot  Serial Camera Control Bus (SCCB) interface.
18b97ee269SEmmanuel Vadot
19aa1a8ff2SEmmanuel Vadot  OV5693/OV5695 are controlled via I2C and two-wire Serial Camera Control Bus
20aa1a8ff2SEmmanuel Vadot  (SCCB). The sensor output is available via CSI-2 serial data output (up to
21aa1a8ff2SEmmanuel Vadot  2-lane).
22b97ee269SEmmanuel Vadot
23b97ee269SEmmanuel VadotallOf:
24b97ee269SEmmanuel Vadot  - $ref: /schemas/media/video-interface-devices.yaml#
25aa1a8ff2SEmmanuel Vadot  - if:
26aa1a8ff2SEmmanuel Vadot      properties:
27aa1a8ff2SEmmanuel Vadot        compatible:
28aa1a8ff2SEmmanuel Vadot          contains:
29aa1a8ff2SEmmanuel Vadot            const: ovti,ov5693
30aa1a8ff2SEmmanuel Vadot    then:
31aa1a8ff2SEmmanuel Vadot      properties:
32aa1a8ff2SEmmanuel Vadot        port:
33aa1a8ff2SEmmanuel Vadot          properties:
34aa1a8ff2SEmmanuel Vadot            endpoint:
35aa1a8ff2SEmmanuel Vadot              required:
36aa1a8ff2SEmmanuel Vadot                - link-frequencies
37b97ee269SEmmanuel Vadot
38b97ee269SEmmanuel Vadotproperties:
39b97ee269SEmmanuel Vadot  compatible:
40aa1a8ff2SEmmanuel Vadot    enum:
41aa1a8ff2SEmmanuel Vadot      - ovti,ov5693
42aa1a8ff2SEmmanuel Vadot      - ovti,ov5695
43b97ee269SEmmanuel Vadot
44b97ee269SEmmanuel Vadot  reg:
45b97ee269SEmmanuel Vadot    maxItems: 1
46b97ee269SEmmanuel Vadot
47b97ee269SEmmanuel Vadot  clocks:
48b97ee269SEmmanuel Vadot    description:
49b97ee269SEmmanuel Vadot      System input clock (aka XVCLK). From 6 to 27 MHz.
50b97ee269SEmmanuel Vadot    maxItems: 1
51b97ee269SEmmanuel Vadot
52aa1a8ff2SEmmanuel Vadot  clock-names:
53aa1a8ff2SEmmanuel Vadot    const: xvclk
54aa1a8ff2SEmmanuel Vadot
55b97ee269SEmmanuel Vadot  dovdd-supply:
56b97ee269SEmmanuel Vadot    description:
57b97ee269SEmmanuel Vadot      Digital I/O voltage supply, 1.8V.
58b97ee269SEmmanuel Vadot
59b97ee269SEmmanuel Vadot  avdd-supply:
60b97ee269SEmmanuel Vadot    description:
61b97ee269SEmmanuel Vadot      Analog voltage supply, 2.8V.
62b97ee269SEmmanuel Vadot
63b97ee269SEmmanuel Vadot  dvdd-supply:
64b97ee269SEmmanuel Vadot    description:
65b97ee269SEmmanuel Vadot      Digital core voltage supply, 1.2V.
66b97ee269SEmmanuel Vadot
67b97ee269SEmmanuel Vadot  reset-gpios:
68b97ee269SEmmanuel Vadot    description:
69b97ee269SEmmanuel Vadot      The phandle and specifier for the GPIO that controls sensor reset.
70b97ee269SEmmanuel Vadot      This corresponds to the hardware pin XSHUTDN which is physically
71b97ee269SEmmanuel Vadot      active low.
72b97ee269SEmmanuel Vadot    maxItems: 1
73b97ee269SEmmanuel Vadot
74b97ee269SEmmanuel Vadot  port:
75b97ee269SEmmanuel Vadot    description: MIPI CSI-2 transmitter port
76b97ee269SEmmanuel Vadot    $ref: /schemas/graph.yaml#/$defs/port-base
77b97ee269SEmmanuel Vadot    additionalProperties: false
78b97ee269SEmmanuel Vadot
79b97ee269SEmmanuel Vadot    properties:
80b97ee269SEmmanuel Vadot      endpoint:
81b97ee269SEmmanuel Vadot        $ref: /schemas/media/video-interfaces.yaml#
82b97ee269SEmmanuel Vadot        unevaluatedProperties: false
83b97ee269SEmmanuel Vadot
84b97ee269SEmmanuel Vadot        properties:
85b97ee269SEmmanuel Vadot          link-frequencies: true
86b97ee269SEmmanuel Vadot
87b97ee269SEmmanuel Vadot          data-lanes:
88b97ee269SEmmanuel Vadot            minItems: 1
89b97ee269SEmmanuel Vadot            maxItems: 2
90b97ee269SEmmanuel Vadot
91b97ee269SEmmanuel Vadot        required:
92b97ee269SEmmanuel Vadot          - data-lanes
93b97ee269SEmmanuel Vadot
94b97ee269SEmmanuel Vadotrequired:
95b97ee269SEmmanuel Vadot  - compatible
96b97ee269SEmmanuel Vadot  - reg
97b97ee269SEmmanuel Vadot  - clocks
98b97ee269SEmmanuel Vadot  - port
99b97ee269SEmmanuel Vadot
100b97ee269SEmmanuel VadotunevaluatedProperties: false
101b97ee269SEmmanuel Vadot
102b97ee269SEmmanuel Vadotexamples:
103b97ee269SEmmanuel Vadot  - |
104b97ee269SEmmanuel Vadot    #include <dt-bindings/clock/px30-cru.h>
105b97ee269SEmmanuel Vadot    #include <dt-bindings/gpio/gpio.h>
106b97ee269SEmmanuel Vadot    #include <dt-bindings/pinctrl/rockchip.h>
107b97ee269SEmmanuel Vadot
108b97ee269SEmmanuel Vadot    i2c {
109b97ee269SEmmanuel Vadot        #address-cells = <1>;
110b97ee269SEmmanuel Vadot        #size-cells = <0>;
111b97ee269SEmmanuel Vadot
112b97ee269SEmmanuel Vadot        ov5693: camera@36 {
113b97ee269SEmmanuel Vadot            compatible = "ovti,ov5693";
114b97ee269SEmmanuel Vadot            reg = <0x36>;
115b97ee269SEmmanuel Vadot
116b97ee269SEmmanuel Vadot            reset-gpios = <&gpio2 RK_PB1 GPIO_ACTIVE_LOW>;
117b97ee269SEmmanuel Vadot            pinctrl-names = "default";
118b97ee269SEmmanuel Vadot            pinctrl-0 = <&cif_clkout_m0>;
119b97ee269SEmmanuel Vadot
120b97ee269SEmmanuel Vadot            clocks = <&cru SCLK_CIF_OUT>;
121b97ee269SEmmanuel Vadot            assigned-clocks = <&cru SCLK_CIF_OUT>;
122b97ee269SEmmanuel Vadot            assigned-clock-rates = <19200000>;
123b97ee269SEmmanuel Vadot
124b97ee269SEmmanuel Vadot            avdd-supply = <&vcc_1v8>;
125b97ee269SEmmanuel Vadot            dvdd-supply = <&vcc_1v2>;
126b97ee269SEmmanuel Vadot            dovdd-supply = <&vcc_2v8>;
127b97ee269SEmmanuel Vadot
128b97ee269SEmmanuel Vadot            rotation = <90>;
129b97ee269SEmmanuel Vadot            orientation = <0>;
130b97ee269SEmmanuel Vadot
131b97ee269SEmmanuel Vadot            port {
132b97ee269SEmmanuel Vadot                ucam_out: endpoint {
133b97ee269SEmmanuel Vadot                    remote-endpoint = <&mipi_in_ucam>;
134b97ee269SEmmanuel Vadot                    data-lanes = <1 2>;
135b97ee269SEmmanuel Vadot                    link-frequencies = /bits/ 64 <450000000>;
136b97ee269SEmmanuel Vadot                };
137b97ee269SEmmanuel Vadot            };
138b97ee269SEmmanuel Vadot        };
139b97ee269SEmmanuel Vadot    };
140b97ee269SEmmanuel Vadot
141b97ee269SEmmanuel Vadot...
142