[{"id":36322,"web_url":"https://patchwork.libcamera.org/comment/36322/","msgid":"<85o6q6bzhu.fsf@mzamazal-thinkpadp1gen7.tpbc.csb>","date":"2025-10-16T16:08:45","subject":"Re: [PATCH v3 34/39] libcamera: software_isp: debayer_egl: Make\n\tDebayerEGL an environment option","submitter":{"id":177,"url":"https://patchwork.libcamera.org/api/people/177/","name":"Milan Zamazal","email":"mzamazal@redhat.com"},"content":"Hi Bryan,\n\nBryan O'Donoghue <bryan.odonoghue@linaro.org> writes:\n\n> If GPUISP support is available make it so an environment variable can\n> switch it on.\n>\n> Given we don't have full feature parity with CPUISP just yet on pixel\n> format output, we should default to CPUISP mode giving the user the option\n> to switch on GPUISP by setting LIBCAMERA_SOFTISP_MODE=gpu\n>\n> Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>\n> ---\n>  src/libcamera/software_isp/software_isp.cpp | 19 ++++++++++++++++++-\n>  1 file changed, 18 insertions(+), 1 deletion(-)\n>\n> diff --git a/src/libcamera/software_isp/software_isp.cpp b/src/libcamera/software_isp/software_isp.cpp\n> index 1f984a52..869f7320 100644\n> --- a/src/libcamera/software_isp/software_isp.cpp\n> +++ b/src/libcamera/software_isp/software_isp.cpp\n> @@ -15,6 +15,7 @@\n>  \n>  #include <libcamera/base/log.h>\n>  #include <libcamera/base/thread.h>\n> +#include <libcamera/base/utils.h>\n>  \n>  #include <libcamera/controls.h>\n>  #include <libcamera/formats.h>\n> @@ -25,6 +26,9 @@\n>  #include \"libcamera/internal/software_isp/debayer_params.h\"\n>  \n>  #include \"debayer_cpu.h\"\n> +#if HAVE_DEBAYER_EGL\n> +#include \"debayer_egl.h\"\n> +#endif\n>  \n>  /**\n>   * \\file software_isp.cpp\n> @@ -116,7 +120,20 @@ SoftwareIsp::SoftwareIsp(PipelineHandler *pipe, const CameraSensor *sensor,\n>  \t}\n>  \tstats->statsReady.connect(this, &SoftwareIsp::statsReady);\n>  \n> -\tdebayer_ = std::make_unique<DebayerCpu>(std::move(stats), configuration);\n> +#if HAVE_DEBAYER_EGL\n> +\tconst char *softISPMode = utils::secure_getenv(\"LIBCAMERA_SOFTISP_MODE\");\n\ns/softISPMode/softIspMode/ I think.\n\nIt would be nice to have a configuration file option for this.  We\nalready have `configuration' here, so I think something like\n\n\tstd::optional<std::string> softIspMode = configuration.envOption(\"LIBCAMERA_SOFTISP_MODE\", { \"software_isp\", \"mode\" });\n\tif (softIspMode) {\n\t\tif (softIspMode != \"gpu\" && softIspMode != \"cpu\") {\n\t\t\tLOG(SoftwareIsp, Error) << \"LIBCAMERA_SOFISP_MODE \" << softIspMode.value() << \" invalid. \"\n\t\t\t\t\t\t<< \"must be \\\"cpu\\\" or \\\"gpu\\\"\";\n\t\t\treturn;\n\t\t}\n\t}\n\n#if HAVE_DEBAYER_EGL\n\tif (!softIspMode || softIspMode != \"gpu\")\n\t\tdebayer_ = std::make_unique<DebayerEGL>(std::move(stats), configuration);\n#endif\n\nshould do the job (not tested).\n\nIn any case, the environment variable/option should be documented in\nDocumentation/runtime_configuration.rst.\n\n> +\n> +\tif (softISPMode && !strcmp(softISPMode, \"gpu\"))\n> +\t\tdebayer_ = std::make_unique<DebayerEGL>(std::move(stats), configuration);\n> +#endif\n> +\tif (!debayer_)\n> +\t\tdebayer_ = std::make_unique<DebayerCpu>(std::move(stats), configuration);\n> +\n> +\tif (!debayer_) {\n> +\t\tLOG(SoftwareIsp, Error) << \"Failed to create Debayer object\";\n> +\t\treturn;\n> +\t}\n> +\n>  \tdebayer_->inputBufferReady.connect(this, &SoftwareIsp::inputReady);\n>  \tdebayer_->outputBufferReady.connect(this, &SoftwareIsp::outputReady);","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 0B8B2C3259\n\tfor <parsemail@patchwork.libcamera.org>;\n\tThu, 16 Oct 2025 16:08:53 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 1297D6068C;\n\tThu, 16 Oct 2025 18:08:52 +0200 (CEST)","from us-smtp-delivery-124.mimecast.com\n\t(us-smtp-delivery-124.mimecast.com [170.10.129.124])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id D1FCF605D7\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tThu, 16 Oct 2025 18:08:50 +0200 (CEST)","from mail-ej1-f72.google.com (mail-ej1-f72.google.com\n\t[209.85.218.72]) by relay.mimecast.com with ESMTP with STARTTLS\n\t(version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id\n\tus-mta-121-h90sh9v3NnKrD7qkTd9K3Q-1; Thu, 16 Oct 2025 12:08:48 -0400","by mail-ej1-f72.google.com with SMTP id\n\ta640c23a62f3a-b4544f46392so114168966b.0\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tThu, 16 Oct 2025 09:08:48 -0700 (PDT)","from mzamazal-thinkpadp1gen7.tpbc.csb\n\t(ip-77-48-47-2.net.vodafone.cz. [77.48.47.2])\n\tby smtp.gmail.com with ESMTPSA id\n\ta640c23a62f3a-b5ccd1afdb7sm544285566b.59.2025.10.16.09.08.46\n\t(version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n\tThu, 16 Oct 2025 09:08:46 -0700 (PDT)"],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (1024-bit key;\n\tunprotected) header.d=redhat.com header.i=@redhat.com\n\theader.b=\"AOPU4Czd\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;\n\ts=mimecast20190719; t=1760630929;\n\th=from:from:reply-to:subject:subject:date:date:message-id:message-id:\n\tto:to:cc:cc:mime-version:mime-version:content-type:content-type:\n\tin-reply-to:in-reply-to:references:references;\n\tbh=XN2qUt01OIdtk0oWFj7o2h3XzIvcL/ZXyk67eYDUsL8=;\n\tb=AOPU4CzdNTzJ4Y3xLLOW5qkbMvgIXubLaggnPFPgE+rSLOsTlKa7pN4yyeRCC5LCBGOAje\n\t2RlgAyT6SMN7stYVNPghUZKEF7KUnZrXpDPjFjxPWjLExG3suyktsSrb2NP2ogrgJXvmJg\n\tfztsYq7UkQ7x8KbK2otIul+ii+z1D88=","X-MC-Unique":"h90sh9v3NnKrD7qkTd9K3Q-1","X-Mimecast-MFC-AGG-ID":"h90sh9v3NnKrD7qkTd9K3Q_1760630927","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20230601; t=1760630927; x=1761235727;\n\th=mime-version:user-agent:message-id:date:references:in-reply-to\n\t:subject:cc:to:from:x-gm-message-state:from:to:cc:subject:date\n\t:message-id:reply-to;\n\tbh=XN2qUt01OIdtk0oWFj7o2h3XzIvcL/ZXyk67eYDUsL8=;\n\tb=s8KSxdUTaXmfvzXL67CTzY3DpIsQFloBRX/yye+NgrB7BZKGV8CSFL70ibko8DiMaS\n\tHgTxKg3h+iJZlZFI5oXrL7m0QIEOtOpUbA2GgqZ0bTkgFVqquQgi+t4iwPjZ7FyVynJz\n\tPwqkCy2X+bAy88kXH3cAdHHkm1IzgfMIEhnxLNfpKFQr1M8KprbCoDkrIYFJtb/2VWtK\n\t1rhSuC4J+K6/CU56tq8VZMaQ9vZjWcbkYBJrIRs35Zjf94mpax9TvHrwdTOJzaMuP7YO\n\ty5dlKkhBHpWQ7SSwK3oonD16FVfByPotIVxqsu9MXhjPjkQRGQgY/5y8+ihvNXe8+Trd\n\to5mQ==","X-Gm-Message-State":"AOJu0YwxrAnRBzH/boci0dg5Orx4QsT5hqoXNBOTVq0fXJYItpVW5wJN\n\tqyhs1nLQH5r+AL8+42F9tKwzVSvSZU3R/3AqdmKUXdNqS67aCKAtgt/vtOcfR31r7luUxgzrOxe\n\tt8rYo5Sqc51yIVE8vfntcIaTw2bjOpoLYMxRfPTOrH/bb/oIl98v8iHTMIgpkh3QAD4vByUui8l\n\t0=","X-Gm-Gg":"ASbGncsY2JMcxURTOgrysve+cgb65eRctIrTma6PSYhdfg9gsz/J8SvapzluUfG+jR3\n\t9WD/xRXOcKsTHhyyk/syzTDHWS8XbkTL020EDpHA6v3fUHtup+gq4FstVTdK0DzCJAWwbzGBbHX\n\tGhHTIDr6HGys/68f+y/aQwIBPi8S5b5daQZeSSCBS7hSS2vZE2BHWyI/j3pPC64ae3Gv2gAzEfk\n\t5fELfz/slNcVBoowAScC+/+Ff+guyBkhlg6h9OEINFn+0wOYUbPmUSbEahVjtGPiy7YGc+fZiRk\n\txmMcToC/tULVKZuvJZrA0BojT+XlrSrUqeYY6+vu5BsqagvCau1Jk9iW+Lixtd8x39ef+QBEqtf\n\tk3HGagf9mNSWFEClQW3B5zZHPwCDIYmng5lE9yo25gDcdCO7QTXg8","X-Received":["by 2002:a17:907:3e1b:b0:b3d:73e1:d809 with SMTP id\n\ta640c23a62f3a-b6475123743mr55959566b.48.1760630927262; \n\tThu, 16 Oct 2025 09:08:47 -0700 (PDT)","by 2002:a17:907:3e1b:b0:b3d:73e1:d809 with SMTP id\n\ta640c23a62f3a-b6475123743mr55955766b.48.1760630926847; \n\tThu, 16 Oct 2025 09:08:46 -0700 (PDT)"],"X-Google-Smtp-Source":"AGHT+IG3mzSruyD71ZKwL0gTAgOBgJ0aWArhxxUjMW9sjLHSsJBKazSsAGXSZRu17Io7v9vphiyGhw==","From":"Milan Zamazal <mzamazal@redhat.com>","To":"Bryan O'Donoghue <bryan.odonoghue@linaro.org>","Cc":"libcamera-devel@lists.libcamera.org,  hdegoede@redhat.com,\n\tbod.linux@nxsw.ie","Subject":"Re: [PATCH v3 34/39] libcamera: software_isp: debayer_egl: Make\n\tDebayerEGL an environment option","In-Reply-To":"<20251015012251.17508-35-bryan.odonoghue@linaro.org> (Bryan\n\tO'Donoghue's message of \"Wed, 15 Oct 2025 02:22:46 +0100\")","References":"<20251015012251.17508-1-bryan.odonoghue@linaro.org>\n\t<20251015012251.17508-35-bryan.odonoghue@linaro.org>","Date":"Thu, 16 Oct 2025 18:08:45 +0200","Message-ID":"<85o6q6bzhu.fsf@mzamazal-thinkpadp1gen7.tpbc.csb>","User-Agent":"Gnus/5.13 (Gnus v5.13)","MIME-Version":"1.0","X-Mimecast-Spam-Score":"0","X-Mimecast-MFC-PROC-ID":"p4FgczpBsihIdzBrw622Nd63m3uc9oEGDHuqOVq6Dvc_1760630927","X-Mimecast-Originator":"redhat.com","Content-Type":"text/plain","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>","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}},{"id":36324,"web_url":"https://patchwork.libcamera.org/comment/36324/","msgid":"<85bjm6byc4.fsf@mzamazal-thinkpadp1gen7.tpbc.csb>","date":"2025-10-16T16:33:47","subject":"Re: [PATCH v3 34/39] libcamera: software_isp: debayer_egl: Make\n\tDebayerEGL an environment option","submitter":{"id":177,"url":"https://patchwork.libcamera.org/api/people/177/","name":"Milan Zamazal","email":"mzamazal@redhat.com"},"content":"Milan Zamazal <mzamazal@redhat.com> writes:\n\n> Hi Bryan,\n>\n> Bryan O'Donoghue <bryan.odonoghue@linaro.org> writes:\n>\n>> If GPUISP support is available make it so an environment variable can\n>> switch it on.\n>>\n>> Given we don't have full feature parity with CPUISP just yet on pixel\n>> format output, we should default to CPUISP mode giving the user the option\n>> to switch on GPUISP by setting LIBCAMERA_SOFTISP_MODE=gpu\n>>\n>> Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>\n>> ---\n>>  src/libcamera/software_isp/software_isp.cpp | 19 ++++++++++++++++++-\n>>  1 file changed, 18 insertions(+), 1 deletion(-)\n>>\n>> diff --git a/src/libcamera/software_isp/software_isp.cpp b/src/libcamera/software_isp/software_isp.cpp\n>> index 1f984a52..869f7320 100644\n>> --- a/src/libcamera/software_isp/software_isp.cpp\n>> +++ b/src/libcamera/software_isp/software_isp.cpp\n>> @@ -15,6 +15,7 @@\n>>  \n>>  #include <libcamera/base/log.h>\n>>  #include <libcamera/base/thread.h>\n>> +#include <libcamera/base/utils.h>\n>>  \n>>  #include <libcamera/controls.h>\n>>  #include <libcamera/formats.h>\n>> @@ -25,6 +26,9 @@\n>>  #include \"libcamera/internal/software_isp/debayer_params.h\"\n>>  \n>>  #include \"debayer_cpu.h\"\n>> +#if HAVE_DEBAYER_EGL\n>> +#include \"debayer_egl.h\"\n>> +#endif\n>>  \n>>  /**\n>>   * \\file software_isp.cpp\n>> @@ -116,7 +120,20 @@ SoftwareIsp::SoftwareIsp(PipelineHandler *pipe, const CameraSensor *sensor,\n>>  \t}\n>>  \tstats->statsReady.connect(this, &SoftwareIsp::statsReady);\n>>  \n>> -\tdebayer_ = std::make_unique<DebayerCpu>(std::move(stats), configuration);\n>> +#if HAVE_DEBAYER_EGL\n>> +\tconst char *softISPMode = utils::secure_getenv(\"LIBCAMERA_SOFTISP_MODE\");\n>\n> s/softISPMode/softIspMode/ I think.\n>\n> It would be nice to have a configuration file option for this.  We\n> already have `configuration' here, so I think something like\n>\n> \tstd::optional<std::string> softIspMode = configuration.envOption(\"LIBCAMERA_SOFTISP_MODE\", { \"software_isp\", \"mode\" });\n> \tif (softIspMode) {\n> \t\tif (softIspMode != \"gpu\" && softIspMode != \"cpu\") {\n> \t\t\tLOG(SoftwareIsp, Error) << \"LIBCAMERA_SOFISP_MODE \" << softIspMode.value() << \" invalid. \"\n> \t\t\t\t\t\t<< \"must be \\\"cpu\\\" or \\\"gpu\\\"\";\n\nEither s/must/Must/, or s/invalid./invalid,/.\n\n> \t\t\treturn;\n> \t\t}\n> \t}\n>\n> #if HAVE_DEBAYER_EGL\n> \tif (!softIspMode || softIspMode != \"gpu\")\n> \t\tdebayer_ = std::make_unique<DebayerEGL>(std::move(stats), configuration);\n> #endif\n>\n> should do the job (not tested).\n\nTested now, works for me.\n\n> In any case, the environment variable/option should be documented in\n> Documentation/runtime_configuration.rst.\n>\n>> +\n>> +\tif (softISPMode && !strcmp(softISPMode, \"gpu\"))\n>> +\t\tdebayer_ = std::make_unique<DebayerEGL>(std::move(stats), configuration);\n>> +#endif\n>> +\tif (!debayer_)\n>> +\t\tdebayer_ = std::make_unique<DebayerCpu>(std::move(stats), configuration);\n>> +\n>> +\tif (!debayer_) {\n>> +\t\tLOG(SoftwareIsp, Error) << \"Failed to create Debayer object\";\n>> +\t\treturn;\n>> +\t}\n>> +\n>>  \tdebayer_->inputBufferReady.connect(this, &SoftwareIsp::inputReady);\n>>  \tdebayer_->outputBufferReady.connect(this, &SoftwareIsp::outputReady);","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 844E0C3259\n\tfor <parsemail@patchwork.libcamera.org>;\n\tThu, 16 Oct 2025 16:33:54 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 7C01B6068E;\n\tThu, 16 Oct 2025 18:33:53 +0200 (CEST)","from us-smtp-delivery-124.mimecast.com\n\t(us-smtp-delivery-124.mimecast.com [170.10.129.124])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 74B17605D7\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tThu, 16 Oct 2025 18:33:52 +0200 (CEST)","from mail-ej1-f71.google.com (mail-ej1-f71.google.com\n\t[209.85.218.71]) by relay.mimecast.com with ESMTP with STARTTLS\n\t(version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id\n\tus-mta-649-MeCrO4aNNmGmR0AwruioLg-1; Thu, 16 Oct 2025 12:33:50 -0400","by mail-ej1-f71.google.com with SMTP id\n\ta640c23a62f3a-b47cf7544e0so83948966b.1\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tThu, 16 Oct 2025 09:33:49 -0700 (PDT)","from mzamazal-thinkpadp1gen7.tpbc.csb\n\t(ip-77-48-47-2.net.vodafone.cz. [77.48.47.2])\n\tby smtp.gmail.com with ESMTPSA id\n\t4fb4d7f45d1cf-63a5c132567sm16186262a12.33.2025.10.16.09.33.47\n\t(version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n\tThu, 16 Oct 2025 09:33:47 -0700 (PDT)"],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (1024-bit key;\n\tunprotected) header.d=redhat.com header.i=@redhat.com\n\theader.b=\"b3RbHllo\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;\n\ts=mimecast20190719; t=1760632431;\n\th=from:from:reply-to:subject:subject:date:date:message-id:message-id:\n\tto:to:cc:cc:mime-version:mime-version:content-type:content-type:\n\tin-reply-to:in-reply-to:references:references;\n\tbh=Res8uJvVliyB2l66/yzJvQcsn4iw0tZVuxGO1nNYnPM=;\n\tb=b3RbHllo6LAVosb9pK7UqvzlHSj0ecDRj7sVJXmAQuu+gSZzaYQytBpFdcKNisbHerSvKz\n\tXAeiJsHbd/mFSOZEKOFt2GPdu3G8uxD/a7RVpQ+GWjnVdb9ZRxpC9Ic8syL1pBszZ5+cR0\n\tVe1zAmrgAUYVKpyrFojqxymdju5owQE=","X-MC-Unique":"MeCrO4aNNmGmR0AwruioLg-1","X-Mimecast-MFC-AGG-ID":"MeCrO4aNNmGmR0AwruioLg_1760632429","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20230601; t=1760632429; x=1761237229;\n\th=mime-version:user-agent:message-id:date:references:in-reply-to\n\t:subject:cc:to:from:x-gm-message-state:from:to:cc:subject:date\n\t:message-id:reply-to;\n\tbh=Res8uJvVliyB2l66/yzJvQcsn4iw0tZVuxGO1nNYnPM=;\n\tb=R43sr5gj/NdFekJryRK06wiERp2ROW0fAILGxsQqjmlkjlst8l9lLcj8Gf62Am+1cf\n\tj2sQAzfn8JrHNJ5sp/YC40f5+qS+qQ1QoHT6qoV55YF0m3nRaBwirJzh8fv52FbEsyBB\n\t3hH5ABhThT6+oEgjVMXRkx6S2EbBn4br2CzHPxbPXS9mRUfllRGVgk6zJN2W16voX2q1\n\tBsW/LNJbPjVsFD1fyFKTt6HGzZuw26cCHJHhR03GNg8fZzsKDZQvf/EOOAGFfR6vNgDp\n\t4CZ6hzFU8XlWS4IGTaA/k+WfxZQ02slpc6xhzVIAtIgpBdx4k5tmbpCvjBYrxbmMsFeS\n\tRsWw==","X-Gm-Message-State":"AOJu0Yxuai9kOx7rksS9wjd7Aj0Pfe/kY0gZSTV12bnaHvArLUvMH09y\n\tIGGn5lj62fALHyg5+HWeiCn1pr8GvxBZFpxMveSJcxISPPW9B98Ot8t+EALw2UKYIJFPb9G+5Y4\n\tAVzgiX8UiLxb4ZH6Ujg6Lwk6Pvpp5c+7TDwIS28xN+VN9mRXjansBBmLg2EJ3jmlQZq4pazU11p\n\tI=","X-Gm-Gg":"ASbGncviIAbcLjLqGAbBZLLM3L9Km9TDgtO4dt/bcwCYMIF+EYaO9R6WHgOC0UDhdR4\n\tYu8S+EFJsmgf2xvXA7M2zITXZegjlouNVjf1u9ngx5Cxx8YspcDeMfa0lKTU6U8l3FJp/TEmloy\n\tMmpyVGAVSGAsAdnY98SsWYFBbRqy12ny/J4LCMLR1s249facr5NRR1+X/hJXLVX3QGGntTwv4um\n\t841GbfmtI0ERyExAQw5dhDlD338hjiSgRe4NyyMYw6lN/EcyG24ma8w/Y+gp/c94Eocao9tTZ+J\n\tQCozD5Ut6TV6bWqjQ8KKChcR9H+T9AcfZo8nkRGUGd+bHcpld4RKlB3BkrHzXx3HJhwT1EfHW/V\n\tXJnom75Z2tmBFQSTR2AMERGE8M5kmMfNqi8RT4KIkHuxHeHAOgplG","X-Received":["by 2002:a17:907:1b15:b0:b48:4966:91a5 with SMTP id\n\ta640c23a62f3a-b6474439497mr76340866b.30.1760632428669; \n\tThu, 16 Oct 2025 09:33:48 -0700 (PDT)","by 2002:a17:907:1b15:b0:b48:4966:91a5 with SMTP id\n\ta640c23a62f3a-b6474439497mr76337066b.30.1760632428262; \n\tThu, 16 Oct 2025 09:33:48 -0700 (PDT)"],"X-Google-Smtp-Source":"AGHT+IGFhEaJq4EQI0b+JxpmdKcQ3oYnL/WoLAyrVUVJXfHmuIpjsDVowEcql5nwWzhEPH8JWVhY4w==","From":"Milan Zamazal <mzamazal@redhat.com>","To":"Bryan O'Donoghue <bryan.odonoghue@linaro.org>","Cc":"libcamera-devel@lists.libcamera.org,  hdegoede@redhat.com,\n\tbod.linux@nxsw.ie","Subject":"Re: [PATCH v3 34/39] libcamera: software_isp: debayer_egl: Make\n\tDebayerEGL an environment option","In-Reply-To":"<85o6q6bzhu.fsf@mzamazal-thinkpadp1gen7.tpbc.csb> (Milan\n\tZamazal's message of \"Thu, 16 Oct 2025 18:08:45 +0200\")","References":"<20251015012251.17508-1-bryan.odonoghue@linaro.org>\n\t<20251015012251.17508-35-bryan.odonoghue@linaro.org>\n\t<85o6q6bzhu.fsf@mzamazal-thinkpadp1gen7.tpbc.csb>","Date":"Thu, 16 Oct 2025 18:33:47 +0200","Message-ID":"<85bjm6byc4.fsf@mzamazal-thinkpadp1gen7.tpbc.csb>","User-Agent":"Gnus/5.13 (Gnus v5.13)","MIME-Version":"1.0","X-Mimecast-Spam-Score":"0","X-Mimecast-MFC-PROC-ID":"13flaelzw1eoKFfP0KSv_8Pq5f9jpq0zxQIY3mm6Ono_1760632429","X-Mimecast-Originator":"redhat.com","Content-Type":"text/plain","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>","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}}]