[{"id":22956,"web_url":"https://patchwork.libcamera.org/comment/22956/","msgid":"<Yn3VJOiwOQ8n5UfF@pendragon.ideasonboard.com>","date":"2022-05-13T03:48:52","subject":"Re: [libcamera-devel] [RFC PATCH 1/2] ipa: rkisp1: awb: add support\n\tfor RGB means","submitter":{"id":2,"url":"https://patchwork.libcamera.org/api/people/2/","name":"Laurent Pinchart","email":"laurent.pinchart@ideasonboard.com"},"content":"Hi Quentin,\n\nThank you for the patch.\n\nOn Thu, May 12, 2022 at 10:42:43AM +0200, Quentin Schulz via libcamera-devel wrote:\n> From: Quentin Schulz <quentin.schulz@theobroma-systems.com>\n> \n> RkISP actually supports two modes for color means, RGB and YCbCr. The\n> variables where the means are stored are identically named regardless of\n> the color means mode that's been selected.\n> \n> Since the gains are computed in RGB mode, a conversion needs to be done\n> when the mode is YCbCr, which is unnecessary when RGB mode is selected.\n> \n> This adds support for RGB means mode too, by checking at runtime which\n> mode is selected at a given time.\n> \n> Cc: Quentin Schulz <foss+libcamera@0leil.net>\n> Signed-off-by: Quentin Schulz <quentin.schulz@theobroma-systems.com>\n> ---\n> \n> To be decided if we want to keep supporting both modes or only one?\n> (Given that at the moment we harcode which mode is used at compile time,\n>  I'm not sure it's worth keeping dead code around)\n\nI'd like to test this on RK3399 and on i.MX8MP (I assume you've tested\nthe PX30). If all tests pass, then I think we can just drop YUV support\ncompletely.\n\nJean-Michel, I don't have RK3399 hardware with me, could you give this\nseries a try ?\n\n>  src/ipa/rkisp1/algorithms/awb.cpp | 57 ++++++++++++++++++-------------\n>  1 file changed, 33 insertions(+), 24 deletions(-)\n> \n> diff --git a/src/ipa/rkisp1/algorithms/awb.cpp b/src/ipa/rkisp1/algorithms/awb.cpp\n> index be4585c6..df749b9b 100644\n> --- a/src/ipa/rkisp1/algorithms/awb.cpp\n> +++ b/src/ipa/rkisp1/algorithms/awb.cpp\n> @@ -124,30 +124,39 @@ void Awb::process([[maybe_unused]] IPAContext &context, const rkisp1_stat_buffer\n>  \tconst rkisp1_cif_isp_stat *params = &stats->params;\n>  \tconst rkisp1_cif_isp_awb_stat *awb = &params->awb;\n>  \tIPAFrameContext &frameContext = context.frameContext;\n> -\n> -\t/* Get the YCbCr mean values */\n> -\tdouble yMean = awb->awb_mean[0].mean_y_or_g;\n> -\tdouble crMean = awb->awb_mean[0].mean_cr_or_r;\n> -\tdouble cbMean = awb->awb_mean[0].mean_cb_or_b;\n> -\n> -\t/*\n> -\t * Convert from YCbCr to RGB.\n> -\t * The hardware uses the following formulas:\n> -\t * Y = 16 + 0.2500 R + 0.5000 G + 0.1094 B\n> -\t * Cb = 128 - 0.1406 R - 0.2969 G + 0.4375 B\n> -\t * Cr = 128 + 0.4375 R - 0.3750 G - 0.0625 B\n> -\t *\n> -\t * The inverse matrix is thus:\n> -\t * [[1,1636, -0,0623,  1,6008]\n> -\t *  [1,1636, -0,4045, -0,7949]\n> -\t *  [1,1636,  1,9912, -0,0250]]\n> -\t */\n> -\tyMean -= 16;\n> -\tcbMean -= 128;\n> -\tcrMean -= 128;\n> -\tdouble redMean = 1.1636 * yMean - 0.0623 * cbMean + 1.6008 * crMean;\n> -\tdouble greenMean = 1.1636 * yMean - 0.4045 * cbMean - 0.7949 * crMean;\n> -\tdouble blueMean = 1.1636 * yMean + 1.9912 * cbMean - 0.0250 * crMean;\n> +\tdouble greenMean;\n> +\tdouble redMean;\n> +\tdouble blueMean;\n> +\n> +\tif (params->meas.awb_meas_config.awb_mode == RKISP1_CIF_ISP_AWB_MODE_RGB) {\n> +\t\tgreenMean = awb->awb_mean[0].mean_y_or_g;\n> +\t\tredMean = awb->awb_mean[0].mean_cr_or_r;\n> +\t\tblueMean = awb->awb_mean[0].mean_cb_or_b;\n> +\t} else {\n> +\t\t/* Get the YCbCr mean values */\n> +\t\tdouble yMean = awb->awb_mean[0].mean_y_or_g;\n> +\t\tdouble crMean = awb->awb_mean[0].mean_cr_or_r;\n> +\t\tdouble cbMean = awb->awb_mean[0].mean_cb_or_b;\n> +\n> +\t\t/*\n> +\t\t * Convert from YCbCr to RGB.\n> +\t\t * The hardware uses the following formulas:\n> +\t\t * Y = 16 + 0.2500 R + 0.5000 G + 0.1094 B\n> +\t\t * Cb = 128 - 0.1406 R - 0.2969 G + 0.4375 B\n> +\t\t * Cr = 128 + 0.4375 R - 0.3750 G - 0.0625 B\n> +\t\t *\n> +\t\t * The inverse matrix is thus:\n> +\t\t * [[1,1636, -0,0623,  1,6008]\n> +\t\t *  [1,1636, -0,4045, -0,7949]\n> +\t\t *  [1,1636,  1,9912, -0,0250]]\n> +\t\t */\n> +\t\tyMean -= 16;\n> +\t\tcbMean -= 128;\n> +\t\tcrMean -= 128;\n> +\t\tredMean = 1.1636 * yMean - 0.0623 * cbMean + 1.6008 * crMean;\n> +\t\tgreenMean = 1.1636 * yMean - 0.4045 * cbMean - 0.7949 * crMean;\n> +\t\tblueMean = 1.1636 * yMean + 1.9912 * cbMean - 0.0250 * crMean;\n> +\t}\n>  \n>  \t/* Estimate the red and blue gains to apply in a grey world. */\n>  \tdouble redGain = greenMean / (redMean + 1);","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 895ABC0F2A\n\tfor <parsemail@patchwork.libcamera.org>;\n\tFri, 13 May 2022 03:49:02 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id CE88465656;\n\tFri, 13 May 2022 05:49:01 +0200 (CEST)","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 E420460420\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tFri, 13 May 2022 05:48:59 +0200 (CEST)","from pendragon.ideasonboard.com (unknown [95.214.66.65])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 446A55A4;\n\tFri, 13 May 2022 05:48:59 +0200 (CEST)"],"DKIM-Signature":["v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org;\n\ts=mail; t=1652413741;\n\tbh=zt/HTfilkA+T1veAm4K0vNy0qkLBrAYjCJI/sOSrKFk=;\n\th=Date:To:References:In-Reply-To:Subject:List-Id:List-Unsubscribe:\n\tList-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:Cc:\n\tFrom;\n\tb=N9NzVy4D0Hwb0YlBe5jbN6Jpu8D4fRgHpG60HiooX542uEfS+56LCzAfNMXI+e/BE\n\tLPDkkl6BVZ5DrtwVKzQZohT0oLSZeGNkkNFx8p/sS5uQSvuirkp8pCh60j7nS3igxn\n\tZ5PnOA+VvHJ33JcSlYoKvLufbat0x+MP4WfKY3Dg/cPcXH6efrDzKKcXmxzEpUQKC2\n\tcMoyadG3BcEXwNTtagqFJlskvB2E9YpNiNXlVgSRgHn0vyhgRIT0omMgtkm5jDizdK\n\tyOcpeZQk178nT1uinF2gdTogik0Ep78zW6G9dsqIZ5+U66bvSQOsypkcGOa7RBrwWj\n\tuAWr0YufQ+fSg==","v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1652413739;\n\tbh=zt/HTfilkA+T1veAm4K0vNy0qkLBrAYjCJI/sOSrKFk=;\n\th=Date:From:To:Cc:Subject:References:In-Reply-To:From;\n\tb=KNQhZGO/CcdgQpAtaHp5Ktn+wEX0VDrN/Hj5abJH4a4pJFdkzUYi3JPeEaugpimLv\n\tOBH8LaZbGt/P3r/8FCBWoM/kh6IEahAzOL9puQz3e1mBb9EyfelmKqN/me8tcuQ5aF\n\t5lRcuFfGNXSkWonKhy71p20xwDA4axlun5Zw3x30="],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (1024-bit key; \n\tunprotected) header.d=ideasonboard.com\n\theader.i=@ideasonboard.com\n\theader.b=\"KNQhZGO/\"; dkim-atps=neutral","Date":"Fri, 13 May 2022 06:48:52 +0300","To":"Quentin Schulz <foss+libcamera@0leil.net>","Message-ID":"<Yn3VJOiwOQ8n5UfF@pendragon.ideasonboard.com>","References":"<20220512084244.1833554-1-foss+libcamera@0leil.net>","MIME-Version":"1.0","Content-Type":"text/plain; charset=utf-8","Content-Disposition":"inline","In-Reply-To":"<20220512084244.1833554-1-foss+libcamera@0leil.net>","Subject":"Re: [libcamera-devel] [RFC PATCH 1/2] ipa: rkisp1: awb: add support\n\tfor RGB means","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":"Laurent Pinchart via libcamera-devel\n\t<libcamera-devel@lists.libcamera.org>","Reply-To":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","Cc":"libcamera-devel@lists.libcamera.org","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}},{"id":23945,"web_url":"https://patchwork.libcamera.org/comment/23945/","msgid":"<YtSEDz78YR3UpCxW@pendragon.ideasonboard.com>","date":"2022-07-17T21:50:07","subject":"Re: [libcamera-devel] [RFC PATCH 1/2] ipa: rkisp1: awb: add support\n\tfor RGB means","submitter":{"id":2,"url":"https://patchwork.libcamera.org/api/people/2/","name":"Laurent Pinchart","email":"laurent.pinchart@ideasonboard.com"},"content":"Hi Quention,\n\nOn Thu, May 12, 2022 at 10:42:43AM +0200, Quentin Schulz via libcamera-devel wrote:\n> From: Quentin Schulz <quentin.schulz@theobroma-systems.com>\n> \n> RkISP actually supports two modes for color means, RGB and YCbCr. The\n> variables where the means are stored are identically named regardless of\n> the color means mode that's been selected.\n> \n> Since the gains are computed in RGB mode, a conversion needs to be done\n> when the mode is YCbCr, which is unnecessary when RGB mode is selected.\n> \n> This adds support for RGB means mode too, by checking at runtime which\n> mode is selected at a given time.\n> \n> Cc: Quentin Schulz <foss+libcamera@0leil.net>\n> Signed-off-by: Quentin Schulz <quentin.schulz@theobroma-systems.com>\n> ---\n> \n> To be decided if we want to keep supporting both modes or only one?\n> (Given that at the moment we harcode which mode is used at compile time,\n>  I'm not sure it's worth keeping dead code around)\n\nI'm finally testing this, and this patch doesn't compile. params has no\nmeas member.\n\n>  src/ipa/rkisp1/algorithms/awb.cpp | 57 ++++++++++++++++++-------------\n>  1 file changed, 33 insertions(+), 24 deletions(-)\n> \n> diff --git a/src/ipa/rkisp1/algorithms/awb.cpp b/src/ipa/rkisp1/algorithms/awb.cpp\n> index be4585c6..df749b9b 100644\n> --- a/src/ipa/rkisp1/algorithms/awb.cpp\n> +++ b/src/ipa/rkisp1/algorithms/awb.cpp\n> @@ -124,30 +124,39 @@ void Awb::process([[maybe_unused]] IPAContext &context, const rkisp1_stat_buffer\n>  \tconst rkisp1_cif_isp_stat *params = &stats->params;\n>  \tconst rkisp1_cif_isp_awb_stat *awb = &params->awb;\n>  \tIPAFrameContext &frameContext = context.frameContext;\n> -\n> -\t/* Get the YCbCr mean values */\n> -\tdouble yMean = awb->awb_mean[0].mean_y_or_g;\n> -\tdouble crMean = awb->awb_mean[0].mean_cr_or_r;\n> -\tdouble cbMean = awb->awb_mean[0].mean_cb_or_b;\n> -\n> -\t/*\n> -\t * Convert from YCbCr to RGB.\n> -\t * The hardware uses the following formulas:\n> -\t * Y = 16 + 0.2500 R + 0.5000 G + 0.1094 B\n> -\t * Cb = 128 - 0.1406 R - 0.2969 G + 0.4375 B\n> -\t * Cr = 128 + 0.4375 R - 0.3750 G - 0.0625 B\n> -\t *\n> -\t * The inverse matrix is thus:\n> -\t * [[1,1636, -0,0623,  1,6008]\n> -\t *  [1,1636, -0,4045, -0,7949]\n> -\t *  [1,1636,  1,9912, -0,0250]]\n> -\t */\n> -\tyMean -= 16;\n> -\tcbMean -= 128;\n> -\tcrMean -= 128;\n> -\tdouble redMean = 1.1636 * yMean - 0.0623 * cbMean + 1.6008 * crMean;\n> -\tdouble greenMean = 1.1636 * yMean - 0.4045 * cbMean - 0.7949 * crMean;\n> -\tdouble blueMean = 1.1636 * yMean + 1.9912 * cbMean - 0.0250 * crMean;\n> +\tdouble greenMean;\n> +\tdouble redMean;\n> +\tdouble blueMean;\n> +\n> +\tif (params->meas.awb_meas_config.awb_mode == RKISP1_CIF_ISP_AWB_MODE_RGB) {\n> +\t\tgreenMean = awb->awb_mean[0].mean_y_or_g;\n> +\t\tredMean = awb->awb_mean[0].mean_cr_or_r;\n> +\t\tblueMean = awb->awb_mean[0].mean_cb_or_b;\n> +\t} else {\n> +\t\t/* Get the YCbCr mean values */\n> +\t\tdouble yMean = awb->awb_mean[0].mean_y_or_g;\n> +\t\tdouble crMean = awb->awb_mean[0].mean_cr_or_r;\n> +\t\tdouble cbMean = awb->awb_mean[0].mean_cb_or_b;\n> +\n> +\t\t/*\n> +\t\t * Convert from YCbCr to RGB.\n> +\t\t * The hardware uses the following formulas:\n> +\t\t * Y = 16 + 0.2500 R + 0.5000 G + 0.1094 B\n> +\t\t * Cb = 128 - 0.1406 R - 0.2969 G + 0.4375 B\n> +\t\t * Cr = 128 + 0.4375 R - 0.3750 G - 0.0625 B\n> +\t\t *\n> +\t\t * The inverse matrix is thus:\n> +\t\t * [[1,1636, -0,0623,  1,6008]\n> +\t\t *  [1,1636, -0,4045, -0,7949]\n> +\t\t *  [1,1636,  1,9912, -0,0250]]\n> +\t\t */\n> +\t\tyMean -= 16;\n> +\t\tcbMean -= 128;\n> +\t\tcrMean -= 128;\n> +\t\tredMean = 1.1636 * yMean - 0.0623 * cbMean + 1.6008 * crMean;\n> +\t\tgreenMean = 1.1636 * yMean - 0.4045 * cbMean - 0.7949 * crMean;\n> +\t\tblueMean = 1.1636 * yMean + 1.9912 * cbMean - 0.0250 * crMean;\n> +\t}\n>  \n>  \t/* Estimate the red and blue gains to apply in a grey world. */\n>  \tdouble redGain = greenMean / (redMean + 1);","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 26612BD1F1\n\tfor <parsemail@patchwork.libcamera.org>;\n\tSun, 17 Jul 2022 21:50:43 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 76C3563312;\n\tSun, 17 Jul 2022 23:50:42 +0200 (CEST)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[213.167.242.64])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 4A45261FAF\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tSun, 17 Jul 2022 23:50:40 +0200 (CEST)","from pendragon.ideasonboard.com (62-78-145-57.bb.dnainternet.fi\n\t[62.78.145.57])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id AF11A74C;\n\tSun, 17 Jul 2022 23:50:39 +0200 (CEST)"],"DKIM-Signature":["v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org;\n\ts=mail; t=1658094642;\n\tbh=k2xNgrtKwpMYeUlOfZR9jvSR3F6LTSIWs+HYGH9wM8c=;\n\th=Date:To:References:In-Reply-To:Subject:List-Id:List-Unsubscribe:\n\tList-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:Cc:\n\tFrom;\n\tb=OsA2ifM+X1Wp6GMo07mGNnZguwOGuZvV36mgZLFNMyymk6E6hlwwKAIwXSt4RUK0R\n\t3RmGydmeZuJ4nMyaNaIDIcFuyRsTZCkWQA0huZBxiVkWe+1LROUQUw0V1Mc1qml8/J\n\tcZQvCR2J6xxZT8Bi7AvTaLcYHiJd2giY2991FdPMine0/2U1UOddMUhyHTyGL+dvEk\n\tVkVwqrx39qMB2wOsAHOuKkHF8K2z10iOP05swQuW+HhReiD+sm7W8GysvELFmP6SYU\n\tdfkTylzc2DUlUt9lS/x4KWYQnVM+xJJP0Bu83vUGqn/IfYh9yJm7iJmwBNEOosaYNk\n\tOkLZ2vJiJekkA==","v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1658094639;\n\tbh=k2xNgrtKwpMYeUlOfZR9jvSR3F6LTSIWs+HYGH9wM8c=;\n\th=Date:From:To:Cc:Subject:References:In-Reply-To:From;\n\tb=KNewWS9LqNeo9QooPEVObUQlztPonOL8AdxhnNT/4QxO8BWu91psYldSdxFsAtu1t\n\tErocy6W5KPf58mFUkvgdU8pw7HdWHiiXaCCqiBdx2xN/Fqox7Q6g6gLxFJG/ZT/ACW\n\tPtOurzmKqDoIpwqZ7zv0JS59TIjVA1zvfolut9LQ="],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (1024-bit key; \n\tunprotected) header.d=ideasonboard.com\n\theader.i=@ideasonboard.com\n\theader.b=\"KNewWS9L\"; dkim-atps=neutral","Date":"Mon, 18 Jul 2022 00:50:07 +0300","To":"Quentin Schulz <foss+libcamera@0leil.net>","Message-ID":"<YtSEDz78YR3UpCxW@pendragon.ideasonboard.com>","References":"<20220512084244.1833554-1-foss+libcamera@0leil.net>","MIME-Version":"1.0","Content-Type":"text/plain; charset=utf-8","Content-Disposition":"inline","In-Reply-To":"<20220512084244.1833554-1-foss+libcamera@0leil.net>","Subject":"Re: [libcamera-devel] [RFC PATCH 1/2] ipa: rkisp1: awb: add support\n\tfor RGB means","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":"Laurent Pinchart via libcamera-devel\n\t<libcamera-devel@lists.libcamera.org>","Reply-To":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","Cc":"libcamera-devel@lists.libcamera.org","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}},{"id":23946,"web_url":"https://patchwork.libcamera.org/comment/23946/","msgid":"<4700eb08-4a4d-3d9c-bd9c-fe716c266b4f@theobroma-systems.com>","date":"2022-07-18T08:14:54","subject":"Re: [libcamera-devel] [RFC PATCH 1/2] ipa: rkisp1: awb: add support\n\tfor RGB means","submitter":{"id":121,"url":"https://patchwork.libcamera.org/api/people/121/","name":"Quentin Schulz","email":"quentin.schulz@theobroma-systems.com"},"content":"Hi Laurent,\n\nOn 7/17/22 23:50, Laurent Pinchart via libcamera-devel wrote:\n> Hi Quention,\n> \n> On Thu, May 12, 2022 at 10:42:43AM +0200, Quentin Schulz via libcamera-devel wrote:\n>> From: Quentin Schulz <quentin.schulz@theobroma-systems.com>\n>>\n>> RkISP actually supports two modes for color means, RGB and YCbCr. The\n>> variables where the means are stored are identically named regardless of\n>> the color means mode that's been selected.\n>>\n>> Since the gains are computed in RGB mode, a conversion needs to be done\n>> when the mode is YCbCr, which is unnecessary when RGB mode is selected.\n>>\n>> This adds support for RGB means mode too, by checking at runtime which\n>> mode is selected at a given time.\n>>\n>> Cc: Quentin Schulz <foss+libcamera@0leil.net>\n>> Signed-off-by: Quentin Schulz <quentin.schulz@theobroma-systems.com>\n>> ---\n>>\n>> To be decided if we want to keep supporting both modes or only one?\n>> (Given that at the moment we harcode which mode is used at compile time,\n>>   I'm not sure it's worth keeping dead code around)\n> \n> I'm finally testing this, and this patch doesn't compile. params has no\n> meas member.\n> \n\nYeah, I think someone reported it on #libcamera a few days after I \nposted it.\n\nI got confused by the same variable name not being of the same type and \ntried to use it the same way.\n\nI tested it back then by completely swapping YCbCr to RGB means without \nthe check in here against meas_config, just assuming it's RGB (selected \nin patch 2/2). I clearly didn't compile it before sending the RFC after \ntrying to do \"smart\" things instead of just sending what I had tested, \nsorry about that.\n\nWe could create a new variable in the awb algorithm to hold the color \nmode used to get mean values for the AWB algorithm by the rkisp? Or \nsomething like that. The plan for this RFC was more about checking if we \nstill have an issue with RGB AWB not working on rkisp1 (at least rk3399, \nfor some people?) and if so, maybe better document it and offer the \nability to support both YCbCr and RGB means for AWB (e.g. have PX30 \nrkisp1 v1.2 use RGB and RK3399 rkisp1 v1.0 use YCbCr?). If it works \nfine, then maybe we can remove the translation from YCbCr to RGB and \nsimplify a bit the logic (and make it more precise too I assume, but \nconsidering it's still a bit on the green side, I'm not sure that is a \nvalid argument :) ).\n\nCheers,\nQuentin","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 A643CBE173\n\tfor <parsemail@patchwork.libcamera.org>;\n\tMon, 18 Jul 2022 08:15:02 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id A278063312;\n\tMon, 18 Jul 2022 10:15:01 +0200 (CEST)","from EUR04-HE1-obe.outbound.protection.outlook.com\n\t(mail-eopbgr70079.outbound.protection.outlook.com [40.107.7.79])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id AB75A6048A\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tMon, 18 Jul 2022 10:14:59 +0200 (CEST)","from PA4PR04MB9367.eurprd04.prod.outlook.com (2603:10a6:102:2aa::7)\n\tby HE1PR0402MB2729.eurprd04.prod.outlook.com (2603:10a6:3:e0::13)\n\twith Microsoft SMTP Server (version=TLS1_2,\n\tcipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5438.23;\n\tMon, 18 Jul 2022 08:14:56 +0000","from PA4PR04MB9367.eurprd04.prod.outlook.com\n\t([fe80::5c3:766e:66e9:8c4]) by\n\tPA4PR04MB9367.eurprd04.prod.outlook.com\n\t([fe80::5c3:766e:66e9:8c4%9]) with mapi id 15.20.5438.022;\n\tMon, 18 Jul 2022 08:14:56 +0000"],"DKIM-Signature":["v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org;\n\ts=mail; t=1658132101;\n\tbh=HVXTN0YrGm+EdNitFBqJkc9emXnUghD9LUeaNFtcjkU=;\n\th=Date:To:References:In-Reply-To:Subject:List-Id:List-Unsubscribe:\n\tList-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:Cc:\n\tFrom;\n\tb=x2UPeHAweggJemvhpFuWVfWxBHzWwZmB/+UJw6m+LhuPhW1jsPVNhvphgJJ5AlFcT\n\tjhixyw26Ac+mWxouLtMsAGkM/8dgx1DsIxrXAKppfW1VyhUvLPgJeB8TOit4z+JU3a\n\tzKEJrhR4ej/Xl1Ti6aqadxZy8DMMPgYNziP4Iwi+GYrupAjSRl5t7/IOIFVHiEmOol\n\tUjObQAYSAU5LfALCNUfbOFaqzOVVKcV/uqELtaQT6bG8SIvjv8h0RUccoja3cMKLQh\n\tO6cCz9owUz81e7z4HwEyx8785BSaz67sagEfcxwFIFLbOG2IGrUQK4cQ1AzSCWhxtu\n\tWXMGyB4w0YD6Q==","v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=cherrycloud.onmicrosoft.com; s=selector2-cherrycloud-onmicrosoft-com;\n\th=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n\tbh=nVGj4Ey7Ay2iIMniEqY2S/pBCXPIhO5PY9dI0y/e7R0=;\n\tb=NQfSTC2ZkuLcD1VNKOKwHX7ILyvWkxo0CCCXkS4rSDRVtLI2Tjo5TGsG7RE55NXzIfQfoo5CTEA3BAwuJITHqJKUszPxcu2wkhCGf9ct5L4ZZ9BiPTZRkJPEYh0bfyX/BqAd8xcYM7gAP66OK/fDYJ0ZB25cVZBmiVblOmEYJKw="],"Authentication-Results":["lancelot.ideasonboard.com; dkim=pass (1024-bit key; \n\tunprotected) header.d=cherrycloud.onmicrosoft.com\n\theader.i=@cherrycloud.onmicrosoft.com header.b=\"NQfSTC2Z\"; \n\tdkim-atps=neutral","dkim=none (message not signed) header.d=none;\n\tdmarc=none action=none header.from=theobroma-systems.com; "],"ARC-Seal":"i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;\n\tb=d9J9UZN2E4x9LmAxQekIGUIZzmdSCg/GT+fyIO6APPj+59h5QCjtGbrliCDr6Tmd4JDuzdTkcfcBGX9vWQIFXhoIv3Nh/ftzlolxfNGvmtUzDbdsBoq+4I6nkEqAk73sUQLZimoDqeYrqDoOq90BFPgFPZgGF3ikhacqmScY9WB+8uz97VCjbQR/SdmxRyEN83iohB+9UEmJU4q+pk5vXaaetmHyZFD/ZFt+ZqJrXmn7++EE30gKWWyl4ZNC6pturSN1x3x9zpD1cKCN/6eTjTpk0yJLhpXJb0TPnA6dnRpnHFdrCQB6c5fAoImWbEnyIZX5ff1GAHx+MObmCxmEWg==","ARC-Message-Signature":"i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;\n\ts=arcselector9901;\n\th=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;\n\tbh=nVGj4Ey7Ay2iIMniEqY2S/pBCXPIhO5PY9dI0y/e7R0=;\n\tb=jwx90Rqa5vh+MyR4zW6QAI/sdFKX1khfRhVVd3+eB1DExVZ7Vn1JzhkuW7QEGkCzLwMNrMnA/1Bjaieo39Va7LkyP8nYWSPDTPkRu69MroXxphSQRFUg24sRJjPWs+hgOIT2Q+cn4DsYlhzPn0egQgBNDy/WdPeqavrDU6yyJ67JRawCpUISfHlRi0iRSbqAVtgRpnZJnZYOJIU/4bi/adynKqa9JXCkTpp3B8QfsGFvDHLe7V1I3Iq7uW0E5RTLdftmFhmvaiGNg/NbqVJKUM0iGFEWpjDUG4r0W7oAv12Yf3HSjMH2r451cRLhQCH+m2z8QQAM+ys58bXitpYwcA==","ARC-Authentication-Results":"i=1; mx.microsoft.com 1; spf=pass\n\tsmtp.mailfrom=theobroma-systems.com; dmarc=pass action=none\n\theader.from=theobroma-systems.com;\n\tdkim=pass header.d=theobroma-systems.com; \n\tarc=none","Message-ID":"<4700eb08-4a4d-3d9c-bd9c-fe716c266b4f@theobroma-systems.com>","Date":"Mon, 18 Jul 2022 10:14:54 +0200","User-Agent":"Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101\n\tThunderbird/91.11.0","Content-Language":"en-US","To":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>,\n\tQuentin Schulz <foss+libcamera@0leil.net>","References":"<20220512084244.1833554-1-foss+libcamera@0leil.net>\n\t<YtSEDz78YR3UpCxW@pendragon.ideasonboard.com>","In-Reply-To":"<YtSEDz78YR3UpCxW@pendragon.ideasonboard.com>","Content-Type":"text/plain; charset=UTF-8; format=flowed","Content-Transfer-Encoding":"7bit","X-ClientProxiedBy":"VI1PR02CA0043.eurprd02.prod.outlook.com\n\t(2603:10a6:802:14::14) To PA4PR04MB9367.eurprd04.prod.outlook.com\n\t(2603:10a6:102:2aa::7)","MIME-Version":"1.0","X-MS-PublicTrafficType":"Email","X-MS-Office365-Filtering-Correlation-Id":"8a58dae2-fcac-4b70-d388-08da6895993c","X-MS-TrafficTypeDiagnostic":"HE1PR0402MB2729:EE_","X-MS-Exchange-SenderADCheck":"1","X-MS-Exchange-AntiSpam-Relay":"0","X-Microsoft-Antispam":"BCL:0;","X-Microsoft-Antispam-Message-Info":"h8RAAVBTqDWjhUIYbiEoteMZahPrAv95e+SaAmdnFxLg6KqZP8VPAYzmTVaZ0T6tvUMS0C3eJEE4vY97bSMPid2MXW/nr8bhWRz6oI68W73jxoecnaf5xeJkkw+8Rf/H8+7KfC4rnYC2mDAyujOpTSF54/B5t+yThyr354/qcJ4DNocjfRDqAKXeyLJVA3e1pzi7CeL+XtiJ3D/OPwz7uEpPGs1N+7zkGAWt9HSPOsTLbm0ht8HDPsdDswFWznxQpY9kCs16iAr/orIirB+PvFtUBiNivXBs8rMKQosuzKBJVAEJ3Fb5dploxzoeC9JcbzZ5lo7VJJRClrohIWP/+EkcQ9VuF1y6qPId6t1g9n79sjmyUaw6O5MtevDqicYS+LqxwjKMLOJHX9Rftz/KDhyWQlLtMBC745F9ugA5dR3pQ1bCvHfZyBJgFi/gMqlI45Q1N53m0nS4eOpqu/+jYWUU2SHYVaCLXj4j5ocoYTxp+E1rax1GFUNo1MHI27A0WchyP0ThJ0h8zs3mkTdS0WMUl4HwBEVzjIYArGShPb2tiEt6GfGf6L6mFMVrI8ytTRBhd9fIOIOZkkjsYvWRIYJEmgTjeVGb7LsihCaqhJ+8vPO/ezLB/wueb3c/lQthGCQ4qv5J+1XsMoDvPDhqpzcwRbi2iXaVIhlr2TVioq9KgUouosI3auDBgDpCBs0KtrYy+ZRKSnOckevkn57ByiiXB7BY5vrnSS6uN2NPHhczLHPbNsUlX+S+QRdwjvSTs8K5iSIwHjYXouuXQV1zjt8R584eGdWylCxFH0Vsu/bOX3wlXqL+QcZRsvHNgRJUKz2+eh2AhD0n7OSe5HsWUA==","X-Forefront-Antispam-Report":"CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;\n\tIPV:NLI; SFV:NSPM; H:PA4PR04MB9367.eurprd04.prod.outlook.com; PTR:;\n\tCAT:NONE; \n\tSFS:(13230016)(396003)(39840400004)(376002)(136003)(366004)(346002)(316002)(66946007)(6486002)(6506007)(41300700001)(110136005)(478600001)(66556008)(53546011)(31686004)(4326008)(8676002)(8936002)(2906002)(5660300002)(44832011)(38100700002)(66476007)(2616005)(86362001)(36756003)(31696002)(186003)(6512007)(43740500002)(45980500001);\n\tDIR:OUT; SFP:1101; ","X-MS-Exchange-AntiSpam-MessageData-ChunkCount":"1","X-MS-Exchange-AntiSpam-MessageData-0":"=?utf-8?q?1TW/ycTqb+glCAD9DBv5EXSuf?=\n\t=?utf-8?q?mx9zpsY8ZVI6PWKWOOo2RD9rqDYsEW5AoXugQ3a/XE1lyfrhZP72V6bs?=\n\t=?utf-8?q?ZI072xwlvM8AdOegsUl6hDNdqq5L1IpfsgKZubkqM8c0C6pfprdIxjO3?=\n\t=?utf-8?q?W2mWZ+BRs9o4C55QlZHTNFfBV89K9uclbgJnrIxyGxX/4YEzojhiO9X1?=\n\t=?utf-8?q?cVjHLU2gZ/4UxxlaOf7D/DucDKsTH59XXKQ1HDbrnLiZfWm2Ys/GFeCf?=\n\t=?utf-8?q?WGE8xMfe05gCvIJDdAqnT/bBEanq3fVxGcV8nqUi8YBeVR9jbQQ5mhH9?=\n\t=?utf-8?q?a2P1+6GrXuSxGkCp1v/S66RuqLdBm32+AbaJ3VjFWt2FVSio5S6kNr53?=\n\t=?utf-8?q?BCUAhFA8L6m1sp4/dABM6YskG0oG6co5Wa7h/yhnDtBMBvGmaRE6cc80?=\n\t=?utf-8?q?wnthOyvVnHTFGmRCT01v1ZU+/MEvfR4zE4xwHcBPNYCHftL+5+YYrGLx?=\n\t=?utf-8?q?YePIsKpIGJA8wt4na9V3/WlC4oII6YguCzgMXbaq7Mrz9LCviiigtpf4?=\n\t=?utf-8?q?1NUKzDtVky27fxZ2qDBQqUEupcyehlOtU33yovEdh9f9YOHyJc+aTTiZ?=\n\t=?utf-8?q?J5l+/zazfVsgxPA1pHgslSAVPXpNe3EHYb9TvlXWBGR187msZctkCRMU?=\n\t=?utf-8?q?4YVW9JXgp10YlbuqueTXnXU7wqqgeho6uYljLPLSjj3rsCMF7Hs8jACg?=\n\t=?utf-8?q?IBimnhWPzFtyFIfE0bRxY3ie5NAEZHSVpin1xKs6nPZiouQWZW9i0VMM?=\n\t=?utf-8?q?m9OKb7f8aeAvSaqFCa20Q+hoo1aPz3BwwTzwyMnz/2EhxhH+QU4F0GZI?=\n\t=?utf-8?q?yCDD0P7F01q2QR2ZQRg0N9wy2ZkO9d0OIwGs6cAW6C1hm8jMLxFop7d+?=\n\t=?utf-8?q?l03O+YijMdSuig3x/p6LYbDpja425A+LAlW0TSv55ZHhUeTpJL3WUJKL?=\n\t=?utf-8?q?sYLfnoRWjkuAcSBsW9omYLvlpZAbXbcubUStTYooGH+r9uMsOAFt+pIk?=\n\t=?utf-8?q?IkFSe7fPFx0wnU8cr1RjX3bXLRJXywAcvaSWdeyxJOCP5yMrRdoW5IHl?=\n\t=?utf-8?q?KNzdYfFOlN878I2Ax7wTBZjqzADl5zRfmJbo58pSFB+8Z/YB0RvXo4ZT?=\n\t=?utf-8?q?83MpLicPpYrlDnzpJJhk3BT/w8O+MmSPZiLV8zq8ONB/4dBzJJpNZtsJ?=\n\t=?utf-8?q?xsmNaHc639CbGsSVLPPGDP2RR5Tc3isTuWOVel7rb1CH9Fn5hDHcz4+Q?=\n\t=?utf-8?q?5L21L9isBu7Vw+mI0Bia0s6OGjWegEzgAITBff9rKa3RikCGEGnoSwup?=\n\t=?utf-8?q?yCeIyzwLve96bAY5y6bGP54VbesUIaPfDVVscdr//oW0U40yXjafgFba?=\n\t=?utf-8?q?wHpkrnc6hDZE+sJQs9MboUis1HHjMFi5QjlXtkrAtqwANfMjuYi+GPfP?=\n\t=?utf-8?q?gB4StU3r+JSVBEDKJXFbbIpdY/rHwG4UgPJCkwADrYUqcf2Mey5xrcOu?=\n\t=?utf-8?q?pEbKBVdwC/PBhtKv/11sS9p6NL/0TGgaeoGMTjC9NqgmzgTn7OUZe6JH?=\n\t=?utf-8?q?JVXNVxIk1EEhh0BFoMwYapd+PCYxHdyp3bcpFJSOVDlAarbHzig1KWIe?=\n\t=?utf-8?q?AnbyZvn5gvTWFhlLSXfigK4T15EMToPVrbTPwv5ANoq9A6ZmxWM8SVp6?=\n\t=?utf-8?q?UxX6ezaEQt/OfmHMqJJ9KwANIPr13OwuXv8QP382K+hhy7Xf3FI/tB8J?=\n\t=?utf-8?q?coufjPNq3xOs5El?=","X-OriginatorOrg":"theobroma-systems.com","X-MS-Exchange-CrossTenant-Network-Message-Id":"8a58dae2-fcac-4b70-d388-08da6895993c","X-MS-Exchange-CrossTenant-AuthSource":"PA4PR04MB9367.eurprd04.prod.outlook.com","X-MS-Exchange-CrossTenant-AuthAs":"Internal","X-MS-Exchange-CrossTenant-OriginalArrivalTime":"18 Jul 2022 08:14:56.0269\n\t(UTC)","X-MS-Exchange-CrossTenant-FromEntityHeader":"Hosted","X-MS-Exchange-CrossTenant-Id":"5e0e1b52-21b5-4e7b-83bb-514ec460677e","X-MS-Exchange-CrossTenant-MailboxType":"HOSTED","X-MS-Exchange-CrossTenant-UserPrincipalName":"3oz7+wA8bRFFp69BrBdKpiMlh/cyyX4ulYMgjMctN+oxRufpQlp9bstXHVLz+Iyqw5gbLkDhdlVUoYge0+TzqJibSUZ3VeFHr9JURVPpZ8jR3osVQT1iasa4d1p5pR4v","X-MS-Exchange-Transport-CrossTenantHeadersStamped":"HE1PR0402MB2729","Subject":"Re: [libcamera-devel] [RFC PATCH 1/2] ipa: rkisp1: awb: add support\n\tfor RGB means","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":"Quentin Schulz via libcamera-devel\n\t<libcamera-devel@lists.libcamera.org>","Reply-To":"Quentin Schulz <quentin.schulz@theobroma-systems.com>","Cc":"libcamera-devel@lists.libcamera.org","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}},{"id":23947,"web_url":"https://patchwork.libcamera.org/comment/23947/","msgid":"<YtUY5FnH3ZDPJlSF@pendragon.ideasonboard.com>","date":"2022-07-18T08:25:08","subject":"Re: [libcamera-devel] [RFC PATCH 1/2] ipa: rkisp1: awb: add support\n\tfor RGB means","submitter":{"id":2,"url":"https://patchwork.libcamera.org/api/people/2/","name":"Laurent Pinchart","email":"laurent.pinchart@ideasonboard.com"},"content":"Hi Quention,\n\nOn Mon, Jul 18, 2022 at 10:14:54AM +0200, Quentin Schulz wrote:\n> On 7/17/22 23:50, Laurent Pinchart via libcamera-devel wrote:\n> > On Thu, May 12, 2022 at 10:42:43AM +0200, Quentin Schulz via libcamera-devel wrote:\n> >> From: Quentin Schulz <quentin.schulz@theobroma-systems.com>\n> >>\n> >> RkISP actually supports two modes for color means, RGB and YCbCr. The\n> >> variables where the means are stored are identically named regardless of\n> >> the color means mode that's been selected.\n> >>\n> >> Since the gains are computed in RGB mode, a conversion needs to be done\n> >> when the mode is YCbCr, which is unnecessary when RGB mode is selected.\n> >>\n> >> This adds support for RGB means mode too, by checking at runtime which\n> >> mode is selected at a given time.\n> >>\n> >> Cc: Quentin Schulz <foss+libcamera@0leil.net>\n> >> Signed-off-by: Quentin Schulz <quentin.schulz@theobroma-systems.com>\n> >> ---\n> >>\n> >> To be decided if we want to keep supporting both modes or only one?\n> >> (Given that at the moment we harcode which mode is used at compile time,\n> >>   I'm not sure it's worth keeping dead code around)\n> > \n> > I'm finally testing this, and this patch doesn't compile. params has no\n> > meas member.\n> > \n> \n> Yeah, I think someone reported it on #libcamera a few days after I \n> posted it.\n> \n> I got confused by the same variable name not being of the same type and \n> tried to use it the same way.\n> \n> I tested it back then by completely swapping YCbCr to RGB means without \n> the check in here against meas_config, just assuming it's RGB (selected \n> in patch 2/2). I clearly didn't compile it before sending the RFC after \n> trying to do \"smart\" things instead of just sending what I had tested, \n> sorry about that.\n> \n> We could create a new variable in the awb algorithm to hold the color \n> mode used to get mean values for the AWB algorithm by the rkisp? Or \n> something like that.\n\nThat sounds good. I don't expect the mode to change during a capture\nsession, or possibly even at all at runtime, so storing it in the Awb\nclass will work fine.\n\n> The plan for this RFC was more about checking if we \n> still have an issue with RGB AWB not working on rkisp1 (at least rk3399, \n> for some people?) and if so, maybe better document it and offer the \n> ability to support both YCbCr and RGB means for AWB (e.g. have PX30 \n> rkisp1 v1.2 use RGB and RK3399 rkisp1 v1.0 use YCbCr?). If it works \n> fine, then maybe we can remove the translation from YCbCr to RGB and \n> simplify a bit the logic (and make it more precise too I assume, but \n> considering it's still a bit on the green side, I'm not sure that is a \n> valid argument :) ).\n\nI've finally managed to test RGB mode on RK3399, and it works as well\n(or as badly :-)) as YCbCr mode. That is, once fixing a kernel bug. It\nturns out that the R, G and B maximum threshold values are not set by\nthe driver. They're stored in the same register fields as the YCbCr\nparameters, so it works more or less by chance, but it's not right. I'll\nsend patches.\n\nThis leads me to believe that the closed-source camera stack from\nRockchip uses YCbCr mode, at least on Chrome OS. I think we should keep\nthat as an option, as it gives more control over which pixels are\nselected by the accumulator. I however haven't been able to figure out\nwhat the Cb and Cr reference values are for. Does anyone know ?","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 81358BE173\n\tfor <parsemail@patchwork.libcamera.org>;\n\tMon, 18 Jul 2022 08:25:43 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 9AD8763312;\n\tMon, 18 Jul 2022 10:25:42 +0200 (CEST)","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 518606048A\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tMon, 18 Jul 2022 10:25:41 +0200 (CEST)","from pendragon.ideasonboard.com (62-78-145-57.bb.dnainternet.fi\n\t[62.78.145.57])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id AF0746DC;\n\tMon, 18 Jul 2022 10:25:40 +0200 (CEST)"],"DKIM-Signature":["v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org;\n\ts=mail; t=1658132742;\n\tbh=bdQUZxkHhhoOgNM7PosHsUdhJGac1RoHLx8IPgumomk=;\n\th=Date:To:References:In-Reply-To:Subject:List-Id:List-Unsubscribe:\n\tList-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:Cc:\n\tFrom;\n\tb=s7qO0MnF5w4gu0pY8V4XnUqfD5RzrFjqJpKV7bK6sHTaCQZerVOTenPcidsLFuc+a\n\t1dOb9RZDhXHvctMwiumO2SzIrPUwTSsKPllmTO3W8BLMRmuWLSTWVvSYiH5PcbNEgs\n\tlUh2in+BdLGGJZSSFcU5hVrGqYPaFZ+lqC2lHn6Q0L/m2rOIcAllpOXb6WCHx8b+A0\n\tiYHBQTgf1gx1RRF8qmZbWCXCp3/HzbEvccdDkqCE/g6ocUF7l9YO8CoaxP0jBLT+wt\n\tRLK3ogrb0Ckf9WOxcHKPbp1U/we7/gzklCkIydUi8xJMXS6bPCh6ULYbinrpWn0f0H\n\t/qOetAkd/QjUA==","v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1658132740;\n\tbh=bdQUZxkHhhoOgNM7PosHsUdhJGac1RoHLx8IPgumomk=;\n\th=Date:From:To:Cc:Subject:References:In-Reply-To:From;\n\tb=cxRkjC5WgF19lgcvsO67hCuy7y2dC4VFQbXtIuq/iZqZe60qc4PPONei10QSbr/ap\n\tMY2OuFa30lhxuxgfM5UcTjHQ6P/sDQvhQPWF9mHfD4WlBFN33SNZy9fSPT2vornMp1\n\t+cS39gWm5s5EuXfpbq5bRW3QDkg0lonRbqjjxz1M="],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (1024-bit key; \n\tunprotected) header.d=ideasonboard.com\n\theader.i=@ideasonboard.com\n\theader.b=\"cxRkjC5W\"; dkim-atps=neutral","Date":"Mon, 18 Jul 2022 11:25:08 +0300","To":"Quentin Schulz <quentin.schulz@theobroma-systems.com>","Message-ID":"<YtUY5FnH3ZDPJlSF@pendragon.ideasonboard.com>","References":"<20220512084244.1833554-1-foss+libcamera@0leil.net>\n\t<YtSEDz78YR3UpCxW@pendragon.ideasonboard.com>\n\t<4700eb08-4a4d-3d9c-bd9c-fe716c266b4f@theobroma-systems.com>","MIME-Version":"1.0","Content-Type":"text/plain; charset=utf-8","Content-Disposition":"inline","In-Reply-To":"<4700eb08-4a4d-3d9c-bd9c-fe716c266b4f@theobroma-systems.com>","Subject":"Re: [libcamera-devel] [RFC PATCH 1/2] ipa: rkisp1: awb: add support\n\tfor RGB means","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":"Laurent Pinchart via libcamera-devel\n\t<libcamera-devel@lists.libcamera.org>","Reply-To":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","Cc":"libcamera-devel@lists.libcamera.org,\n\tQuentin Schulz <foss+libcamera@0leil.net>","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}}]