summaryrefslogtreecommitdiff
path: root/Documentation/devicetree/bindings/media/i2c/sony,imx214.yaml
blob: 1a3590dd0e98a01ffe560d8c1fb3545842712bbe (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/media/i2c/sony,imx214.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Sony 1/3.06-Inch 13.13MP CMOS Digital Image Sensor

maintainers:
  - Ricardo Ribalda <ribalda@kernel.org>

description: |
  The Sony IMX214 is a 1/3.06-inch CMOS active pixel digital image sensor with
  an active array size of 4224H x 3200V. It is programmable through an I2C
  interface. Image data is sent through MIPI CSI-2, through 2 or 4 lanes at a
  maximum throughput of 1.2Gbps/lane.

properties:
  compatible:
    const: sony,imx214

  reg:
    enum:
      - 0x10
      - 0x1a

  clocks:
    description: Reference to the xclk clock.
    maxItems: 1

  clock-frequency:
    description: Frequency of the xclk clock in Hz.

  enable-gpios:
    description: GPIO descriptor for the enable pin.
    maxItems: 1

  vdddo-supply:
    description: Chip digital IO regulator (1.8V).
    maxItems: 1

  vdda-supply:
    description: Chip analog regulator (2.7V).
    maxItems: 1

  vddd-supply:
    description: Chip digital core regulator (1.12V).
    maxItems: 1

  flash-leds:
    description: See ../video-interfaces.txt

  lens-focus:
    description: See ../video-interfaces.txt

  port:
    type: object
    description: |
      Video output port. See ../video-interfaces.txt.

    properties:
      endpoint:
        type: object

        properties:
          data-lanes:
            $ref: /schemas/types.yaml#/definitions/uint32-array
            description: See ../video-interfaces.txt
            anyOf:
              - items:
                  - const: 1
                  - const: 2
              - items:
                  - const: 1
                  - const: 2
                  - const: 3
                  - const: 4

          link-frequencies:
            $ref: /schemas/types.yaml#/definitions/uint64-array
            description: See ../video-interfaces.txt

        required:
          - data-lanes
          - link-frequencies

        unevaluatedProperties: false

    additionalProperties: false

required:
  - compatible
  - reg
  - clocks
  - clock-frequency
  - enable-gpios
  - vdddo-supply
  - vdda-supply
  - vddd-supply
  - port

additionalProperties: false

examples:
  - |
    #include <dt-bindings/gpio/gpio.h>

    i2c0 {
        #address-cells = <1>;
        #size-cells = <0>;

        camera-sensor@1a {
            compatible = "sony,imx214";
            reg = <0x1a>;
            vdddo-supply = <&pm8994_lvs1>;
            vddd-supply = <&camera_vddd_1v12>;
            vdda-supply = <&pm8994_l17>;
            lens-focus = <&ad5820>;
            enable-gpios = <&msmgpio 25 GPIO_ACTIVE_HIGH>;
            clocks = <&camera_clk>;
            clock-frequency = <24000000>;

            port {
                imx214_ep: endpoint {
                    data-lanes = <1 2 3 4>;
                    link-frequencies = /bits/ 64 <480000000>;
                    remote-endpoint = <&csiphy0_ep>;
                };
            };
        };
    };

...