xref: /linux/Documentation/devicetree/bindings/media/i2c/imx219.yaml (revision 1ac731c529cd4d6adbce134754b51ff7d822b145)
19d730f2cSAndrey Konovalov# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
29d730f2cSAndrey Konovalov%YAML 1.2
39d730f2cSAndrey Konovalov---
49d730f2cSAndrey Konovalov$id: http://devicetree.org/schemas/media/i2c/imx219.yaml#
59d730f2cSAndrey Konovalov$schema: http://devicetree.org/meta-schemas/core.yaml#
69d730f2cSAndrey Konovalov
79d730f2cSAndrey Konovalovtitle: Sony 1/4.0-Inch 8Mpixel CMOS Digital Image Sensor
89d730f2cSAndrey Konovalov
99d730f2cSAndrey Konovalovmaintainers:
109d730f2cSAndrey Konovalov  - Dave Stevenson <dave.stevenson@raspberrypi.com>
119d730f2cSAndrey Konovalov
129d730f2cSAndrey Konovalovdescription: |-
139d730f2cSAndrey Konovalov  The Sony imx219 is a 1/4.0-inch CMOS active pixel digital image sensor
149d730f2cSAndrey Konovalov  with an active array size of 3280H x 2464V. It is programmable through
159d730f2cSAndrey Konovalov  I2C interface. The I2C address is fixed to 0x10 as per sensor data sheet.
169d730f2cSAndrey Konovalov  Image data is sent through MIPI CSI-2, which is configured as either 2 or
179d730f2cSAndrey Konovalov  4 data lanes.
189d730f2cSAndrey Konovalov
199d730f2cSAndrey Konovalovproperties:
209d730f2cSAndrey Konovalov  compatible:
219d730f2cSAndrey Konovalov    const: sony,imx219
229d730f2cSAndrey Konovalov
239d730f2cSAndrey Konovalov  reg:
249d730f2cSAndrey Konovalov    description: I2C device address
259d730f2cSAndrey Konovalov    maxItems: 1
269d730f2cSAndrey Konovalov
279d730f2cSAndrey Konovalov  clocks:
289d730f2cSAndrey Konovalov    maxItems: 1
299d730f2cSAndrey Konovalov
309d730f2cSAndrey Konovalov  VDIG-supply:
319d730f2cSAndrey Konovalov    description:
329d730f2cSAndrey Konovalov      Digital I/O voltage supply, 1.8 volts
339d730f2cSAndrey Konovalov
349d730f2cSAndrey Konovalov  VANA-supply:
359d730f2cSAndrey Konovalov    description:
369d730f2cSAndrey Konovalov      Analog voltage supply, 2.8 volts
379d730f2cSAndrey Konovalov
389d730f2cSAndrey Konovalov  VDDL-supply:
399d730f2cSAndrey Konovalov    description:
409d730f2cSAndrey Konovalov      Digital core voltage supply, 1.2 volts
419d730f2cSAndrey Konovalov
429d730f2cSAndrey Konovalov  reset-gpios:
430499220dSRob Herring    maxItems: 1
449d730f2cSAndrey Konovalov    description: |-
459d730f2cSAndrey Konovalov      Reference to the GPIO connected to the xclr pin, if any.
469d730f2cSAndrey Konovalov      Must be released (set high) after all supplies are applied.
479d730f2cSAndrey Konovalov
489d730f2cSAndrey Konovalov  port:
49066a94e2SRob Herring    $ref: /schemas/graph.yaml#/$defs/port-base
50066a94e2SRob Herring    additionalProperties: false
51066a94e2SRob Herring
529d730f2cSAndrey Konovalov    properties:
539d730f2cSAndrey Konovalov      endpoint:
54066a94e2SRob Herring        $ref: /schemas/media/video-interfaces.yaml#
55066a94e2SRob Herring        unevaluatedProperties: false
56066a94e2SRob Herring
579d730f2cSAndrey Konovalov        properties:
589d730f2cSAndrey Konovalov          data-lanes:
599d730f2cSAndrey Konovalov            description: |-
609d730f2cSAndrey Konovalov              The sensor supports either two-lane, or four-lane operation.
619d730f2cSAndrey Konovalov              If this property is omitted four-lane operation is assumed.
629d730f2cSAndrey Konovalov              For two-lane operation the property must be set to <1 2>.
639d730f2cSAndrey Konovalov            items:
649d730f2cSAndrey Konovalov              - const: 1
659d730f2cSAndrey Konovalov              - const: 2
669d730f2cSAndrey Konovalov
67066a94e2SRob Herring          clock-noncontinuous: true
68066a94e2SRob Herring          link-frequencies: true
699d730f2cSAndrey Konovalov
709d730f2cSAndrey Konovalov        required:
719d730f2cSAndrey Konovalov          - link-frequencies
729d730f2cSAndrey Konovalov
739d730f2cSAndrey Konovalovrequired:
749d730f2cSAndrey Konovalov  - compatible
759d730f2cSAndrey Konovalov  - reg
769d730f2cSAndrey Konovalov  - clocks
779d730f2cSAndrey Konovalov  - VANA-supply
789d730f2cSAndrey Konovalov  - VDIG-supply
799d730f2cSAndrey Konovalov  - VDDL-supply
809d730f2cSAndrey Konovalov  - port
819d730f2cSAndrey Konovalov
829d730f2cSAndrey KonovalovadditionalProperties: false
839d730f2cSAndrey Konovalov
849d730f2cSAndrey Konovalovexamples:
859d730f2cSAndrey Konovalov  - |
86*20a72af1SRob Herring    i2c {
879d730f2cSAndrey Konovalov        #address-cells = <1>;
889d730f2cSAndrey Konovalov        #size-cells = <0>;
899d730f2cSAndrey Konovalov
909d730f2cSAndrey Konovalov        imx219: sensor@10 {
919d730f2cSAndrey Konovalov            compatible = "sony,imx219";
929d730f2cSAndrey Konovalov            reg = <0x10>;
939d730f2cSAndrey Konovalov            clocks = <&imx219_clk>;
949d730f2cSAndrey Konovalov            VANA-supply = <&imx219_vana>;   /* 2.8v */
959d730f2cSAndrey Konovalov            VDIG-supply = <&imx219_vdig>;   /* 1.8v */
969d730f2cSAndrey Konovalov            VDDL-supply = <&imx219_vddl>;   /* 1.2v */
979d730f2cSAndrey Konovalov
989d730f2cSAndrey Konovalov            port {
999d730f2cSAndrey Konovalov                imx219_0: endpoint {
1009d730f2cSAndrey Konovalov                    remote-endpoint = <&csi1_ep>;
1019d730f2cSAndrey Konovalov                    data-lanes = <1 2>;
1029d730f2cSAndrey Konovalov                    clock-noncontinuous;
1039d730f2cSAndrey Konovalov                    link-frequencies = /bits/ 64 <456000000>;
1049d730f2cSAndrey Konovalov                };
1059d730f2cSAndrey Konovalov            };
1069d730f2cSAndrey Konovalov        };
1079d730f2cSAndrey Konovalov    };
1089d730f2cSAndrey Konovalov
1099d730f2cSAndrey Konovalov...
110