GNU Linux-libre 6.1.90-gnu
[releases.git] / Documentation / devicetree / bindings / media / i2c / onnn,ar0521.yaml
1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2 %YAML 1.2
3 ---
4 $id: http://devicetree.org/schemas/media/i2c/onnn,ar0521.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: ON Semiconductor AR0521 MIPI CSI-2 sensor
8
9 maintainers:
10   - Krzysztof HaƂasa <khalasa@piap.pl>
11
12 description: |-
13   The AR0521 is a raw CMOS image sensor with MIPI CSI-2 and
14   I2C-compatible control interface.
15
16 properties:
17   compatible:
18     const: onnn,ar0521
19
20   reg:
21     maxItems: 1
22
23   clocks:
24     maxItems: 1
25
26   clock-names:
27     const: extclk
28
29   vaa-supply:
30     description:
31       Definition of the regulator used as analog (2.7 V) voltage supply.
32
33   vdd-supply:
34     description:
35       Definition of the regulator used as digital core (1.2 V) voltage supply.
36
37   vdd_io-supply:
38     description:
39       Definition of the regulator used as digital I/O (1.8 V) voltage supply.
40
41   reset-gpios:
42     description: reset GPIO, usually active low
43     maxItems: 1
44
45   port:
46     $ref: /schemas/graph.yaml#/$defs/port-base
47     unevaluatedProperties: false
48     description: |
49       Video output port.
50
51     properties:
52       endpoint:
53         $ref: /schemas/media/video-interfaces.yaml#
54         unevaluatedProperties: false
55
56         properties:
57           bus-type:
58             const: 4
59           data-lanes:
60             anyOf:
61               - items:
62                   - const: 1
63               - items:
64                   - const: 1
65                   - const: 2
66               - items:
67                   - const: 1
68                   - const: 2
69                   - const: 3
70                   - const: 4
71
72 required:
73   - compatible
74   - reg
75   - clocks
76   - clock-names
77   - vaa-supply
78   - vdd-supply
79   - vdd_io-supply
80   - port
81
82 additionalProperties: false
83
84 examples:
85   - |
86     #include <dt-bindings/gpio/gpio.h>
87     #include <dt-bindings/clock/imx6qdl-clock.h>
88
89     i2c {
90             #address-cells = <1>;
91             #size-cells = <0>;
92
93             ar0521: camera-sensor@36 {
94                     compatible = "onnn,ar0521";
95                     reg = <0x36>;
96                     pinctrl-names = "default";
97                     pinctrl-0 = <&pinctrl_mipi_camera>;
98                     clocks = <&clks IMX6QDL_CLK_CKO>;
99                     clock-names = "extclk";
100                     reset-gpios = <&gpio1 7 GPIO_ACTIVE_LOW>;
101                     vaa-supply = <&reg_2p7v>;
102                     vdd-supply = <&reg_1p2v>;
103                     vdd_io-supply = <&reg_1p8v>;
104
105                     port {
106                            mipi_camera_to_mipi_csi2: endpoint {
107                                     remote-endpoint = <&mipi_csi2_in>;
108                                     data-lanes = <1 2 3 4>;
109                             };
110                     };
111             };
112     };