blob: ad07204057f979ade534d29c99c3aff7372bd332 [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2# Copyright (c) 2022 Theobroma Systems Design und Consulting GmbH
3%YAML 1.2
4---
5$id: http://devicetree.org/schemas/media/i2c/ovti,ov5675.yaml#
6$schema: http://devicetree.org/meta-schemas/core.yaml#
7
8title: Omnivision OV5675 CMOS Sensor
9
10maintainers:
11 - Quentin Schulz <quentin.schulz@theobroma-systems.com>
12
13allOf:
14 - $ref: /schemas/media/video-interface-devices.yaml#
15
16description: |
17 The Omnivision OV5675 is a high performance, 1/5-inch, 5 megapixel, CMOS
18 image sensor that delivers 2592x1944 at 30fps. It provides full-frame,
19 sub-sampled, and windowed 10-bit MIPI images in various formats via the
20 Serial Camera Control Bus (SCCB) interface.
21
22 This chip is programmable through I2C and two-wire SCCB. The sensor output
23 is available via CSI-2 serial data output (up to 2-lane).
24
25properties:
26 compatible:
27 const: ovti,ov5675
28
29 reg:
30 maxItems: 1
31
32 clocks:
33 description:
34 System input clock (aka XVCLK). From 6 to 27 MHz.
35 maxItems: 1
36
37 dovdd-supply:
38 description:
39 Digital I/O voltage supply, 1.8 volts.
40
41 avdd-supply:
42 description:
43 Analog voltage supply, 2.8 volts.
44
45 dvdd-supply:
46 description:
47 Digital core voltage supply, 1.2 volts.
48
49 reset-gpios:
50 description:
51 The phandle and specifier for the GPIO that controls sensor reset.
52 This corresponds to the hardware pin XSHUTDN which is physically
53 active low.
54 maxItems: 1
55
56 port:
57 $ref: /schemas/graph.yaml#/$defs/port-base
58 additionalProperties: false
59
60 properties:
61 endpoint:
62 $ref: /schemas/media/video-interfaces.yaml#
63 unevaluatedProperties: false
64
65 properties:
66 data-lanes:
67 minItems: 1
68 maxItems: 2
69
70 # Supports max data transfer of 900 Mbps per lane
71 link-frequencies: true
72
73required:
74 - compatible
75 - reg
76 - clocks
77 - dovdd-supply
78 - avdd-supply
79 - dvdd-supply
80 - port
81
82unevaluatedProperties: false
83
84examples:
85 - |
86 #include <dt-bindings/clock/px30-cru.h>
87 #include <dt-bindings/gpio/gpio.h>
88 #include <dt-bindings/pinctrl/rockchip.h>
89
90 i2c {
91 #address-cells = <1>;
92 #size-cells = <0>;
93
94 ov5675: camera@36 {
95 compatible = "ovti,ov5675";
96 reg = <0x36>;
97
98 reset-gpios = <&gpio2 RK_PB1 GPIO_ACTIVE_LOW>;
99 pinctrl-names = "default";
100 pinctrl-0 = <&cif_clkout_m0>;
101
102 clocks = <&cru SCLK_CIF_OUT>;
103 assigned-clocks = <&cru SCLK_CIF_OUT>;
104 assigned-clock-rates = <19200000>;
105
106 avdd-supply = <&vcc_1v8>;
107 dvdd-supply = <&vcc_1v2>;
108 dovdd-supply = <&vcc_2v8>;
109
110 rotation = <90>;
111 orientation = <0>;
112
113 port {
114 ucam_out: endpoint {
115 remote-endpoint = <&mipi_in_ucam>;
116 data-lanes = <1 2>;
117 link-frequencies = /bits/ 64 <450000000>;
118 };
119 };
120 };
121 };
122...