pipeline: raspberrypi: Create empty control lists correctly
When the pipeline handler start() method is supplied with a NULL list of controls, we send an empty control list to the IPA. When the IPA is running in isolated mode the control list goes through the data serializer, for which it must be marked correctly as a list of "controls::controls", otherwise the IPA process will abort. The IPA has a similar problem returning a control list in its configure() method. We must be careful to initialise it properly even when empty. Signed-off-by: David Plowman <david.plowman@raspberrypi.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Naushir Patuck <naush@raspberrypi.com> Reviewed-by: Paul Elder <paul.elder@ideasonboard.com> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
This commit is contained in:
committed by
Laurent Pinchart
parent
e9a3a5d201
commit
962df634bd
@@ -825,7 +825,8 @@ int PipelineHandlerRPi::start(Camera *camera, const ControlList *controls)
|
||||
|
||||
/* Start the IPA. */
|
||||
ipa::RPi::StartConfig startConfig;
|
||||
data->ipa_->start(controls ? *controls : ControlList{}, &startConfig);
|
||||
data->ipa_->start(controls ? *controls : ControlList{ controls::controls },
|
||||
&startConfig);
|
||||
|
||||
/* Apply any gain/exposure settings that the IPA may have passed back. */
|
||||
if (!startConfig.controls.empty())
|
||||
|
||||
Reference in New Issue
Block a user