Message ID | 20250620-vd56g3_support-v1-1-df434bdbc9bd@foss.st.com |
---|---|
State | New |
Headers | show |
Series |
|
Related | show |
On Fri, 20 Jun 2025 at 14:50, Benjamin Mugnier <benjamin.mugnier@foss.st.com> wrote: > > Add unit cell size from the 'pixel size' element in the datasheet. > Delays are set to 2 in case a setting is entered at the very and of the > N frame, the N+1 frame will miss it and only the N+2 frame will use this > new setting. > > Note that vd56g3 has a diagonal color test pattern, but does not match > any description in specified test patterns and therefore is ignored. > > Signed-off-by: Benjamin Mugnier <benjamin.mugnier@foss.st.com> I don't have the datasheet for this sensor, but the numbers look reasonable! Reviewed-by: Naushir Patuck <naush@raspberrypi.com> > --- > src/libcamera/sensor/camera_sensor_properties.cpp | 21 +++++++++++++++++++++ > 1 file changed, 21 insertions(+) > > diff --git a/src/libcamera/sensor/camera_sensor_properties.cpp b/src/libcamera/sensor/camera_sensor_properties.cpp > index c9e9e148a1f08d64b63343ca2e204deaf9ef68c8..0816e2093c6d1b4531779455ea3147dcf32e741d 100644 > --- a/src/libcamera/sensor/camera_sensor_properties.cpp > +++ b/src/libcamera/sensor/camera_sensor_properties.cpp > @@ -456,6 +456,27 @@ const CameraSensorProperties *CameraSensorProperties::get(const std::string &sen > }, > .sensorDelays = { }, > } }, > + { "vd56g3", { > + .unitCellSize = { 2160, 2160 }, > + .testPatternModes = { > + { controls::draft::TestPatternModeOff, 0 }, > + { controls::draft::TestPatternModeSolidColor, 1 }, > + { controls::draft::TestPatternModePn9, 6 }, > + /* > + * No corresponding test pattern mode for: > + * 2: "Vertical Color Bars" > + * 3: "Horizontal Gray Scale" > + * 4: "Vertical Gray Scale" > + * 5: "Diagonal Gray Scale" > + */ > + }, > + .sensorDelays = { > + .exposureDelay = 2, > + .gainDelay = 2, > + .vblankDelay = 2, > + .hblankDelay = 2 > + }, > + } }, > }; > > const auto it = sensorProps.find(sensor); > > -- > 2.25.1 >
Hi Benjamin, On Fri, Jun 20, 2025 at 03:49:16PM +0200, Benjamin Mugnier wrote: > Add unit cell size from the 'pixel size' element in the datasheet. > Delays are set to 2 in case a setting is entered at the very and of the s/and/end/ > N frame, the N+1 frame will miss it and only the N+2 frame will use this > new setting. > > Note that vd56g3 has a diagonal color test pattern, but does not match > any description in specified test patterns and therefore is ignored. > > Signed-off-by: Benjamin Mugnier <benjamin.mugnier@foss.st.com> > --- > src/libcamera/sensor/camera_sensor_properties.cpp | 21 +++++++++++++++++++++ > 1 file changed, 21 insertions(+) > > diff --git a/src/libcamera/sensor/camera_sensor_properties.cpp b/src/libcamera/sensor/camera_sensor_properties.cpp > index c9e9e148a1f08d64b63343ca2e204deaf9ef68c8..0816e2093c6d1b4531779455ea3147dcf32e741d 100644 > --- a/src/libcamera/sensor/camera_sensor_properties.cpp > +++ b/src/libcamera/sensor/camera_sensor_properties.cpp > @@ -456,6 +456,27 @@ const CameraSensorProperties *CameraSensorProperties::get(const std::string &sen > }, > .sensorDelays = { }, > } }, > + { "vd56g3", { > + .unitCellSize = { 2160, 2160 }, According to https://www.st.com/resource/en/datasheet/vd56g3.pdf, the pixel size is 2.61µm. This matches the optical array dimensions, documented as 3570.48 x 2944.08, for a total of 1368x1128 pixels. The rest looks good to me. If this is the only required change, I can fix the typos when applying. Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> > + .testPatternModes = { > + { controls::draft::TestPatternModeOff, 0 }, > + { controls::draft::TestPatternModeSolidColor, 1 }, > + { controls::draft::TestPatternModePn9, 6 }, > + /* > + * No corresponding test pattern mode for: > + * 2: "Vertical Color Bars" > + * 3: "Horizontal Gray Scale" > + * 4: "Vertical Gray Scale" > + * 5: "Diagonal Gray Scale" > + */ > + }, > + .sensorDelays = { > + .exposureDelay = 2, > + .gainDelay = 2, > + .vblankDelay = 2, > + .hblankDelay = 2 > + }, > + } }, > }; > > const auto it = sensorProps.find(sensor);
diff --git a/src/libcamera/sensor/camera_sensor_properties.cpp b/src/libcamera/sensor/camera_sensor_properties.cpp index c9e9e148a1f08d64b63343ca2e204deaf9ef68c8..0816e2093c6d1b4531779455ea3147dcf32e741d 100644 --- a/src/libcamera/sensor/camera_sensor_properties.cpp +++ b/src/libcamera/sensor/camera_sensor_properties.cpp @@ -456,6 +456,27 @@ const CameraSensorProperties *CameraSensorProperties::get(const std::string &sen }, .sensorDelays = { }, } }, + { "vd56g3", { + .unitCellSize = { 2160, 2160 }, + .testPatternModes = { + { controls::draft::TestPatternModeOff, 0 }, + { controls::draft::TestPatternModeSolidColor, 1 }, + { controls::draft::TestPatternModePn9, 6 }, + /* + * No corresponding test pattern mode for: + * 2: "Vertical Color Bars" + * 3: "Horizontal Gray Scale" + * 4: "Vertical Gray Scale" + * 5: "Diagonal Gray Scale" + */ + }, + .sensorDelays = { + .exposureDelay = 2, + .gainDelay = 2, + .vblankDelay = 2, + .hblankDelay = 2 + }, + } }, }; const auto it = sensorProps.find(sensor);
Add unit cell size from the 'pixel size' element in the datasheet. Delays are set to 2 in case a setting is entered at the very and of the N frame, the N+1 frame will miss it and only the N+2 frame will use this new setting. Note that vd56g3 has a diagonal color test pattern, but does not match any description in specified test patterns and therefore is ignored. Signed-off-by: Benjamin Mugnier <benjamin.mugnier@foss.st.com> --- src/libcamera/sensor/camera_sensor_properties.cpp | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+)