| Message ID | 20260313-mali-cru-v5-0-48f93e431294@ideasonboard.com |
|---|---|
| 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 8E735BE086 for <parsemail@patchwork.libcamera.org>; Fri, 13 Mar 2026 16:14:47 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id B7D97626FF; Fri, 13 Mar 2026 17:14:46 +0100 (CET) Authentication-Results: lancelot.ideasonboard.com; dkim=pass (1024-bit key; unprotected) header.d=ideasonboard.com header.i=@ideasonboard.com header.b="OM25XFJm"; dkim-atps=neutral Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [IPv6:2001:4b98:dc2:55:216:3eff:fef7:d647]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id B9BBD6261B for <libcamera-devel@lists.libcamera.org>; Fri, 13 Mar 2026 17:14:44 +0100 (CET) Received: from [192.168.224.131] (unknown [37.159.122.93]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id 016BAE70; Fri, 13 Mar 2026 17:13:34 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1773418415; bh=pY/298FJWxwd+7TPeE8LrvUI/70Yk4w1YM2NFg5uHZs=; h=From:Subject:Date:To:Cc:From; b=OM25XFJmtp9hCWNQDaarBHt1mDwlygtzoHbulDoxIInOkm2zdUHghztsO+OCO9X0O KwEr36DWXFgrNeSzVk9dG7m6A2ODQZ7lFhBSXkeFVIqgfOO1U3CLBjOUAWVZt2BE63 7WstnVziyO40rCzqQ2Y3oEem1c7JlNne+7Y/SkaA= From: Jacopo Mondi <jacopo.mondi@ideasonboard.com> Subject: [PATCH v5 0/7] libcamera: mali-c55: Add support for memory-to-memory Date: Fri, 13 Mar 2026 17:14:34 +0100 Message-Id: <20260313-mali-cru-v5-0-48f93e431294@ideasonboard.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit X-B4-Tracking: v=1; b=H4sIAOo3tGkC/3XOTQrCMBAF4KtI1kaSSaupK+8hLvIzowFtJNGil N7dKAhZtMs3M99jRpYxBcxsvxpZwiHkEPsS2vWKuYvpz8iDL5mBgFaCaPnNXAN36ckRJJA2Vil AVs7vCSm8flXHU8mXkB8xvX/Ng/xOZ0oGyQX3WlrbEuFOmUPwaHLsbTTJb1y8sW/XAJWXovJQP MK2AemxrO2CV7XvKq+KJ+qIhGqEtt2Cb/5+K5RUlW+Kd8J31mnnNc39P03TB27545hnAQAA X-Change-ID: 20251205-mali-cru-e212f8ab332e To: Daniel Scally <dan.scally@ideasonboard.com>, libcamera-devel@lists.libcamera.org Cc: Jacopo Mondi <jacopo.mondi@ideasonboard.com>, =?utf-8?b?QmFybmFiw6Fz?= =?utf-8?q?_P=C5=91cze?= <barnabas.pocze@ideasonboard.com> X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=openpgp-sha256; l=2442; i=jacopo.mondi@ideasonboard.com; h=from:subject:message-id; bh=pY/298FJWxwd+7TPeE8LrvUI/70Yk4w1YM2NFg5uHZs=; b=owEBbQKS/ZANAwAKAXI0Bo8WoVY8AcsmYgBptDfy2MwjnzZfIykZj1A4JveIup4wegyBB/yra 5wl3TeF9WyJAjMEAAEKAB0WIQS1xD1IgJogio9YOMByNAaPFqFWPAUCabQ38gAKCRByNAaPFqFW PD7READEEUwbt68IhDQiQs9xBY05hKRHgOfo5oSDFQHbGAo5DY7TKer0jdf/SUH3Muia3pss6EI m6RrIokeuTAGjyd9+a6eqzRVoZztHk3oxE4Ev01soaB4+5FOx1yvbTrjhN4OOOlakxO6N5OyK/3 vVD3tyfx3eJ0pqEU7N5U17k8eKql3XeXn2rKNGP3mLcTXMrqXlpSuz257kLwtDb5Nl6gNAIeQgB mx+mLoxPxqdn7opS2Aq0ZrEZSXr/YFzuBQ3PWhYJqJb310mY4zU5Cnjt+XE4Wyz3PIeU3MH7o4j QGdyJBAFK5812A/XwHuOtsHezJsQFr1AWlWFuCda5jaJUvIJ1DBoCpALX8mg4vewddIBl0mgXsl W9j3KufXAfTL1mJIDrMw94iWM8PZMc/AJqpbdJSmwTg2wvqxpaqDpRotgeQuzHOGnjOd+Gn1HrN lCf7aihtPtYrgA1juIbbzoZ4tn1hrQ8Co5TtRDYkdqkJPSe6HWehy59f9ktuKVswG775s/pGUiK P5dcZsrRYA4fv5J2uPSsaBehUyEi+QBRFxuVeJ0gKSHm/+X+PsFarr7pkrwfulf4NIFXmegXBzm gXYaYMCknBMPF7WJKvRWSBUiC8RCcUK4VTDlGx+FsS6ZV0ew4/aalA1l+WSq7wxZ09pEgSjvvs7 gIaSiM4RyhiMEtg== X-Developer-Key: i=jacopo.mondi@ideasonboard.com; a=openpgp; fpr=72392EDC88144A65C701EA9BA5826A2587AD026B 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
|
Add support for m2m camera operations in the mali-c55 pipeline handler. The series targets SoCs like the Renesas RZ/V2H(P) one where the Mali-C55 ISP is integrated in m2m mode. The CSI-2 receiver (CRU) saves images to memory and the ISP is fed through a dedicated DMA engine that provides memory interfacing capabilities. The series starts by adding support for the RZG2LCRU class (named after the media device name) and then plumbs memory-to-memory operations in the pipeline handler. Tested on RZ/V2H(P) EVK with imx708 camera sensor. Dan, could you re-test with Inline mode please ? I should have collected your fix that restored proper operations with Inline. Signed-off-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com> --- Changes in v5: - Use overloaded std::visit when possible - Adjust indentation Changes in v4: - Move the overloaded visitor helper to utils.h Changes in v3: - Drop dynamic polymorphism and use overloaded visitor in MaliC55CameraData. The result is neater in my opinion. - Address Barnabas' comments I missed in v2 Changes in v2: - Almost a complete rework of the CameraData which is now a class hierarchy. I'm not sure the result is that much cleaner, but hey, I'm using templates and pattern with weird names, so it ought be better for sure --- Daniel Scally (3): libcamera: mali-c55: Add RZG2LCRU class libcamera: mali-c55: Register memory input camera libcamera: mali-c55: Implement capture for memory-to-memory Jacopo Mondi (4): libcamera: utils: Add overloaded visitor helpers libcamera: mali-c55: Split TPG and Inline camera handling libcamera: mali-c55: Configure camera in memory-to-memory libcamera: mali-c55: Fix sensor size computation include/libcamera/base/utils.h | 7 + src/libcamera/base/utils.cpp | 35 ++ src/libcamera/pipeline/mali-c55/mali-c55.cpp | 623 ++++++++++++++++++++------ src/libcamera/pipeline/mali-c55/meson.build | 3 +- src/libcamera/pipeline/mali-c55/rzg2l-cru.cpp | 260 +++++++++++ src/libcamera/pipeline/mali-c55/rzg2l-cru.h | 73 +++ src/libcamera/pipeline/virtual/virtual.cpp | 10 +- 7 files changed, 867 insertions(+), 144 deletions(-) --- base-commit: 02277d4c1a5ae7fee582f635936877435a12db64 change-id: 20251205-mali-cru-e212f8ab332e Best regards,