summaryrefslogtreecommitdiff
path: root/src/ipa/raspberrypi/controller
diff options
context:
space:
mode:
authorNaushir Patuck <naush@raspberrypi.com>2021-01-29 11:16:14 +0000
committerLaurent Pinchart <laurent.pinchart@ideasonboard.com>2021-02-05 01:23:20 +0200
commit362301b1313085f198b463f3ce4df794df50ad0d (patch)
tree4b12b51df3c93a611f31fcf44007d933daaa5535 /src/ipa/raspberrypi/controller
parentd7fd40ea2b17ea67a6ac495ba831abe1977ed283 (diff)
ipa: raspberrypi: Limit the calculated vblank based on the sensor mode
The existing framerate/vblank calculations did not account for the sensor mode limits. This commit extracts vblank limits from the sensor v4l2 controls, and stores it in the camera modes structure. Exposure and vblank value calculations now use values clamped to the sensor mode limits. The libcamera::controls::FrameDurations metadata return values now reflect the minimum and maximum after clamping. Signed-off-by: Naushir Patuck <naush@raspberrypi.com> Reviewed-by: David Plowman <david.plowman@raspberrypi.com> Reviewed-by: Jacopo Mondi <jacopo@jmondi.org> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Diffstat (limited to 'src/ipa/raspberrypi/controller')
-rw-r--r--src/ipa/raspberrypi/controller/camera_mode.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/ipa/raspberrypi/controller/camera_mode.h b/src/ipa/raspberrypi/controller/camera_mode.h
index 920f11be..256438c9 100644
--- a/src/ipa/raspberrypi/controller/camera_mode.h
+++ b/src/ipa/raspberrypi/controller/camera_mode.h
@@ -37,6 +37,8 @@ struct CameraMode {
double line_length;
// any camera transform *not* reflected already in the camera tuning
libcamera::Transform transform;
+ // minimum and maximum fame lengths in units of lines
+ uint32_t min_frame_length, max_frame_length;
};
#ifdef __cplusplus