[PATCH v2 1/3] dt-bindings: media: i2c: Add documentation for ov8865

Kévin L'hôpital kevin.lhopital at bootlin.com
Fri Aug 28 09:11:32 EDT 2020


Add a documentation for the sensor ov8865 from Omnivision.

Signed-off-by: Kévin L'hôpital <kevin.lhopital at bootlin.com>
---
 .../devicetree/bindings/media/i2c/ov8865.yaml | 165 ++++++++++++++++++
 1 file changed, 165 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/media/i2c/ov8865.yaml

diff --git a/Documentation/devicetree/bindings/media/i2c/ov8865.yaml b/Documentation/devicetree/bindings/media/i2c/ov8865.yaml
new file mode 100644
index 000000000000..468ddfd48c7a
--- /dev/null
+++ b/Documentation/devicetree/bindings/media/i2c/ov8865.yaml
@@ -0,0 +1,165 @@
+# SPDX-License-Identifier: (GPL-2.0 0R BSD-2-Clause)
+# Copyright (C) 2020 Kévin L'hôpital
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/media/i2c/ov8865.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Omnivision OV8865 Sensor Device Tree Bindings
+
+maintainers:
+  - Kévin L'hôpital <kevin.lhopital at bootlin.com>
+
+description: |-
+  The Omnivision OV8865 is a image sensor that supports up to 3264x2448. It
+  provides a 10 bits output format and a MIPI CSI2 interface (up to 4-lane).
+  This chip is programmable through I2C.
+
+properties:
+  compatible:
+    const: ovti,ov8865
+
+  reg:
+    maxItems: 1
+
+  pinctrl-names:
+    description:
+      Default name for the ov8865 pinctrl.
+
+  pinctrl-0:
+    description:
+      Pinctrl for the ov8865.
+
+  clocks:
+    maxItems: 1
+
+  clock-names:
+    description:
+      Input clock name for the sensor.
+
+    items:
+      - const: xclk
+
+  avdd-supply:
+    description:
+      Definition of the regulator used as analog power supply.
+
+  dovdd-supply:
+    description:
+      Definition of the regulator used as interface power supply.
+
+  vdd2-supply:
+    description:
+      Definition of the regulator used as digital power supply
+
+  afvdd-supply:
+    description:
+      Definition of the regulator used as actuator power supply.
+
+  powerdown-gpios:
+    description:
+      reference to the GPIO connceted to the powerdown pin. This is an active
+      low signal on the OV8865.
+
+  reset-gpios:
+    description:
+      Reference to the GPIO connected to the reset pin. This is an active low
+      signal for the OV8865.
+
+  rotation:
+    description:
+      Position of the sensor, the valid values are 0 (sensor mounted upright)
+      and 180 (sensor mounted upside down).
+
+  port:
+    type: object
+    additionalProperties: false
+    description:
+      A node containing an output port node with an endpoint definition as
+      documented in
+      Documentation/devicetree/bindings/media/video-interfaces.txt
+
+    properties:
+      endpoint:
+        type: object
+
+        properties:
+          data-lanes:
+            description:
+              The driver only supports four-lane operation.
+            items:
+              - const: 1
+              - const: 2
+              - const: 3
+              - const: 4
+
+          clock-lanes:
+            items:
+              const: 0
+
+          bus-type:
+            description:
+              The driver only supports the MIPI CSI2
+            items:
+              const: 4
+
+        required:
+          - data-lanes
+          - clock-lanes
+          - bus-type
+
+    required:
+      - endpoint
+
+required:
+  - compatible
+  - reg
+  - pinctrl-names
+  - pinctrl-0
+  - clocks
+  - clock-names
+  - avdd-supply
+  - dovdd-supply
+  - vdd2-supply
+  - afvdd-supply
+  - powerdown-gpios
+  - reset-gpios
+  - port
+
+additionalProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/clock/sun8i-a83t-ccu.h>
+    #include <dt-bindings/gpio/gpio.h>
+
+    i2c2 {
+         #address-cells = <1>;
+         #size-cells = <0>;
+          ov8865: camera at 36 {
+                 compatible = "ovti,ov8865";
+                 reg = <0x36>;
+                 pinctrl-names = "default";
+                 pinctrl-0 = <&csi_mclk_pin>; 
+                 clocks = <&ccu CLK_CSI_MCLK>;
+                 clock-names ="xclk";
+                 avdd-supply = <&reg_ov8865_avdd>;
+                 dovdd-supply = <&reg_ov8865_dovdd>;
+                 vdd2-supply = <&reg_ov8865_vdd2>;
+                 afvdd-supply = <&reg_ov8865_afvdd>;
+                 powerdown-gpios = <&pio 4 17 GPIO_ACTIVE_LOW>; /* PE17 */
+                 reset-gpios = <&pio 4 16 GPIO_ACTIVE_LOW>; /* PE16 */
+                 rotation = <180>;
+
+                 port {
+                      ov8865_to_mipi_csi2: endpoint {
+                                 remote-endpoint = <&mipi_csi2_from_ov8865>;
+                                 data-lanes = <1 2 3 4>;
+                                 clock-lanes = <0>;
+                                 bus-type = <4>; /* V4L2_FWNODE_BUS_TYPE_CSI2_DPHY */
+                      };
+                 };
+           };
+    };
+
+...
-- 
2.17.1




More information about the linux-arm-kernel mailing list