From patchwork Wed Aug 12 18:50:49 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: 27766 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 DDB64C3264 for ; Wed, 12 Aug 2026 18:51:07 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id 8A68B682D7; Wed, 12 Aug 2026 20:51:07 +0200 (CEST) Authentication-Results: lancelot.ideasonboard.com; dkim=pass (2048-bit key; unprotected) header.d=qualcomm.com header.i=@qualcomm.com header.b="mPzNReDc"; dkim=pass (2048-bit key; unprotected) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="WoHO2hdo"; dkim-atps=neutral Received: from mx0b-0031df01.pphosted.com (mx0b-0031df01.pphosted.com [205.220.180.131]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id 4D83F682D3 for ; Wed, 12 Aug 2026 20:51:06 +0200 (CEST) Received: from pps.filterd (m0279873.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 67CI8jxI355315 for ; Wed, 12 Aug 2026 18:51:05 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= XF4Z5r1ndQnMtmFBq1N2e98ElZtjBKzKDKMicoKapmU=; b=mPzNReDcMFTrypXy SWAsqkuBgrKEzou0AoL9QgKhlhmDN9u4z4LtFQSGve3+qsndrLYYbZM0eT9QL9IY Tr3Yq19n61VMc/hlal4I31y77lsO3Mp8HubkmDhUUw0L+e2tguIscPw2TgVyYwcr EV+Lyz4YcAZL6r234KVFYcUFO1aVhLdPEdivO/LcW7ecQ/+vAUcJiDGrxWCsa5Qy J/G8sNtR3kFAOPqhKWVYXKWn2Z0hCALfXzTKOgohTQSDV2myj8L/oWpyOYQIwSrj 0xl01toE9ee9jJaevk8qZtDMhgYgIqdS2rmdopolprkxbc8bqIplPP800BP4nrsP DQX36w== Received: from mail-qt1-f199.google.com (mail-qt1-f199.google.com [209.85.160.199]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4g0hj2ur40-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 12 Aug 2026 18:51:04 +0000 (GMT) Received: by mail-qt1-f199.google.com with SMTP id d75a77b69052e-51c0199faafso11953781cf.3 for ; Wed, 12 Aug 2026 11:51:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1786560664; x=1787165464; 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=XF4Z5r1ndQnMtmFBq1N2e98ElZtjBKzKDKMicoKapmU=; b=WoHO2hdoPWdqN4CswNLbqIQU/ZWys7r9mrF4qwM87rG2QABwrymlOFDMyXVdm1fOaQ PKqBHnjSlL/lOz4Md0X6PnsXgX2uNZDtLQpyT8sOE2IFk3bIhTvIWsbUk8dJCAe348iL OrwG0hBCUMvsPZVn+AlnVIKSWF5Iu+xwh/85z00YRrL4Mnn0LHHmMLOvrRsCm3Th4lsm SLAaOJChf3+jjHRIjvuAiu/XRcQqwJ76beX6aC8Y6Lyo0kvyWytOlcdz8qm45csTxgzF F6WLKwDR03H6ZSjxY1z/C2am7QCWVX/BafC0mOt9fTH1S59T7dF7mkE3Pu0F+Om76BqU mBnw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1786560664; x=1787165464; 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=XF4Z5r1ndQnMtmFBq1N2e98ElZtjBKzKDKMicoKapmU=; b=BYlmN2b90Vh5pzh4n5otRqn0IzN8OQYAJajQz//rlw32UxeJaq2/EvvDd60lMx8tnd 3WjDfU2aSEP53nyriQjSpT5pjUvs/TH56b/C5sbcqNSizCi0k9l0EVekHBNwHVOupi6y cp4tB9jRkt6068UaCGpM2TCbbMkH+pvjKLMwq+yfb8Rtau/unDVyq3G2imy+xiNZCk6Y 8n6NXR5wl5aKBwzGnAYUq2dvh9XfEifh3OzsQTC3/wK0hRZVCu38/OxZKujFkqFpJfeV 7X/LecfO/darDFDqxoWahT3Tx7+XEQcIF07I9U8VJ0Np2xZnuxaK0zGBxvvKJBEY/nKJ e0Og== X-Gm-Message-State: AOJu0YxUL8Io/xS4+Pfx66ogoii/FfvsiCDcrD2GyQd7n3Ff3fM/PAEY JAxw5kfbFmfT4kh7Sudd/h56NlYDtyAZqHRa3bedH04XFvGolYItaas9JC7ZqgC6hr6BFR+Old/ Dm8UrH3lMJSDtHln2BfdH5Bu5VFTVf+fiWswNYsz7S5Tm4TC+0ZVSywrGVOzC5d/yU+e3vDCQDr 2QpYdXHlvq X-Gm-Gg: AR+sD11XsWSwDG/1c3MPkI2ZxdjwADFx5IsmWM6gCnp2SVV8xk9G7nwFbj50wxAfxCE KTWBy2K5Nz4Y7PNIDDH1dv2pHX9/Tt2e/EY36ecAAvrqrT1LIBbyTI6zT4+hfMM2u6PSlHWBENR +hplewaXpUoDST/+J0oDR39YbSuI0aiWDkEFrdxkJASaD9mTnRN/uAU0ngxeCB64L/HbR9N2S0I v1ikiBU56/960Ur6d/EuU4NMQKoWqjZgOfkYmlk1g+GLMQEneFmOQaq+jN6/nfrefU6ez541Pz4 oOMpm3XeXWuYTaMYCYRRhpAnCZrdP6lUaY2fnb0PwlEFh4R6rF4fIx0VaY99ebpi3Mdt8HBcTLp e699v2NgCYBRRIlJ0DRHuldRdND1NoOXEETLXP8ViRJewYqm6HOwYIOy2SJR+8SPZ2lNeT30/lT T9+hcZMDrByHv3Pjc= X-Received: by 2002:a05:622a:1b94:b0:527:6dc7:5c5b with SMTP id d75a77b69052e-52d73d15597mr3028731cf.21.1786560664325; Wed, 12 Aug 2026 11:51:04 -0700 (PDT) X-Received: by 2002:a05:622a:1b94:b0:527:6dc7:5c5b with SMTP id d75a77b69052e-52d73d15597mr3028181cf.21.1786560663834; Wed, 12 Aug 2026 11:51:03 -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-6a37f8cd810sm47977a12.26.2026.08.12.11.51.01 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 12 Aug 2026 11:51:02 -0700 (PDT) From: Hans de Goede To: libcamera-devel@lists.libcamera.org Cc: Loic Poulain , Hans de Goede , Jacopo Mondi , =?utf-8?q?Barnab=C3=A1s_P=C5=91cze?= , Kieran Bingham , =?utf-8?q?Niklas_S=C3=B6derlund?= Subject: [PATCH v7 2/8] ipa: ipa_module: Remove pipelineName Date: Wed, 12 Aug 2026 20:50:49 +0200 Message-ID: <20260812185055.289021-3-johannes.goede@oss.qualcomm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20260812185055.289021-1-johannes.goede@oss.qualcomm.com> References: <20260812185055.289021-1-johannes.goede@oss.qualcomm.com> MIME-Version: 1.0 X-Authority-Analysis: v=2.4 cv=a8EAM0SF c=1 sm=1 tr=0 ts=6a7cc098 cx=c_pps a=WeENfcodrlLV9YRTxbY/uA==:117 a=xqWC_Br6kY4A:10 a=IkcTkHD0fZMA:10 a=Sv0fKeRqtYgA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=rJkE3RaqiGZ5pbrm-msn:22 a=P1BnusSwAAAA:8 a=EUspDBNiAAAA:8 a=lvZftHTMWe99GEGio_gA:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 a=kacYvNCVWA4VmyqE58fU:22 a=D0XLA9XvdZm18NrgonBM:22 X-Proofpoint-ORIG-GUID: yZYK6oZQXathUbnUCXjrfDuQcpka-7zZ X-Proofpoint-GUID: yZYK6oZQXathUbnUCXjrfDuQcpka-7zZ X-Proofpoint-Spam-Info: AW1haW4tMjYwODEyMDE1MSBTYWx0ZWRfX9OvEp1pKMtev Guv7ASRAvgoecWYOgs8UyjWce+YQ97gHPu4sJv1dWbKzIlzZ7QQTyvuKwuTGVmJroLihnahDpq3 1bEpgym1O+R8pHfZQS1FgdSw0P0iAvY= X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwODEyMDE1MSBTYWx0ZWRfX+sGOOAEOaBuk ZGrH3Xp8P4bD7iKD6YiiUxmHi+ATs6fyzgruhdL+daeT1zdkmO0/XagR+ixGThiNpeg5EAT5e19 jrQLXNdIXdnYSjuiO8Fvu7J+3wA1Uz1zWfkuPWCdEBY7Uo13dDwZfXGu/5XB6FTqPNSlzvSfxIB 6sUjgZYXyunJcFEKpc7hNdCylXkhW8QCJYWQZumzTOkPzfU/5lzyvmoMK8dAph/CPU1NiZ/B6RA dK3ymQ0+Amlg/wjQjDF72PBKl6oPAcPnIWyBE16AP+q3/3w0aOKoBEFV1IIX4UrF2TPl4HPW6VK /+d309BbtEKkbRxVwGChwAQgNRU971S1nwvleJ/xCYO2cVT0MP16FdWQ2Vxd6s6RuUyiWzJR9PU x08PyZJHeN/OkvDWvBP2pkOWmlNqlFFskOarpL9Gw5Qbhuc9fRzlGGyo5y0eCeM7Eoz0fjocleg Zr3yFU8bMCFJFuUxJgg== 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-12_05,2026-08-12_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 phishscore=0 suspectscore=0 lowpriorityscore=0 bulkscore=0 impostorscore=0 adultscore=0 spamscore=0 malwarescore=0 clxscore=1015 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2606150000 definitions=main-2608120151 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 c89887954..6e8513d0e 100644 --- a/src/libcamera/ipa_module.cpp +++ b/src/libcamera/ipa_module.cpp @@ -215,18 +215,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);