Merge tag 'block-5.14-2021-08-07' of git://git.kernel.dk/linux-block
[linux-2.6-microblaze.git] / Documentation / devicetree / bindings / media / i2c / ovti,ov8865.yaml
1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2 %YAML 1.2
3 ---
4 $id: http://devicetree.org/schemas/media/i2c/ovti,ov8865.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: OmniVision OV8865 Image Sensor Device Tree Bindings
8
9 maintainers:
10   - Paul Kocialkowski <paul.kocialkowski@bootlin.com>
11
12 properties:
13   compatible:
14     const: ovti,ov8865
15
16   reg:
17     maxItems: 1
18
19   clocks:
20     items:
21       - description: EXTCLK Clock
22
23   assigned-clocks:
24     maxItems: 1
25
26   assigned-clock-rates:
27     maxItems: 1
28
29   dvdd-supply:
30     description: Digital Domain Power Supply
31
32   avdd-supply:
33     description: Analog Domain Power Supply
34
35   dovdd-supply:
36     description: I/O Domain Power Supply
37
38   powerdown-gpios:
39     maxItems: 1
40     description: Power Down Pin GPIO Control (active low)
41
42   reset-gpios:
43     maxItems: 1
44     description: Reset Pin GPIO Control (active low)
45
46   port:
47     description: MIPI CSI-2 transmitter port
48     $ref: /schemas/graph.yaml#/$defs/port-base
49     additionalProperties: false
50
51     properties:
52       endpoint:
53         $ref: /schemas/media/video-interfaces.yaml#
54         unevaluatedProperties: false
55
56         properties:
57           link-frequencies: true
58
59           data-lanes:
60             minItems: 1
61             maxItems: 4
62
63         required:
64           - data-lanes
65           - link-frequencies
66
67 required:
68   - compatible
69   - reg
70   - clocks
71   - assigned-clocks
72   - assigned-clock-rates
73   - dvdd-supply
74   - avdd-supply
75   - dovdd-supply
76   - port
77
78 additionalProperties: false
79
80 examples:
81   - |
82     #include <dt-bindings/clock/sun8i-a83t-ccu.h>
83     #include <dt-bindings/gpio/gpio.h>
84
85     i2c2 {
86         #address-cells = <1>;
87         #size-cells = <0>;
88
89         ov8865: camera@36 {
90             compatible = "ovti,ov8865";
91             reg = <0x36>;
92
93             pinctrl-names = "default";
94             pinctrl-0 = <&csi_mclk_pin>;
95
96             clocks = <&ccu CLK_CSI_MCLK>;
97             assigned-clocks = <&ccu CLK_CSI_MCLK>;
98             assigned-clock-rates = <24000000>;
99
100             avdd-supply = <&reg_ov8865_avdd>;
101             dovdd-supply = <&reg_ov8865_dovdd>;
102             dvdd-supply = <&reg_ov8865_dvdd>;
103
104             powerdown-gpios = <&pio 4 17 GPIO_ACTIVE_LOW>; /* PE17 */
105             reset-gpios = <&pio 4 16 GPIO_ACTIVE_LOW>; /* PE16 */
106
107             port {
108                 ov8865_out_mipi_csi2: endpoint {
109                     data-lanes = <1 2 3 4>;
110                     link-frequencies = /bits/ 64 <360000000>;
111
112                     remote-endpoint = <&mipi_csi2_in_ov8865>;
113                 };
114             };
115         };
116     };
117
118 ...