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
7title: Sony 1/3.06-Inch 13.13MP CMOS Digital Image Sensor
8
9maintainers:
10  - Ricardo Ribalda <ribalda@kernel.org>
11
12description: |
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
18allOf:
19  - $ref: ../video-interface-devices.yaml#
20
21properties:
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
83required:
84  - compatible
85  - reg
86  - clocks
87  - clock-frequency
88  - enable-gpios
89  - vdddo-supply
90  - vdda-supply
91  - vddd-supply
92  - port
93
94unevaluatedProperties: false
95
96examples:
97  - |
98    #include <dt-bindings/gpio/gpio.h>
99
100    i2c {
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...
126