GNU Linux-libre 6.1.90-gnu
[releases.git] / Documentation / devicetree / bindings / media / i2c / hynix,hi846.yaml
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/hynix,hi846.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: SK Hynix Hi-846 1/4" 8M Pixel MIPI CSI-2 sensor
8
9 maintainers:
10   - Martin Kepplinger <martin.kepplinger@puri.sm>
11
12 description: |-
13   The Hi-846 is a raw image sensor with an MIPI CSI-2 image data
14   interface and CCI (I2C compatible) control bus. The output format
15   is raw Bayer.
16
17 properties:
18   compatible:
19     const: hynix,hi846
20
21   reg:
22     maxItems: 1
23
24   clocks:
25     items:
26       - description: Reference to the mclk clock.
27
28   assigned-clocks:
29     maxItems: 1
30
31   assigned-clock-rates:
32     maxItems: 1
33
34   reset-gpios:
35     description: Reference to the GPIO connected to the RESETB pin. Active low.
36     maxItems: 1
37
38   shutdown-gpios:
39     description: Reference to the GPIO connected to the XSHUTDOWN pin. Active low.
40     maxItems: 1
41
42   vddio-supply:
43     description: Definition of the regulator used for the VDDIO power supply.
44
45   vdda-supply:
46     description: Definition of the regulator used for the VDDA power supply.
47
48   vddd-supply:
49     description: Definition of the regulator used for the VDDD power supply.
50
51   port:
52     $ref: /schemas/graph.yaml#/$defs/port-base
53     unevaluatedProperties: false
54
55     properties:
56       endpoint:
57         $ref: /schemas/media/video-interfaces.yaml#
58         unevaluatedProperties: false
59
60         properties:
61           data-lanes:
62             oneOf:
63               - items:
64                   - const: 1
65                   - const: 2
66                   - const: 3
67                   - const: 4
68               - items:
69                   - const: 1
70                   - const: 2
71
72           link-frequencies: true
73
74         required:
75           - data-lanes
76           - link-frequencies
77
78 required:
79   - compatible
80   - reg
81   - clocks
82   - assigned-clocks
83   - assigned-clock-rates
84   - vddio-supply
85   - vdda-supply
86   - vddd-supply
87   - port
88
89 additionalProperties: false
90
91 examples:
92   - |
93     #include <dt-bindings/gpio/gpio.h>
94
95     i2c {
96         #address-cells = <1>;
97         #size-cells = <0>;
98
99         hi846: camera@20 {
100             compatible = "hynix,hi846";
101             reg = <0x20>;
102             pinctrl-names = "default";
103             pinctrl-0 = <&pinctrl_csi1>;
104             clocks = <&clk 0>;
105             assigned-clocks = <&clk 0>;
106             assigned-clock-rates = <25000000>;
107             vdda-supply = <&reg_camera_vdda>;
108             vddd-supply = <&reg_camera_vddd>;
109             vddio-supply = <&reg_camera_vddio>;
110             reset-gpios = <&gpio1 25 GPIO_ACTIVE_LOW>;
111             shutdown-gpios = <&gpio5 4 GPIO_ACTIVE_LOW>;
112
113             port {
114                 camera_out: endpoint {
115                     remote-endpoint = <&csi1_ep1>;
116                     link-frequencies = /bits/ 64
117                         <80000000 200000000>;
118                     data-lanes = <1 2>;
119                 };
120             };
121         };
122     };
123
124 ...