From 5a9d19210fad8371a9d706a6b276e0d3c7d24978 Mon Sep 17 00:00:00 2001 From: Hirokazu Honda Date: Thu, 13 May 2021 11:29:46 +0900 Subject: libcamera: pipeline: ipu3: Try queuing pending requests if a buffer is available IPU3CameraData stores requests that have been failed due to a buffer shortage. The requests should be retried once enough buffers are available. This sets the retry function as signal to CIO2Device and IPU3Frame, and invokes it from CIO2Device::tryReturnBuffer() and IPU3Frame::remove(). Signed-off-by: Hirokazu Honda Reviewed-by: Jacopo Mondi Reviewed-by: Laurent Pinchart Signed-off-by: Laurent Pinchart --- src/libcamera/pipeline/ipu3/frames.cpp | 2 ++ 1 file changed, 2 insertions(+) (limited to 'src/libcamera/pipeline/ipu3/frames.cpp') diff --git a/src/libcamera/pipeline/ipu3/frames.cpp b/src/libcamera/pipeline/ipu3/frames.cpp index 29d9aafc..d9a2249b 100644 --- a/src/libcamera/pipeline/ipu3/frames.cpp +++ b/src/libcamera/pipeline/ipu3/frames.cpp @@ -103,6 +103,8 @@ bool IPU3Frames::tryComplete(IPU3Frames::Info *info) remove(info); + bufferAvailable.emit(); + return true; } -- cgit v1.2.1