[RFC PATCH 3/4] pipeline: rkisp1: Limit the maximum number of buffers queued in

Stefan Klug stefan.klug at ideasonboard.com
Mon May 26 23:42:17 CEST 2025


To keep the regulation of the algorithms as short as possible and to
allow more buffers to be created than the v4l2 device allows to be queued,
limit the amount of buffers that get queued into the device to the pipeline depth.

Signed-off-by: Stefan Klug <stefan.klug at ideasonboard.com>
---
 src/libcamera/pipeline/rkisp1/rkisp1.cpp | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/src/libcamera/pipeline/rkisp1/rkisp1.cpp b/src/libcamera/pipeline/rkisp1/rkisp1.cpp
index 675f0a7490a6..af9117c83630 100644
--- a/src/libcamera/pipeline/rkisp1/rkisp1.cpp
+++ b/src/libcamera/pipeline/rkisp1/rkisp1.cpp
@@ -155,6 +155,12 @@ private:
 	Transform combinedTransform_;
 };
 
+namespace {
+
+const unsigned int kPipelineDepth = 4;
+
+};
+
 class PipelineHandlerRkISP1 : public PipelineHandler
 {
 public:
@@ -171,6 +177,7 @@ public:
 	void stopDevice(Camera *camera) override;
 
 	int queueRequestDevice(Camera *camera, Request *request) override;
+	unsigned int maxQueuedRequestsDevice() const override { return kPipelineDepth; }
 
 	bool match(DeviceEnumerator *enumerator) override;
 
-- 
2.43.0



More information about the libcamera-devel mailing list