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
7title: Sony 1/4.0-Inch 8Mpixel CMOS Digital Image Sensor
8
9maintainers:
10  - Dave Stevenson <dave.stevenson@raspberrypi.com>
11
12description: |-
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
19properties:
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    description: |-
44      Reference to the GPIO connected to the xclr pin, if any.
45      Must be released (set high) after all supplies are applied.
46
47  # See ../video-interfaces.txt for more details
48  port:
49    type: object
50    properties:
51      endpoint:
52        type: object
53        properties:
54          data-lanes:
55            description: |-
56              The sensor supports either two-lane, or four-lane operation.
57              If this property is omitted four-lane operation is assumed.
58              For two-lane operation the property must be set to <1 2>.
59            items:
60              - const: 1
61              - const: 2
62
63          clock-noncontinuous:
64            type: boolean
65            description: |-
66              MIPI CSI-2 clock is non-continuous if this property is present,
67              otherwise it's continuous.
68
69          link-frequencies:
70            $ref: /schemas/types.yaml#/definitions/uint64-array
71            description:
72              Allowed data bus frequencies.
73
74        required:
75          - link-frequencies
76
77required:
78  - compatible
79  - reg
80  - clocks
81  - VANA-supply
82  - VDIG-supply
83  - VDDL-supply
84  - port
85
86additionalProperties: false
87
88examples:
89  - |
90    i2c0 {
91        #address-cells = <1>;
92        #size-cells = <0>;
93
94        imx219: sensor@10 {
95            compatible = "sony,imx219";
96            reg = <0x10>;
97            clocks = <&imx219_clk>;
98            VANA-supply = <&imx219_vana>;   /* 2.8v */
99            VDIG-supply = <&imx219_vdig>;   /* 1.8v */
100            VDDL-supply = <&imx219_vddl>;   /* 1.2v */
101
102            port {
103                imx219_0: endpoint {
104                    remote-endpoint = <&csi1_ep>;
105                    data-lanes = <1 2>;
106                    clock-noncontinuous;
107                    link-frequencies = /bits/ 64 <456000000>;
108                };
109            };
110        };
111    };
112
113...
114