Message ID | 20251015012251.17508-36-bryan.odonoghue@linaro.org |
---|---|
State | New |
Headers | show
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 [92.243.16.209]) by patchwork.libcamera.org (Postfix) with ESMTPS id 79570C3338 for <parsemail@patchwork.libcamera.org>; Wed, 15 Oct 2025 01:23:46 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id 077D860685; Wed, 15 Oct 2025 03:23:46 +0200 (CEST) Authentication-Results: lancelot.ideasonboard.com; dkim=pass (2048-bit key; unprotected) header.d=linaro.org header.i=@linaro.org header.b="WX4v6XQe"; dkim-atps=neutral Received: from mail-ej1-x632.google.com (mail-ej1-x632.google.com [IPv6:2a00:1450:4864:20::632]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id 521CA6066B for <libcamera-devel@lists.libcamera.org>; Wed, 15 Oct 2025 03:23:31 +0200 (CEST) Received: by mail-ej1-x632.google.com with SMTP id a640c23a62f3a-b54f55a290cso845497766b.2 for <libcamera-devel@lists.libcamera.org>; Tue, 14 Oct 2025 18:23:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1760491410; x=1761096210; darn=lists.libcamera.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=jGlXm/7XgWsn9FwtAXFr/l1QF6QrEX1+nuiuAdNesgo=; b=WX4v6XQeCmI7CY5heHP43qv6gmgcXwkZatENA7d2vz8N3vMj/SJit0zLSsu+CMX3I/ 2uBu8OxtiE7edw4wgfldtUQ/u3vlVG+UoYw76Px0L0X/1001dEH97h/YlL/bc057qTWT P0A2Qzw6B6qEMDmCJsEN3wyRrAX6hC4UpYK75CwAYRNaWFIfveQd3L+hE1PUyYJT9ZT/ cztxM4G+pvCwOxRfZSvHyBLhGtS4CT7Ad0PHAxsSbi5LAmnYxFVAEqGLl9Vltl8iL/Vp Gdo58fckSNYjOKXmu+8uHGYxNvbwv+EpVzihyhqaRfNFl5uUElGXvwz2Rm1E98d1zxh4 tV5g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1760491410; x=1761096210; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=jGlXm/7XgWsn9FwtAXFr/l1QF6QrEX1+nuiuAdNesgo=; b=TjM6vC91GCPtxHOjReFQCy1jr7Pxu6varIXp0HtOhYLcYQTs3SMb1T0v99D9i7lJnm L5PhxUwq1V4qM8y78OuOYmxGfrIvq2qXsbE78p/YTioc33xHCsGSWq8u2C0sAbKS/Dqc rlytRTVvF9BCQwCA7sASnkah1B9UR2xPpNuPouTgq2RwD0KorKTpa0YELEK4pmhJ7Jvm IG4MOZ2Am2wrySlVTxbd13ICoDq8y2MIALGZb2tWCiwVF+SYl24q0ggTQDMRXNx9iLGv 214F1h8Fsuol3PHwfs4xP47O3w0B+QEli2MLvTtVHx/kcJRc0hhLCvTLsoqGz8RfkZJd JFzg== X-Gm-Message-State: AOJu0Ywp4FUoo6zfPhi+wEtdsdH0ejZ9IvBUDQIXrs8uhEHFsVP4+btS 1oc2pdvjADXEstlWLiUWh/EE/1UIZ7rGSSLx3Rbq/f3dV6xRnXO+fFsppwbVCtWb1T4Lhu1wdWE bEOeB X-Gm-Gg: ASbGnctG5XWfCDXF+AXlpthG6iFzfpmkm6LoAWtNbaT2qV7tDuLvLGikbU6fPf73lu4 t79hRtwX6BqzI9Kh7S9Xe+HmOImNFyy5fimDZpxOLjgjisfF0/vSH/st0o2CJorDhvWaGtyBIrQ syi9sLOAHUNuvjAxqNaQxMFw6LlNpzuyH1iy9ae40Jzjz3flWtv7vuBzrE6ktbuVpQDM4dpqqky QYijToi6J0BzVe+iIZw5PH6xCirxqvyh0XOCeI9HYi+hgkoC0YtBgAcVg2GGQclBRI+zrCalqI5 3TvOdLKzIoC7xADJiocbLpgtxusD8zuUsh8mFUN/L0GHDCab/Jqu7HPdy90UcUquU96NddT4+fU IvYFEdE6xvP5aUwzvXQxFsuQiVz7uvJH1MdHMTmchmLvyWlumDtOI3M6wRW7mLsdN4/1e8sQrfu F+McgtO3DFp+5QVzGUj+dVLsX2I5mdaprQdReAZvSV X-Google-Smtp-Source: AGHT+IHdeDat27yR3zphe4/V6yOpdb41J/6Ex/FZv/iL2MhCxG0ItMnBMVag3P/4R2w3XxgHcMau2Q== X-Received: by 2002:a17:907:94c3:b0:b3e:d492:d7b8 with SMTP id a640c23a62f3a-b50acc1aa45mr2470377066b.64.1760491410524; Tue, 14 Oct 2025 18:23:30 -0700 (PDT) Received: from inspiron14p-linux.nxsw.local (188-141-3-146.dynamic.upc.ie. [188.141.3.146]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-b5ccd7b202dsm98348466b.82.2025.10.14.18.23.29 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 14 Oct 2025 18:23:30 -0700 (PDT) From: Bryan O'Donoghue <bryan.odonoghue@linaro.org> To: libcamera-devel@lists.libcamera.org Cc: hdegoede@redhat.com, mzamazal@redhat.com, bryan.odonoghue@linaro.org, bod.linux@nxsw.ie Subject: [PATCH v3 35/39] libcamera: software_isp: debayer_egl: Make gpuisp default softisp mode Date: Wed, 15 Oct 2025 02:22:47 +0100 Message-ID: <20251015012251.17508-36-bryan.odonoghue@linaro.org> X-Mailer: git-send-email 2.51.0 In-Reply-To: <20251015012251.17508-1-bryan.odonoghue@linaro.org> References: <20251015012251.17508-1-bryan.odonoghue@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit 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>, <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>, <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> |
Series |
|
Related |
show
|
diff --git a/src/libcamera/software_isp/software_isp.cpp b/src/libcamera/software_isp/software_isp.cpp index 869f7320..1b4a29fd 100644 --- a/src/libcamera/software_isp/software_isp.cpp +++ b/src/libcamera/software_isp/software_isp.cpp @@ -120,10 +120,17 @@ SoftwareIsp::SoftwareIsp(PipelineHandler *pipe, const CameraSensor *sensor, } stats->statsReady.connect(this, &SoftwareIsp::statsReady); -#if HAVE_DEBAYER_EGL const char *softISPMode = utils::secure_getenv("LIBCAMERA_SOFTISP_MODE"); + if (softISPMode) { + if (strcmp(softISPMode, "gpu") && strcmp(softISPMode, "cpu")) { + LOG(SoftwareIsp, Error) << "LIBCAMERA_SOFISP_MODE " << softISPMode << " invalid. " + << "must be \"cpu\" or \"gpu\""; + return; + } + } - if (softISPMode && !strcmp(softISPMode, "gpu")) +#if HAVE_DEBAYER_EGL + if (!softISPMode || !strcmp(softISPMode, "gpu")) debayer_ = std::make_unique<DebayerEGL>(std::move(stats), configuration); #endif if (!debayer_)
In some cases the GPU can deliver 15x performance in Debayer with the CCM on, reference hardware Qualcomm RB5 with IMX512 sensor. Given this large performance difference it makes sense to make GPUISP the default for the Software ISP. If LIBCAMERA_SOFTISP_MODE is omitted gpu will be the default. If libcamera is compiled without gpuisp support, CPU Debayer will be used. It is still possible to select CPU mode with LIBCAMERA_SOFISP_MODE=cpu. Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org> --- src/libcamera/software_isp/software_isp.cpp | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-)