Merge tag 'v5.15.57' into rpi-5.15.y
[platform/kernel/linux-rpi.git] / Documentation / devicetree / bindings / media / i2c / imx477.yaml
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/imx477.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: Sony 1/2.3-Inch 12Mpixel CMOS Digital Image Sensor
8
9 maintainers:
10   - Naushir Patuck <naush@raspberypi.com>
11
12 description: |-
13   The Sony IMX477 is a 1/2.3-inch CMOS active pixel digital image sensor
14   with an active array size of 4056H x 3040V. It is programmable through
15   I2C interface. The I2C address is fixed to 0x1A 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
19 properties:
20   compatible:
21     const: sony,imx477
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.05 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.8 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 all supplies and INCK 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               For two-lane operation the property must be set to <1 2>.
58             items:
59               - const: 1
60               - const: 2
61
62           clock-noncontinuous:
63             type: boolean
64             description: |-
65               MIPI CSI-2 clock is non-continuous if this property is present,
66               otherwise it's continuous.
67
68           link-frequencies:
69             allOf:
70               - $ref: /schemas/types.yaml#/definitions/uint64-array
71             description:
72               Allowed data bus frequencies.
73
74         required:
75           - link-frequencies
76
77 required:
78   - compatible
79   - reg
80   - clocks
81   - VANA-supply
82   - VDIG-supply
83   - VDDL-supply
84   - port
85
86 additionalProperties: false
87
88 examples:
89   - |
90     i2c0 {
91         #address-cells = <1>;
92         #size-cells = <0>;
93
94         imx477: sensor@10 {
95             compatible = "sony,imx477";
96             reg = <0x1a>;
97             clocks = <&imx477_clk>;
98             VANA-supply = <&imx477_vana>;   /* 2.8v */
99             VDIG-supply = <&imx477_vdig>;   /* 1.05v */
100             VDDL-supply = <&imx477_vddl>;   /* 1.8v */
101
102             port {
103                 imx477_0: endpoint {
104                     remote-endpoint = <&csi1_ep>;
105                     data-lanes = <1 2>;
106                     clock-noncontinuous;
107                     link-frequencies = /bits/ 64 <450000000>;
108                 };
109             };
110         };
111     };
112
113 ...