From patchwork Wed Apr 8 11:56:04 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: 26504 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 A5011C32BB for ; Wed, 8 Apr 2026 11:56:19 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id 83FB762DEE; Wed, 8 Apr 2026 13:56:18 +0200 (CEST) Authentication-Results: lancelot.ideasonboard.com; dkim=pass (2048-bit key; unprotected) header.d=qualcomm.com header.i=@qualcomm.com header.b="MqR3vIfy"; dkim=pass (2048-bit key; unprotected) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="As/VrGby"; 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 2EE6E62DD4 for ; Wed, 8 Apr 2026 13:56:15 +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 638AwIMJ072568 for ; Wed, 8 Apr 2026 11:56:13 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= uxgktgJEbr0ayrA3gM4T0imubDWEGmXH66vsSiGkbRI=; b=MqR3vIfy7oxnkp5o zpjM2wK8C71USmMdl++qKLwT0OMycQ0L9ijm3V0aaK9zHkQffRY3U0WgZeC5szgA LMoHXDwRBGok+CQCGmicBdknpYP7B5BkCeulpx9yCYfFPxjJ642ZmSe2gMM4Lbeq vn7NkbFH80Er2qwEbI9z66WFkqVAeHxCeuUqKZWs8YDY0ir9wCEgL6LFe+KNvNwv YeyKsBtu7hUJVAXfsZ8M1GFgIIAhaQCnmqbfEq4NeDwYq/POXx+6aIkDrOmpbofP OiUnBwa6TowqJ6coQWUhUn3wTJ+R6JLIHYdOJJPIJKuGfg65dbPYjS9RV/cs75zB aotMsg== Received: from mail-qt1-f198.google.com (mail-qt1-f198.google.com [209.85.160.198]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4dd7sxb4tg-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 08 Apr 2026 11:56:13 +0000 (GMT) Received: by mail-qt1-f198.google.com with SMTP id d75a77b69052e-50d5d1c2289so147121311cf.2 for ; Wed, 08 Apr 2026 04:56:13 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1775649373; x=1776254173; 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=uxgktgJEbr0ayrA3gM4T0imubDWEGmXH66vsSiGkbRI=; b=As/VrGbyI0vaN88S1frKqS30o3dJm0vBOL2nReIE9OBqAFzj6r43CM7nQbD0c43cf6 6lPMbQ+kBvcoBPVVVf+VGRPMYJMJOSA6qLxW+GbevjWj0it6W7p4vHKmMwbu37Qu4H1w 7XdMWxY9sT50wdl4n88ItROEyoIaFQGu+jXi6uHJ1pW3ZDujrjHhheqhMxn7MJarXm3o M64xpPjAUdk0tqUXfVG/shgXK6SszpR6b9gPG3lTclJbChLmoJZG9wWRcMJwbvVXmE31 ydznRs+MLPBZgjH5ey5lF89iSVijaTj/EJ7ecavjtoEd0s0lyS/TLiwKOv+vEg5ZxPZm frPQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1775649373; x=1776254173; 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=uxgktgJEbr0ayrA3gM4T0imubDWEGmXH66vsSiGkbRI=; b=TaEFlaBa/2SkxFNAOXEa5//7AuWAe+GFdYTw+OP6znU0HCRPbHVGjHyXZZyZx1qELL rgNGyFyNaILG11eWZ7qjmzD0bfdUnPL5Id21XOlFV/Cp+xSvSIMqPuI3SspGhAhvp/qV fmFMThdOQYXhAxpP1xSxn/3B+K8s0HdcnjmRjYw0TgH9JxU3d7Pa+9jyKg9rlgnajRn0 D4Ej232tRnuyBx58czLT8hMOVExzzLCjLyZtHKls75qvyIe0b3ts197t3wwSZbwoqXqn WQAShIRX1xPdDDenjZS7L23YMCqAmSZq5pKcSu26XcpvJLaSYSB5zpfEytlVCHqufVO5 5Ziw== X-Gm-Message-State: AOJu0Yy0jl9XQjtZ8SVASFybtB/SwJ9CkBYoWDg7DlQSSShknJJpOOmL pY+2iOpKVD4eE6UiYZxOKMgALBcwIBnV43ncGrqr2JooDXXkL79AYA3qNon7J6HXeFKBOhI0IkP mQ0/ywzXmnAEt1rl7mq4rGWXv+0im6SDuwfZ7cIv+C84nXeDAkLU4oZ9UsXUslcBu978jWWxhDh YE3kh2hAbg X-Gm-Gg: AeBDiet+n+8lT8DCVdmf44uNMKgg77fc9+NipwMGpEA663/DZZUe7ivmNnRuIX/vAgk W6puxOaB7mEy7HIFziRzDZuKSTCkBG2fu7ciLtUIoxaLr8f7i8EsQNp/+5MncJaOtQzI7ifWlk5 +KVSiAR2+MGvcBikGucWku5/Si15TQRUHr+Vd3ZE+Nsrpv3ad3DD1ePx6wip6EDNq4yyXxKctNo fMEERqiV4gAwhKIvXB6GoVnwfu+j+S76PvKotz6bT2u2rDT9OqHa6JYZh0sa0GuLulruEXQBJ4r 3Ds3aPlyxWrj5viLNY6YamKH8cdfD63ehn+kwVUUP9eKPj12nrPGc6Z1IfGy9qjohBw24gk6PmK 7yXlyPLUVcdQm3auvpqWTqwxBCLMgo6wMaXMCZ7OJcGySNnZ9wM7FY9SAenhWzCfD698ontKREc b8JXVzUhnjqj0rndX0FAPSeKmsMVqj60R7 X-Received: by 2002:a05:622a:4c1a:b0:50d:a747:9e95 with SMTP id d75a77b69052e-50da747b349mr74684161cf.20.1775649372650; Wed, 08 Apr 2026 04:56:12 -0700 (PDT) X-Received: by 2002:a05:622a:4c1a:b0:50d:a747:9e95 with SMTP id d75a77b69052e-50da747b349mr74683741cf.20.1775649372193; Wed, 08 Apr 2026 04:56:12 -0700 (PDT) Received: from t14s (2001-1c00-0c32-7800-07d4-cca3-ec08-7ac7.cable.dynamic.v6.ziggo.nl. [2001:1c00:c32:7800:7d4:cca3:ec08:7ac7]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-b9c3cec6c1csm639102066b.39.2026.04.08.04.56.10 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 08 Apr 2026 04:56:11 -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 Subject: [PATCH v4 2/4] ipa: ipa_module: Remove pipelineName Date: Wed, 8 Apr 2026 13:56:04 +0200 Message-ID: <20260408115606.12417-3-johannes.goede@oss.qualcomm.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260408115606.12417-1-johannes.goede@oss.qualcomm.com> References: <20260408115606.12417-1-johannes.goede@oss.qualcomm.com> MIME-Version: 1.0 X-Authority-Analysis: v=2.4 cv=etfvCIpX c=1 sm=1 tr=0 ts=69d6425d cx=c_pps a=mPf7EqFMSY9/WdsSgAYMbA==:117 a=xqWC_Br6kY4A:10 a=IkcTkHD0fZMA:10 a=A5OVakUREuEA: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=dawVfQjAaf238kedN5IG:22 a=D0XLA9XvdZm18NrgonBM:22 X-Proofpoint-ORIG-GUID: 3DXasSwzAlyDn8qfbWnpZG1f4SKBM3Sq X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwNDA4MDExMCBTYWx0ZWRfX949rAEOtjMdX LAFcwez37p+hBf8vNcDfc81xfyvzzmLXP0EscOR6lmDGmBIhrDUDxVEcUURR/KsrBHCngLwz53h udMJnIkgX4rXb8x8swO79ggDmmgnWr6tWkAKFy3h5LXZbUJd85bh++512ur3T7Tz1LpcqAae/b9 mAdoDILStUpoWMwwBRssRle3ItrgBgYRB78WNGnywdNUCjKVFNw5acuDO/Oxcz+1OGuqhxtc7xd 5daqPTmNsAyRGtvmxNAZSgo+XDMl5s2N6bQwuXtjUH+qKUUmkAp91MPx4IYk7uFBaQoDCrsvk7S 9uinQANzy9Gl5uhg1uAPSVFwSTaXxwumsc+wKi6FgAA8zRRniEBKzrZFddGu7MzlVRtXilFBodx U93OuY4JCHy3OFqun01++4hPbxwTwIq34VRizYdzjabU7na31XiIp4ADUPn6pKDL0QlAHhdBe5y Q56ObG72DLyr8DeNEpQ== X-Proofpoint-GUID: 3DXasSwzAlyDn8qfbWnpZG1f4SKBM3Sq X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293, Aquarius:18.0.1143, Hydra:6.1.51, FMLib:17.12.100.49 definitions=2026-04-08_03,2026-04-08_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 lowpriorityscore=0 phishscore=0 bulkscore=0 impostorscore=0 suspectscore=0 spamscore=0 clxscore=1015 malwarescore=0 adultscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2604010000 definitions=main-2604080110 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. Signed-off-by: Jacopo Mondi Reviewed-by: Barnabás Pőcze Reviewed-by: Kieran Bingham Reviewed-by: Hans de Goede 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 92f5bd072..8d48f6bf0 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 fd5c9563d..07f892b9f 100644 --- a/src/ipa/mali-c55/mali-c55.cpp +++ b/src/ipa/mali-c55/mali-c55.cpp @@ -380,7 +380,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 373a343bd..adafe7569 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 de2a6afeb..975d8bfdf 100644 --- a/src/ipa/rpi/pisp/pisp.cpp +++ b/src/ipa/rpi/pisp/pisp.cpp @@ -1145,7 +1145,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 7d25bdd26..66f2c27ff 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 a1351a0f4..822e00aff 100644 --- a/src/ipa/vimc/vimc.cpp +++ b/src/ipa/vimc/vimc.cpp @@ -202,7 +202,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 0bd6f1462..53cea6b18 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 a 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);