xref: /linux/Documentation/devicetree/bindings/media/i2c/sony,imx412.yaml (revision 7f4f3b14e8079ecde096bd734af10e30d40c27b7)
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2# Copyright (C) 2021 Intel Corporation
3%YAML 1.2
4---
5$id: http://devicetree.org/schemas/media/i2c/sony,imx412.yaml#
6$schema: http://devicetree.org/meta-schemas/core.yaml#
7
8title: Sony IMX412 Sensor
9
10maintainers:
11  - Paul J. Murphy <paul.j.murphy@intel.com>
12  - Daniele Alessandrelli <daniele.alessandrelli@intel.com>
13
14description:
15  IMX412 sensor is a Sony CMOS active pixel digital image sensor with an active
16  array size of 4072H x 3176V. It is programmable through I2C interface. The
17  I2C client address is fixed to 0x1a as per sensor data sheet. Image data is
18  sent through MIPI CSI-2.
19
20properties:
21  compatible:
22    enum:
23      - sony,imx412
24      - sony,imx577
25  reg:
26    description: I2C address
27    maxItems: 1
28
29  clocks:
30    description: Clock frequency 6MHz, 12MHz, 18MHz, 24MHz or 27MHz
31    maxItems: 1
32
33  dovdd-supply:
34    description: Interface power supply.
35
36  avdd-supply:
37    description: Analog power supply.
38
39  dvdd-supply:
40    description: Digital power supply.
41
42  reset-gpios:
43    description: Reference to the GPIO connected to the XCLR pin, if any.
44    maxItems: 1
45
46  port:
47    additionalProperties: false
48    $ref: /schemas/graph.yaml#/$defs/port-base
49
50    properties:
51      endpoint:
52        $ref: /schemas/media/video-interfaces.yaml#
53        unevaluatedProperties: false
54
55        properties:
56          data-lanes: true
57          link-frequencies: true
58
59        required:
60          - data-lanes
61          - link-frequencies
62
63    required:
64      - endpoint
65
66required:
67  - compatible
68  - reg
69  - clocks
70  - port
71
72additionalProperties: false
73
74examples:
75  - |
76    i2c {
77        #address-cells = <1>;
78        #size-cells = <0>;
79
80        camera@1a {
81            compatible = "sony,imx412";
82            reg = <0x1a>;
83            clocks = <&imx412_clk>;
84
85            port {
86                imx412: endpoint {
87                    remote-endpoint = <&cam>;
88                    data-lanes = <1 2 3 4>;
89                    link-frequencies = /bits/ 64 <600000000>;
90                };
91            };
92        };
93    };
94...
95