From patchwork Tue Aug 18 14:05:42 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Hans de Goede X-Patchwork-Id: 27839 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 D8822C3333 for ; Tue, 18 Aug 2026 14:06:02 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id F140E682F2; Tue, 18 Aug 2026 16:05:59 +0200 (CEST) Authentication-Results: lancelot.ideasonboard.com; dkim=pass (2048-bit key; unprotected) header.d=qualcomm.com header.i=@qualcomm.com header.b="YSGjx/KU"; dkim=pass (2048-bit key; unprotected) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="f131TfFJ"; dkim-atps=neutral Received: from mx0a-0031df01.pphosted.com (mx0a-0031df01.pphosted.com [205.220.168.131]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id D96CF682DF for ; Tue, 18 Aug 2026 16:05:55 +0200 (CEST) Received: from pps.filterd (m0279863.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 67IE0nqC1502806 for ; Tue, 18 Aug 2026 14:05:54 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= oVec6ekxoaI51J5kCpx3d59duRT6/16r0AqO/O3nL7Y=; b=YSGjx/KU/mDHRu79 nbOGzgly27mmQLJzW/jX3tstR7M+7IYkB6UNKtFtjXE0aw1uFsMpyTgzDRAKS6zS n5AgpVSC7hHAj7as0ayLIWjKacWAVpuPNR9P1oNsqcDskDBI8S+P36Wq64RJ2/z/ rGQkweO2LBiVrw95Zxec4QzAQzHoN6usN6UIQEVWvyh4S+mME0n3g4j+phvIEOEI zmmsNBSIqMEUWM2lZivGVQ5Jfdm4RQGxbTXvr/q9FyG0e+8Ue12koYh+PbwKAOxb Tr91q35EGxBg/kAks78a2v5dLnHzFNjV/xqREgPONc9EIHNqqssCgW4jagGBQl2t VfW5/A== Received: from mail-qk1-f200.google.com (mail-qk1-f200.google.com [209.85.222.200]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4g4prn0kb2-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Tue, 18 Aug 2026 14:05:53 +0000 (GMT) Received: by mail-qk1-f200.google.com with SMTP id af79cd13be357-936aa34873bso426634085a.3 for ; Tue, 18 Aug 2026 07:05:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1787061953; x=1787666753; darn=lists.libcamera.org; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:from:to:cc:subject :date:message-id:reply-to:content-type; bh=oVec6ekxoaI51J5kCpx3d59duRT6/16r0AqO/O3nL7Y=; b=f131TfFJ3ENFOHYVtzSSN9avXTNHi02IaIkLLa5AETmy7TxLFbbge+OHawlZ/bR/5Z tLhpOLvsZb9dx3MGAMylMi8HxB5r/othD1bo/k9vWHcY1dKhwtMXRsSIOpeXtc4dP7O6 cfl6A8YFn830cG8cMIrKomTNg2Ukp4jlZEllmhKe/GVebb29iLIrnq/W0ejZCRBwXO2y aM/UMH7sz7ftqX2csmqEyDMgu/1rAyW0siLekfGwn8eXC8SlfvSPQG1Sz6Dz5/Uupvuz yHLxn91xxMPu/jaJrN/aRUoQ2B9oA0dWAlrfoX0p8ASbzgvCjpJMjdK6SMmSHi6lcUKf RvJQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1787061953; x=1787666753; h=content-transfer-encoding:content-type: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 :content-type; bh=oVec6ekxoaI51J5kCpx3d59duRT6/16r0AqO/O3nL7Y=; b=P7p3Ta+jTDktPY2yP/t8rx0m8PciaFDNaQUbrVy3GkIq6TiS9ZicBVa2Va3kb7VU/L 8HHRrzEm1ekkIbof1Le4J+L+VrcqMCB540buOdMxHtdcn7elpIxV80FLmF5cIqaSM9WR qSv91FVaSpZZLc0nGyfo8/t7pHVSjs8JX9xCy7XMfa/VMpXZjInKOAN4hZ3sBXqQuBJA rJHafOGFTBxe6pG7QUUkBDDyqdeC73w9OvE3CwEqzoYeCjLcHL4eKu4AJ5Bmy3/YGTQb UBsP4VXIAn+IOrkZnpyM4GKE+xc0hBbivc54gDD7kBID0D1UesA23tDAzSy29hnMzZyu WpZA== X-Gm-Message-State: AOJu0YwchsCTmX7dpmQ8te9WrkDFDY9HU8crSY+4h9qu8RNVDz71EAwm do8BiIGvOkoV4M6n9anQPWnBmM1xuVIs+wnIFHKfY5lVeHQvY7G2BBDGx0UWdgNJAZNfjY52XKF LkCsAMi4DSES/IQpoF666W/D1N/aFDqv09IM6vQSJB5+SVS3J9IWO2TMI5lFdpA4WAKQc4BFyk6 uWMheTPfpN X-Gm-Gg: AR+sD13BZVAckursgdWS4VZuv5YeoiW81dMv2Jwllf86Br2w7iM5/fOtYtG8hlKdaC+ LiGMu3P4joQ4dk67aSW7eP9yFMkoKKnQoCP7kuf/qirQA7oHAAOK13LULnTJinuebLPvm85RL4x 74Rt6YA/s8/oneTEFNhNHy6rY0A6iOCc2xbqJFYn55Wdn1Dn2AEvJYBBNj1NNH0xn1jhJ2tAD1o yXOge5BklUBP+zKiaKvuyP9yQrJL5MorqG+YzbA86Pty+UDWhYyNpZmoOhrSIJUvVWi87YsKwNZ iU/QNbRgIbQvO2AaLL11q1uIMauvBkcStTcGh/hY6VK18YX8wXsmcRxWc/iknE6uq9SMI+6MUNs WEBcYiSgBBEijklOw+Xdr4EZ050h/pZyKuDx7eyEo3C/zZHYw3AjGnRpzmx8nWmuYGfF+YOqrg8 mMCEcJBvKpApWy7/8= X-Received: by 2002:a05:620a:22e9:b0:92e:6637:d98 with SMTP id af79cd13be357-936d2286961mr2691958485a.18.1787061952905; Tue, 18 Aug 2026 07:05:52 -0700 (PDT) X-Received: by 2002:a05:620a:22e9:b0:92e:6637:d98 with SMTP id af79cd13be357-936d2286961mr2691947585a.18.1787061952396; Tue, 18 Aug 2026 07:05:52 -0700 (PDT) Received: from shalem (2001-1c00-0c32-7800-5bfa-a036-83f0-f9ec.cable.dynamic.v6.ziggo.nl. [2001:1c00:c32:7800:5bfa:a036:83f0:f9ec]) by smtp.gmail.com with ESMTPSA id 4fb4d7f45d1cf-6a3d85a30b7sm1874967a12.30.2026.08.18.07.05.51 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 18 Aug 2026 07:05:51 -0700 (PDT) From: Hans de Goede To: libcamera-devel@lists.libcamera.org Cc: Jacopo Mondi , =?utf-8?q?Niklas_S=C3=B6?= =?utf-8?q?derlund?= , Loic Poulain , Hans de Goede , =?utf-8?q?Barnab=C3=A1s_P=C5=91cze?= , Kieran Bingham Subject: [PATCH v9 2/8] ipa: ipa_module: Remove pipelineName Date: Tue, 18 Aug 2026 16:05:42 +0200 Message-ID: <20260818140548.179663-3-johannes.goede@oss.qualcomm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20260818140548.179663-1-johannes.goede@oss.qualcomm.com> References: <20260818140548.179663-1-johannes.goede@oss.qualcomm.com> MIME-Version: 1.0 X-Proofpoint-Spam-Info: AW1haW4tMjYwODE4MDEwMyBTYWx0ZWRfX35fFGaGh3Tw7 /xViMFK4k30oompDkN1m2jL5zgs/Rs+L5qCgj08pD3uRG5pimTXQ4VAsMM4qcUdpEv4pKlJh5eb 7KeulSJsPn9FYnttMA+e2IUMiFS7k9Q= X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwODE4MDEwMyBTYWx0ZWRfXyUzeQLb1oCBB 9YQD2faQcxfXcfkW+i3f9LLP0bZU4tBrdcz5S0qOzKovEhh+uqMmcaXworakfzYYXewTiRYIBa/ MVkePlBEwsN48COG+jhM59nSSCiTM2OUR+a/j1GN3T9F6vj5W0FhKebjoU0n6cbeZH03+rJeeBI +tQ/+6hkmLVr7dlixDhUQwFv6OfMWZLuSFmSgdg6mr8nSDcQY9hqvxxaHCh1an2JkxEyrxqF2B0 PTKZlTuO+m7Y4rB3cq6agE07RWYTmMI7QSUaYH0Mz5ygtXoZCtdvBx0vUcZknAok1tXtg3wXa6N nTQZnep2d6cDgMYBFX0/UVk6kOCjwakqN27LyhONkSuGD3xI/V11MAeTiv3DwllznVbgki7FF5P SgoeQ06K1/oi79uZiY5S1YLFakcn2m3jgGkDJrXm4NC52TfxZ3lNXcQyYb9LQXLiElX9KL1TJCt 6St8QaiAcoui4mB9cJQ== X-Proofpoint-ORIG-GUID: LcwtMTcWWWehHtcxyF3eLX_p5Nq3_u94 X-Authority-Analysis: v=2.4 cv=HNrz0Itv c=1 sm=1 tr=0 ts=6a8466c1 cx=c_pps a=hnmNkyzTK/kJ09Xio7VxxA==:117 a=xqWC_Br6kY4A:10 a=IkcTkHD0fZMA:10 a=Sv0fKeRqtYgA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=yOCtJkima9RkubShWh1s:22 a=P1BnusSwAAAA:8 a=EUspDBNiAAAA:8 a=lvZftHTMWe99GEGio_gA:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 a=PEH46H7Ffwr30OY-TuGO:22 a=D0XLA9XvdZm18NrgonBM:22 X-Proofpoint-GUID: LcwtMTcWWWehHtcxyF3eLX_p5Nq3_u94 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293, Aquarius:18.0.1176, Hydra:6.1.134, FMLib:17.12.100.49 definitions=2026-08-18_02,2026-08-18_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 lowpriorityscore=0 clxscore=1015 adultscore=0 malwarescore=0 phishscore=0 spamscore=0 bulkscore=0 priorityscore=1501 impostorscore=0 suspectscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2606150000 definitions=main-2608180103 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" From: Jacopo Mondi All the IPA modules declare a pipelineName that is identical to their name. As we now support creating IPAs by name (either explicitly provided by the pipeline handlers or by using the pipeline name), the duplicated information in IPAModuleInfo is redundant. Remove it. Reviewed-by: Barnabás Pőcze Reviewed-by: Kieran Bingham Reviewed-by: Hans de Goede Tested-by: Niklas Söderlund Signed-off-by: Jacopo Mondi Signed-off-by: Hans de Goede --- include/libcamera/ipa/ipa_module_info.h | 1 - src/ipa/ipu3/ipu3.cpp | 1 - src/ipa/mali-c55/mali-c55.cpp | 1 - src/ipa/rkisp1/rkisp1.cpp | 1 - src/ipa/rpi/pisp/pisp.cpp | 1 - src/ipa/rpi/vc4/vc4.cpp | 1 - src/ipa/simple/soft_simple.cpp | 1 - src/ipa/vimc/vimc.cpp | 1 - src/libcamera/ipa_module.cpp | 15 ++++++--------- test/ipa/ipa_module_test.cpp | 3 --- 10 files changed, 6 insertions(+), 20 deletions(-) diff --git a/include/libcamera/ipa/ipa_module_info.h b/include/libcamera/ipa/ipa_module_info.h index 3507a6d76..436ec82d7 100644 --- a/include/libcamera/ipa/ipa_module_info.h +++ b/include/libcamera/ipa/ipa_module_info.h @@ -16,7 +16,6 @@ namespace libcamera { struct IPAModuleInfo { int moduleAPIVersion; uint32_t pipelineVersion; - char pipelineName[256]; char name[256]; } __attribute__((packed)); diff --git a/src/ipa/ipu3/ipu3.cpp b/src/ipa/ipu3/ipu3.cpp index 4bdc4b767..42d475ecc 100644 --- a/src/ipa/ipu3/ipu3.cpp +++ b/src/ipa/ipu3/ipu3.cpp @@ -672,7 +672,6 @@ const struct IPAModuleInfo ipaModuleInfo = { IPA_MODULE_API_VERSION, 1, "ipu3", - "ipu3", }; /** diff --git a/src/ipa/mali-c55/mali-c55.cpp b/src/ipa/mali-c55/mali-c55.cpp index da0dbe4b3..37350eb28 100644 --- a/src/ipa/mali-c55/mali-c55.cpp +++ b/src/ipa/mali-c55/mali-c55.cpp @@ -382,7 +382,6 @@ const struct IPAModuleInfo ipaModuleInfo = { IPA_MODULE_API_VERSION, 1, "mali-c55", - "mali-c55", }; IPAInterface *ipaCreate() diff --git a/src/ipa/rkisp1/rkisp1.cpp b/src/ipa/rkisp1/rkisp1.cpp index 58ef163d8..e0dde542c 100644 --- a/src/ipa/rkisp1/rkisp1.cpp +++ b/src/ipa/rkisp1/rkisp1.cpp @@ -481,7 +481,6 @@ const struct IPAModuleInfo ipaModuleInfo = { IPA_MODULE_API_VERSION, 1, "rkisp1", - "rkisp1", }; IPAInterface *ipaCreate() diff --git a/src/ipa/rpi/pisp/pisp.cpp b/src/ipa/rpi/pisp/pisp.cpp index fd28fc385..88deccfd1 100644 --- a/src/ipa/rpi/pisp/pisp.cpp +++ b/src/ipa/rpi/pisp/pisp.cpp @@ -1147,7 +1147,6 @@ const IPAModuleInfo ipaModuleInfo = { IPA_MODULE_API_VERSION, 1, "rpi/pisp", - "rpi/pisp", }; IPAInterface *ipaCreate() diff --git a/src/ipa/rpi/vc4/vc4.cpp b/src/ipa/rpi/vc4/vc4.cpp index b6ca44e7a..f30eee7ff 100644 --- a/src/ipa/rpi/vc4/vc4.cpp +++ b/src/ipa/rpi/vc4/vc4.cpp @@ -633,7 +633,6 @@ const struct IPAModuleInfo ipaModuleInfo = { IPA_MODULE_API_VERSION, 1, "rpi/vc4", - "rpi/vc4", }; IPAInterface *ipaCreate() diff --git a/src/ipa/simple/soft_simple.cpp b/src/ipa/simple/soft_simple.cpp index 629e1a32d..d4ab91e30 100644 --- a/src/ipa/simple/soft_simple.cpp +++ b/src/ipa/simple/soft_simple.cpp @@ -343,7 +343,6 @@ const struct IPAModuleInfo ipaModuleInfo = { IPA_MODULE_API_VERSION, 0, "simple", - "simple", }; IPAInterface *ipaCreate() diff --git a/src/ipa/vimc/vimc.cpp b/src/ipa/vimc/vimc.cpp index 4162b848f..bae48ea90 100644 --- a/src/ipa/vimc/vimc.cpp +++ b/src/ipa/vimc/vimc.cpp @@ -183,7 +183,6 @@ const struct IPAModuleInfo ipaModuleInfo = { IPA_MODULE_API_VERSION, 0, "vimc", - "vimc", }; IPAInterface *ipaCreate() diff --git a/src/libcamera/ipa_module.cpp b/src/libcamera/ipa_module.cpp index b7d770444..264bb1f2d 100644 --- a/src/libcamera/ipa_module.cpp +++ b/src/libcamera/ipa_module.cpp @@ -213,18 +213,15 @@ Span elfLoadSymbol(Span elf, const char *symbol) * \var IPAModuleInfo::pipelineVersion * \brief The pipeline handler version that the IPA module is for * - * \var IPAModuleInfo::pipelineName - * \brief The name of the pipeline handler that the IPA module is for - * - * This name is used to match a pipeline handler with the module. - * * \var IPAModuleInfo::name * \brief The name of the IPA module * - * The name may be used to build file system paths to IPA-specific resources. - * It shall only contain printable characters, and may not contain '*', '?' or - * '\'. For IPA modules included in libcamera, it shall match the directory of - * the IPA module in the source tree. + * This name is used to match the IPA module. + * + * The name may also be used to build file system paths to IPA-specific + * resources. It shall only contain printable characters, and may not contain + * '*', '?' or '\'. For IPA modules included in libcamera, it shall match the + * directory of the IPA module in the source tree. * * \todo Allow user to choose to isolate open source IPAs */ diff --git a/test/ipa/ipa_module_test.cpp b/test/ipa/ipa_module_test.cpp index 1c97da324..af71c3285 100644 --- a/test/ipa/ipa_module_test.cpp +++ b/test/ipa/ipa_module_test.cpp @@ -37,12 +37,10 @@ protected: cerr << "IPA module information mismatch: expected:" << endl << "moduleAPIVersion = " << testInfo.moduleAPIVersion << endl << "pipelineVersion = " << testInfo.pipelineVersion << endl - << "pipelineName = " << testInfo.pipelineName << endl << "name = " << testInfo.name << "got: " << endl << "moduleAPIVersion = " << info.moduleAPIVersion << endl << "pipelineVersion = " << info.pipelineVersion << endl - << "pipelineName = " << info.pipelineName << endl << "name = " << info.name << endl; } @@ -58,7 +56,6 @@ protected: IPA_MODULE_API_VERSION, 0, "vimc", - "vimc", }; count += runTest("src/ipa/vimc/ipa_vimc.so", testInfo);