[libcamera-devel] libcamera: camera_sensor: Add IMX290 sensor properties
diff mbox series

Message ID 20220328115642.10601-1-laurent.pinchart@ideasonboard.com
State Accepted
Commit b90faccb2c4c7a7919bfd229c48b9cf8a26bb46d
Headers show
Series
  • [libcamera-devel] libcamera: camera_sensor: Add IMX290 sensor properties
Related show

Commit Message

Laurent Pinchart March 28, 2022, 11:56 a.m. UTC
The Sony IMX290 is a rolling shutter sensor with a 1945x1109 pixel array
size, with a recommended resolution after CFA interpolation of
1920x1080.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
---
 src/libcamera/camera_sensor_properties.cpp | 4 ++++
 1 file changed, 4 insertions(+)

Comments

Jacopo Mondi March 28, 2022, 12:56 p.m. UTC | #1
Hi Laurent,

On Mon, Mar 28, 2022 at 02:56:42PM +0300, Laurent Pinchart via libcamera-devel wrote:
> The Sony IMX290 is a rolling shutter sensor with a 1945x1109 pixel array
> size, with a recommended resolution after CFA interpolation of
> 1920x1080.
>
> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>

I don't have a datasheet so I trust your calculations

Reviewed-by: Jacopo Mondi <jacopo@jmondi.org>

Thanks
  j

> ---
>  src/libcamera/camera_sensor_properties.cpp | 4 ++++
>  1 file changed, 4 insertions(+)
>
> diff --git a/src/libcamera/camera_sensor_properties.cpp b/src/libcamera/camera_sensor_properties.cpp
> index 80a0bbac8901..7a3490125e11 100644
> --- a/src/libcamera/camera_sensor_properties.cpp
> +++ b/src/libcamera/camera_sensor_properties.cpp
> @@ -90,6 +90,10 @@ const CameraSensorProperties *CameraSensorProperties::get(const std::string &sen
>  				{ controls::draft::TestPatternModePn9, 4 },
>  			},
>  		} },
> +		{ "imx290", {
> +			.unitCellSize = { 2900, 2900 },
> +			.testPatternModes = {},
> +		} },
>  		{ "imx296", {
>  			.unitCellSize = { 3450, 3450 },
>  			.testPatternModes = {},
> --
> Regards,
>
> Laurent Pinchart
>
Kieran Bingham March 28, 2022, 1:32 p.m. UTC | #2
Quoting Jacopo Mondi via libcamera-devel (2022-03-28 13:56:38)
> Hi Laurent,
> 
> On Mon, Mar 28, 2022 at 02:56:42PM +0300, Laurent Pinchart via libcamera-devel wrote:
> > The Sony IMX290 is a rolling shutter sensor with a 1945x1109 pixel array
> > size, with a recommended resolution after CFA interpolation of
> > 1920x1080.
> >
> > Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
> 
> I don't have a datasheet so I trust your calculations
> 
> Reviewed-by: Jacopo Mondi <jacopo@jmondi.org>
> 
> Thanks
>   j
> 
> > ---
> >  src/libcamera/camera_sensor_properties.cpp | 4 ++++
> >  1 file changed, 4 insertions(+)
> >
> > diff --git a/src/libcamera/camera_sensor_properties.cpp b/src/libcamera/camera_sensor_properties.cpp
> > index 80a0bbac8901..7a3490125e11 100644
> > --- a/src/libcamera/camera_sensor_properties.cpp
> > +++ b/src/libcamera/camera_sensor_properties.cpp
> > @@ -90,6 +90,10 @@ const CameraSensorProperties *CameraSensorProperties::get(const std::string &sen
> >                               { controls::draft::TestPatternModePn9, 4 },
> >                       },
> >               } },
> > +             { "imx290", {
> > +                     .unitCellSize = { 2900, 2900 },

Matches the values reported in 
https://www.sony-semicon.co.jp/products/common/pdf/IMX226CLJ_CQJ_Flyer.pdf

Interestingly it also says: 

> "Number of effective pixels: 1945 (H) × 1097 (V)"

Which I guess is the 1109 - some vertical blanking. But I haven't see
those values yet. Perhaps they're hidden in more complete datasheets
that I don't have access to.

But I don't see any reason to doubt this otherwise so:

Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>

> > +                     .testPatternModes = {},
> > +             } },
> >               { "imx296", {
> >                       .unitCellSize = { 3450, 3450 },
> >                       .testPatternModes = {},
> > --
> > Regards,
> >
> > Laurent Pinchart
> >
Laurent Pinchart March 28, 2022, 1:40 p.m. UTC | #3
Hi Kieran,

On Mon, Mar 28, 2022 at 02:32:41PM +0100, Kieran Bingham wrote:
> Quoting Jacopo Mondi via libcamera-devel (2022-03-28 13:56:38)
> > On Mon, Mar 28, 2022 at 02:56:42PM +0300, Laurent Pinchart via libcamera-devel wrote:
> > > The Sony IMX290 is a rolling shutter sensor with a 1945x1109 pixel array
> > > size, with a recommended resolution after CFA interpolation of
> > > 1920x1080.
> > >
> > > Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
> > 
> > I don't have a datasheet so I trust your calculations
> > 
> > Reviewed-by: Jacopo Mondi <jacopo@jmondi.org>
> > 
> > > ---
> > >  src/libcamera/camera_sensor_properties.cpp | 4 ++++
> > >  1 file changed, 4 insertions(+)
> > >
> > > diff --git a/src/libcamera/camera_sensor_properties.cpp b/src/libcamera/camera_sensor_properties.cpp
> > > index 80a0bbac8901..7a3490125e11 100644
> > > --- a/src/libcamera/camera_sensor_properties.cpp
> > > +++ b/src/libcamera/camera_sensor_properties.cpp
> > > @@ -90,6 +90,10 @@ const CameraSensorProperties *CameraSensorProperties::get(const std::string &sen
> > >                               { controls::draft::TestPatternModePn9, 4 },
> > >                       },
> > >               } },
> > > +             { "imx290", {
> > > +                     .unitCellSize = { 2900, 2900 },
> 
> Matches the values reported in 
> https://www.sony-semicon.co.jp/products/common/pdf/IMX226CLJ_CQJ_Flyer.pdf
> 
> Interestingly it also says: 
> 
> > "Number of effective pixels: 1945 (H) × 1097 (V)"
> 
> Which I guess is the 1109 - some vertical blanking. But I haven't see
> those values yet. Perhaps they're hidden in more complete datasheets
> that I don't have access to.

There are also 10 rows of usable optical blank, and 2 rows of ignored
optical blank.

> But I don't see any reason to doubt this otherwise so:
> 
> Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
> 
> > > +                     .testPatternModes = {},
> > > +             } },
> > >               { "imx296", {
> > >                       .unitCellSize = { 3450, 3450 },
> > >                       .testPatternModes = {},

Patch
diff mbox series

diff --git a/src/libcamera/camera_sensor_properties.cpp b/src/libcamera/camera_sensor_properties.cpp
index 80a0bbac8901..7a3490125e11 100644
--- a/src/libcamera/camera_sensor_properties.cpp
+++ b/src/libcamera/camera_sensor_properties.cpp
@@ -90,6 +90,10 @@  const CameraSensorProperties *CameraSensorProperties::get(const std::string &sen
 				{ controls::draft::TestPatternModePn9, 4 },
 			},
 		} },
+		{ "imx290", {
+			.unitCellSize = { 2900, 2900 },
+			.testPatternModes = {},
+		} },
 		{ "imx296", {
 			.unitCellSize = { 3450, 3450 },
 			.testPatternModes = {},