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