From patchwork Mon Aug 24 09:06:37 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paul Elder X-Patchwork-Id: 28031 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 4A7AFC3308 for ; Mon, 24 Aug 2026 09:08:08 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id EDDCF683ED; Mon, 24 Aug 2026 11:08:07 +0200 (CEST) Authentication-Results: lancelot.ideasonboard.com; dkim=pass (1024-bit key; unprotected) header.d=ideasonboard.com header.i=@ideasonboard.com header.b="v9hNwhQs"; dkim-atps=neutral Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [213.167.242.64]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id 5575F6838A for ; Mon, 24 Aug 2026 11:08:06 +0200 (CEST) Received: from neptunite.hamster-moth.ts.net (unknown [IPv6:2400:2411:160:2f00:e616:f172:fe90:f1b5]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id 05D26C23; Mon, 24 Aug 2026 11:06:38 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1787562402; bh=H0RiDQw1XheJP92AQlO2vD0Fh2CkLcw/Ytfjtw9z6F8=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=v9hNwhQsEJanaNjyeVgFj2zyDrBPFhgyIfUmSv9tpF9nWB9obNU2MGBMNk2QyM7ep rmhvutnk7SjAU7rwYlXTT7/ctnvIuAdwgoVunE1HJ2BA7CWP/O9FJOiWjdjG0Fo4fY rJqiBAvBS3PQ54azCaFZPg02I+wOhfeJ5fUw1AiQ= From: Paul Elder To: laurent.pinchart@ideasonboard.com Cc: Paul Elder , michael.riesch@collabora.com, xuhf@rock-chips.com, stefan.klug@ideasonboard.com, kieran.bingham@ideasonboard.com, dan.scally@ideasonboard.com, jacopo.mondi@ideasonboard.com, nicolas.dufresne@collabora.com, mehdi.djait@linux.intel.com, libcamera-devel@lists.libcamera.org Subject: [PATCH v2 20/20] ipa: rkisp2: data: Add tuning file for imx708 Date: Mon, 24 Aug 2026 18:06:37 +0900 Message-ID: <20260824090641.3705246-21-paul.elder@ideasonboard.com> X-Mailer: git-send-email 2.47.2 In-Reply-To: <20260824090641.3705246-1-paul.elder@ideasonboard.com> References: <20260824090641.3705246-1-paul.elder@ideasonboard.com> 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" Add a tuning file for rkisp2 for imx708. This was tuned using the rkisp2 tuning script using images from [0] (at branch raspberrypi/imx708 in directory 2026-05-22), with some hand-modifications, such as removing lsc because it needs further investigation to function properly. [0] https://gitlab.freedesktop.org/camera/tuning Signed-off-by: Paul Elder --- No change in v2 --- src/ipa/rkisp2/data/imx708.yaml | 155 ++++++++++++++++++++++++++++++++ src/ipa/rkisp2/data/meson.build | 1 + 2 files changed, 156 insertions(+) create mode 100644 src/ipa/rkisp2/data/imx708.yaml diff --git a/src/ipa/rkisp2/data/imx708.yaml b/src/ipa/rkisp2/data/imx708.yaml new file mode 100644 index 000000000000..3296ca58b71e --- /dev/null +++ b/src/ipa/rkisp2/data/imx708.yaml @@ -0,0 +1,155 @@ +# SPDX-License-Identifier: CC0-1.0 +%YAML 1.1 +--- +version: 1 +algorithms: + - Crop: + - ColorSpaceConversion: + - Agc: + AeMeteringMode: + MeteringCentreWeighted: [ 0, 0, 0, 0, 0, 0, 6, 8, 6, 0, 0, 8, 16, 8, 0, 0, 6, 8, 6, 0, 0, 0, 0, 0, 0 ] + AeExposureMode: + ExposureNormal: + exposureTime: [ 100, 10000, 30000, 60000, 120000 ] + gain: [ 1.2, 2.0, 4.0, 6.0, 6.0 ] + AeConstraintMode: + ConstraintNormal: + lower: + qLo: 0.98 + qHi: 1.0 + yTarget: 0.1 + relativeLuminanceTarget: 0.1 + - Awb: + algorithm: "grey" + AwbMode: + AwbAuto: + lo: 2500 + hi: 9000 + AwbIncandescent: + lo: 2500 + hi: 3000 + AwbTungsten: + lo: 3000 + hi: 3500 + AwbFluorescent: + lo: 4000 + hi: 4700 + AwbIndoor: + lo: 3000 + hi: 5000 + AwbDaylight: + lo: 5500 + hi: 6500 + AwbCloudy: + lo: 6500 + hi: 8000 + priors: + - lux: 0 + ct: [ 2000, 13000 ] + probability: [ 1.0, 1.0 ] + colourGains: + - ct: 2500 + gains: [ 1.1199462425803561, 1.9142419601837672 ] + - ct: 3000 + gains: [ 1.1242270938729624, 1.9015021867275146 ] + - ct: 3500 + gains: [ 1.1583458820803894, 1.8109380659181455 ] + - ct: 4000 + gains: [ 1.2714558169103625, 1.6165535079211122 ] + - ct: 4500 + gains: [ 1.476886722788362, 1.4486455164421266 ] + - ct: 5000 + gains: [ 1.64446637066272, 1.3819789939192924 ] + - ct: 5500 + gains: [ 1.7822135091783995, 1.3487995683841383 ] + - ct: 6000 + gains: [ 1.8677624206200971, 1.33422281521014 ] + - ct: 6500 + gains: [ 1.9219680953296177, 1.3266118333775536 ] + - ct: 7000 + gains: [ 1.9516003122560501, 1.3229263130043656 ] + - ct: 7500 + gains: [ 1.9673421207948063, 1.321178491214163 ] + - ct: 8000 + gains: [ 1.9845207382417145, 1.3190871916633689 ] + - ct: 8500 + gains: [ 1.993620414673046, 1.3182177695755337 ] + - ct: 9000 + gains: [ 2.006823198876179, 1.3170025023047545 ] + transversePos: 0.01269 + transverseNeg: 0.01561 + - BlackLevelSubtraction: + - Ccm: + ccms: + - ct: 2500 + ccm: [ + 1.72201, 0.27067, -0.99269, -0.64829, 2.48777, -0.83947, -0.08905, -0.54176, + 1.63081, + ] + - ct: 3000 + ccm: [ + 1.80587, 0.27132, -1.07719, -0.67445, 2.55729, -0.88284, -0.11544, -0.50189, + 1.61734, + ] + - ct: 3500 + ccm: [ + 1.83389, 0.37559, -1.20949, -0.69373, 2.67018, -0.97646, -0.15308, -0.47581, + 1.62889, + ] + - ct: 4000 + ccm: [ + 1.86271, 0.39818, -1.26089, -0.66884, 2.62966, -0.96082, -0.19298, -0.45096, + 1.64394, + ] + - ct: 4500 + ccm: [ + 1.78213, 0.40302, -1.18514, -0.61892, 2.47338, -0.85445, -0.24296, -0.38901, + 1.63197, + ] + - ct: 5000 + ccm: [ + 1.75328, 0.39113, -1.14441, -0.60457, 2.40168, -0.79711, -0.28013, -0.33477, + 1.61489, + ] + - ct: 5500 + ccm: [ + 1.67989, 0.42725, -1.10714, -0.60576, 2.35811, -0.75235, -0.30859, -0.29885, + 1.60744, + ] + - ct: 6000 + ccm: [ + 1.62571, 0.45052, -1.07622, -0.60271, 2.32574, -0.72302, -0.31931, -0.27971, + 1.59902, + ] + - ct: 6500 + ccm: [ + 1.60018, 0.43641, -1.03658, -0.59726, 2.29742, -0.70016, -0.31271, -0.28088, + 1.59358, + ] + - ct: 7000 + ccm: [ + 1.59364, 0.41222, -1.00585, -0.58752, 2.27837, -0.69085, -0.30352, -0.28323, + 1.58675, + ] + - ct: 7500 + ccm: [ + 1.59057, 0.40006, -0.99063, -0.58525, 2.26603, -0.68078, -0.29994, -0.28105, + 1.58099, + ] + - ct: 8000 + ccm: [ + 1.59551, 0.36878, -0.96428, -0.57195, 2.24572, -0.67377, -0.28793, -0.28858, + 1.57651, + ] + - ct: 8500 + ccm: [ + 1.60576, 0.33929, -0.94504, -0.56235, 2.23411, -0.67176, -0.27817, -0.29265, + 1.57082, + ] + - ct: 9000 + ccm: [ + 1.60867, 0.30611, -0.91478, -0.54939, 2.21074, -0.66135, -0.26915, -0.30127, + 1.57042, + ] + - GammaOutCorrection: + gamma: 2.2 diff --git a/src/ipa/rkisp2/data/meson.build b/src/ipa/rkisp2/data/meson.build index 6b21718e408f..f4dc569db277 100644 --- a/src/ipa/rkisp2/data/meson.build +++ b/src/ipa/rkisp2/data/meson.build @@ -2,6 +2,7 @@ conf_files = files([ 'imx219.yaml', + 'imx708.yaml', 'uncalibrated.yaml', ])