devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v3 00/15] media: i2c: imx290: Mono support, minor fixes, alternate INCK, and more controls
@ 2023-02-15 22:29 Laurent Pinchart
  2023-02-15 22:29 ` [PATCH v3 01/15] media: dt-bindings: media: i2c: Add mono version to IMX290 bindings Laurent Pinchart
                   ` (3 more replies)
  0 siblings, 4 replies; 6+ messages in thread
From: Laurent Pinchart @ 2023-02-15 22:29 UTC (permalink / raw)
  To: linux-media
  Cc: Dave Stevenson, Manivannan Sadhasivam, Sakari Ailus,
	Alexander Stein, Rob Herring, Krzysztof Kozlowski, devicetree

Hello,

This patch series combines the "[PATCH v2 0/2] Add support for mono
version of Sony IMX290 sensor" ([1]) and "[PATCH v2 00/13] imx290: Minor
fixes, support for alternate INCK, and more ctrls" ([2]) previously
submitted by Dave into a single series.

As promised in my review of v2 of both series, I have tested the changes
with my IMX327 camera sensor, connected to the i.MX8MP ISP, with
libcamera. I haven't noticed any regression (but, full disclaimer, I
haven't tested all the newly features). I think we're thus good to go.

This version handles all review comments from v2, resulting in the
following changes:

- Deprecate the sony,imx290 compatible
- Update the DT example to use the new sony,imx290lqr compatible
- Drop unneeded pointer cast
- Don't move imx290_of_match table
- Fix typos

The code has also been rebased on top of the latest media master branch,
with rebase conflicts and rebase-induced compilation breakages fixed.

The patches are available from

git://git.kernel.org/pub/scm/linux/kernel/git/pinchartl/linux.git next/media/sensors/imx290

[1] https://lore.kernel.org/linux-media/20230203191644.947643-1-dave.stevenson@raspberrypi.com
[2] https://lore.kernel.org/linux-media/20230203191811.947697-1-dave.stevenson@raspberrypi.com

Dave Stevenson (15):
  media: dt-bindings: media: i2c: Add mono version to IMX290 bindings
  media: i2c: imx290: Add support for the mono sensor variant
  media: i2c: imx290: Match kernel coding style on whitespace
  media: i2c: imx290: Set the colorspace fields in the format
  media: i2c: imx290: Add V4L2_SUBDEV_FL_HAS_EVENTS and subscribe hooks
  media: i2c: imx290: Fix the pixel rate at 148.5Mpix/s
  media: i2c: imx290: Support 60fps in 2 lane operation
  media: i2c: imx290: Use CSI timings as per datasheet
  media: i2c: imx290: Convert V4L2_CID_HBLANK to read/write
  media: i2c: imx290: Convert V4L2_CID_VBLANK to read/write
  media: i2c: imx290: VMAX is mode dependent
  media: i2c: imx290: Remove duplicated write to IMX290_CTRL_07
  media: i2c: imx290: Add support for 74.25MHz external clock
  media: i2c: imx290: Add support for H & V Flips
  media: i2c: imx290: Add the error code to logs in start_streaming

 .../bindings/media/i2c/sony,imx290.yaml       |  24 +-
 drivers/media/i2c/imx290.c                    | 537 ++++++++++++++----
 2 files changed, 442 insertions(+), 119 deletions(-)


base-commit: 83e0f265aa8d0e37cc8e15d318b64da0ec03ff41
-- 
Regards,

Laurent Pinchart


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [PATCH v3 01/15] media: dt-bindings: media: i2c: Add mono version to IMX290 bindings
  2023-02-15 22:29 [PATCH v3 00/15] media: i2c: imx290: Mono support, minor fixes, alternate INCK, and more controls Laurent Pinchart
@ 2023-02-15 22:29 ` Laurent Pinchart
  2023-02-15 22:29 ` [PATCH v3 02/15] media: i2c: imx290: Add support for the mono sensor variant Laurent Pinchart
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 6+ messages in thread
From: Laurent Pinchart @ 2023-02-15 22:29 UTC (permalink / raw)
  To: linux-media
  Cc: Dave Stevenson, Manivannan Sadhasivam, Sakari Ailus,
	Alexander Stein, Rob Herring, Krzysztof Kozlowski, devicetree

From: Dave Stevenson <dave.stevenson@raspberrypi.com>

The IMX290 module is available as either monochrome or colour and
the variant is not detectable at runtime.

Add a new compatible string for the monochrome version, based on the
full device name IMX290LLR. For consistency, add a new compatible string
for the colour version based on the IMX290LQR full device name, and
deprecate the current ambiguous compatible string.

Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
Acked-by: Rob Herring <robh@kernel.org>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Tested-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
---
Changes since v2:

- Deprecate the sony,imx290 compatible
- Update the example to use the new sony,imx290lqr compatible.
---
 .../bindings/media/i2c/sony,imx290.yaml       | 24 +++++++++++++------
 1 file changed, 17 insertions(+), 7 deletions(-)

diff --git a/Documentation/devicetree/bindings/media/i2c/sony,imx290.yaml b/Documentation/devicetree/bindings/media/i2c/sony,imx290.yaml
index 21377daae026..cafb6e1a7150 100644
--- a/Documentation/devicetree/bindings/media/i2c/sony,imx290.yaml
+++ b/Documentation/devicetree/bindings/media/i2c/sony,imx290.yaml
@@ -12,15 +12,25 @@ maintainers:
 
 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.
+  Pixel, available in either mono or colour variants. 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.
+
+  imx290lqr is the full model identifier for the colour variant. "sony,imx290"
+  is treated the same as this as it was the original compatible string.
+  imx290llr is the mono version of the sensor.
 
 properties:
   compatible:
-    enum:
-      - sony,imx290
+    oneOf:
+      - enum:
+          - sony,imx290lqr # Colour
+          - sony,imx290llr # Monochrome
+      - const: sony,imx290
+        deprecated: true
 
   reg:
     maxItems: 1
@@ -101,7 +111,7 @@ examples:
         #size-cells = <0>;
 
         imx290: camera-sensor@1a {
-            compatible = "sony,imx290";
+            compatible = "sony,imx290lqr";
             reg = <0x1a>;
 
             pinctrl-names = "default";
-- 
Regards,

Laurent Pinchart


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH v3 02/15] media: i2c: imx290: Add support for the mono sensor variant
  2023-02-15 22:29 [PATCH v3 00/15] media: i2c: imx290: Mono support, minor fixes, alternate INCK, and more controls Laurent Pinchart
  2023-02-15 22:29 ` [PATCH v3 01/15] media: dt-bindings: media: i2c: Add mono version to IMX290 bindings Laurent Pinchart
@ 2023-02-15 22:29 ` Laurent Pinchart
  2023-02-17  9:08 ` [PATCH v3 00/15] media: i2c: imx290: Mono support, minor fixes, alternate INCK, and more controls Alexander Stein
  2023-03-09  8:16 ` Alexander Stein
  3 siblings, 0 replies; 6+ messages in thread
From: Laurent Pinchart @ 2023-02-15 22:29 UTC (permalink / raw)
  To: linux-media
  Cc: Dave Stevenson, Manivannan Sadhasivam, Sakari Ailus,
	Alexander Stein, Rob Herring, Krzysztof Kozlowski, devicetree

From: Dave Stevenson <dave.stevenson@raspberrypi.com>

The IMX290 module is available as either mono or colour (Bayer).

Update the driver so that it can advertise the correct mono
formats instead of the colour ones.

Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Tested-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
---
Changes since v2:

- Fix conflict causing compilation breakage
- Drop unneeded pointer cast
- Don't move imx290_of_match table
---
 drivers/media/i2c/imx290.c | 75 +++++++++++++++++++++++++++++++-------
 1 file changed, 61 insertions(+), 14 deletions(-)

diff --git a/drivers/media/i2c/imx290.c b/drivers/media/i2c/imx290.c
index 49d6c8bdec41..febb8aeb9252 100644
--- a/drivers/media/i2c/imx290.c
+++ b/drivers/media/i2c/imx290.c
@@ -13,6 +13,7 @@
 #include <linux/gpio/consumer.h>
 #include <linux/i2c.h>
 #include <linux/module.h>
+#include <linux/of_device.h>
 #include <linux/pm_runtime.h>
 #include <linux/regmap.h>
 #include <linux/regulator/consumer.h>
@@ -157,6 +158,21 @@
 
 #define IMX290_NUM_SUPPLIES				3
 
+enum imx290_colour_variant {
+	IMX290_VARIANT_COLOUR,
+	IMX290_VARIANT_MONO,
+	IMX290_VARIANT_MAX
+};
+
+enum imx290_model {
+	IMX290_MODEL_IMX290LQR,
+	IMX290_MODEL_IMX290LLR,
+};
+
+struct imx290_model_info {
+	enum imx290_colour_variant colour_variant;
+};
+
 struct imx290_regval {
 	u32 reg;
 	u32 val;
@@ -177,6 +193,7 @@ struct imx290 {
 	struct clk *xclk;
 	struct regmap *regmap;
 	u8 nlanes;
+	const struct imx290_model_info *model;
 
 	struct v4l2_subdev sd;
 	struct media_pad pad;
@@ -414,7 +431,7 @@ static inline int imx290_modes_num(const struct imx290 *imx290)
 }
 
 struct imx290_format_info {
-	u32 code;
+	u32 code[IMX290_VARIANT_MAX];
 	u8 bpp;
 	const struct imx290_regval *regs;
 	unsigned int num_regs;
@@ -422,26 +439,33 @@ struct imx290_format_info {
 
 static const struct imx290_format_info imx290_formats[] = {
 	{
-		.code = MEDIA_BUS_FMT_SRGGB10_1X10,
+		.code = {
+			[IMX290_VARIANT_COLOUR] = MEDIA_BUS_FMT_SRGGB10_1X10,
+			[IMX290_VARIANT_MONO] = MEDIA_BUS_FMT_Y10_1X10
+		},
 		.bpp = 10,
 		.regs = imx290_10bit_settings,
 		.num_regs = ARRAY_SIZE(imx290_10bit_settings),
 	}, {
-		.code = MEDIA_BUS_FMT_SRGGB12_1X12,
+		.code = {
+			[IMX290_VARIANT_COLOUR] = MEDIA_BUS_FMT_SRGGB12_1X12,
+			[IMX290_VARIANT_MONO] = MEDIA_BUS_FMT_Y12_1X12
+		},
 		.bpp = 12,
 		.regs = imx290_12bit_settings,
 		.num_regs = ARRAY_SIZE(imx290_12bit_settings),
 	}
 };
 
-static const struct imx290_format_info *imx290_format_info(u32 code)
+static const struct imx290_format_info *
+imx290_format_info(const struct imx290 *imx290, u32 code)
 {
 	unsigned int i;
 
 	for (i = 0; i < ARRAY_SIZE(imx290_formats); ++i) {
 		const struct imx290_format_info *info = &imx290_formats[i];
 
-		if (info->code == code)
+		if (info->code[imx290->model->colour_variant] == code)
 			return info;
 	}
 
@@ -536,7 +560,7 @@ static int imx290_set_black_level(struct imx290 *imx290,
 				  const struct v4l2_mbus_framefmt *format,
 				  unsigned int black_level, int *err)
 {
-	unsigned int bpp = imx290_format_info(format->code)->bpp;
+	unsigned int bpp = imx290_format_info(imx290, format->code)->bpp;
 
 	return imx290_write(imx290, IMX290_BLKLEVEL,
 			    black_level >> (16 - bpp), err);
@@ -548,7 +572,7 @@ static int imx290_setup_format(struct imx290 *imx290,
 	const struct imx290_format_info *info;
 	int ret;
 
-	info = imx290_format_info(format->code);
+	info = imx290_format_info(imx290, format->code);
 
 	ret = imx290_set_register_array(imx290, info->regs, info->num_regs);
 	if (ret < 0) {
@@ -649,7 +673,7 @@ static void imx290_ctrl_update(struct imx290 *imx290,
 
 	/* pixel rate = link_freq * 2 * nr_of_lanes / bits_per_sample */
 	pixel_rate = link_freq * 2 * imx290->nlanes;
-	do_div(pixel_rate, imx290_format_info(format->code)->bpp);
+	do_div(pixel_rate, imx290_format_info(imx290, format->code)->bpp);
 
 	__v4l2_ctrl_s_ctrl(imx290->link_freq, mode->link_freq_index);
 	__v4l2_ctrl_s_ctrl_int64(imx290->pixel_rate, pixel_rate);
@@ -844,10 +868,12 @@ static int imx290_enum_mbus_code(struct v4l2_subdev *sd,
 				 struct v4l2_subdev_state *sd_state,
 				 struct v4l2_subdev_mbus_code_enum *code)
 {
+	const struct imx290 *imx290 = to_imx290(sd);
+
 	if (code->index >= ARRAY_SIZE(imx290_formats))
 		return -EINVAL;
 
-	code->code = imx290_formats[code->index].code;
+	code->code = imx290_formats[code->index].code[imx290->model->colour_variant];
 
 	return 0;
 }
@@ -859,7 +885,7 @@ static int imx290_enum_frame_size(struct v4l2_subdev *sd,
 	const struct imx290 *imx290 = to_imx290(sd);
 	const struct imx290_mode *imx290_modes = imx290_modes_ptr(imx290);
 
-	if (!imx290_format_info(fse->code))
+	if (!imx290_format_info(imx290, fse->code))
 		return -EINVAL;
 
 	if (fse->index >= imx290_modes_num(imx290))
@@ -888,8 +914,8 @@ static int imx290_set_fmt(struct v4l2_subdev *sd,
 	fmt->format.width = mode->width;
 	fmt->format.height = mode->height;
 
-	if (!imx290_format_info(fmt->format.code))
-		fmt->format.code = imx290_formats[0].code;
+	if (!imx290_format_info(imx290, fmt->format.code))
+		fmt->format.code = imx290_formats[0].code[imx290->model->colour_variant];
 
 	fmt->format.field = V4L2_FIELD_NONE;
 
@@ -1177,6 +1203,15 @@ static s64 imx290_check_link_freqs(const struct imx290 *imx290,
 	return 0;
 }
 
+static const struct imx290_model_info imx290_models[] = {
+	[IMX290_MODEL_IMX290LQR] = {
+		.colour_variant = IMX290_VARIANT_COLOUR,
+	},
+	[IMX290_MODEL_IMX290LLR] = {
+		.colour_variant = IMX290_VARIANT_MONO,
+	},
+};
+
 static int imx290_parse_dt(struct imx290 *imx290)
 {
 	/* Only CSI2 is supported for now: */
@@ -1187,6 +1222,8 @@ static int imx290_parse_dt(struct imx290 *imx290)
 	int ret;
 	s64 fq;
 
+	imx290->model = of_device_get_match_data(imx290->dev);
+
 	endpoint = fwnode_graph_get_next_endpoint(dev_fwnode(imx290->dev), NULL);
 	if (!endpoint) {
 		dev_err(imx290->dev, "Endpoint node not found\n");
@@ -1352,8 +1389,18 @@ static void imx290_remove(struct i2c_client *client)
 }
 
 static const struct of_device_id imx290_of_match[] = {
-	{ .compatible = "sony,imx290" },
-	{ /* sentinel */ }
+	{
+		/* Deprecated - synonym for "sony,imx290lqr" */
+		.compatible = "sony,imx290",
+		.data = &imx290_models[IMX290_MODEL_IMX290LQR],
+	}, {
+		.compatible = "sony,imx290lqr",
+		.data = &imx290_models[IMX290_MODEL_IMX290LQR],
+	}, {
+		.compatible = "sony,imx290llr",
+		.data = &imx290_models[IMX290_MODEL_IMX290LLR],
+	},
+	{ /* sentinel */ },
 };
 MODULE_DEVICE_TABLE(of, imx290_of_match);
 
-- 
Regards,

Laurent Pinchart


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [PATCH v3 00/15] media: i2c: imx290: Mono support, minor fixes, alternate INCK, and more controls
  2023-02-15 22:29 [PATCH v3 00/15] media: i2c: imx290: Mono support, minor fixes, alternate INCK, and more controls Laurent Pinchart
  2023-02-15 22:29 ` [PATCH v3 01/15] media: dt-bindings: media: i2c: Add mono version to IMX290 bindings Laurent Pinchart
  2023-02-15 22:29 ` [PATCH v3 02/15] media: i2c: imx290: Add support for the mono sensor variant Laurent Pinchart
@ 2023-02-17  9:08 ` Alexander Stein
  2023-03-09  8:16 ` Alexander Stein
  3 siblings, 0 replies; 6+ messages in thread
From: Alexander Stein @ 2023-02-17  9:08 UTC (permalink / raw)
  To: linux-media, Laurent Pinchart
  Cc: Dave Stevenson, Manivannan Sadhasivam, Sakari Ailus, Rob Herring,
	Krzysztof Kozlowski, devicetree

Hi Laurent,

thanks for the wrap-up.
I could test this series on my TQMa8MPxL (i.MX8MP) using ISP and libcamera as 
well. I think as well that we're good to go.

Best regards,
Alexander

Am Mittwoch, 15. Februar 2023, 23:29:48 CET schrieb Laurent Pinchart:
> Hello,
> 
> This patch series combines the "[PATCH v2 0/2] Add support for mono
> version of Sony IMX290 sensor" ([1]) and "[PATCH v2 00/13] imx290: Minor
> fixes, support for alternate INCK, and more ctrls" ([2]) previously
> submitted by Dave into a single series.
> 
> As promised in my review of v2 of both series, I have tested the changes
> with my IMX327 camera sensor, connected to the i.MX8MP ISP, with
> libcamera. I haven't noticed any regression (but, full disclaimer, I
> haven't tested all the newly features). I think we're thus good to go.
> 
> This version handles all review comments from v2, resulting in the
> following changes:
> 
> - Deprecate the sony,imx290 compatible
> - Update the DT example to use the new sony,imx290lqr compatible
> - Drop unneeded pointer cast
> - Don't move imx290_of_match table
> - Fix typos
> 
> The code has also been rebased on top of the latest media master branch,
> with rebase conflicts and rebase-induced compilation breakages fixed.
> 
> The patches are available from
> 
> git://git.kernel.org/pub/scm/linux/kernel/git/pinchartl/linux.git
> next/media/sensors/imx290
> 
> [1]
> https://lore.kernel.org/linux-media/20230203191644.947643-1-dave.stevenson@
> raspberrypi.com [2]
> https://lore.kernel.org/linux-media/20230203191811.947697-1-dave.stevenson@
> raspberrypi.com
> 
> Dave Stevenson (15):
>   media: dt-bindings: media: i2c: Add mono version to IMX290 bindings
>   media: i2c: imx290: Add support for the mono sensor variant
>   media: i2c: imx290: Match kernel coding style on whitespace
>   media: i2c: imx290: Set the colorspace fields in the format
>   media: i2c: imx290: Add V4L2_SUBDEV_FL_HAS_EVENTS and subscribe hooks
>   media: i2c: imx290: Fix the pixel rate at 148.5Mpix/s
>   media: i2c: imx290: Support 60fps in 2 lane operation
>   media: i2c: imx290: Use CSI timings as per datasheet
>   media: i2c: imx290: Convert V4L2_CID_HBLANK to read/write
>   media: i2c: imx290: Convert V4L2_CID_VBLANK to read/write
>   media: i2c: imx290: VMAX is mode dependent
>   media: i2c: imx290: Remove duplicated write to IMX290_CTRL_07
>   media: i2c: imx290: Add support for 74.25MHz external clock
>   media: i2c: imx290: Add support for H & V Flips
>   media: i2c: imx290: Add the error code to logs in start_streaming
> 
>  .../bindings/media/i2c/sony,imx290.yaml       |  24 +-
>  drivers/media/i2c/imx290.c                    | 537 ++++++++++++++----
>  2 files changed, 442 insertions(+), 119 deletions(-)
> 
> 
> base-commit: 83e0f265aa8d0e37cc8e15d318b64da0ec03ff41


-- 
TQ-Systems GmbH | Mühlstraße 2, Gut Delling | 82229 Seefeld, Germany
Amtsgericht München, HRB 105018
Geschäftsführer: Detlef Schneider, Rüdiger Stahl, Stefan Schneider
http://www.tq-group.com/



^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH v3 00/15] media: i2c: imx290: Mono support, minor fixes, alternate INCK, and more controls
  2023-02-15 22:29 [PATCH v3 00/15] media: i2c: imx290: Mono support, minor fixes, alternate INCK, and more controls Laurent Pinchart
                   ` (2 preceding siblings ...)
  2023-02-17  9:08 ` [PATCH v3 00/15] media: i2c: imx290: Mono support, minor fixes, alternate INCK, and more controls Alexander Stein
@ 2023-03-09  8:16 ` Alexander Stein
  2023-03-12 12:56   ` Laurent Pinchart
  3 siblings, 1 reply; 6+ messages in thread
From: Alexander Stein @ 2023-03-09  8:16 UTC (permalink / raw)
  To: linux-media, Laurent Pinchart
  Cc: Dave Stevenson, Manivannan Sadhasivam, Sakari Ailus, Rob Herring,
	Krzysztof Kozlowski, devicetree

Hi everyone,

Am Mittwoch, 15. Februar 2023, 23:29:48 CET schrieb Laurent Pinchart:
> Hello,
> 
> This patch series combines the "[PATCH v2 0/2] Add support for mono
> version of Sony IMX290 sensor" ([1]) and "[PATCH v2 00/13] imx290: Minor
> fixes, support for alternate INCK, and more ctrls" ([2]) previously
> submitted by Dave into a single series.
> 
> As promised in my review of v2 of both series, I have tested the changes
> with my IMX327 camera sensor, connected to the i.MX8MP ISP, with
> libcamera. I haven't noticed any regression (but, full disclaimer, I
> haven't tested all the newly features). I think we're thus good to go.

What is the status of this series? Will it be picked up?

Best regards,
Alexander

> 
> This version handles all review comments from v2, resulting in the
> following changes:
> 
> - Deprecate the sony,imx290 compatible
> - Update the DT example to use the new sony,imx290lqr compatible
> - Drop unneeded pointer cast
> - Don't move imx290_of_match table
> - Fix typos
> 
> The code has also been rebased on top of the latest media master branch,
> with rebase conflicts and rebase-induced compilation breakages fixed.
> 
> The patches are available from
> 
> git://git.kernel.org/pub/scm/linux/kernel/git/pinchartl/linux.git
> next/media/sensors/imx290
> 
> [1]
> https://lore.kernel.org/linux-media/20230203191644.947643-1-dave.stevenson@
> raspberrypi.com [2]
> https://lore.kernel.org/linux-media/20230203191811.947697-1-dave.stevenson@
> raspberrypi.com
> 
> Dave Stevenson (15):
>   media: dt-bindings: media: i2c: Add mono version to IMX290 bindings
>   media: i2c: imx290: Add support for the mono sensor variant
>   media: i2c: imx290: Match kernel coding style on whitespace
>   media: i2c: imx290: Set the colorspace fields in the format
>   media: i2c: imx290: Add V4L2_SUBDEV_FL_HAS_EVENTS and subscribe hooks
>   media: i2c: imx290: Fix the pixel rate at 148.5Mpix/s
>   media: i2c: imx290: Support 60fps in 2 lane operation
>   media: i2c: imx290: Use CSI timings as per datasheet
>   media: i2c: imx290: Convert V4L2_CID_HBLANK to read/write
>   media: i2c: imx290: Convert V4L2_CID_VBLANK to read/write
>   media: i2c: imx290: VMAX is mode dependent
>   media: i2c: imx290: Remove duplicated write to IMX290_CTRL_07
>   media: i2c: imx290: Add support for 74.25MHz external clock
>   media: i2c: imx290: Add support for H & V Flips
>   media: i2c: imx290: Add the error code to logs in start_streaming
> 
>  .../bindings/media/i2c/sony,imx290.yaml       |  24 +-
>  drivers/media/i2c/imx290.c                    | 537 ++++++++++++++----
>  2 files changed, 442 insertions(+), 119 deletions(-)
> 
> 
> base-commit: 83e0f265aa8d0e37cc8e15d318b64da0ec03ff41


-- 
TQ-Systems GmbH | Mühlstraße 2, Gut Delling | 82229 Seefeld, Germany
Amtsgericht München, HRB 105018
Geschäftsführer: Detlef Schneider, Rüdiger Stahl, Stefan Schneider
http://www.tq-group.com/



^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH v3 00/15] media: i2c: imx290: Mono support, minor fixes, alternate INCK, and more controls
  2023-03-09  8:16 ` Alexander Stein
@ 2023-03-12 12:56   ` Laurent Pinchart
  0 siblings, 0 replies; 6+ messages in thread
From: Laurent Pinchart @ 2023-03-12 12:56 UTC (permalink / raw)
  To: Alexander Stein
  Cc: linux-media, Dave Stevenson, Manivannan Sadhasivam, Sakari Ailus,
	Rob Herring, Krzysztof Kozlowski, devicetree

Hi Alexander,

On Thu, Mar 09, 2023 at 09:16:47AM +0100, Alexander Stein wrote:
> Am Mittwoch, 15. Februar 2023, 23:29:48 CET schrieb Laurent Pinchart:
> > Hello,
> > 
> > This patch series combines the "[PATCH v2 0/2] Add support for mono
> > version of Sony IMX290 sensor" ([1]) and "[PATCH v2 00/13] imx290: Minor
> > fixes, support for alternate INCK, and more ctrls" ([2]) previously
> > submitted by Dave into a single series.
> > 
> > As promised in my review of v2 of both series, I have tested the changes
> > with my IMX327 camera sensor, connected to the i.MX8MP ISP, with
> > libcamera. I haven't noticed any regression (but, full disclaimer, I
> > haven't tested all the newly features). I think we're thus good to go.
> 
> What is the status of this series? Will it be picked up?

I expect Sakari to pick it up for v6.4. I have pushed the whole series
with acks to the next/media/sensors/imx290 branch on
git://git.kernel.org/pub/scm/linux/kernel/git/pinchartl/linux.git.

> > This version handles all review comments from v2, resulting in the
> > following changes:
> > 
> > - Deprecate the sony,imx290 compatible
> > - Update the DT example to use the new sony,imx290lqr compatible
> > - Drop unneeded pointer cast
> > - Don't move imx290_of_match table
> > - Fix typos
> > 
> > The code has also been rebased on top of the latest media master branch,
> > with rebase conflicts and rebase-induced compilation breakages fixed.
> > 
> > The patches are available from
> > 
> > git://git.kernel.org/pub/scm/linux/kernel/git/pinchartl/linux.git
> > next/media/sensors/imx290
> > 
> > [1] https://lore.kernel.org/linux-media/20230203191644.947643-1-dave.stevenson@raspberrypi.com
> > [2] https://lore.kernel.org/linux-media/20230203191811.947697-1-dave.stevenson@raspberrypi.com
> > 
> > Dave Stevenson (15):
> >   media: dt-bindings: media: i2c: Add mono version to IMX290 bindings
> >   media: i2c: imx290: Add support for the mono sensor variant
> >   media: i2c: imx290: Match kernel coding style on whitespace
> >   media: i2c: imx290: Set the colorspace fields in the format
> >   media: i2c: imx290: Add V4L2_SUBDEV_FL_HAS_EVENTS and subscribe hooks
> >   media: i2c: imx290: Fix the pixel rate at 148.5Mpix/s
> >   media: i2c: imx290: Support 60fps in 2 lane operation
> >   media: i2c: imx290: Use CSI timings as per datasheet
> >   media: i2c: imx290: Convert V4L2_CID_HBLANK to read/write
> >   media: i2c: imx290: Convert V4L2_CID_VBLANK to read/write
> >   media: i2c: imx290: VMAX is mode dependent
> >   media: i2c: imx290: Remove duplicated write to IMX290_CTRL_07
> >   media: i2c: imx290: Add support for 74.25MHz external clock
> >   media: i2c: imx290: Add support for H & V Flips
> >   media: i2c: imx290: Add the error code to logs in start_streaming
> > 
> >  .../bindings/media/i2c/sony,imx290.yaml       |  24 +-
> >  drivers/media/i2c/imx290.c                    | 537 ++++++++++++++----
> >  2 files changed, 442 insertions(+), 119 deletions(-)
> > 
> > 
> > base-commit: 83e0f265aa8d0e37cc8e15d318b64da0ec03ff41

-- 
Regards,

Laurent Pinchart

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2023-03-12 12:56 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-02-15 22:29 [PATCH v3 00/15] media: i2c: imx290: Mono support, minor fixes, alternate INCK, and more controls Laurent Pinchart
2023-02-15 22:29 ` [PATCH v3 01/15] media: dt-bindings: media: i2c: Add mono version to IMX290 bindings Laurent Pinchart
2023-02-15 22:29 ` [PATCH v3 02/15] media: i2c: imx290: Add support for the mono sensor variant Laurent Pinchart
2023-02-17  9:08 ` [PATCH v3 00/15] media: i2c: imx290: Mono support, minor fixes, alternate INCK, and more controls Alexander Stein
2023-03-09  8:16 ` Alexander Stein
2023-03-12 12:56   ` Laurent Pinchart

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).