Linux 6.9-rc1
[linux-2.6-microblaze.git] / Documentation / devicetree / bindings / media / i2c / ovti,ov02a10.yaml
1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2 # Copyright (c) 2020 MediaTek Inc.
3 %YAML 1.2
4 ---
5 $id: http://devicetree.org/schemas/media/i2c/ovti,ov02a10.yaml#
6 $schema: http://devicetree.org/meta-schemas/core.yaml#
7
8 title: Omnivision OV02A10 CMOS Sensor
9
10 maintainers:
11   - Dongchun Zhu <dongchun.zhu@mediatek.com>
12
13 description: |-
14   The Omnivision OV02A10 is a low-cost, high performance, 1/5-inch, 2 megapixel
15   image sensor, which is the latest production derived from Omnivision's CMOS
16   image sensor technology. Ihis chip supports high frame rate speeds up to 30fps
17   @ 1600x1200 (UXGA) resolution transferred over a 1-lane MIPI interface. The
18   sensor output is available via CSI-2 serial data output.
19
20 allOf:
21   - $ref: /schemas/media/video-interface-devices.yaml#
22
23 properties:
24   compatible:
25     const: ovti,ov02a10
26
27   reg:
28     maxItems: 1
29
30   clocks:
31     maxItems: 1
32
33   clock-names:
34     description:
35       External clock for the sensor.
36     items:
37       - const: eclk
38
39   clock-frequency:
40     description:
41       Frequency of the eclk clock in Hz.
42
43   dovdd-supply:
44     description:
45       Definition of the regulator used as Digital I/O voltage supply.
46
47   avdd-supply:
48     description:
49       Definition of the regulator used as Analog voltage supply.
50
51   dvdd-supply:
52     description:
53       Definition of the regulator used as Digital core voltage supply.
54
55   powerdown-gpios:
56     description:
57       Must be the device tree identifier of the GPIO connected to the
58       PD_PAD pin. This pin is used to place the OV02A10 into standby mode
59       or shutdown mode. As the line needs to be high for the powerdown mode
60       to be active, it should be marked GPIO_ACTIVE_HIGH.
61     maxItems: 1
62
63   reset-gpios:
64     description:
65       Must be the device tree identifier of the GPIO connected to the
66       RST_PD pin. If specified, it will be asserted during driver probe.
67       As the line needs to be low for the reset to be active, it should be
68       marked GPIO_ACTIVE_LOW.
69     maxItems: 1
70
71   port:
72     $ref: /schemas/graph.yaml#/$defs/port-base
73     additionalProperties: false
74     description:
75       Output port node, single endpoint describing the CSI-2 transmitter.
76
77     properties:
78       endpoint:
79         $ref: /schemas/media/video-interfaces.yaml#
80         unevaluatedProperties: false
81
82         properties:
83           link-frequencies: true
84           ovti,mipi-clock-voltage:
85             $ref: /schemas/types.yaml#/definitions/uint32
86             description:
87               Definition of MIPI clock voltage unit. This entry corresponds to
88               the link speed defined by the 'link-frequencies' property.
89               If present, the value shall be in the range of 0-4.
90             default: 4
91
92         required:
93           - link-frequencies
94
95     required:
96       - endpoint
97
98 required:
99   - compatible
100   - reg
101   - clocks
102   - clock-names
103   - clock-frequency
104   - dovdd-supply
105   - avdd-supply
106   - dvdd-supply
107   - powerdown-gpios
108   - reset-gpios
109   - port
110
111 unevaluatedProperties: false
112
113 examples:
114   - |
115     #include <dt-bindings/gpio/gpio.h>
116
117     i2c {
118         #address-cells = <1>;
119         #size-cells = <0>;
120
121         ov02a10: camera-sensor@3d {
122             compatible = "ovti,ov02a10";
123             reg = <0x3d>;
124
125             powerdown-gpios = <&pio 107 GPIO_ACTIVE_HIGH>;
126             reset-gpios = <&pio 109 GPIO_ACTIVE_LOW>;
127
128             clocks = <&ov02a10_clk>;
129             clock-names = "eclk";
130             clock-frequency = <24000000>;
131
132             rotation = <180>;
133
134             dovdd-supply = <&ov02a10_dovdd>;
135             avdd-supply = <&ov02a10_avdd>;
136             dvdd-supply = <&ov02a10_dvdd>;
137
138             port {
139                 wcam_out: endpoint {
140                     link-frequencies = /bits/ 64 <390000000>;
141                     ovti,mipi-clock-voltage = <3>;
142                     remote-endpoint = <&mipi_in_wcam>;
143                 };
144             };
145         };
146     };
147
148 ...