From patchwork Tue Nov 4 13:49:25 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Antoine Bouyer X-Patchwork-Id: 24965 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 A76A5C3241 for ; Tue, 4 Nov 2025 13:47:47 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id A0B6060A86; Tue, 4 Nov 2025 14:47:46 +0100 (CET) Authentication-Results: lancelot.ideasonboard.com; dkim=pass (2048-bit key; unprotected) header.d=nxp.com header.i=@nxp.com header.b="n0P8fRyL"; dkim-atps=neutral Received: from DU2PR03CU002.outbound.protection.outlook.com (mail-northeuropeazlp170110003.outbound.protection.outlook.com [IPv6:2a01:111:f403:c200::3]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id 823826069A for ; Tue, 4 Nov 2025 14:47:44 +0100 (CET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=zSA0z5KymEt6gSRimo/UxUUlYFmYnY038EbYGVeByRYZVF/u/iKzipfgrbUhmRdhD4d8TFbRN/djCKG2+cvKRujf6IkM4eDan2wMH7koifGj50lrHaNjghHE3OndKFfSyHs8Q/jUIQ/9QAS/1mZH4K4VfLug41wMkm5ljwhjWL98JdWhGz8lPHmVvrJasH6xEasyBJsPE3cJKUwVHVs4HBqj12IqhI86kk6zUYHAoHTRh0GIVRkrK1YSzcu1zb8GmhseLQZ0qPtq+N7Hjq/Z3JXz+FeI0ObhjarPv/eJwEaOU9CE1gcEN2SA5ia1NuVTDzktaQrFfvrh0i4TgPChuA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=8IzbVUn74sqb/8BOuySLQgUaruGlQWFhE9BULAbjQzo=; b=xdVOMrHp8CdVj/zFDaPmS3kfK/SxFLTtGLtbo80kqOIbUexWopcykTBmWVOkRyPXqU5dstp6k07B0eTr0m34NPC5RKmzRH1LNDHaqvmQg4Ls/CxFQsdKkQp8BZIndx5igAFX66LS6hFL3tHlsUSjCg5rRboopuq8UGowcjHRu1qDYjZMKmF9JlXZGB2ZfP5UDZ3BIB69an9QGUmO9a6SM78FK4gJGn7AFSiKruvwqAJ1vmWK07H1Hy1hPcIKAteRoswkX6LwpmaF8YXt8vj4Cjt5Qzr8pnRpGcNzGkru3hayuLDZmNzJro3vgx9uXaCMi4sAz/0lJvcYLmRP8lhqxQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nxp.com; dmarc=pass action=none header.from=nxp.com; dkim=pass header.d=nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=8IzbVUn74sqb/8BOuySLQgUaruGlQWFhE9BULAbjQzo=; b=n0P8fRyLQU85gBSUXkcTs8GC9aGUbu3g3YRirTR6P/hL6YG6+sq9O+jfSmKJYiwyimGQodBorWHspPblMSWhEd3fF2Zlq0vvBy4JvhRk7P4Q8xEQxs+IyTB2mo5Qnt+7tYG7f5TwI0yOWVxWi7gCFnSR/k9wcumh1xo7/Wu2qLYsCIZaGfHS29QpIY2VNTZcEfKSVLpHR2k8fxl+xM7LgGJHoCV/I1ptSPeW1AjL1CPnlJnLQhmz8H5TChZo/R5DvhXkIQM3vHjmFng9qrb1lGHdRSUpXMiqyl2jeIW2zW0e114dxttwjmXiPPU0L+ugQ6GoFYjhPQADDfin5M/6CA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nxp.com; Received: from GVXPR04MB9831.eurprd04.prod.outlook.com (2603:10a6:150:11c::8) by AM8PR04MB8020.eurprd04.prod.outlook.com (2603:10a6:20b:244::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9275.16; Tue, 4 Nov 2025 13:47:42 +0000 Received: from GVXPR04MB9831.eurprd04.prod.outlook.com ([fe80::4634:3d9c:c4a:641a]) by GVXPR04MB9831.eurprd04.prod.outlook.com ([fe80::4634:3d9c:c4a:641a%6]) with mapi id 15.20.9298.006; Tue, 4 Nov 2025 13:47:42 +0000 From: Antoine Bouyer To: libcamera-devel@lists.libcamera.org Cc: julien.vuillaumier@nxp.com, Antoine Bouyer Subject: [PATCH v6 0/2] imx8-isi: Move isi routing into acquireDevice Date: Tue, 4 Nov 2025 14:49:25 +0100 Message-Id: <20251104134927.318841-1-antoine.bouyer@nxp.com> X-Mailer: git-send-email 2.34.1 X-ClientProxiedBy: AS4P251CA0019.EURP251.PROD.OUTLOOK.COM (2603:10a6:20b:5d3::7) To GVXPR04MB9831.eurprd04.prod.outlook.com (2603:10a6:150:11c::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: GVXPR04MB9831:EE_|AM8PR04MB8020:EE_ X-MS-Office365-Filtering-Correlation-Id: e61033fb-f6c6-4180-bd1a-08de1ba8ba2a X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|366016|52116014|376014|19092799006|1800799024|38350700014; X-Microsoft-Antispam-Message-Info: =?utf-8?q?cLpZ2bswjMJNUxUPiE8yMQ29zMo1?= =?utf-8?q?xgsP0PEaPrWUASdG/8Ucr8Eu4Gu7/NA4qDDH2dMPP1+41zjVFXT/hEe/?= =?utf-8?q?H1TEN8X1Mk+PVjtB44XedcFzLW+mn9W/+jIDsJ3i0TzeueSC8onIL8RL?= =?utf-8?q?riuvMw5y880FmltKaxzyqKlVZ8xNfHsb0COB5DJlSfgnBLPOQ6ZxR9Jp?= =?utf-8?q?QnCDZzwOg32OzRjt3N6iPa34YljICwUQMKSbOqA293682kMJV2Y/Q5PS?= =?utf-8?q?0ylMqeBtlmNEjXYIhF9cONYHDzeSx0P/E8P2y3GvLzXRnGnBF1CRN/YF?= =?utf-8?q?4HKk1RnjAeYcAdBuk6M/AHfehPREilhYJjybA8X01VRj4vchD/RtuB6K?= =?utf-8?q?nrMBaZ1UlZN9YH3jrhLirjL9s5BeAQISbUovtUT2I52qrOpiarqBYZH6?= =?utf-8?q?62mqMko7yFWEQjLT942uyc4k7zoxvCjgP8dHIjM0yE8llLfh1O47st0P?= =?utf-8?q?zXxY0G6KSk6nRhsdoHaX1x2A74WhzZeYtR13schcEbDlruFb5HjxiNuc?= =?utf-8?q?bHzrXvWmfKaHam+PrzcsBHuOpbhI0j/seqHuTEryMtFP1sfn/VuQ0hbu?= =?utf-8?q?YEWTeXF0vrMGNJDw/BuCDgHB4XVrqlfBVBCv9aXAOE5KLvXzUHkDkzVk?= =?utf-8?q?shS+9nJU9IdB1MtUPMcRYTZJjU0+O2vevh2AbaMNyhmx7GKeJkQ3PtdW?= =?utf-8?q?/mLoqKBUUdaxzr8Q/Z4QKURedqqWEXl1oGtU8c9/UWSwcsqEpGXxfFrc?= =?utf-8?q?Jp2ub8AuNBDboyw9CB1sNqEt++pzgccEZZXbayFIEojCj4uHd5rD7HW7?= =?utf-8?q?e8Xfy5m+lFhy01rWHI5hxhejavjdlaT8lLBLvm8g+pFizbic5NHMmk7p?= =?utf-8?q?TxZa14pkqY1gKlO92P9Rm5DXfv2HhRyV0/IbHdp+dTKCMBRS0PC1Ptoo?= =?utf-8?q?+vCzDHQhCPxo0XzB0BsFkAIhs4mdFZYHsLqrepBfiqNdX6bWQeRA67yC?= =?utf-8?q?f6iI4P7k1Te2yuNU9NbVVDQFMzqTKWiwS1wTgeqdVcowlm7mqebuTr3L?= =?utf-8?q?F4+iLEtkjRvIV4S3WKDJ0Z3roMQr3fDkuxsC/VC2Wj5ewL8BobbG7Moy?= =?utf-8?q?Eg9Rc31tUgOYktw4R1ILHRvX3TDsVf7WBqcRAKz9TUu3ic5MrwT/yeYT?= =?utf-8?q?7DZJB7KFZQxYUmIWeNsfK7ycGZ/p+QmhLrYn+Up7uoG2GyqkSv4zy6dm?= =?utf-8?q?MKbTCwL8bWiKEsCBNH7uqlgVQJwOfi9EJEJMzfuODpdoDPQMf9HN4hyu?= =?utf-8?q?pdaRwTFJ/msfzo1vpNgU7U2jWe+v4jKukTUry4TGJwfjMsm/jTsQPtlP?= =?utf-8?q?jDCV/V8dZblHKqUCqWVdIxzcqejuLDg9J6S3vcxlkNYSd9OCR+FjhFmA?= =?utf-8?q?Ul4jW455krKTLJszN4hfciwRvT2bU+FcBHnDwqrfdarvybJdkeSLfOht?= =?utf-8?q?nxLK22B4Cxl0cJDIR+qNaIydjtxCf1CzWyiXSTHsWAeH3IkZRJxqZLVW?= =?utf-8?q?X7b3fPSaFA=3D=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:GVXPR04MB9831.eurprd04.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(366016)(52116014)(376014)(19092799006)(1800799024)(38350700014); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?uN0eA0dWBTTHjEHPOs/FvLAML?= =?utf-8?q?Rvk+EoLmbL7R5hOOPEGeQzM0WqqzoAOAo4INII8PvdsOty1zHb/99wbq?= =?utf-8?q?2e72IM3t235Hx82FBFnZpirVmqh5G1SCyqAqP63H6lyX3eNVcXypuGC8?= =?utf-8?q?2IRFnwLCQ54BcXNWHJ/syGLyuFGKupmA7McFBoyJy15BcNudtpEB6or0?= =?utf-8?q?kii52YaHESFTHLTkYHJKXCBgOqNzDrxhTPa53p5jJ3ek/iUD/KiVd/l9?= =?utf-8?q?yugAAYOIzAG+woGrZnpgPsTpYhm7HI2fHj2jcxG+bKbPzu71L1vPAIg3?= =?utf-8?q?4mw2KEGMDoMUkoNW6NOQULI+PPGzWzBMjeIfsulybXQoqL0sV1Xg0giB?= =?utf-8?q?Y6b+r/wju26EpwkTL6qqvOxZSJDEfxUk0kaode+R8copj/TpkWLWGQp+?= =?utf-8?q?1wAr/OaSsW26bupgpdn+ErLZB9FaELENE9QGyY5pWuzbzP4uRdHQG4DT?= =?utf-8?q?w/0qk0YAlm/oY4rOE5YdmudqpqfvHBZw0YAPpcb/bBT7l87qQqjo42Xb?= =?utf-8?q?bdGsoUm+kzTaSeKArSFTd5FGhnIOvif3XK/xuj3QzbgcJpdmDFPsk4wJ?= =?utf-8?q?bz2Q3JNlVGyLUPniOFjVoeYUUwYsDR81DYJToYxptl1tJXtIuzhMjapg?= =?utf-8?q?emRxbSYHadk1NjEpCy4kL4iZQRxyn6v+rHp7fYBm1va56cWCd379ZyCK?= =?utf-8?q?UeW28QSgQqNLG5VWIHViF63kXSzdY0dUo7CfI+3zPY8hetofmFtoAPQn?= =?utf-8?q?GfRkrh5xr9zn/r7M0dcP13l4Z7btDgjmUmyIJNBQ48WzxhiI3Hv7BXvP?= =?utf-8?q?O27RLSu9etnn4m2CmZMyg9Gj/j6kfmSB/gZvUCwZwEcwcn2kB0dQDP+/?= =?utf-8?q?VMoMZcheRf8BTwbBtRuWxtZqv+kchyyFbFl4smIc6mZmpXw/mS/zCknQ?= =?utf-8?q?xFnp9oOluYSo+DbrZardg9ullUeEjXafXSqxzIuhQJMIbmNN6BDRqa4y?= =?utf-8?q?t1Z5SNvCjrE/kiirGLbZngTcmGrZsYHj79o/I6RhZ7LsyoNVsjSR0vpu?= =?utf-8?q?nNXVZiJhR5riJ0vjHHpkISPTPn97nMvueWjxkosBEMbHEk5pMFp3gXIJ?= =?utf-8?q?kty7+sbvEY7pmGd9Dk99htyeIIpAiOZCiBDDdOx9XIfPdI+BCVCvGeRh?= =?utf-8?q?JblEoyUdXEDwgTYZhH3+pC4IxD2ForPsy93bK7g/F6jT+xTejQGo9Mr7?= =?utf-8?q?Q6ZHiT9LtU32Zc4HUbnV3EB7p6HeojCbCH24aOszq9yYmUYm81pQD42V?= =?utf-8?q?O2aoBvbqiVyBPn1D7xmP+4gv2KVY76hpfbUDe14yuk5jpeyKCAVmoWQC?= =?utf-8?q?Z0nqb2xJve12w5FS77wucnZzzHUR3WGRg4WTO/sTpGotfjRDAoQjVUeu?= =?utf-8?q?kMiVlqpTUm27VvWl0oWItXvqX8Vr9qOm+bqAfFgfoF16oTh88u8T2t0n?= =?utf-8?q?XFFXuW2pae7cxTwAO3ZuFoOnwzkMs+Vwu0EQYuChjI80ROnDnWIF5JG2?= =?utf-8?q?Jp0+jKgSovIBQIybKJVb6Uljd9YN3iuKOE9FLuP/asjUO1lvI6VzxU/6?= =?utf-8?q?ZMnrux+4dFeivM4LGbpZXml7M/Raf1x16l2AX5raWn5ZmsrpFwOSEKBX?= =?utf-8?q?8ITOCL58Tsb9mxzsl3KHRAhHwzD+Q=3D=3D?= X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: e61033fb-f6c6-4180-bd1a-08de1ba8ba2a X-MS-Exchange-CrossTenant-AuthSource: GVXPR04MB9831.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Nov 2025 13:47:42.7435 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: FlFrLjEbR42snAkmNhL5s6HcQ9rfOfpfRSwd8TSoH2e9gohdiZW4YuKvQ2OlpWkwIfamEYnFkNNQLlFz++L+Tw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR04MB8020 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" Submit imx8-isi fix on behalf of Andrei. As stated in the commit message, this patch fixes an issue introduced by the imx8-isi multicamera support patch, merged in v0.5.2. Issue is about running multiple processes trying to list cameras while one process is already using one (or more) camera(s). Tested on i.MX8MP evk. --- Changes in v6: - Remove debug logs in PipelineHandler acquire and release functions. - Remove cameraName accessor in PipelineHandlerISI which is not used since v5. link to v5: https://patchwork.libcamera.org/cover/24962/ Changes in v5: - Move debug log into PipelineHandler acquire() and release() instead of PipelineHandlerISI. - Add 'const' after accessor function to mark it as non-mutating, like other accessors. - Rephrase accessor description as suggested by Barnabás. - Fix coding style issue in comments paragraph. - Add 'maybe_unused' flag in PipelineHandlerISI::acquireDevice camera parameter as it is not used anymore. link to v4: https://patchwork.libcamera.org/cover/24950/ Changes in v4: - Add an accessor for PipelineHandler::useCount_, and move back the variable into private to avoid documentation build issue. link to v3: https://patchwork.libcamera.org/cover/24850/ Changes in v3: - Move PipelineHandler::useCount_ variable to protected instead of private. - Use PipelineHandler::useCount_ variable instead of local acquireCount_. - Remove useless PipelineHandlerISI::releaseDevice(). link to v2: https://patchwork.libcamera.org/patch/24720/ Changes in v2: - Return boolean instead of int if an error is returned by setRouting in acquireDevice. - Check acquireCount_ is higher than 0 instead of 1, and increase counter only when setRouting is successful, or if counter is already non null. link to v1: https://patchwork.libcamera.org/patch/24706/ --- Andrei Gansari (1): pipeline: imx8-isi: Delay ISI routes config to acquire() time Antoine Bouyer (1): libcamera: pipeline_handler: Add accessor for useCount_ include/libcamera/internal/pipeline_handler.h | 1 + src/libcamera/pipeline/imx8-isi/imx8-isi.cpp | 24 ++++++++++++++----- src/libcamera/pipeline_handler.cpp | 6 +++++ 3 files changed, 25 insertions(+), 6 deletions(-)