xref: /linux/Documentation/devicetree/bindings/media/i2c/sony,imx219.yaml (revision bf373e4c786bfe989e637195252698f45b157a68)
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/sony,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
19allOf:
20  - $ref: /schemas/media/video-interface-devices.yaml#
21
22properties:
23  compatible:
24    const: sony,imx219
25
26  reg:
27    description: I2C device address
28    maxItems: 1
29
30  clocks:
31    maxItems: 1
32
33  VDIG-supply:
34    description:
35      Digital I/O voltage supply, 1.8 volts
36
37  VANA-supply:
38    description:
39      Analog voltage supply, 2.8 volts
40
41  VDDL-supply:
42    description:
43      Digital core voltage supply, 1.2 volts
44
45  reset-gpios:
46    maxItems: 1
47    description: |-
48      Reference to the GPIO connected to the xclr pin, if any.
49      Must be released (set high) after all supplies are applied.
50
51  port:
52    $ref: /schemas/graph.yaml#/$defs/port-base
53    additionalProperties: false
54
55    properties:
56      endpoint:
57        $ref: /schemas/media/video-interfaces.yaml#
58        unevaluatedProperties: false
59
60        properties:
61          data-lanes:
62            description: |-
63              The sensor supports either two-lane, or four-lane operation.
64              If this property is omitted four-lane operation is assumed.
65              For two-lane operation the property must be set to <1 2>.
66            items:
67              - const: 1
68              - const: 2
69
70          clock-noncontinuous: true
71          link-frequencies: true
72
73        required:
74          - link-frequencies
75
76required:
77  - compatible
78  - reg
79  - clocks
80  - VANA-supply
81  - VDIG-supply
82  - VDDL-supply
83  - port
84
85unevaluatedProperties: false
86
87examples:
88  - |
89    i2c {
90        #address-cells = <1>;
91        #size-cells = <0>;
92
93        imx219: sensor@10 {
94            compatible = "sony,imx219";
95            reg = <0x10>;
96            clocks = <&imx219_clk>;
97            VANA-supply = <&imx219_vana>;   /* 2.8v */
98            VDIG-supply = <&imx219_vdig>;   /* 1.8v */
99            VDDL-supply = <&imx219_vddl>;   /* 1.2v */
100
101            port {
102                imx219_0: endpoint {
103                    remote-endpoint = <&csi1_ep>;
104                    data-lanes = <1 2>;
105                    clock-noncontinuous;
106                    link-frequencies = /bits/ 64 <456000000>;
107                };
108            };
109        };
110    };
111
112...
113