{"id":26502,"url":"https://patchwork.libcamera.org/api/covers/26502/?format=json","web_url":"https://patchwork.libcamera.org/cover/26502/","project":{"id":1,"url":"https://patchwork.libcamera.org/api/projects/1/?format=json","name":"libcamera","link_name":"libcamera","list_id":"libcamera_core","list_email":"libcamera-devel@lists.libcamera.org","web_url":"","scm_url":"","webscm_url":""},"msgid":"<20260408115606.12417-1-johannes.goede@oss.qualcomm.com>","date":"2026-04-08T11:56:02","name":"[v4,0/4] ipa: Allow IPA creation by name","submitter":{"id":242,"url":"https://patchwork.libcamera.org/api/people/242/?format=json","name":"Hans de Goede","email":"johannes.goede@oss.qualcomm.com"},"mbox":"https://patchwork.libcamera.org/cover/26502/mbox/","series":[{"id":5876,"url":"https://patchwork.libcamera.org/api/series/5876/?format=json","web_url":"https://patchwork.libcamera.org/project/libcamera/list/?series=5876","date":"2026-04-08T11:56:02","name":"ipa: Allow IPA creation by name","version":4,"mbox":"https://patchwork.libcamera.org/series/5876/mbox/"}],"comments":"https://patchwork.libcamera.org/api/covers/26502/comments/","headers":{"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\n\t[92.243.16.209])\n\tby patchwork.libcamera.org (Postfix) with ESMTPS id F297ABDCBD\n\tfor <parsemail@patchwork.libcamera.org>;\n\tWed,  8 Apr 2026 11:56:14 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 08F1C62DDA;\n\tWed,  8 Apr 2026 13:56:14 +0200 (CEST)","from mx0a-0031df01.pphosted.com (mx0a-0031df01.pphosted.com\n\t[205.220.168.131])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 8643D62CE6\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tWed,  8 Apr 2026 13:56:12 +0200 (CEST)","from pps.filterd (m0279863.ppops.net [127.0.0.1])\n\tby mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id\n\t638B1XGF263064 for <libcamera-devel@lists.libcamera.org>;\n\tWed, 8 Apr 2026 11:56:10 GMT","from mail-qt1-f200.google.com (mail-qt1-f200.google.com\n\t[209.85.160.200])\n\tby mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4dd7t236bh-1\n\t(version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT)\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tWed, 08 Apr 2026 11:56:10 +0000 (GMT)","by mail-qt1-f200.google.com with SMTP id\n\td75a77b69052e-50b274f94f8so5649881cf.1\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tWed, 08 Apr 2026 04:56:10 -0700 (PDT)","from t14s\n\t(2001-1c00-0c32-7800-07d4-cca3-ec08-7ac7.cable.dynamic.v6.ziggo.nl.\n\t[2001:1c00:c32:7800:7d4:cca3:ec08:7ac7])\n\tby smtp.gmail.com with ESMTPSA id\n\ta640c23a62f3a-b9c3cec6c1csm639102066b.39.2026.04.08.04.56.07\n\t(version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n\tWed, 08 Apr 2026 04:56:07 -0700 (PDT)"],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (2048-bit key;\n\tunprotected) header.d=qualcomm.com header.i=@qualcomm.com\n\theader.b=\"of0YCgcB\"; dkim=pass (2048-bit key;\n\tunprotected) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com\n\theader.b=\"HVakbST/\"; dkim-atps=neutral","DKIM-Signature":["v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h=\n\tcc:content-transfer-encoding:content-type:date:from:message-id\n\t:mime-version:subject:to; s=qcppdkim1; bh=k7HmXF3U5pQ7m5d5Zj8IVY\n\tPHDNWcg3mF+VgaFylPByY=; b=of0YCgcB9981n//ZJZS7pKcL2SPGMziRqNFM7+\n\tu9/+1iOyulaWVBiMHc4P+nelXtx497C2SLnHrR1T2KBym3uyZCdcEQyfopBKI+4A\n\tkCd7JI7ZYK24WdiLcBQvQ1myLyg20b3P7/Ra5P3rt0lmVczWkm7e32j6zMLQL0DO\n\tbC4d8RR8zjawDfSOAqHXuAQD386fzMptlZZgBFIoIIgoCN+CHSsZ86J8nADeq4O0\n\tl2ySEf5hmtCSKLH3dDWF1E+CxfgDNxVudjZCsBh883tym+sBZInNwYs5GQzAvmbZ\n\tEBJD4HDxEP8uYwks4YF1IVLT0OTjyc7/q17Dkh9romPQ+L0w==","v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=oss.qualcomm.com; s=google; t=1775649369; x=1776254169;\n\tdarn=lists.libcamera.org; \n\th=content-transfer-encoding:mime-version:message-id:date:subject:cc\n\t:to:from:from:to:cc:subject:date:message-id:reply-to;\n\tbh=k7HmXF3U5pQ7m5d5Zj8IVYPHDNWcg3mF+VgaFylPByY=;\n\tb=HVakbST/osK+4YiuwbPzzRDOUymhGYTZKORfuJ6Q9ocTxNi+w8yMFesJzi3/V2724j\n\tbvrXLRxWV0agdPaWNGh7xiv+EslCrDTnxIN0eDTIIzupfATDzFu38EMW5W5vfWiXdHpK\n\t556HAiPxaU3mZASppdecpAFzerT9vVm3T/xAL7hhFWF/cB42sVjkyGBKKY8k0e36vWCT\n\tK3GhWh32PJ08l497RKv50XTVujHE3zvRX9bTvqhP7AjGxzRpZhrnvTY0ao8EkDx+JAG5\n\tMwjLXU91PhwrGyZK6/+9/zSbXvZrO7bkT7fgMnAKdoLJGvZ1pgzx3wIgaWhZYquqk1H9\n\tXWLQ=="],"X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20251104; t=1775649369; x=1776254169;\n\th=content-transfer-encoding:mime-version:message-id:date:subject:cc\n\t:to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date\n\t:message-id:reply-to;\n\tbh=k7HmXF3U5pQ7m5d5Zj8IVYPHDNWcg3mF+VgaFylPByY=;\n\tb=d4YvcaDDY+XSfSaOwWJ2Y9ZcI+l5O8wwgCCykXI/F8e9zQNs1kSU7Y3nxPhV6zo49v\n\tisJ7TvgK5pB5HJ8pnO5PE3cEz7CDyoEPux6cRXpnbVN/VFJCHDpH8UVvyE7UPXAEmwGC\n\t9NqVvUQgblPFcVqX55YMUyz+S/3BAmd7uMLT7MY5/MS9gqt9Qmsykfxdow/DIVb0A9pL\n\tJcr/IhHH5Va3EZXBvGwI7fbHNghStxZWIHUmRohbEXBYxy+S0hEwv3qKeNl/6Mng3EST\n\tR3Ih/QRZdJi0zg3KxTLMjFHPwK83Y1J0jSyFuFifhAMTszmBZJunKYcv5clO1nFXD98b\n\tVvpw==","X-Gm-Message-State":"AOJu0Yy9XzA13kh/lXR76QJa61oGDOHattWK+6ct0nON0JrTy6txTN30\n\tX3ajApVJfwTE9JiptoruXYdjupjF0Z0D8HfvNhIDIrekEmbLTHZ4uojsQ+ECJu16kk6AkwQ82A9\n\ttqbYZ2Eg41wCiVwyftc7knhmU3FbAqSe7mUIVthQ9m9ARkMReL++viTbsy+0mWZ4wnz+RyLQOXB\n\tJ+e5k4aTfl","X-Gm-Gg":"AeBDiesWhsQ+wgI2NwvzhQYTqm/RakQHZ+AHCDkMissxj42Rrxp5DT+rPhJJ3Lt06TZ\n\tqZJ0nUMCpN8NkxWkKf1uxLgGtSur59drl6JnR2K25afY9isAKUq64znV8p+V71X+4KjX/ZAA1HO\n\ttTGWme6zXBThxCdleSkEbejBAbOxlQZprf5sB03aiaGRDh272PWdQfry4eEj9RRKr8plisMoP8U\n\tkMxzHTrbOLOK3gYNgMehO0Htfj4LkbCeKKJ3b9l/U3OS0FmNHKpCHtMGnY8Iv8ta5pKRZgD7juE\n\tYZe3LrCoWzm+afRWROpu0jpS5bp3iV4mRGkBV/pVgqkyriFfTrO2A8WxD1JHLjHsgKkUhKsoYTt\n\tGnJTodXAw/Vblr02tCkmO1Vyut5ap4IV6/N92Iv0fHYr8rt7Q6fY0wp7nUERXGQRHvW0K0HsG+d\n\tAp+QHmCdMbhCvxBC8nKhtTcNC7I+6N3+n/","X-Received":["by 2002:ac8:5d93:0:b0:50d:815e:7977 with SMTP id\n\td75a77b69052e-50d815e809bmr191377261cf.34.1775649369368; \n\tWed, 08 Apr 2026 04:56:09 -0700 (PDT)","by 2002:ac8:5d93:0:b0:50d:815e:7977 with SMTP id\n\td75a77b69052e-50d815e809bmr191376881cf.34.1775649368849; \n\tWed, 08 Apr 2026 04:56:08 -0700 (PDT)"],"From":"Hans de Goede <johannes.goede@oss.qualcomm.com>","To":"libcamera-devel@lists.libcamera.org","Cc":"Loic Poulain <loic.poulain@oss.qualcomm.com>,\n\tHans de Goede <johannes.goede@oss.qualcomm.com>","Subject":"[PATCH v4 0/4] ipa: Allow IPA creation by name","Date":"Wed,  8 Apr 2026 13:56:02 +0200","Message-ID":"<20260408115606.12417-1-johannes.goede@oss.qualcomm.com>","X-Mailer":"git-send-email 2.53.0","MIME-Version":"1.0","Content-Type":"text/plain; charset=UTF-8","Content-Transfer-Encoding":"8bit","X-Authority-Analysis":"v=2.4 cv=De0nbPtW c=1 sm=1 tr=0 ts=69d6425a cx=c_pps\n\ta=JbAStetqSzwMeJznSMzCyw==:117 a=xqWC_Br6kY4A:10 a=IkcTkHD0fZMA:10\n\ta=A5OVakUREuEA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22\n\ta=u7WPNUs3qKkmUXheDGA7:22 a=yOCtJkima9RkubShWh1s:22 a=YAyIRdgMAAAA:8\n\ta=NEAV23lmAAAA:8 a=XgNLnUgbCF3J9dMqSlQA:9 a=QEXdDO2ut3YA:10\n\ta=uxP6HrT_eTzRwkO_Te1X:22 a=o1rO4XtwZBNj6n05oSJ_:22","X-Proofpoint-Spam-Details-Enc":"AW1haW4tMjYwNDA4MDExMCBTYWx0ZWRfXzWwJ3SqICwoE\n\toL/w9t9dEmNt8HXc/ZCxASxuDNZiOfiglReIleK27A3hGZVkU6CTT/MLDnyGKP1LXLxf443MUUi\n\tA2FqS51XQvxomp9cMjUFMMqljcTG7duQFoOdxrJCW3W19oe3HQd1sAQYYQOSvuKw/iYMDy6B47H\n\tg+zczrTVqDuHp71iCpr68hfQ4S1Rr7tUCIMYM+/YXr+yOaP+nqO1Xmt2V6H3TNEO7V4ylwDv5tq\n\tx5QBZpUAv+OgHAMPbYN1+B76jrG5IhrG2iypXD3HWU8lZmKZzsdeTzVqbferxwHEYDmTnezPcDL\n\tICreqV4ABpd6ugGpgMsQ/kg3k8+Tb7TdXQT1XDjOumK6pUnlogjFYdzmfQP5nErmOuNsK14zNnf\n\tTwJiNcs2TeQnSM7zG+zJjFLOOYKA1EYMeZIcaGy0RD4DClzvCDfdpMAo0KoFzckfSG6CK3HX3Q3\n\tn9fyfnjO4vPBtaSiSdA==","X-Proofpoint-ORIG-GUID":"zWgc9Qa4JJPiilXC-HKi-s-7RklVE9VY","X-Proofpoint-GUID":"zWgc9Qa4JJPiilXC-HKi-s-7RklVE9VY","X-Proofpoint-Virus-Version":"vendor=baseguard\n\tengine=ICAP:2.0.293, Aquarius:18.0.1143, Hydra:6.1.51,\n\tFMLib:17.12.100.49\n\tdefinitions=2026-04-08_03,2026-04-08_01,2025-10-01_01","X-Proofpoint-Spam-Details":"rule=outbound_notspam policy=outbound score=0\n\tspamscore=0 clxscore=1015 bulkscore=0 phishscore=0 priorityscore=1501\n\tmalwarescore=0 lowpriorityscore=0 suspectscore=0 impostorscore=0\n\tadultscore=0\n\tclassifier=typeunknown authscore=0 authtc= authcc= route=outbound\n\tadjust=0\n\treason=mlx scancount=1 engine=8.22.0-2604010000\n\tdefinitions=main-2604080110","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>,\n\t<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>,\n\t<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>"},"content":"Hi All,\n\nThis is v4 of Jacopo's v3 \"ipa: Allow IPA creation by name\" series:\nhttps://patchwork.libcamera.org/project/libcamera/list/?series=5505\nWith that v3 itself being based on my original attempt to address this:\nhttps://patchwork.libcamera.org/patch/23359/\n\nSince the new camss pipeline handler will use the softISP as a fallback\non platforms where there is no hardware ISP support yet (so most platforms)\nit needs to be able to load the \"simple\" IPA from a pipeline-handler named\n\"camss\" requiring something like this series. This is the first of 3 series\nwhich together introduce the camss pipeline-handler. Here is a branch with\nall 3 series:\nhttps://github.com/jwrdegoede/libcamera/commits/camss_pipeline_v1/\n\nI hope to get this prep series merged while work continues on the camss\npipeline handler itself.\n\nOther use-cases for this are using the rkips1 IPA with the rcar-gen4\npipeline handler and using the simple IPA with the atomisp pipeline\nhandler.\n\nThis has been tested by Jacopo on R-Car Gen4 and on Mali-C55 and by me\non Qualcomm Agetti and Hamoa SoCs with both the simple and camss pipeline\nhandlers.\n\nChanges in v4:\n- Rebase, change author of first patch to my new email address\n\nChanges in v3:\n- Add \"ipa: Allow pipelines to have differently named IPA\" patch\n\nChanges in v2:\n- Update tags, fix stray blank line\n\nChanges in v1 from Hans' original patch:\n- Slightly different approach addressing the review comments on Hans' v1 by\n  creating an overload for IPAManager::createIPA() that allows pipelines to\n  specify the IPA module name.\n\nJacopo's original v3 cover-letter:\nhttps://lists.libcamera.org/pipermail/libcamera-devel/2025-October/053821.html\n\nRegards,\n\nHans\n\n\nHans de Goede (2):\n  libcamera: ipa_manager: Create IPA by name\n  libcamera: software_isp: Explicitly load \"simple\" IPA\n\nJacopo Mondi (2):\n  ipa: ipa_module: Remove pipelineName\n  ipa: Allow pipelines to have differently named IPA\n\n include/libcamera/internal/ipa_manager.h    | 13 +++++--\n include/libcamera/internal/ipa_module.h     |  4 +--\n include/libcamera/ipa/ipa_module_info.h     |  1 -\n src/ipa/ipu3/ipu3.cpp                       |  1 -\n src/ipa/mali-c55/mali-c55.cpp               |  1 -\n src/ipa/meson.build                         | 40 +++++++++++++++------\n src/ipa/rkisp1/rkisp1.cpp                   |  1 -\n src/ipa/rpi/pisp/pisp.cpp                   |  1 -\n src/ipa/rpi/vc4/vc4.cpp                     |  1 -\n src/ipa/simple/soft_simple.cpp              |  1 -\n src/ipa/vimc/vimc.cpp                       |  1 -\n src/libcamera/ipa_manager.cpp               | 34 ++++++++++++++----\n src/libcamera/ipa_module.cpp                | 27 +++++++-------\n src/libcamera/software_isp/software_isp.cpp |  2 +-\n test/ipa/ipa_module_test.cpp                |  3 --\n 15 files changed, 84 insertions(+), 47 deletions(-)"}