Patch Detail
Show a patch.
GET /api/patches/19286/?format=api
{ "id": 19286, "url": "https://patchwork.libcamera.org/api/patches/19286/?format=api", "web_url": "https://patchwork.libcamera.org/patch/19286/", "project": { "id": 1, "url": "https://patchwork.libcamera.org/api/projects/1/?format=api", "name": "libcamera", "link_name": "libcamera", "list_id": "libcamera_core", "list_email": "libcamera-devel@lists.libcamera.org", "web_url": "", "scm_url": "", "webscm_url": "" }, "msgid": "<20231206103839.16607-3-david.plowman@raspberrypi.com>", "date": "2023-12-06T10:38:39", "name": "[libcamera-devel,2/2] ipa: rpi: awb: Add an initialValues method", "commit_ref": "cfb4bee74b6dce3e9c44d3b8dedcd3ffcc11b32b", "pull_url": null, "state": "accepted", "archived": false, "hash": "a70e95c8c20db15a2abbbe6fade7a1da46196315", "submitter": { "id": 42, "url": "https://patchwork.libcamera.org/api/people/42/?format=api", "name": "David Plowman", "email": "david.plowman@raspberrypi.com" }, "delegate": null, "mbox": "https://patchwork.libcamera.org/patch/19286/mbox/", "series": [ { "id": 4105, "url": "https://patchwork.libcamera.org/api/series/4105/?format=api", "web_url": "https://patchwork.libcamera.org/project/libcamera/list/?series=4105", "date": "2023-12-06T10:38:37", "name": "IPA initial values for Raspberry Pi", "version": 1, "mbox": "https://patchwork.libcamera.org/series/4105/mbox/" } ], "comments": "https://patchwork.libcamera.org/api/patches/19286/comments/", "check": "pending", "checks": "https://patchwork.libcamera.org/api/patches/19286/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 13D0CC32BD\n\tfor <parsemail@patchwork.libcamera.org>;\n\tWed, 6 Dec 2023 10:38:49 +0000 (UTC)", "from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 645E062B2C;\n\tWed, 6 Dec 2023 11:38:47 +0100 (CET)", "from mail-wr1-x433.google.com (mail-wr1-x433.google.com\n\t[IPv6:2a00:1450:4864:20::433])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id C6C8661D9D\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tWed, 6 Dec 2023 11:38:44 +0100 (CET)", "by mail-wr1-x433.google.com with SMTP id\n\tffacd0b85a97d-334af3b3ddfso122150f8f.3\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tWed, 06 Dec 2023 02:38:44 -0800 (PST)", "from localhost.localdomain ([194.233.231.115])\n\tby smtp.gmail.com with ESMTPSA id\n\tw7-20020a5d6087000000b0033340937da6sm9733697wrt.95.2023.12.06.02.38.43\n\t(version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n\tWed, 06 Dec 2023 02:38:43 -0800 (PST)" ], "DKIM-Signature": [ "v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org;\n\ts=mail; t=1701859127;\n\tbh=ni2QX6pma5m3c0EiLshQSYkCMzf2cqIxtSOG4x8MMt4=;\n\th=To:Date:In-Reply-To:References:Subject:List-Id:List-Unsubscribe:\n\tList-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:\n\tFrom;\n\tb=zAFXLhN2HS9rZzz3vv5TM5pd3m34/E4ojhzX6yk385ph3imvA6X8bEInI6/qPU0su\n\tefFbT/G4UNOaGO2fRD2D+OSLmd00rzLuAh+lrntkvCyJs44PtuNdI43oqMYR5e8nH8\n\tPQ1v72OpVH/8dzMDylvmxS2NC0KbxSLB7F/eBOYXGG6JzKfyJSCLn355cy7A6Su1bT\n\t5juhyzNKPivsmohY5OIkFMNOwbTLMHbLZKNQnOgbSS1yF8dbdztI0Oz4k+P2nDcPfo\n\tE2CI0rwDexfzVE6fX1C2FQjXKLLQKIP91sY3iMCL0l19TJMcSCin2LffVGklSHDWrO\n\tH/MzVZz0lU7Aw==", "v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=raspberrypi.com; s=google; t=1701859124; x=1702463924;\n\tdarn=lists.libcamera.org; \n\th=content-transfer-encoding:mime-version:references:in-reply-to\n\t:message-id:date:subject:cc:to:from:from:to:cc:subject:date\n\t:message-id:reply-to;\n\tbh=SH1bgtabT2/Y07DB0FvYUY/ZLjVIDck7Ae1kliUNlaY=;\n\tb=IvlxspLF6GO7y9nEIf4e9jWV4ui/IohuXUucXa2suZLxlrva7oCaCzkSKgjfp1eOK/\n\t4iEKHVLWN2GGucOnvdcmFHHUqBHgqzrJNeD1KoDBaHYTmkx4zLfltD0k4wNiaYoE1wAx\n\tSST8lJ7Ie/4+zJDG14ZfUMJbibKAe1xfMkI1kyB84R2K6+9DQ71oUCfhl8gD0m7N/oUf\n\t4awkFeWVJuR+gijJfyBXVSvVzEp4USwR7MA2b60xOyWm1f/PLbTe8rOcT/P39Wxy46ra\n\tNvcoA38n7/ooi2RjoTp7M7/aTrDl5UJvh1b2tLRI6tFw7gOi/DYvihAzrqmZE3igBPQ0\n\tZPMw==" ], "Authentication-Results": "lancelot.ideasonboard.com; dkim=pass (2048-bit key; \n\tunprotected) header.d=raspberrypi.com\n\theader.i=@raspberrypi.com\n\theader.b=\"IvlxspLF\"; dkim-atps=neutral", "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20230601; t=1701859124; x=1702463924;\n\th=content-transfer-encoding:mime-version:references:in-reply-to\n\t:message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc\n\t:subject:date:message-id:reply-to;\n\tbh=SH1bgtabT2/Y07DB0FvYUY/ZLjVIDck7Ae1kliUNlaY=;\n\tb=Hklqb8F13TKb0BAdgGTJsat2EjTTVkg7V0cB+PAnl/s9tNJ850hE72n/lOo0i7uh4R\n\tp2b5gfveIWgcn2PPY2n5R2f5CqcqHrvI6pdOeDj/Zxd977+0OOIvEWvD93s9MRRrfCC7\n\tN2mshYqSHPqThs7DeQAztFu0lYG7FPBP6hARbjOo2UgRwmDIVy0XfzNjwyiLcQw+WYW+\n\tmMMEbCMvOQL2cB77ywobxy79YkW/dfS7tVM/LotY+5v2NCmA9byOxAyXe/oO2OGuoILJ\n\tIol3SwD7l/8zXvtkLSGMDr2ahZFYjLLY9N3dkYCU1OPuMq62yz1e/xHBY0LvHk7uEJwf\n\thf2A==", "X-Gm-Message-State": "AOJu0YzerXe2OdEceiDuIVASbGZuBd0IizobGSS1yp19MK/ZeQk/N2Yo\n\tvfLlw10fT5ekwGwoP12s8WQG+iiYTNlr5iVBLlo=", "X-Google-Smtp-Source": "AGHT+IE94/A2Q/NdH8+cWw8q4Yly/6Kyf8/yi2x53oXC0ZNiQT+7x+xrwlW46X3yl60f4MvhEyXxgg==", "X-Received": "by 2002:a5d:5002:0:b0:333:4bd9:78 with SMTP id\n\te2-20020a5d5002000000b003334bd90078mr320759wrt.15.1701859124027; \n\tWed, 06 Dec 2023 02:38:44 -0800 (PST)", "To": "libcamera-devel@lists.libcamera.org", "Date": "Wed, 6 Dec 2023 10:38:39 +0000", "Message-Id": "<20231206103839.16607-3-david.plowman@raspberrypi.com>", "X-Mailer": "git-send-email 2.39.2", "In-Reply-To": "<20231206103839.16607-1-david.plowman@raspberrypi.com>", "References": "<20231206103839.16607-1-david.plowman@raspberrypi.com>", "MIME-Version": "1.0", "Content-Transfer-Encoding": "8bit", "Subject": "[libcamera-devel] [PATCH 2/2] ipa: rpi: awb: Add an initialValues\n\tmethod", "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>", "From": "David Plowman via libcamera-devel <libcamera-devel@lists.libcamera.org>", "Reply-To": "David Plowman <david.plowman@raspberrypi.com>", "Errors-To": "libcamera-devel-bounces@lists.libcamera.org", "Sender": "\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>" }, "content": "This allows the IPA to get reasonable default colour gains before AWB\nhas run. This is particularly important on the PiSP platform where\nthese numbers are helpful in programming the Front End statistics\nblock in advance.\n\nSigned-off-by: David Plowman <david.plowman@raspberrypi.com>\n---\n src/ipa/rpi/controller/awb_algorithm.h | 1 +\n src/ipa/rpi/controller/rpi/awb.cpp | 6 ++++++\n src/ipa/rpi/controller/rpi/awb.h | 1 +\n 3 files changed, 8 insertions(+)", "diff": "diff --git a/src/ipa/rpi/controller/awb_algorithm.h b/src/ipa/rpi/controller/awb_algorithm.h\nindex 8462c4db..6009bdac 100644\n--- a/src/ipa/rpi/controller/awb_algorithm.h\n+++ b/src/ipa/rpi/controller/awb_algorithm.h\n@@ -16,6 +16,7 @@ public:\n \tAwbAlgorithm(Controller *controller) : Algorithm(controller) {}\n \t/* An AWB algorithm must provide the following: */\n \tvirtual unsigned int getConvergenceFrames() const = 0;\n+\tvirtual void initialValues(double &gainR, double &gainB) = 0;\n \tvirtual void setMode(std::string const &modeName) = 0;\n \tvirtual void setManualGains(double manualR, double manualB) = 0;\n \tvirtual void enableAuto() = 0;\ndiff --git a/src/ipa/rpi/controller/rpi/awb.cpp b/src/ipa/rpi/controller/rpi/awb.cpp\nindex 5ae0c2fa..dde5785a 100644\n--- a/src/ipa/rpi/controller/rpi/awb.cpp\n+++ b/src/ipa/rpi/controller/rpi/awb.cpp\n@@ -220,6 +220,12 @@ void Awb::initialise()\n \tasyncResults_ = syncResults_;\n }\n \n+void Awb::initialValues(double &gainR, double &gainB)\n+{\n+\tgainR = syncResults_.gainR;\n+\tgainB = syncResults_.gainB;\n+}\n+\n void Awb::disableAuto()\n {\n \t/* Freeze the most recent values, and treat them as manual gains */\ndiff --git a/src/ipa/rpi/controller/rpi/awb.h b/src/ipa/rpi/controller/rpi/awb.h\nindex e7d49cd8..cde6a62f 100644\n--- a/src/ipa/rpi/controller/rpi/awb.h\n+++ b/src/ipa/rpi/controller/rpi/awb.h\n@@ -95,6 +95,7 @@ public:\n \tvoid initialise() override;\n \tint read(const libcamera::YamlObject ¶ms) override;\n \tunsigned int getConvergenceFrames() const override;\n+\tvoid initialValues(double &gainR, double &gainB) override;\n \tvoid setMode(std::string const &name) override;\n \tvoid setManualGains(double manualR, double manualB) override;\n \tvoid enableAuto() override;\n", "prefixes": [ "libcamera-devel", "2/2" ] }