3a0b78ccb2b254f8182a69e61be18051f2f571c2
[openwrt/staging/ldir.git] /
1 From 53d998a246f34b6fbded6c0a7d2d8a8d742142b5 Mon Sep 17 00:00:00 2001
2 From: Lee Jackson <info@arducam.com>
3 Date: Fri, 13 May 2022 17:21:42 +0800
4 Subject: [PATCH] media: dt-bindings: media: i2c: Add Arducam 64MP CMOS
5 sensor binding
6
7 Add YAML device tree binding for Arducam 64MP CMOS image sensor, and
8 the relevant MAINTAINERS entries.
9
10 Signed-off-by: Lee Jackson <info@arducam.com>
11 ---
12 .../bindings/media/i2c/arducam,64mp.yaml | 115 ++++++++++++++++++
13 MAINTAINERS | 8 ++
14 2 files changed, 123 insertions(+)
15 create mode 100644 Documentation/devicetree/bindings/media/i2c/arducam,64mp.yaml
16
17 --- /dev/null
18 +++ b/Documentation/devicetree/bindings/media/i2c/arducam,64mp.yaml
19 @@ -0,0 +1,115 @@
20 +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
21 +%YAML 1.2
22 +---
23 +$id: http://devicetree.org/schemas/media/i2c/arducam,64mp.yaml#
24 +$schema: http://devicetree.org/meta-schemas/core.yaml#
25 +
26 +title: Arducam 1/1.7-Inch 64Mpixel CMOS Digital Image Sensor
27 +
28 +maintainers:
29 + - Lee Jackson <info@arducam.com>
30 +
31 +description: |-
32 + The Arducam 1/1.7-Inch 64Mpixel CMOS active pixel digital image sensor
33 + with an active array size of 9248 x 6944. It is programmable through
34 + I2C interface. The I2C address is fixed to 0x1A as per sensor data sheet.
35 + Image data is sent through MIPI CSI-2, which can be configured for operation
36 + with either 2 or 4 data lanes.
37 +
38 +properties:
39 + compatible:
40 + const: arducam,64mp
41 +
42 + reg:
43 + description: I2C device address
44 + maxItems: 1
45 +
46 + clocks:
47 + maxItems: 1
48 +
49 + VDIG-supply:
50 + description:
51 + Digital I/O voltage supply, 1.05 volts
52 +
53 + VANA-supply:
54 + description:
55 + Analog voltage supply, 2.8 volts
56 +
57 + VDDL-supply:
58 + description:
59 + Digital core voltage supply, 1.8 volts
60 +
61 + reset-gpios:
62 + description: |-
63 + Reference to the GPIO connected to the xclr pin, if any.
64 + Must be released (set high) after all supplies and INCK are applied.
65 +
66 + # See ../video-interfaces.txt for more details
67 + port:
68 + type: object
69 + properties:
70 + endpoint:
71 + type: object
72 + properties:
73 + data-lanes:
74 + description: |-
75 + The sensor supports either two-lane, or four-lane operation.
76 + For two-lane operation the property must be set to <1 2>.
77 + anyOf:
78 + - items:
79 + - const: 1
80 + - const: 2
81 + - items:
82 + - const: 1
83 + - const: 2
84 + - const: 3
85 + - const: 4
86 +
87 + clock-noncontinuous: true
88 +
89 + link-frequencies:
90 + allOf:
91 + - $ref: /schemas/types.yaml#/definitions/uint64-array
92 + description:
93 + Allowed data bus frequencies.
94 +
95 + required:
96 + - link-frequencies
97 +
98 +required:
99 + - compatible
100 + - reg
101 + - clocks
102 + - VANA-supply
103 + - VDIG-supply
104 + - VDDL-supply
105 + - port
106 +
107 +additionalProperties: false
108 +
109 +examples:
110 + - |
111 + i2c0 {
112 + #address-cells = <1>;
113 + #size-cells = <0>;
114 +
115 + arducam_64mp: sensor@1a {
116 + compatible = "arducam,64mp";
117 + reg = <0x1a>;
118 + clocks = <&arducam_64mp_clk>;
119 + VANA-supply = <&arducam_64mp_vana>; /* 2.8v */
120 + VDIG-supply = <&arducam_64mp_vdig>; /* 1.05v */
121 + VDDL-supply = <&arducam_64mp_vddl>; /* 1.8v */
122 +
123 + port {
124 + arducam_64mp_0: endpoint {
125 + remote-endpoint = <&csi1_ep>;
126 + data-lanes = <1 2>;
127 + clock-noncontinuous;
128 + link-frequencies = /bits/ 64 <456000000>;
129 + };
130 + };
131 + };
132 + };
133 +
134 +...
135 --- a/MAINTAINERS
136 +++ b/MAINTAINERS
137 @@ -1559,6 +1559,14 @@ S: Maintained
138 F: drivers/net/arcnet/
139 F: include/uapi/linux/if_arcnet.h
140
141 +ARDUCAM 64MP SENSOR DRIVER
142 +M: Arducam Kernel Maintenance <info@arducam.com>
143 +L: linux-media@vger.kernel.org
144 +S: Maintained
145 +T: git git://linuxtv.org/media_tree.git
146 +F: Documentation/devicetree/bindings/media/i2c/arducam,64mp.yaml
147 +F: drivers/media/i2c/arducam_64mp.c
148 +
149 ARDUCAM PIVARIETY SENSOR DRIVER
150 M: Arducam Kernel Maintenance <info@arducam.com>
151 L: linux-media@vger.kernel.org