summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorJacopo Mondi <jacopo@jmondi.org>2019-02-28 14:17:35 +0100
committerJacopo Mondi <jacopo@jmondi.org>2019-04-03 10:11:17 +0200
commitb7ddedaf42aa16fd37000beb7f65b8bf25de8adc (patch)
treee1dc34de8ea4d3aacc01558af6220992bbb0544a /src
parent88316d63f03f2d845b8d29e03ba53c640ae2a12c (diff)
libcamera: ipu3: Queue requests to ImgU
Implement queueRequest for the IPU3 pipeline manager. When a request is queued, a new buffer is queued to the ImgU output for capture. Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Niklas Söderlund <niklas.soderlund@ragnatech.se> Signed-off-by: Jacopo Mondi <jacopo@jmondi.org>
Diffstat (limited to 'src')
-rw-r--r--src/libcamera/pipeline/ipu3/ipu3.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/libcamera/pipeline/ipu3/ipu3.cpp b/src/libcamera/pipeline/ipu3/ipu3.cpp
index 42c1164e..3c955ceb 100644
--- a/src/libcamera/pipeline/ipu3/ipu3.cpp
+++ b/src/libcamera/pipeline/ipu3/ipu3.cpp
@@ -385,9 +385,10 @@ void PipelineHandlerIPU3::stop(Camera *camera)
int PipelineHandlerIPU3::queueRequest(Camera *camera, Request *request)
{
IPU3CameraData *data = cameraData(camera);
- V4L2Device *cio2 = data->cio2_.output_;
+ V4L2Device *output = data->imgu_->output_.dev;
Stream *stream = &data->stream_;
+ /* Queue a buffer to the ImgU output for capture. */
Buffer *buffer = request->findBuffer(stream);
if (!buffer) {
LOG(IPU3, Error)
@@ -395,7 +396,7 @@ int PipelineHandlerIPU3::queueRequest(Camera *camera, Request *request)
return -ENOENT;
}
- int ret = cio2->queueBuffer(buffer);
+ int ret = output->queueBuffer(buffer);
if (ret < 0)
return ret;