Re: [PATCH v2 1/2] media: dt-bindings: media: i2c: Add MT9M114 camera sensor binding
flat view
From: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Date: 2023-02-20 23:54:28
Also in:
linux-media
Hi Sakari, On Sun, Feb 13, 2022 at 12:12:10AM +0200, Laurent Pinchart wrote:
On Sat, Feb 12, 2022 at 10:33:44PM +0200, Sakari Ailus wrote:quoted
On Tue, Feb 08, 2022 at 08:47:32PM +0200, Laurent Pinchart wrote:quoted
On Tue, Feb 08, 2022 at 06:51:01PM +0200, Sakari Ailus wrote:quoted
On Mon, Feb 07, 2022 at 03:20:54AM +0200, Laurent Pinchart wrote:quoted
Add device tree binding for the onsemi MT9M114 CMOS camera sensor. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> --- Changes since v1: - Use graph schema - Drop unneeded properties - Rename ON Semiconductor to onsemi --- .../bindings/media/i2c/onnn,mt9m114.yaml | 110 ++++++++++++++++++ MAINTAINERS | 7 ++ 2 files changed, 117 insertions(+) create mode 100644 Documentation/devicetree/bindings/media/i2c/onnn,mt9m114.yamldiff --git a/Documentation/devicetree/bindings/media/i2c/onnn,mt9m114.yaml b/Documentation/devicetree/bindings/media/i2c/onnn,mt9m114.yaml new file mode 100644 index 000000000000..55b67833f9a1 --- /dev/null +++ b/Documentation/devicetree/bindings/media/i2c/onnn,mt9m114.yaml@@ -0,0 +1,110 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/media/i2c/onnn,mt9m114.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: onsemi 1/6-inch 720p CMOS Digital Image Sensor + +maintainers: + - Laurent Pinchart <laurent.pinchart@ideasonboard.com> + +description: |- + The onsemi MT9M114 is a 1/6-inch 720p (1.26 Mp) CMOS digital image sensor + with an active pixel-array size of 1296H x 976V. It is programmable through + an I2C interface and outputs image data over a 8-bit parallel or 1-lane MIPI + CSI-2 connection. + +properties: + compatible: + const: onnn,mt9m114 + + reg: + description: I2C device address + enum: + - 0x48 + - 0x5d + + clocks: + description: EXTCLK clock signal + maxItems: 1 + + vdd-supply: + description: + Core digital voltage supply, 1.8V + + vddio-supply: + description: + I/O digital voltage supply, 1.8V or 2.8V + + vaa-supply: + description: + Analog voltage supply, 2.8V + + reset-gpios: + description: |- + Reference to the GPIO connected to the RESET_BAR pin, if any (active + low). + + port: + $ref: /schemas/graph.yaml#/$defs/port-base + additionalProperties: false + + properties: + endpoint: + $ref: /schemas/media/video-interfaces.yaml# + additionalProperties: false + + properties: + bus-type: + enum: [4, 5, 6]With bus-type 5, shouldn't you have the parallel interface sync signal polarity properties? Possibly also others if the hardware supports them.As far as I can tell, the hardware has fixed polarities for all signals. Both hsync and vsync (called LINE_VALID and FRAME_VALID here) are active high.Right, then you won't need these. What about the link-frequencies property?That's something I've meant to ask, should the link-frequencies property be specified for parallel buses too, or only CSI-2 ?
Any feedback on this ?
We also need to document how a DT writer should select the link frequencies. The process is complicated, saying that the property is required without explaining how the values can be computed (EMC constraints aside, just from a functional point of view) isn't nice. If you explain this to me, I can put it in a patch :-)
Or on this ? :-)
quoted
quoted
quoted
quoted
+ + remote-endpoint: true + + # The number and mapping of lanes (for CSI-2), and the bus width and + # signal polarities (for parallel and BT.656) are fixed and must not + # be specified. + + required: + - bus-type + +required: + - compatible + - reg + - clocks + - vdd-supply + - vddio-supply + - vaa-supply + - port + +additionalProperties: false + +examples: + - | + #include <dt-bindings/gpio/gpio.h> + + i2c0 { + #address-cells = <1>; + #size-cells = <0>; + + sensor@48 { + compatible = "onnn,mt9m114"; + reg = <0x48>; + + clocks = <&clk24m 0>; + + reset-gpios = <&gpio5 21 GPIO_ACTIVE_LOW>; + + vddio-supply = <®_cam_1v8>; + vdd-supply = <®_cam_1v8>; + vaa-supply = <®_2p8v>; + + port { + endpoint { + bus-type = <4>; + remote-endpoint = <&mipi_csi_in>; + }; + }; + }; + }; +...diff --git a/MAINTAINERS b/MAINTAINERS index f41088418aae..e9919a359c12 100644 --- a/MAINTAINERS +++ b/MAINTAINERS@@ -13096,6 +13096,13 @@ T: git git://linuxtv.org/media_tree.git F: drivers/media/i2c/mt9m032.c F: include/media/i2c/mt9m032.h +MT9M114 ONSEMI SENSOR DRIVER +M: Laurent Pinchart <laurent.pinchart@ideasonboard.com> +L: linux-media@vger.kernel.org +S: Maintained +T: git git://linuxtv.org/media_tree.git +F: Documentation/devicetree/bindings/media/i2c.onnn,mt9m114.yaml + MT9P031 APTINA CAMERA SENSOR M: Laurent Pinchart <laurent.pinchart@ideasonboard.com> L: linux-media@vger.kernel.org
-- Regards, Laurent Pinchart