2023-06-08 17:49:36 +00:00
|
|
|
From 22774ebfc4073fd3c0fc729e2ae1e0e762ec127e Mon Sep 17 00:00:00 2001
|
|
|
|
From: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
|
|
Date: Sun, 16 Oct 2022 09:15:04 +0300
|
|
|
|
Subject: [PATCH] media: dt-bindings: Convert imx290.txt to YAML
|
|
|
|
|
|
|
|
Upstream commit a96dfea1df25
|
|
|
|
|
|
|
|
Convert the Sony IMX290 DT binding from text to YAML. Add Manivannan as
|
|
|
|
a maintainer given that he is listed in MAINTAINERS for the file, as
|
|
|
|
volunteering myself.
|
|
|
|
|
|
|
|
The name of the input clock, "xclk", is wrong as the hardware manual
|
|
|
|
names it INCK. As the device has a single clock, the name could be
|
|
|
|
omitted, but that would require a corresponding change to the driver and
|
|
|
|
is thus a candidate for further patches.
|
|
|
|
|
|
|
|
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
|
|
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
|
|
|
|
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
|
|
|
|
---
|
|
|
|
.../devicetree/bindings/media/i2c/imx290.txt | 57 --------
|
|
|
|
.../bindings/media/i2c/sony,imx290.yaml | 129 ++++++++++++++++++
|
|
|
|
MAINTAINERS | 2 +-
|
|
|
|
3 files changed, 130 insertions(+), 58 deletions(-)
|
|
|
|
delete mode 100644 Documentation/devicetree/bindings/media/i2c/imx290.txt
|
|
|
|
create mode 100644 Documentation/devicetree/bindings/media/i2c/sony,imx290.yaml
|
|
|
|
|
|
|
|
--- a/Documentation/devicetree/bindings/media/i2c/imx290.txt
|
|
|
|
+++ /dev/null
|
|
|
|
@@ -1,57 +0,0 @@
|
|
|
|
-* Sony IMX290 1/2.8-Inch CMOS Image Sensor
|
|
|
|
-
|
|
|
|
-The Sony IMX290 is a 1/2.8-Inch CMOS Solid-state image sensor with
|
|
|
|
-Square Pixel for Color Cameras. It is programmable through I2C and 4-wire
|
|
|
|
-interfaces. The sensor output is available via CMOS logic parallel SDR output,
|
|
|
|
-Low voltage LVDS DDR output and CSI-2 serial data output. The CSI-2 bus is the
|
|
|
|
-default. No bindings have been defined for the other busses.
|
|
|
|
-
|
|
|
|
-Required Properties:
|
|
|
|
-- compatible: Should be "sony,imx290"
|
|
|
|
-- reg: I2C bus address of the device
|
|
|
|
-- clocks: Reference to the xclk clock.
|
|
|
|
-- clock-names: Should be "xclk".
|
|
|
|
-- clock-frequency: Frequency of the xclk clock in Hz.
|
|
|
|
-- vdddo-supply: Sensor digital IO regulator.
|
|
|
|
-- vdda-supply: Sensor analog regulator.
|
|
|
|
-- vddd-supply: Sensor digital core regulator.
|
|
|
|
-
|
|
|
|
-Optional Properties:
|
|
|
|
-- reset-gpios: Sensor reset GPIO
|
|
|
|
-
|
|
|
|
-The imx290 device node should contain one 'port' child node with
|
|
|
|
-an 'endpoint' subnode. For further reading on port node refer to
|
|
|
|
-Documentation/devicetree/bindings/media/video-interfaces.txt.
|
|
|
|
-
|
|
|
|
-Required Properties on endpoint:
|
|
|
|
-- data-lanes: check ../video-interfaces.txt
|
|
|
|
-- link-frequencies: check ../video-interfaces.txt
|
|
|
|
-- remote-endpoint: check ../video-interfaces.txt
|
|
|
|
-
|
|
|
|
-Example:
|
|
|
|
- &i2c1 {
|
|
|
|
- ...
|
|
|
|
- imx290: camera-sensor@1a {
|
|
|
|
- compatible = "sony,imx290";
|
|
|
|
- reg = <0x1a>;
|
|
|
|
-
|
|
|
|
- reset-gpios = <&msmgpio 35 GPIO_ACTIVE_LOW>;
|
|
|
|
- pinctrl-names = "default";
|
|
|
|
- pinctrl-0 = <&camera_rear_default>;
|
|
|
|
-
|
|
|
|
- clocks = <&gcc GCC_CAMSS_MCLK0_CLK>;
|
|
|
|
- clock-names = "xclk";
|
|
|
|
- clock-frequency = <37125000>;
|
|
|
|
-
|
|
|
|
- vdddo-supply = <&camera_vdddo_1v8>;
|
|
|
|
- vdda-supply = <&camera_vdda_2v8>;
|
|
|
|
- vddd-supply = <&camera_vddd_1v5>;
|
|
|
|
-
|
|
|
|
- port {
|
|
|
|
- imx290_ep: endpoint {
|
|
|
|
- data-lanes = <1 2 3 4>;
|
|
|
|
- link-frequencies = /bits/ 64 <445500000>;
|
|
|
|
- remote-endpoint = <&csiphy0_ep>;
|
|
|
|
- };
|
|
|
|
- };
|
|
|
|
- };
|
|
|
|
--- /dev/null
|
|
|
|
+++ b/Documentation/devicetree/bindings/media/i2c/sony,imx290.yaml
|
|
|
|
@@ -0,0 +1,129 @@
|
|
|
|
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
|
|
|
|
+%YAML 1.2
|
|
|
|
+---
|
|
|
|
+$id: http://devicetree.org/schemas/media/i2c/sony,imx290.yaml#
|
|
|
|
+$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
+
|
|
|
|
+title: Sony IMX290 1/2.8-Inch CMOS Image Sensor
|
|
|
|
+
|
|
|
|
+maintainers:
|
|
|
|
+ - Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
|
|
|
|
+ - Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
|
|
+
|
|
|
|
+description: |-
|
|
|
|
+ The Sony IMX290 is a 1/2.8-Inch CMOS Solid-state image sensor with Square
|
|
|
|
+ Pixel for Color Cameras. It is programmable through I2C and 4-wire
|
|
|
|
+ interfaces. The sensor output is available via CMOS logic parallel SDR
|
|
|
|
+ output, Low voltage LVDS DDR output and CSI-2 serial data output. The CSI-2
|
|
|
|
+ bus is the default. No bindings have been defined for the other busses.
|
|
|
|
+
|
|
|
|
+properties:
|
|
|
|
+ compatible:
|
|
|
|
+ enum:
|
|
|
|
+ - sony,imx290
|
|
|
|
+
|
|
|
|
+ reg:
|
|
|
|
+ maxItems: 1
|
|
|
|
+
|
|
|
|
+ clocks:
|
|
|
|
+ maxItems: 1
|
|
|
|
+
|
|
|
|
+ clock-names:
|
|
|
|
+ description: Input clock (37.125 MHz or 74.25 MHz)
|
|
|
|
+ items:
|
|
|
|
+ - const: xclk
|
|
|
|
+
|
|
|
|
+ clock-frequency:
|
|
|
|
+ description: Frequency of the xclk clock in Hz
|
|
|
|
+
|
|
|
|
+ vdda-supply:
|
|
|
|
+ description: Analog power supply (2.9V)
|
|
|
|
+
|
|
|
|
+ vddd-supply:
|
|
|
|
+ description: Digital core power supply (1.2V)
|
|
|
|
+
|
|
|
|
+ vdddo-supply:
|
|
|
|
+ description: Digital I/O power supply (1.8V)
|
|
|
|
+
|
|
|
|
+ reset-gpios:
|
|
|
|
+ description: Sensor reset (XCLR) GPIO
|
|
|
|
+ maxItems: 1
|
|
|
|
+
|
|
|
|
+ port:
|
|
|
|
+ $ref: /schemas/graph.yaml#/$defs/port-base
|
|
|
|
+ description: |
|
|
|
|
+ Video output port
|
|
|
|
+
|
|
|
|
+ properties:
|
|
|
|
+ endpoint:
|
|
|
|
+ $ref: /schemas/media/video-interfaces.yaml#
|
|
|
|
+ unevaluatedProperties: false
|
|
|
|
+
|
|
|
|
+ properties:
|
|
|
|
+ data-lanes:
|
|
|
|
+ anyOf:
|
|
|
|
+ - items:
|
|
|
|
+ - const: 1
|
|
|
|
+ - const: 2
|
|
|
|
+ - items:
|
|
|
|
+ - const: 1
|
|
|
|
+ - const: 2
|
|
|
|
+ - const: 3
|
|
|
|
+ - const: 4
|
|
|
|
+
|
|
|
|
+ link-frequencies: true
|
|
|
|
+
|
|
|
|
+ required:
|
|
|
|
+ - data-lanes
|
|
|
|
+ - link-frequencies
|
|
|
|
+
|
|
|
|
+ additionalProperties: false
|
|
|
|
+
|
|
|
|
+required:
|
|
|
|
+ - compatible
|
|
|
|
+ - reg
|
|
|
|
+ - clocks
|
|
|
|
+ - clock-names
|
|
|
|
+ - clock-frequency
|
|
|
|
+ - vdda-supply
|
|
|
|
+ - vddd-supply
|
|
|
|
+ - vdddo-supply
|
|
|
|
+ - port
|
|
|
|
+
|
|
|
|
+additionalProperties: false
|
|
|
|
+
|
|
|
|
+examples:
|
|
|
|
+ - |
|
|
|
|
+ #include <dt-bindings/gpio/gpio.h>
|
|
|
|
+
|
|
|
|
+ i2c {
|
|
|
|
+ #address-cells = <1>;
|
|
|
|
+ #size-cells = <0>;
|
|
|
|
+
|
|
|
|
+ imx290: camera-sensor@1a {
|
|
|
|
+ compatible = "sony,imx290";
|
|
|
|
+ reg = <0x1a>;
|
|
|
|
+
|
|
|
|
+ pinctrl-names = "default";
|
|
|
|
+ pinctrl-0 = <&camera_rear_default>;
|
|
|
|
+
|
|
|
|
+ clocks = <&gcc 90>;
|
|
|
|
+ clock-names = "xclk";
|
|
|
|
+ clock-frequency = <37125000>;
|
|
|
|
+
|
|
|
|
+ vdddo-supply = <&camera_vdddo_1v8>;
|
|
|
|
+ vdda-supply = <&camera_vdda_2v8>;
|
|
|
|
+ vddd-supply = <&camera_vddd_1v5>;
|
|
|
|
+
|
|
|
|
+ reset-gpios = <&msmgpio 35 GPIO_ACTIVE_LOW>;
|
|
|
|
+
|
|
|
|
+ port {
|
|
|
|
+ imx290_ep: endpoint {
|
|
|
|
+ data-lanes = <1 2 3 4>;
|
|
|
|
+ link-frequencies = /bits/ 64 <445500000>;
|
|
|
|
+ remote-endpoint = <&csiphy0_ep>;
|
|
|
|
+ };
|
|
|
|
+ };
|
|
|
|
+ };
|
|
|
|
+ };
|
|
|
|
+...
|
|
|
|
--- a/MAINTAINERS
|
|
|
|
+++ b/MAINTAINERS
|
2024-03-06 21:29:01 +00:00
|
|
|
@@ -19278,7 +19278,7 @@ M: Manivannan Sadhasivam <manivannan.sad
|
2023-06-08 17:49:36 +00:00
|
|
|
L: linux-media@vger.kernel.org
|
|
|
|
S: Maintained
|
|
|
|
T: git git://linuxtv.org/media_tree.git
|
|
|
|
-F: Documentation/devicetree/bindings/media/i2c/imx290.txt
|
|
|
|
+F: Documentation/devicetree/bindings/media/i2c/sony,imx290.yaml
|
|
|
|
F: drivers/media/i2c/imx290.c
|
|
|
|
|
|
|
|
SONY IMX296 SENSOR DRIVER
|