From patchwork Thu Nov 27 02:22:45 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: 25227 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 DE587C32DE for ; Thu, 27 Nov 2025 02:23:35 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id 787E260AB8; Thu, 27 Nov 2025 03:23:35 +0100 (CET) Authentication-Results: lancelot.ideasonboard.com; dkim=pass (2048-bit key; unprotected) header.d=linaro.org header.i=@linaro.org header.b="aYOMmWPj"; dkim-atps=neutral Received: from mail-wm1-x333.google.com (mail-wm1-x333.google.com [IPv6:2a00:1450:4864:20::333]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id 95746609E0 for ; Thu, 27 Nov 2025 03:23:33 +0100 (CET) Received: by mail-wm1-x333.google.com with SMTP id 5b1f17b1804b1-477a219dbcaso2549635e9.3 for ; Wed, 26 Nov 2025 18:23:33 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1764210213; x=1764815013; 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=nJt84EldY/UglCQL1W1m2dIaAxw2bYU8OhkHNUoIlY0=; b=aYOMmWPjpFQFY/bbvfR8oVCsV408MCM1vdXs0tcaI0CZ81ulxMvG/RDtckZXm6wU1E WBvqwODAVPCx/XNulbQriYkOYFN1BWbwX3ZxcJd05EROF2WaJLVt9MYlwLmOyq56XybW e17lutM66yTQpSd4dGTEeOJW8k6m7Dz2evRstUDNgZm2CykPT+QDp4SHnXDFxplSW3tp BY5eNfztGShNZ75Za6OM0ZD9cyWZ+KZ7wQuu1CCYZP5PWW1CCvxb8kG0VNzZyidLcreO 1gBSvbuvc08jnK2aGXe6oEBnXDIZtTg1AJU2WveEGmh0KfoeK7az7pqoC0c3og9xj7mW bArg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764210213; x=1764815013; 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=nJt84EldY/UglCQL1W1m2dIaAxw2bYU8OhkHNUoIlY0=; b=Y5AL6fuCIg2WDu0lYBAXXOqXVZoPGOEwXqBx4qlIZZtRoX5rcBGW11or8yQ7Z7rug2 kZNYOAYPETDFc+hHsbuzWXkHUv4QmHSf/DEdUv3JLOEoC9g/7AehZ4pDQ1UYbA/gCDb0 /lUfGgaQek+JNNV/6l+gMVpyY/vdk70wpcpDkBWdsHGqWurxLNKFfws6dol45GmbWEBI m7DPpnbnqbuZodSaEvxIuM/37NwTaQ2iPD9glvl63jnXs/+jBO5NhIz3RoPTPI3SA6XL p4rz637auMTFRBPFv7FgeEM1TzmBpoE34tR+o28RyJU6AGgrarMpCl5BYPOEevXdQy1H j/Rg== X-Gm-Message-State: AOJu0YxlxirZpFnazSKJSFBaSvIZxQf4LDunEN3eYBXIdLgLJg7nbRfi JZhY04TsjQi340Ha+Nlh49AxHrl2ZNUpWksBCqKLD7tf0qvgZpyX/KwvdGQcS8TCIbEeF3UuiCb 2A8Nsnyk= X-Gm-Gg: ASbGncso30sSZx1+pcDo+PV/pIjljQ3xftaLP1D5FwCYzzDOxmv+YRy2R5BpxETkKBp k0FsTxIO/O08LpcfgTw05rqsPf3Q6+MtxLyoofpvPQnMfQdTyH5LUWEnjS1uBLmQH6P7E/4+5lJ TRFSot8Ti+kQcuSPt9GTsIXgJ2F3S2zMlNe9M9icFs55VVeOgzuaaaX59CnjG4GbPcOgb566kJ8 w0mpU1x9Ynt60camrQauQLVSUStrr/87KcdLdRra3RxfhtmeIYRxIWvd7JGWn9a3TInbk/moEeV rod1B96XcRJYgrnfmvlhuJ0mf1cqvjfARqIWxAAqJdPntSdd4F6QkqCt++JlGVB8cma1pGcdAdI hO+yt/CNb+vdX3Z8z7ZMTVk+3Us7I8Vzvb8oQVMuW7dUYlCOBYwiRi2calQ1KlOHEcujSX7Q2ww 1fk+KY8hNjisQvS/FdKaLxmEVrc1EbfN5060PnT0u5a2Ev5Zxm8b7sY0rkmSIANippLUM= X-Google-Smtp-Source: AGHT+IElLYWnFlCgIxzJ2WoVQbAGqyXQi48Ct4FYTWjmDHdZOg06nVgE1hHY0vX/ZAKm03gmVS7HRw== X-Received: by 2002:a05:600c:3b09:b0:471:13fa:1b84 with SMTP id 5b1f17b1804b1-477c0185bc8mr249147045e9.12.1764210212913; Wed, 26 Nov 2025 18:23:32 -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 5b1f17b1804b1-4790b0e21e8sm71549495e9.15.2025.11.26.18.23.30 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 26 Nov 2025 18:23:31 -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 v2 13/22] libcamera: software_isp: Make output DMA sync contingent Date: Thu, 27 Nov 2025 02:22:45 +0000 Message-ID: <20251127022256.178929-14-bryan.odonoghue@linaro.org> X-Mailer: git-send-email 2.51.2 In-Reply-To: <20251127022256.178929-1-bryan.odonoghue@linaro.org> References: <20251127022256.178929-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 */