GNU Linux-libre 6.1.90-gnu
[releases.git] / Documentation / devicetree / bindings / media / i2c / sony,imx214.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/sony,imx214.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: Sony 1/3.06-Inch 13.13MP CMOS Digital Image Sensor
8
9 maintainers:
10   - Ricardo Ribalda <ribalda@kernel.org>
11
12 description: |
13   The Sony IMX214 is a 1/3.06-inch CMOS active pixel digital image sensor with
14   an active array size of 4224H x 3200V. It is programmable through an I2C
15   interface. Image data is sent through MIPI CSI-2, through 2 or 4 lanes at a
16   maximum throughput of 1.2Gbps/lane.
17
18 allOf:
19   - $ref: ../video-interface-devices.yaml#
20
21 properties:
22   compatible:
23     const: sony,imx214
24
25   reg:
26     enum:
27       - 0x10
28       - 0x1a
29
30   clocks:
31     description: Reference to the xclk clock.
32     maxItems: 1
33
34   clock-frequency:
35     description: Frequency of the xclk clock in Hz.
36
37   enable-gpios:
38     description: GPIO descriptor for the enable pin.
39     maxItems: 1
40
41   vdddo-supply:
42     description: Chip digital IO regulator (1.8V).
43
44   vdda-supply:
45     description: Chip analog regulator (2.7V).
46
47   vddd-supply:
48     description: Chip digital core regulator (1.12V).
49
50   flash-leds: true
51   lens-focus: true
52
53   port:
54     $ref: /schemas/graph.yaml#/$defs/port-base
55     description: |
56       Video output port.
57
58     properties:
59       endpoint:
60         $ref: /schemas/media/video-interfaces.yaml#
61         unevaluatedProperties: false
62
63         properties:
64           data-lanes:
65             anyOf:
66               - items:
67                   - const: 1
68                   - const: 2
69               - items:
70                   - const: 1
71                   - const: 2
72                   - const: 3
73                   - const: 4
74
75           link-frequencies: true
76
77         required:
78           - data-lanes
79           - link-frequencies
80
81     additionalProperties: false
82
83 required:
84   - compatible
85   - reg
86   - clocks
87   - clock-frequency
88   - enable-gpios
89   - vdddo-supply
90   - vdda-supply
91   - vddd-supply
92   - port
93
94 additionalProperties: false
95
96 examples:
97   - |
98     #include <dt-bindings/gpio/gpio.h>
99
100     i2c0 {
101         #address-cells = <1>;
102         #size-cells = <0>;
103
104         camera-sensor@1a {
105             compatible = "sony,imx214";
106             reg = <0x1a>;
107             vdddo-supply = <&pm8994_lvs1>;
108             vddd-supply = <&camera_vddd_1v12>;
109             vdda-supply = <&pm8994_l17>;
110             lens-focus = <&ad5820>;
111             enable-gpios = <&msmgpio 25 GPIO_ACTIVE_HIGH>;
112             clocks = <&camera_clk>;
113             clock-frequency = <24000000>;
114
115             port {
116                 imx214_ep: endpoint {
117                     data-lanes = <1 2 3 4>;
118                     link-frequencies = /bits/ 64 <480000000>;
119                     remote-endpoint = <&csiphy0_ep>;
120                 };
121             };
122         };
123     };
124
125 ...