1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2# Copyright (C) 2014--2020 Intel Corporation
3
4$id: http://devicetree.org/schemas/media/i2c/mipi-ccs.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: MIPI CCS, SMIA++ and SMIA compliant camera sensors
8
9maintainers:
10  - Sakari Ailus <sakari.ailus@linux.intel.com>
11
12description:
13
14  CCS (Camera Command Set) is a raw Bayer camera sensor standard defined by the
15  MIPI Alliance; see
16  <URL:https://www.mipi.org/specifications/camera-command-set>.
17
18  SMIA (Standard Mobile Imaging Architecture) is an image sensor standard
19  defined jointly by Nokia and ST. SMIA++, defined by Nokia, is an extension of
20  that.
21
22  More detailed documentation can be found in
23  Documentation/devicetree/bindings/media/video-interfaces.txt .
24
25properties:
26  compatible:
27    oneOf:
28      - items:
29        - const: mipi-ccs-1.1
30        - const: mipi-ccs
31      - items:
32        - const: mipi-ccs-1.0
33        - const: mipi-ccs
34      - const: nokia,smia
35
36  reg:
37    maxItems: 1
38
39  vana-supply:
40    description: Analogue voltage supply (VANA), sensor dependent.
41    maxItems: 1
42
43  vcore-supply:
44    description: Core voltage supply (VCore), sensor dependent.
45    maxItems: 1
46
47  vio-supply:
48    description: I/O voltage supply (VIO), sensor dependent.
49    maxItems: 1
50
51  clocks:
52    description: External clock to the sensor.
53    maxItems: 1
54
55  clock-frequency:
56    description: Frequency of the external clock to the sensor in Hz.
57
58  reset-gpios:
59    description: Reset GPIO. Also commonly called XSHUTDOWN in hardware
60      documentation.
61    maxItems: 1
62
63  flash-leds:
64    description: Flash LED phandles. See ../video-interfaces.txt for details.
65
66  lens-focus:
67    description: Lens focus controller phandles. See ../video-interfaces.txt
68      for details.
69
70  rotation:
71    description: Rotation of the sensor.  See ../video-interfaces.txt for
72      details.
73    enum: [ 0, 180 ]
74
75  port:
76    type: object
77    properties:
78      endpoint:
79        type: object
80        properties:
81          link-frequencies:
82            $ref: /schemas/types.yaml#/definitions/uint64-array
83            description: List of allowed data link frequencies.
84          data-lanes:
85            minItems: 1
86            maxItems: 8
87          bus-type:
88            description: The type of the data bus.
89            oneOf:
90              - const: 1 # CSI-2 C-PHY
91              - const: 3 # CCP2
92              - const: 4 # CSI-2 D-PHY
93
94        required:
95          - link-frequencies
96          - data-lanes
97          - bus-type
98
99required:
100  - compatible
101  - reg
102  - clock-frequency
103  - clocks
104
105additionalProperties: false
106
107examples:
108  - |
109    #include <dt-bindings/gpio/gpio.h>
110
111    i2c2 {
112        #address-cells = <1>;
113        #size-cells = <0>;
114
115        clock-frequency = <400000>;
116
117        camera-sensor@10 {
118            compatible = "mipi-ccs-1.0", "mipi-ccs";
119            reg = <0x10>;
120            reset-gpios = <&gpio3 20 GPIO_ACTIVE_LOW>;
121            vana-supply = <&vaux3>;
122            clocks = <&omap3_isp 0>;
123            clock-frequency = <9600000>;
124            port {
125                ccs_ep: endpoint {
126                    data-lanes = <1 2>;
127                    remote-endpoint = <&csi2a_ep>;
128                    link-frequencies = /bits/ 64 <199200000 210000000
129                                                  499200000>;
130                    bus-type = <4>;
131                };
132            };
133        };
134    };
135...
136