1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2# Copyright (C) 2021 Intel Corporation
3%YAML 1.2
4---
5$id: http://devicetree.org/schemas/media/i2c/sony,imx335.yaml#
6$schema: http://devicetree.org/meta-schemas/core.yaml#
7
8title: Sony IMX335 Sensor
9
10maintainers:
11  - Paul J. Murphy <paul.j.murphy@intel.com>
12  - Daniele Alessandrelli <daniele.alessandrelli@intel.com>
13
14description:
15  IMX335 sensor is a Sony CMOS active pixel digital image sensor with an active
16  array size of 2592H x 1944V. It is programmable through I2C interface. The
17  I2C client address is fixed to 0x1a as per sensor data sheet. Image data is
18  sent through MIPI CSI-2.
19
20properties:
21  compatible:
22    const: sony,imx335
23  reg:
24    description: I2C address
25    maxItems: 1
26
27  assigned-clocks: true
28  assigned-clock-parents: true
29  assigned-clock-rates: true
30
31  clocks:
32    description: Clock frequency from 6 to 27 MHz, 37.125MHz, 74.25MHz
33    maxItems: 1
34
35  avdd-supply:
36    description: Analog power supply (2.9V)
37
38  ovdd-supply:
39    description: Interface power supply (1.8V)
40
41  dvdd-supply:
42    description: Digital power supply (1.2V)
43
44  reset-gpios:
45    description: Reference to the GPIO connected to the XCLR pin, if any.
46    maxItems: 1
47
48  port:
49    additionalProperties: false
50    $ref: /schemas/graph.yaml#/$defs/port-base
51
52    properties:
53      endpoint:
54        $ref: /schemas/media/video-interfaces.yaml#
55        unevaluatedProperties: false
56
57        properties:
58          data-lanes: true
59          link-frequencies: true
60
61        required:
62          - data-lanes
63          - link-frequencies
64
65    required:
66      - endpoint
67
68required:
69  - compatible
70  - reg
71  - clocks
72  - port
73
74additionalProperties: false
75
76examples:
77  - |
78    i2c {
79        #address-cells = <1>;
80        #size-cells = <0>;
81
82        camera@1a {
83            compatible = "sony,imx335";
84            reg = <0x1a>;
85            clocks = <&imx335_clk>;
86
87            assigned-clocks = <&imx335_clk>;
88            assigned-clock-parents = <&imx335_clk_parent>;
89            assigned-clock-rates = <24000000>;
90
91            avdd-supply = <&camera_vdda_2v9>;
92            ovdd-supply = <&camera_vddo_1v8>;
93            dvdd-supply = <&camera_vddd_1v2>;
94
95            port {
96                imx335: endpoint {
97                    remote-endpoint = <&cam>;
98                    data-lanes = <1 2 3 4>;
99                    link-frequencies = /bits/ 64 <594000000>;
100                };
101            };
102        };
103    };
104...
105