From patchwork Tue Dec 2 13:31:44 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bryan O'Donoghue X-Patchwork-Id: 25299 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 842B7C32F0 for ; Tue, 2 Dec 2025 13:32:28 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id 9227B60D25; Tue, 2 Dec 2025 14:32:27 +0100 (CET) Authentication-Results: lancelot.ideasonboard.com; dkim=pass (2048-bit key; unprotected) header.d=linaro.org header.i=@linaro.org header.b="qKH7tcZT"; dkim-atps=neutral Received: from mail-wr1-x42c.google.com (mail-wr1-x42c.google.com [IPv6:2a00:1450:4864:20::42c]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id 8BC1360D1A for ; Tue, 2 Dec 2025 14:32:16 +0100 (CET) Received: by mail-wr1-x42c.google.com with SMTP id ffacd0b85a97d-42b3d7c1321so3410564f8f.3 for ; Tue, 02 Dec 2025 05:32:16 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1764682336; x=1765287136; 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=Kob/ToaFoFnln8JxOvYeUhkJB1Nasllbl3ZD4CR3Ky8=; b=qKH7tcZTwS1/E40Wq67h2fjXUvXp2FlyS75cbwwt5h99YWXNS10m7vHEvZTcLG5aNb CJBPnv8mZw261kLAu/9sFUy3iib3AQ0BatIzjkbDAVUScPsYLxBzv6goZGTqTGbo/qEv GFjkxpiCqfOZ74grbBrMJtycfGZ0E76R+wlwNRtsR/uWoVD1SyAqJ3WUvNYmwJmLXS2+ tdyoMh1qHv2cEqgnzbDX/eixsxg3O4Cecxq8wOWvKMt2A7ntwV+XqALiKB2ev0Xvi9LL WW3xFXt/A7rklLYuRpWsoSBRsagk6pwj+qe5sdcQp0N5/ZaBP05yYM4pQKa11DHhoQNe 7kFQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764682336; x=1765287136; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=Kob/ToaFoFnln8JxOvYeUhkJB1Nasllbl3ZD4CR3Ky8=; b=jZWfrRj/C8KobS0XuFG1GUiZ4fKSwGQtytHt4zH2xqtcivdkLwSMWV4FOog37w5e9c Y1cmsijBDC6gqObhU20j1I3aB+Yb69Vpr+KXngo/yw0ZedzmQraqqVqroIWOZ5FsiiQY 7Pc4ClIgewHysW0VXqnBD0ICNOLXiTUhirc8uIYjTcsvejbRnwQi7KvjBvNyXsLL6JN1 SMLTapb+N0cvAzMmT8uJcbQF6Ln+OnRZ0jNmsfCUpYT5B4W61Cp6GBKlS9+Is7Ef3BJf bWjsU4N8wJv3ZKORYJ0Q6z5kaNtdKJfuMrlXWNsHwT/pcpK9BB+rgNerEwHVG9KwphLQ IgkQ== X-Gm-Message-State: AOJu0Yzl2V4jgrZ1mbIMPjRbzwgLPuHUHgrwaP4qZq3LfSZjq0amlN1V kcgbr3mjDHwmCIGZY1qHfpYCxu7rysrjiDqC42uUuQBwfTwD9hgmS/VheOxcv895ahK9m6AE12A viX4B X-Gm-Gg: ASbGncuLLhJj0zrm9QCsnFWak3f9kHNNgpakxU0mkcfaNOivHGqQed3EFY2rwfWCOWK n+d3xrWoYjov0KNAvwRSP/Zdt5Pc+0Af0ulBDmS6APppaBjPZWawZt3Ijxysuorxxf1o+szfzVI 5MEnMMRpYBJgT0JZu9Gf21QkIM5AnPm1wwQkfl3+526brlC4e1aEh2uZl2GyCCFi/oFdcImzWyp R+wJ5iB5Ze+V8HdjAt81mijByE8kl2Q5SU9cvUMsigmkxScGntECIz/dj33zXuwzxCS32vKbulb WM1I7FJZJVXLbch0YTdGNYe6xwuR74chouatSI3cbb8m6JWMa4pWdx14PxMvdX851CAQHnOJQAx qPTeSVw3GC5b/OA30CBzM4vBiF/2rJ7bZTF8VhtWEFIq1VSmUuYWidiN7nO5J1glDIRTd1aeJ1f cNojTZlxfpwXrClj+ova5XkvGwm4IqoZqc5X/UkSG9rZCbUOagtEzkkyzNn6/IhxmwRcY= X-Google-Smtp-Source: AGHT+IEHLk2xmBepjZEggwrYobPHQ0HuHjHcT+RcmpfBtnSyMJjgjg0ixmxfyMLG4dk4XHDxWSTBYA== X-Received: by 2002:a5d:588c:0:b0:427:813:6a52 with SMTP id ffacd0b85a97d-42e0f356812mr34777110f8f.41.1764682335796; Tue, 02 Dec 2025 05:32:15 -0800 (PST) Received: from inspiron14p-linux.ht.home (188-141-3-146.dynamic.upc.ie. [188.141.3.146]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-42e1c5c30c4sm33363322f8f.9.2025.12.02.05.32.15 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 02 Dec 2025 05:32:15 -0800 (PST) From: Bryan O'Donoghue To: libcamera-devel@lists.libcamera.org Cc: pavel@ucw.cz, Bryan O'Donoghue , Robert Mader , Kieran Bingham , Milan Zamazal Subject: [PATCH v3 13/22] libcamera: software_isp: Make output DMA sync contingent Date: Tue, 2 Dec 2025 13:31:44 +0000 Message-ID: <20251202133157.661407-14-bryan.odonoghue@linaro.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20251202133157.661407-1-bryan.odonoghue@linaro.org> References: <20251202133157.661407-1-bryan.odonoghue@linaro.org> 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" The DMA sync output buffer from the GPU need only have its cache invalidated if the CPU is going to modify the buffer. Right now this is not required for gpuisp so only act on the output buffer if it is non-null. Suggested-by: Robert Mader Reviewed-by: Kieran Bingham Reviewed-by: Milan Zamazal Signed-off-by: Bryan O'Donoghue --- src/libcamera/software_isp/debayer.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/libcamera/software_isp/debayer.cpp b/src/libcamera/software_isp/debayer.cpp index 544921656..158128f30 100644 --- a/src/libcamera/software_isp/debayer.cpp +++ b/src/libcamera/software_isp/debayer.cpp @@ -373,8 +373,10 @@ void Debayer::dmaSyncBegin(std::vector &dmaSyncers, FrameBuffer *inpu for (const FrameBuffer::Plane &plane : input->planes()) dmaSyncers.emplace_back(plane.fd, DmaSyncer::SyncType::Read); - for (const FrameBuffer::Plane &plane : output->planes()) - dmaSyncers.emplace_back(plane.fd, DmaSyncer::SyncType::Write); + if (output) { + for (const FrameBuffer::Plane &plane : output->planes()) + dmaSyncers.emplace_back(plane.fd, DmaSyncer::SyncType::Write); + } } } /* namespace libcamera */