From patchwork Wed Oct 30 16:48:50 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jacopo Mondi X-Patchwork-Id: 21776 Return-Path: X-Original-To: parsemail@patchwork.libcamera.org Delivered-To: parsemail@patchwork.libcamera.org Received: from lancelot.ideasonboard.com (lancelot.ideasonboard.com [92.243.16.209]) by patchwork.libcamera.org (Postfix) with ESMTPS id D9DB5C3292 for ; Wed, 30 Oct 2024 16:49:04 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id 061BD653AD; Wed, 30 Oct 2024 17:49:04 +0100 (CET) Authentication-Results: lancelot.ideasonboard.com; dkim=pass (1024-bit key; unprotected) header.d=ideasonboard.com header.i=@ideasonboard.com header.b="eZBiRI0X"; dkim-atps=neutral Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [IPv6:2001:4b98:dc2:55:216:3eff:fef7:d647]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id 2526665392 for ; Wed, 30 Oct 2024 17:49:02 +0100 (CET) Received: from ideasonboard.com (93-61-96-190.ip145.fastwebnet.it [93.61.96.190]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id 7A34DB7E; Wed, 30 Oct 2024 17:48:58 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1730306938; bh=YcoBJM3QB5Da5ljyMMAC3O9hqmrh3W/tI010wW42amM=; h=From:To:Cc:Subject:Date:From; b=eZBiRI0X5bd5N6+RtmlyUvlzUuBKII/pwbO6/weQPZ55Nr9Nt1SOPLJMExqn4o9FA 0IIFNIjvvWTtOxE9XU9bQqdiNMuEGmU5keIwGus4Rq6e6DRXzfGVv3PruNteLdGqjk aM3a2nP8sLDeUdLltv63DCx4hpcivg/ePjrLh3Co= From: Jacopo Mondi To: libcamera-devel@lists.libcamera.org Cc: Jacopo Mondi , Stefan Klug , Dan Scally Subject: [PATCH v2 0/2] libipa: Initialize FrameContext with ActiveState Date: Wed, 30 Oct 2024 17:48:50 +0100 Message-ID: <20241030164853.87586-1-jacopo.mondi@ideasonboard.com> X-Mailer: git-send-email 2.47.0 MIME-Version: 1.0 X-BeenThere: libcamera-devel@lists.libcamera.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libcamera-devel-bounces@lists.libcamera.org Sender: "libcamera-devel" This version solves the same issue that v1 did, but takes in the suggestion from Dan and Stefan to not initialize the FrameContext in the IPAFrameContext but rather pass it through algorithms to let them initialize it. This of course, only occours in case of Request underrun, where the FrameContext is get() before it is alloc()-ated and passed through algorithm's queueRequest() that initialize it with user provided Controls. I think there's potential to rework the FCQueue to coalesce alloc() and get() but that's for later. Jacopo Mondi (2): libipa: FCQueue: Make sure FrameContext#0 is initialized ipa: rkisp1: Have algos initialize FrameContext src/ipa/libipa/fc_queue.cpp | 6 ++++++ src/ipa/libipa/fc_queue.h | 26 +++++++++++++++++++++++++- src/ipa/rkisp1/algorithms/agc.cpp | 8 ++++++++ src/ipa/rkisp1/algorithms/agc.h | 4 ++++ src/ipa/rkisp1/algorithms/algorithm.h | 5 +++++ src/ipa/rkisp1/rkisp1.cpp | 9 +++++++++ 6 files changed, 57 insertions(+), 1 deletion(-) --- 2.47.0