xref: /linux/Documentation/devicetree/bindings/media/i2c/ovti,ov08x40.yaml (revision 7f71507851fc7764b36a3221839607d3a45c2025)
1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2# Copyright (c) 2024 Linaro Ltd.
3%YAML 1.2
4---
5$id: http://devicetree.org/schemas/media/i2c/ovti,ov08x40.yaml#
6$schema: http://devicetree.org/meta-schemas/core.yaml#
7
8title: Omnivision OV08X40 CMOS Sensor
9
10maintainers:
11  - Bryan O'Donoghue <bryan.odonoghue@linaro.org>
12
13description: |
14  The Omnivision OV08X40 is a 9.2 megapixel, CMOS image sensor which supports:
15  - Automatic black level calibration (ABLC)
16  - Programmable controls for frame rate, mirror and flip, binning, cropping
17    and windowing
18  - Output formats 10-bit 4C RGB RAW, 10-bit Bayer RAW
19  - 4-lane MIPI D-PHY TX @ 1 Gbps per lane
20  - 2-lane MPIP D-PHY TX @ 2 Gbps per lane
21  - Dynamic defect pixel cancellation
22  - Standard SCCB command interface
23
24allOf:
25  - $ref: /schemas/media/video-interface-devices.yaml#
26
27properties:
28  compatible:
29    const: ovti,ov08x40
30
31  reg:
32    maxItems: 1
33
34  clocks:
35    maxItems: 1
36
37  avdd-supply:
38    description: Analogue circuit voltage supply.
39
40  dovdd-supply:
41    description: I/O circuit voltage supply.
42
43  dvdd-supply:
44    description: Digital circuit voltage supply.
45
46  reset-gpios:
47    description: Active low GPIO connected to XSHUTDOWN pad of the sensor.
48
49  port:
50    $ref: /schemas/graph.yaml#/$defs/port-base
51    additionalProperties: false
52
53    properties:
54      endpoint:
55        $ref: /schemas/media/video-interfaces.yaml#
56        additionalProperties: false
57
58        properties:
59          data-lanes:
60            oneOf:
61              - items:
62                  - const: 1
63                  - const: 2
64              - items:
65                  - const: 1
66                  - const: 2
67                  - const: 3
68                  - const: 4
69          link-frequencies: true
70          remote-endpoint: true
71
72        required:
73          - data-lanes
74          - link-frequencies
75          - remote-endpoint
76
77required:
78  - compatible
79  - reg
80  - clocks
81  - port
82
83unevaluatedProperties: false
84
85examples:
86  - |
87    #include <dt-bindings/gpio/gpio.h>
88
89    i2c {
90        #address-cells = <1>;
91        #size-cells = <0>;
92
93        ov08x40: camera@36 {
94            compatible = "ovti,ov08x40";
95            reg = <0x36>;
96
97            reset-gpios = <&tlmm 111 GPIO_ACTIVE_LOW>;
98            pinctrl-names = "default";
99            pinctrl-0 = <&cam_rgb_defaultt>;
100
101            clocks = <&ov08x40_clk>;
102
103            assigned-clocks = <&ov08x40_clk>;
104            assigned-clock-parents = <&ov08x40_clk_parent>;
105            assigned-clock-rates = <19200000>;
106
107            avdd-supply = <&vreg_l7b_2p8>;
108            dvdd-supply = <&vreg_l7b_1p8>;
109            dovdd-supply = <&vreg_l3m_1p8>;
110
111            port {
112                ov08x40_ep: endpoint {
113                    remote-endpoint = <&csiphy4_ep>;
114                    data-lanes = <1 2 3 4>;
115                    link-frequencies = /bits/ 64 <400000000>;
116                };
117            };
118        };
119    };
120...
121