From patchwork Thu Dec 11 23:22:38 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: 25507 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 6A3DDC3257 for ; Thu, 11 Dec 2025 23:23:59 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id 1F6126167F; Fri, 12 Dec 2025 00:23:59 +0100 (CET) Authentication-Results: lancelot.ideasonboard.com; dkim=pass (2048-bit key; unprotected) header.d=linaro.org header.i=@linaro.org header.b="Kxj5/KAU"; dkim-atps=neutral Received: from mail-pf1-x42e.google.com (mail-pf1-x42e.google.com [IPv6:2607:f8b0:4864:20::42e]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id 947336161F for ; Fri, 12 Dec 2025 00:23:57 +0100 (CET) Received: by mail-pf1-x42e.google.com with SMTP id d2e1a72fcca58-7b75e366866so307277b3a.2 for ; Thu, 11 Dec 2025 15:23:57 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1765495436; x=1766100236; 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=Kxj5/KAUauQQa79W8UDzHdA0G9tcvmBOM/2ZKp/L2+XEh1jEGQ1F+snbXyiB69glTY wrIJygPGA2eJq2m3OI9GoFNPghlWAxdAvIr5owQvZGCILEMK3ZR7lNeZUHQmNFlH16Rh VsxrfdTDIMonJIMrPnKV9wqJcv2xGsf8EgJAqJTFWVenz9/e+qaJipYFS0NcDPDV32PM mA5FygV+nwF4GLviguEJylfIG87PpZqOYppHL1/67rRaK75841zxmNmxgH88maTM4+pg iE7FvGAAwfiLqQn0ANzqqGJ+I1yg8OYQTe5dF9377TQj6W/EacYpP1ocWxl9ljp9dot8 ZOvw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1765495436; x=1766100236; 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=S9df/NSldcfNEtCUiMONzL3T7RewM0VwBvseBcp49LxZeCVdDEvWuk0xeEOvmyP5YL ml6JcEcbNfaHlUtKXVwlUnl/XjpogYMXL+kDMNnUwJEh0GbSjtg6oEUUuKgX/CWQqz+O ks+3qwHR4V4ZMqRmg8sdC+6DvEJANurVW2TFfUGTXOtJ9dlTKXd4gnSEcH/1t5DS3nMi Pe/3B51/k1oYI+9tNlow+UAF9YePcFkX9Apq8m5412jfjhbz0VZYE3GicEkzpM8ChjGR JlBPJzKZHYoE0WiRuqMUhlXCe/aH5+4kCyEx/pn09mog8oCfAGUpO5XcPiwyWRBrk0hX oreQ== X-Gm-Message-State: AOJu0YzoCX2aWMUI48s3FqFAiDV6NlQrFlZUgnelASIktWNgGFIQeCNW pnfqs/Ze3gtB0zy/ShXh7gZ8hB5vHtj+T2GdHU0fxyNfuusiC7HtpuckWuHWy2Kc9LSEeJ6pquK qQhGE X-Gm-Gg: AY/fxX76zPcr5LWrdEeDz1GLofi9SB58EBs3qJYUavYzMqHMJLmf8FtO5lzU9x3Ig8F rk3VeE+mS5BUnFkKCyOti3jEGeenI/VLRSNwzE1AxOWP9/9ERS/7fxB0IwtVSb+whAb+Qwm+04V NH6hX57HWi0ccuEYK1D2WiGtcMyq3h0C/AExmT1HykLFkT7JrgW+SuLdMm9KSdrd2Lv9hlYRA/J 8r3dDmcqZwWXk3dVpoAGKt76Bl+OSH0WktI9ZFOubk7T/qftd4ASm52qcvumakjmsiVoW+WxoRb 4md5pijIF8f7neNGGSVoY4CKZ7B1fCFCXUmDi9kKBwZf4qQt5Nk8x2DQWadLXljVTS8gk7x8nBW Hr2uLBFDx0bD7A30RsDNTqJMWVJaxN8ejFmLI/WkRD1oYVC6OuE1vdJ4LCiWalJN1cl86Ipcwx4 Dq6tu9G/eopK5p1iqo+BEJ/gmkLrfiADpbP7/6xE89JspPc3ObsgXfQj/vHFk88g== X-Google-Smtp-Source: AGHT+IHXz7vuiSrRIIvh5j+XYczkt99ttvYM0FytZpzHWXsuIKX/+6mUc14tZuoTOQFQxDbzH3LCww== X-Received: by 2002:a05:6a00:299b:b0:7e8:43f5:bd47 with SMTP id d2e1a72fcca58-7f669799514mr167517b3a.51.1765495435929; Thu, 11 Dec 2025 15:23:55 -0800 (PST) Received: from inspiron14p-linux (M106185144161.v4.enabler.ne.jp. [106.185.144.161]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-7f4c4ab52aasm3399933b3a.38.2025.12.11.15.23.53 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 11 Dec 2025 15:23:55 -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 v5 13/20] libcamera: software_isp: Make output DMA sync contingent Date: Thu, 11 Dec 2025 23:22:38 +0000 Message-ID: <20251211232246.31330-14-bryan.odonoghue@linaro.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20251211232246.31330-1-bryan.odonoghue@linaro.org> References: <20251211232246.31330-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 */