Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input
[linux-2.6-microblaze.git] / Documentation / devicetree / bindings / media / i2c / sony,imx335.yaml
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
8 title: Sony IMX335 Sensor
9
10 maintainers:
11   - Paul J. Murphy <paul.j.murphy@intel.com>
12   - Daniele Alessandrelli <daniele.alessandrelli@intel.com>
13
14 description:
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
20 properties:
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   reset-gpios:
36     description: Reference to the GPIO connected to the XCLR pin, if any.
37     maxItems: 1
38
39   port:
40     additionalProperties: false
41     $ref: /schemas/graph.yaml#/properties/port
42
43     properties:
44       endpoint:
45         $ref: /schemas/media/video-interfaces.yaml#
46         unevaluatedProperties: false
47
48         properties:
49           data-lanes: true
50           link-frequencies: true
51
52         required:
53           - data-lanes
54           - link-frequencies
55
56     required:
57       - endpoint
58
59 required:
60   - compatible
61   - reg
62   - clocks
63   - port
64
65 additionalProperties: false
66
67 examples:
68   - |
69     i2c0 {
70         #address-cells = <1>;
71         #size-cells = <0>;
72
73         camera@1a {
74             compatible = "sony,imx335";
75             reg = <0x1a>;
76             clocks = <&imx335_clk>;
77
78             assigned-clocks = <&imx335_clk>;
79             assigned-clock-parents = <&imx335_clk_parent>;
80             assigned-clock-rates = <24000000>;
81
82             port {
83                 imx335: endpoint {
84                     remote-endpoint = <&cam>;
85                     data-lanes = <1 2 3 4>;
86                     link-frequencies = /bits/ 64 <594000000>;
87                 };
88             };
89         };
90     };
91 ...