libcamera: ipu3: Move ipa configuration from start() to configure()

IPA was configured after all the pipeline devices were started,
including IPA itself.
Move it at the end of configure() call.

Signed-off-by: Jean-Michel Hautbois <jeanmichel.hautbois@ideasonboard.com>
Reviewed-by: Jacopo Mondi <jacopo@jmondi.org>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
This commit is contained in:
Jean-Michel Hautbois 2021-03-16 16:40:22 +01:00
parent 0d0ac3cb13
commit 3f6785963d

View file

@ -633,6 +633,10 @@ int PipelineHandlerIPU3::configure(Camera *camera, CameraConfiguration *c)
return ret;
}
std::map<uint32_t, ControlInfoMap> entityControls;
entityControls.emplace(0, data->cio2_.sensor()->controls());
data->ipa_->configure(entityControls);
return 0;
}
@ -717,7 +721,6 @@ int PipelineHandlerIPU3::freeBuffers(Camera *camera)
int PipelineHandlerIPU3::start(Camera *camera, [[maybe_unused]] const ControlList *controls)
{
std::map<uint32_t, ControlInfoMap> entityControls;
IPU3CameraData *data = cameraData(camera);
CIO2Device *cio2 = &data->cio2_;
ImgUDevice *imgu = data->imgu_;
@ -744,9 +747,6 @@ int PipelineHandlerIPU3::start(Camera *camera, [[maybe_unused]] const ControlLis
if (ret)
goto error;
entityControls.emplace(0, data->cio2_.sensor()->controls());
data->ipa_->configure(entityControls);
return 0;
error: