pipeline: ipa: raspberrypi: Add HBLANK control to DelayedControls
Update CamHelper::getDelays() to return the sensor HBLANK delay. The HBLANK delay is set to the same value as VBLANK delay for all sensors in the Raspberry Pi IPA. Return the HBLANK gain delay from the IPA to the pipeline handler, and initialise DelayedControls to handle V4L2_CID_HBLANK with this delay value. As a drive-by, check that the V4L2_CID_HBLANK control is available when calling IPARPi::configure(). Signed-off-by: Naushir Patuck <naush@raspberrypi.com> Tested-by: Dave Stevenson <dave.stevenson@raspberrypi.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
This commit is contained in:
parent
f694da76be
commit
aa2fe6a86f
11 changed files with 28 additions and 16 deletions
|
@ -219,13 +219,14 @@ int IPARPi::init(const IPASettings &settings, IPAInitResult *result)
|
|||
* Pass out the sensor config to the pipeline handler in order
|
||||
* to setup the staggered writer class.
|
||||
*/
|
||||
int gainDelay, exposureDelay, vblankDelay, sensorMetadata;
|
||||
helper_->getDelays(exposureDelay, gainDelay, vblankDelay);
|
||||
int gainDelay, exposureDelay, vblankDelay, hblankDelay, sensorMetadata;
|
||||
helper_->getDelays(exposureDelay, gainDelay, vblankDelay, hblankDelay);
|
||||
sensorMetadata = helper_->sensorEmbeddedDataPresent();
|
||||
|
||||
result->sensorConfig.gainDelay = gainDelay;
|
||||
result->sensorConfig.exposureDelay = exposureDelay;
|
||||
result->sensorConfig.vblankDelay = vblankDelay;
|
||||
result->sensorConfig.hblankDelay = hblankDelay;
|
||||
result->sensorConfig.sensorMetadata = sensorMetadata;
|
||||
|
||||
/* Load the tuning file for this sensor. */
|
||||
|
@ -606,6 +607,7 @@ bool IPARPi::validateSensorControls()
|
|||
V4L2_CID_ANALOGUE_GAIN,
|
||||
V4L2_CID_EXPOSURE,
|
||||
V4L2_CID_VBLANK,
|
||||
V4L2_CID_HBLANK,
|
||||
};
|
||||
|
||||
for (auto c : ctrls) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue