From patchwork Fri Apr 5 14:47:24 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paul Elder X-Patchwork-Id: 19850 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 DB218C0DA4 for ; Fri, 5 Apr 2024 14:47:47 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id 1774063334; Fri, 5 Apr 2024 16:47:47 +0200 (CEST) Authentication-Results: lancelot.ideasonboard.com; dkim=pass (1024-bit key; unprotected) header.d=ideasonboard.com header.i=@ideasonboard.com header.b="DPFdQNrX"; dkim-atps=neutral Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [213.167.242.64]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id 10E1D61C29 for ; Fri, 5 Apr 2024 16:47:45 +0200 (CEST) Received: from pyrite.hamster-moth.ts.net (h175-177-049-156.catv02.itscom.jp [175.177.49.156]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id 1205CC8A; Fri, 5 Apr 2024 16:47:04 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1712328426; bh=J1vihiExcWWwy1Cw2H7HNCRTqc7pUAhAmANetrCthVk=; h=From:To:Cc:Subject:Date:From; b=DPFdQNrXffHSGM3K2LfpzhVViah8+0MPWptsWErY0KWcfZSGB2fjnkh/91VCEHoVu kac9nBGC4V0BrKF4u+8mFSaGHh1U+Yeb2pSPCBZgSMgNQnlpEwwOUlUhbRrxToq/iH 1WET+D+vpYPRBEKMxMdxhIzDPnUPhUTZmCBXTR2w= From: Paul Elder To: libcamera-devel@lists.libcamera.org Cc: Paul Elder Subject: [PATCH 0/5] ipa: rkisp1: Improve AGC (plumbing) Date: Fri, 5 Apr 2024 23:47:24 +0900 Message-Id: <20240405144729.2992219-1-paul.elder@ideasonboard.com> X-Mailer: git-send-email 2.39.2 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 series depends on v1 of "Centralise Agc into libipa", and "ipa: Move Pwl from Raspberry Pi to libipa". This series adds support in the rkisp1 IPA for: - reading histogram weights (metering modes) from tuning file - setting digital gain - expands luminance target from a scalar value to piecewise linear function, controlled by lux - plumbs controls for setting metering mode, exposure mode, constraint mode, and frame duration While at it, there is a fixup for Dan's series "Centralise Agc into libipa". Dan, I suppose you could pick it up and squash it into your series. I have it here so just so that I don't forget about it. This series breaks the rkisp1 pipeline since it'll complain about non-existant tuning files. There's a series coming imminently to address that (though it'll only add a tuning file for imx335). Paul Elder (5): ipa: rkisp1: agc: Read histogram weights from tuning file ipa: rkisp1: agc: Add digital gain fixup: ipa: rkisp1: Remove bespoke Agc functions ipa: libipa: agc: Change luminance target to piecewise linear function ipa: rkisp1: agc: Plumb mode-selection and frame duration controls src/ipa/ipu3/algorithms/agc.cpp | 5 +- src/ipa/libipa/agc.cpp | 22 +++- src/ipa/libipa/agc.h | 7 +- src/ipa/rkisp1/algorithms/agc.cpp | 179 +++++++++++++++++++++++--- src/ipa/rkisp1/algorithms/agc.h | 11 ++ src/ipa/rkisp1/algorithms/algorithm.h | 2 + src/ipa/rkisp1/ipa_context.h | 7 + src/ipa/rkisp1/rkisp1.cpp | 12 ++ 8 files changed, 213 insertions(+), 32 deletions(-)