summaryrefslogtreecommitdiffstats
path: root/dts/Bindings/media/i2c/mipi-ccs.yaml
blob: 701f4e0d138f1fac6d4d3d2e7d0d1cad0de592b5 (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
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
# Copyright (C) 2014--2020 Intel Corporation
%YAML 1.2
---
$id: http://devicetree.org/schemas/media/i2c/mipi-ccs.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: MIPI CCS, SMIA++ and SMIA compliant camera sensors

maintainers:
  - Sakari Ailus <sakari.ailus@linux.intel.com>

description:

  CCS (Camera Command Set) is a raw Bayer camera sensor standard defined by the
  MIPI Alliance; see
  <URL:https://www.mipi.org/specifications/camera-command-set>.

  SMIA (Standard Mobile Imaging Architecture) is an image sensor standard
  defined jointly by Nokia and ST. SMIA++, defined by Nokia, is an extension of
  that.

  More detailed documentation can be found in
  Documentation/devicetree/bindings/media/video-interfaces.txt .

properties:
  compatible:
    oneOf:
      - items:
          - const: mipi-ccs-1.1
          - const: mipi-ccs
      - items:
          - const: mipi-ccs-1.0
          - const: mipi-ccs
      - const: nokia,smia

  reg:
    maxItems: 1

  vana-supply:
    description: Analogue voltage supply (VANA), sensor dependent.

  vcore-supply:
    description: Core voltage supply (VCore), sensor dependent.

  vio-supply:
    description: I/O voltage supply (VIO), sensor dependent.

  clocks:
    description: External clock to the sensor.
    maxItems: 1

  clock-frequency:
    description: Frequency of the external clock to the sensor in Hz.

  reset-gpios:
    description: Reset GPIO. Also commonly called XSHUTDOWN in hardware
      documentation.
    maxItems: 1

  flash-leds:
    description: Flash LED phandles. See ../video-interfaces.txt for details.

  lens-focus:
    description: Lens focus controller phandles. See ../video-interfaces.txt
      for details.

  rotation:
    description: Rotation of the sensor.  See ../video-interfaces.txt for
      details.
    enum: [ 0, 180 ]

  port:
    $ref: /schemas/graph.yaml#/$defs/port-base
    additionalProperties: false

    properties:
      endpoint:
        $ref: /schemas/media/video-interfaces.yaml#
        unevaluatedProperties: false

        properties:
          link-frequencies: true
          data-lanes: true
          bus-type:
            oneOf:
              - const: 1 # CSI-2 C-PHY
              - const: 3 # CCP2
              - const: 4 # CSI-2 D-PHY

        required:
          - link-frequencies
          - data-lanes
          - bus-type

required:
  - compatible
  - reg
  - clock-frequency
  - clocks

additionalProperties: false

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

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

        clock-frequency = <400000>;

        camera-sensor@10 {
            compatible = "mipi-ccs-1.0", "mipi-ccs";
            reg = <0x10>;
            reset-gpios = <&gpio3 20 GPIO_ACTIVE_LOW>;
            vana-supply = <&vaux3>;
            clocks = <&omap3_isp 0>;
            clock-frequency = <9600000>;
            port {
                ccs_ep: endpoint {
                    data-lanes = <1 2>;
                    remote-endpoint = <&csi2a_ep>;
                    link-frequencies = /bits/ 64 <199200000 210000000
                                                  499200000>;
                    bus-type = <4>;
                };
            };
        };
    };
...