{"id":26368,"url":"https://patchwork.libcamera.org/api/1.1/patches/26368/?format=json","web_url":"https://patchwork.libcamera.org/patch/26368/","project":{"id":1,"url":"https://patchwork.libcamera.org/api/1.1/projects/1/?format=json","name":"libcamera","link_name":"libcamera","list_id":"libcamera_core","list_email":"libcamera-devel@lists.libcamera.org","web_url":"","scm_url":"","webscm_url":""},"msgid":"<20260325151416.2114564-27-stefan.klug@ideasonboard.com>","date":"2026-03-25T15:13:58","name":"[v2,26/32] pipline: rkisp1: Reinstantiate maxQueuedRequestsDevice limit","commit_ref":null,"pull_url":null,"state":"new","archived":false,"hash":"0c02d1814399a7136577a88e6d8559ed32871575","submitter":{"id":184,"url":"https://patchwork.libcamera.org/api/1.1/people/184/?format=json","name":"Stefan Klug","email":"stefan.klug@ideasonboard.com"},"delegate":null,"mbox":"https://patchwork.libcamera.org/patch/26368/mbox/","series":[{"id":5849,"url":"https://patchwork.libcamera.org/api/1.1/series/5849/?format=json","web_url":"https://patchwork.libcamera.org/project/libcamera/list/?series=5849","date":"2026-03-25T15:13:32","name":"rkisp1: pipeline rework for PFC","version":2,"mbox":"https://patchwork.libcamera.org/series/5849/mbox/"}],"comments":"https://patchwork.libcamera.org/api/patches/26368/comments/","check":"pending","checks":"https://patchwork.libcamera.org/api/patches/26368/checks/","tags":{},"headers":{"Return-Path":"<libcamera-devel-bounces@lists.libcamera.org>","X-Original-To":"parsemail@patchwork.libcamera.org","Delivered-To":"parsemail@patchwork.libcamera.org","Received":["from lancelot.ideasonboard.com (lancelot.ideasonboard.com\n\t[92.243.16.209])\n\tby patchwork.libcamera.org (Postfix) with ESMTPS id 94B28C3307\n\tfor <parsemail@patchwork.libcamera.org>;\n\tWed, 25 Mar 2026 15:15:56 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 3090362CD2;\n\tWed, 25 Mar 2026 16:15:56 +0100 (CET)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[IPv6:2001:4b98:dc2:55:216:3eff:fef7:d647])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id B6C0662CD5\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tWed, 25 Mar 2026 16:15:54 +0100 (CET)","from ideasonboard.com (unknown\n\t[IPv6:2a00:6020:448c:6c00:b16a:5ed9:4ada:a95a])\n\tby perceval.ideasonboard.com (Postfix) with UTF8SMTPSA id C3DB31ADE; \n\tWed, 25 Mar 2026 16:14:36 +0100 (CET)"],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (1024-bit key;\n\tunprotected) header.d=ideasonboard.com header.i=@ideasonboard.com\n\theader.b=\"vF0yjSK7\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1774451676;\n\tbh=fjxxuf012oHI0Q2/ChKYB5utpY/hbRP/Lqf0OVZX0Io=;\n\th=From:To:Cc:Subject:Date:In-Reply-To:References:From;\n\tb=vF0yjSK7kaM/DrsXGY5bO7Y6pg1YByWEMkYiCLk+lpJNd6oJBlUMFwl6ETtUeUbMe\n\tRpUPMcl49zrUp2PDQf2NdBv2PBX0/L2hNRhMZXO2TJwuNXQ1MKuS+RiVRNoQ6uPQvh\n\tCIo9Lbh8yMeYmy1Z7rjw+0IZGW2xmyrrskbpTnjY=","From":"Stefan Klug <stefan.klug@ideasonboard.com>","To":"libcamera-devel@lists.libcamera.org","Cc":"Stefan Klug <stefan.klug@ideasonboard.com>","Subject":"[PATCH v2 26/32] pipline: rkisp1: Reinstantiate\n\tmaxQueuedRequestsDevice limit","Date":"Wed, 25 Mar 2026 16:13:58 +0100","Message-ID":"<20260325151416.2114564-27-stefan.klug@ideasonboard.com>","X-Mailer":"git-send-email 2.51.0","In-Reply-To":"<20260325151416.2114564-1-stefan.klug@ideasonboard.com>","References":"<20260325151416.2114564-1-stefan.klug@ideasonboard.com>","MIME-Version":"1.0","Content-Transfer-Encoding":"8bit","X-BeenThere":"libcamera-devel@lists.libcamera.org","X-Mailman-Version":"2.1.29","Precedence":"list","List-Id":"<libcamera-devel.lists.libcamera.org>","List-Unsubscribe":"<https://lists.libcamera.org/options/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=unsubscribe>","List-Archive":"<https://lists.libcamera.org/pipermail/libcamera-devel/>","List-Post":"<mailto:libcamera-devel@lists.libcamera.org>","List-Help":"<mailto:libcamera-devel-request@lists.libcamera.org?subject=help>","List-Subscribe":"<https://lists.libcamera.org/listinfo/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=subscribe>","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"},"content":"With the pipeline rework, the maxQueuedRequestsDevice should not be\nnecessary anymore, as prepare() and therefore the calculation for the\nISP regulation is called only as late as possible when a params buffer\nwas dequeued.\n\nHowever with unlimited maxQueuedRequestsDevice all the incoming requests\nget immediately queued to the ipa with the sensor sequence number that\nwas anticipated for that request at queueRequestDevice time.  Now when\nthe correction tries to mitigate dropped sequence numbers, it will call\ncomputeParams() with sensor frame numbers that were not anticipated for\nthe requests queued to the IPA.  There still might be a better solution\nto this, but reinstantiating the limit reduces the effect.\n\nSigned-off-by: Stefan Klug <stefan.klug@ideasonboard.com>\n\n---\n\nChanges in v2:\n- Added this patch\n---\n src/libcamera/pipeline/rkisp1/rkisp1.cpp | 2 +-\n 1 file changed, 1 insertion(+), 1 deletion(-)","diff":"diff --git a/src/libcamera/pipeline/rkisp1/rkisp1.cpp b/src/libcamera/pipeline/rkisp1/rkisp1.cpp\nindex f3e0ee5d3028..46c157526ea1 100644\n--- a/src/libcamera/pipeline/rkisp1/rkisp1.cpp\n+++ b/src/libcamera/pipeline/rkisp1/rkisp1.cpp\n@@ -730,7 +730,7 @@ CameraConfiguration::Status RkISP1CameraConfiguration::validate()\n  */\n \n PipelineHandlerRkISP1::PipelineHandlerRkISP1(CameraManager *manager)\n-\t: PipelineHandler(manager), hasSelfPath_(true)\n+\t: PipelineHandler(manager, kRkISP1MinBufferCount), hasSelfPath_(true)\n {\n }\n \n","prefixes":["v2","26/32"]}