[v2,5/5] libcamera: sensor: Add Mira220 sensor properties
diff mbox series

Message ID 20260724-mira220-v2-5-240003749dd0@ideasonboard.com
State Changes Requested
Headers show
Series
  • ipa: rpi: Add support for Mira220 RGB version
Related show

Commit Message

Jacopo Mondi July 24, 2026, 3:47 p.m. UTC
Add sensor properties for the AMS-OSRAM Mira220 camera sensor.

The sensor has a 1 frame delay for exposure.
The vblank delay is not characterized in the datasheet.

Hblank and analogue gain are fixed and not programmable, so fix their
delays to 1.

Signed-off-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com>
---
 src/libcamera/sensor/camera_sensor_properties.cpp | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

Comments

Kieran Bingham July 24, 2026, 4 p.m. UTC | #1
Quoting Jacopo Mondi (2026-07-24 16:47:44)
> Add sensor properties for the AMS-OSRAM Mira220 camera sensor.
> 
> The sensor has a 1 frame delay for exposure.
> The vblank delay is not characterized in the datasheet.
> 
> Hblank and analogue gain are fixed and not programmable, so fix their
> delays to 1.
> 
> Signed-off-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com>

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

> ---
>  src/libcamera/sensor/camera_sensor_properties.cpp | 14 ++++++++++++++
>  1 file changed, 14 insertions(+)
> 
> diff --git a/src/libcamera/sensor/camera_sensor_properties.cpp b/src/libcamera/sensor/camera_sensor_properties.cpp
> index 28043150e2cb..30755608870c 100644
> --- a/src/libcamera/sensor/camera_sensor_properties.cpp
> +++ b/src/libcamera/sensor/camera_sensor_properties.cpp
> @@ -335,6 +335,20 @@ const CameraSensorProperties *CameraSensorProperties::get(const std::string &sen
>                                 .hblankDelay = 3
>                         },
>                 } },
> +               { "mira220", {
> +                       .unitCellSize = { 2790, 2790 },
> +                       .testPatternModes = {
> +                               { controls::draft::TestPatternModeOff, 0 },
> +                               { controls::draft::TestPatternModeColorBars, 1 },
> +                       },
> +                       .sensorDelays = {
> +                               .exposureDelay = 1,
> +                               .vblankDelay = 1,
> +                               /* Gain and hblank are read-only. */
> +                               .gainDelay = 1,
> +                               .hblankDelay = 1
> +                       },
> +               } },
>                 { "ov2685", {
>                         .unitCellSize = { 1750, 1750 },
>                         .testPatternModes = {
> 
> -- 
> 2.54.0
>
Laurent Pinchart July 31, 2026, 10:43 a.m. UTC | #2
On Fri, Jul 24, 2026 at 05:47:44PM +0200, Jacopo Mondi wrote:
> Add sensor properties for the AMS-OSRAM Mira220 camera sensor.
> 
> The sensor has a 1 frame delay for exposure.
> The vblank delay is not characterized in the datasheet.
> 
> Hblank and analogue gain are fixed and not programmable, so fix their
> delays to 1.
> 
> Signed-off-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com>
> ---
>  src/libcamera/sensor/camera_sensor_properties.cpp | 14 ++++++++++++++
>  1 file changed, 14 insertions(+)
> 
> diff --git a/src/libcamera/sensor/camera_sensor_properties.cpp b/src/libcamera/sensor/camera_sensor_properties.cpp
> index 28043150e2cb..30755608870c 100644
> --- a/src/libcamera/sensor/camera_sensor_properties.cpp
> +++ b/src/libcamera/sensor/camera_sensor_properties.cpp
> @@ -335,6 +335,20 @@ const CameraSensorProperties *CameraSensorProperties::get(const std::string &sen
>  				.hblankDelay = 3
>  			},
>  		} },
> +		{ "mira220", {
> +			.unitCellSize = { 2790, 2790 },
> +			.testPatternModes = {
> +				{ controls::draft::TestPatternModeOff, 0 },
> +				{ controls::draft::TestPatternModeColorBars, 1 },
> +			},
> +			.sensorDelays = {
> +				.exposureDelay = 1,
> +				.vblankDelay = 1,
> +				/* Gain and hblank are read-only. */
> +				.gainDelay = 1,
> +				.hblankDelay = 1

Will something bad happen if we leave those out instead of picking an
arbitrary value ?

> +			},
> +		} },
>  		{ "ov2685", {
>  			.unitCellSize = { 1750, 1750 },
>  			.testPatternModes = {
Jacopo Mondi July 31, 2026, 12:01 p.m. UTC | #3
Hi Laurent

On Fri, Jul 31, 2026 at 01:43:05PM +0300, Laurent Pinchart wrote:
> On Fri, Jul 24, 2026 at 05:47:44PM +0200, Jacopo Mondi wrote:
> > Add sensor properties for the AMS-OSRAM Mira220 camera sensor.
> >
> > The sensor has a 1 frame delay for exposure.
> > The vblank delay is not characterized in the datasheet.
> >
> > Hblank and analogue gain are fixed and not programmable, so fix their
> > delays to 1.
> >
> > Signed-off-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com>
> > ---
> >  src/libcamera/sensor/camera_sensor_properties.cpp | 14 ++++++++++++++
> >  1 file changed, 14 insertions(+)
> >
> > diff --git a/src/libcamera/sensor/camera_sensor_properties.cpp b/src/libcamera/sensor/camera_sensor_properties.cpp
> > index 28043150e2cb..30755608870c 100644
> > --- a/src/libcamera/sensor/camera_sensor_properties.cpp
> > +++ b/src/libcamera/sensor/camera_sensor_properties.cpp
> > @@ -335,6 +335,20 @@ const CameraSensorProperties *CameraSensorProperties::get(const std::string &sen
> >  				.hblankDelay = 3
> >  			},
> >  		} },
> > +		{ "mira220", {
> > +			.unitCellSize = { 2790, 2790 },
> > +			.testPatternModes = {
> > +				{ controls::draft::TestPatternModeOff, 0 },
> > +				{ controls::draft::TestPatternModeColorBars, 1 },
> > +			},
> > +			.sensorDelays = {
> > +				.exposureDelay = 1,
> > +				.vblankDelay = 1,
> > +				/* Gain and hblank are read-only. */
> > +				.gainDelay = 1,
> > +				.hblankDelay = 1
>
> Will something bad happen if we leave those out instead of picking an
> arbitrary value ?

Probably not.

I'll leave them out if that's preferred.

Thanks
  j

>
> > +			},
> > +		} },
> >  		{ "ov2685", {
> >  			.unitCellSize = { 1750, 1750 },
> >  			.testPatternModes = {
>
> --
> Regards,
>
> Laurent Pinchart

Patch
diff mbox series

diff --git a/src/libcamera/sensor/camera_sensor_properties.cpp b/src/libcamera/sensor/camera_sensor_properties.cpp
index 28043150e2cb..30755608870c 100644
--- a/src/libcamera/sensor/camera_sensor_properties.cpp
+++ b/src/libcamera/sensor/camera_sensor_properties.cpp
@@ -335,6 +335,20 @@  const CameraSensorProperties *CameraSensorProperties::get(const std::string &sen
 				.hblankDelay = 3
 			},
 		} },
+		{ "mira220", {
+			.unitCellSize = { 2790, 2790 },
+			.testPatternModes = {
+				{ controls::draft::TestPatternModeOff, 0 },
+				{ controls::draft::TestPatternModeColorBars, 1 },
+			},
+			.sensorDelays = {
+				.exposureDelay = 1,
+				.vblankDelay = 1,
+				/* Gain and hblank are read-only. */
+				.gainDelay = 1,
+				.hblankDelay = 1
+			},
+		} },
 		{ "ov2685", {
 			.unitCellSize = { 1750, 1750 },
 			.testPatternModes = {