pipeline: ipa: raspberrypi: Change Unicam timeout handling

Add an explicit helper function setCameraTimeout() in the pipeline
handler to set the Unicam timeout value. This function is signalled from
the IPA to set up an appropriate timeout. This replaces the
maxSensorFrameLengthMs value parameter returned back from
IPARPi::start().

Adjust the timeout to be 5x the maximum frame duration reported by the
IPA.

Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
Reviewed-by: David Plowman <david.plowman@raspberrypi.com>
Reviewed-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
This commit is contained in:
Naushir Patuck 2023-03-07 10:30:21 +00:00 committed by Kieran Bingham
parent cde9293cf9
commit b6d84ed456
3 changed files with 18 additions and 10 deletions

View file

@ -341,7 +341,7 @@ void IPARPi::start(const ControlList &controls, StartConfig *startConfig)
startConfig->dropFrameCount = dropFrameCount_;
const Duration maxSensorFrameDuration = mode_.maxFrameLength * mode_.maxLineLength;
startConfig->maxSensorFrameLengthMs = maxSensorFrameDuration.get<std::milli>();
setCameraTimeout.emit(maxSensorFrameDuration.get<std::milli>());
firstStart_ = false;
lastRunTimestamp_ = 0;