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/onnn,mt9m114.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: onsemi 1/6-inch 720p CMOS Digital Image Sensor
8
9maintainers:
10  - Laurent Pinchart <laurent.pinchart@ideasonboard.com>
11
12description: |-
13  The onsemi MT9M114 is a 1/6-inch 720p (1.26 Mp) CMOS digital image sensor
14  with an active pixel-array size of 1296H x 976V. It is programmable through
15  an I2C interface and outputs image data over a 8-bit parallel or 1-lane MIPI
16  CSI-2 connection.
17
18properties:
19  compatible:
20    const: onnn,mt9m114
21
22  reg:
23    description: I2C device address
24    enum:
25      - 0x48
26      - 0x5d
27
28  clocks:
29    description: EXTCLK clock signal
30    maxItems: 1
31
32  vdd-supply:
33    description:
34      Core digital voltage supply, 1.8V
35
36  vddio-supply:
37    description:
38      I/O digital voltage supply, 1.8V or 2.8V
39
40  vaa-supply:
41    description:
42      Analog voltage supply, 2.8V
43
44  reset-gpios:
45    description: |-
46      Reference to the GPIO connected to the RESET_BAR pin, if any (active
47      low).
48
49  port:
50    $ref: /schemas/graph.yaml#/$defs/port-base
51    additionalProperties: false
52
53    properties:
54      endpoint:
55        $ref: /schemas/media/video-interfaces.yaml#
56        additionalProperties: false
57
58        properties:
59          bus-type:
60            enum: [4, 5, 6]
61
62          link-frequencies: true
63          remote-endpoint: true
64
65          # The number and mapping of lanes (for CSI-2), and the bus width and
66          # signal polarities (for parallel and BT.656) are fixed and must not
67          # be specified.
68
69        required:
70          - bus-type
71          - link-frequencies
72
73required:
74  - compatible
75  - reg
76  - clocks
77  - vdd-supply
78  - vddio-supply
79  - vaa-supply
80  - port
81
82additionalProperties: false
83
84examples:
85  - |
86    #include <dt-bindings/gpio/gpio.h>
87    #include <dt-bindings/media/video-interfaces.h>
88
89    i2c0 {
90        #address-cells = <1>;
91        #size-cells = <0>;
92
93        sensor@48 {
94            compatible = "onnn,mt9m114";
95            reg = <0x48>;
96
97            clocks = <&clk24m 0>;
98
99            reset-gpios = <&gpio5 21 GPIO_ACTIVE_LOW>;
100
101            vddio-supply = <&reg_cam_1v8>;
102            vdd-supply = <&reg_cam_1v8>;
103            vaa-supply = <&reg_2p8v>;
104
105            port {
106                endpoint {
107                    bus-type = <MEDIA_BUS_TYPE_CSI2_DPHY>;
108                    link-frequencies = /bits/ 64 <384000000>;
109                    remote-endpoint = <&mipi_csi_in>;
110                };
111            };
112        };
113    };
114...
115