GNU Linux-libre 6.1.90-gnu
[releases.git] / Documentation / devicetree / bindings / media / i2c / imx219.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/imx219.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: Sony 1/4.0-Inch 8Mpixel CMOS Digital Image Sensor
8
9 maintainers:
10   - Dave Stevenson <dave.stevenson@raspberrypi.com>
11
12 description: |-
13   The Sony imx219 is a 1/4.0-inch CMOS active pixel digital image sensor
14   with an active array size of 3280H x 2464V. It is programmable through
15   I2C interface. The I2C address is fixed to 0x10 as per sensor data sheet.
16   Image data is sent through MIPI CSI-2, which is configured as either 2 or
17   4 data lanes.
18
19 properties:
20   compatible:
21     const: sony,imx219
22
23   reg:
24     description: I2C device address
25     maxItems: 1
26
27   clocks:
28     maxItems: 1
29
30   VDIG-supply:
31     description:
32       Digital I/O voltage supply, 1.8 volts
33
34   VANA-supply:
35     description:
36       Analog voltage supply, 2.8 volts
37
38   VDDL-supply:
39     description:
40       Digital core voltage supply, 1.2 volts
41
42   reset-gpios:
43     maxItems: 1
44     description: |-
45       Reference to the GPIO connected to the xclr pin, if any.
46       Must be released (set high) after all supplies are applied.
47
48   port:
49     $ref: /schemas/graph.yaml#/$defs/port-base
50     additionalProperties: false
51
52     properties:
53       endpoint:
54         $ref: /schemas/media/video-interfaces.yaml#
55         unevaluatedProperties: false
56
57         properties:
58           data-lanes:
59             description: |-
60               The sensor supports either two-lane, or four-lane operation.
61               If this property is omitted four-lane operation is assumed.
62               For two-lane operation the property must be set to <1 2>.
63             items:
64               - const: 1
65               - const: 2
66
67           clock-noncontinuous: true
68           link-frequencies: true
69
70         required:
71           - link-frequencies
72
73 required:
74   - compatible
75   - reg
76   - clocks
77   - VANA-supply
78   - VDIG-supply
79   - VDDL-supply
80   - port
81
82 additionalProperties: false
83
84 examples:
85   - |
86     i2c0 {
87         #address-cells = <1>;
88         #size-cells = <0>;
89
90         imx219: sensor@10 {
91             compatible = "sony,imx219";
92             reg = <0x10>;
93             clocks = <&imx219_clk>;
94             VANA-supply = <&imx219_vana>;   /* 2.8v */
95             VDIG-supply = <&imx219_vdig>;   /* 1.8v */
96             VDDL-supply = <&imx219_vddl>;   /* 1.2v */
97
98             port {
99                 imx219_0: endpoint {
100                     remote-endpoint = <&csi1_ep>;
101                     data-lanes = <1 2>;
102                     clock-noncontinuous;
103                     link-frequencies = /bits/ 64 <456000000>;
104                 };
105             };
106         };
107     };
108
109 ...