From patchwork Fri Jul 25 10:33:47 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jacopo Mondi X-Patchwork-Id: 23956 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 2B70BC3237 for ; Fri, 25 Jul 2025 10:34:08 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id 96BB1690A8; Fri, 25 Jul 2025 12:34:01 +0200 (CEST) Authentication-Results: lancelot.ideasonboard.com; dkim=pass (1024-bit key; unprotected) header.d=ideasonboard.com header.i=@ideasonboard.com header.b="qcbQasQT"; dkim-atps=neutral Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [IPv6:2001:4b98:dc2:55:216:3eff:fef7:d647]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id 0D5ED69071 for ; Fri, 25 Jul 2025 12:33:58 +0200 (CEST) Received: from [192.168.0.172] (mob-5-90-139-29.net.vodafone.it [5.90.139.29]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id 4CFD578E; Fri, 25 Jul 2025 12:33:18 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1753439598; bh=Z2/WtdDONORQH89nZEXPQ2EnQzqm68lnaSQvjcasAW4=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=qcbQasQT15D3rIqEZ03q0aWvOkyp2cKM1PLatmoxChOLzg7Ja7tsjvwT4PRJca2Bn MfPvxJxluMAzj1a1QYkHa+rQBWaU3F3EyuRC9dH3Yv+PjgE1jSkDrNgqXoYQ0FYrY4 HnDjbWebFtT1A4feHVsNvnynnRZOx1yQ3ySYulmI= From: Jacopo Mondi Date: Fri, 25 Jul 2025 12:33:47 +0200 Subject: [PATCH 2/9] include: linux: videodev2: Add BIND_CONTEXT MIME-Version: 1.0 Message-Id: <20250725-multicontext-v1-2-ea558291e101@ideasonboard.com> References: <20250725-multicontext-v1-0-ea558291e101@ideasonboard.com> In-Reply-To: <20250725-multicontext-v1-0-ea558291e101@ideasonboard.com> To: libcamera-devel@lists.libcamera.org Cc: Jacopo Mondi X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=1306; i=jacopo.mondi@ideasonboard.com; h=from:subject:message-id; bh=Z2/WtdDONORQH89nZEXPQ2EnQzqm68lnaSQvjcasAW4=; b=owEBbQKS/ZANAwAKAXI0Bo8WoVY8AcsmYgBog12TFVED8n7/x4tTZbt5cQQds/8hpR05Hh5iu nPBdNsrMKWJAjMEAAEKAB0WIQS1xD1IgJogio9YOMByNAaPFqFWPAUCaINdkwAKCRByNAaPFqFW PKGsD/9TJvkqAgYHmli22CVhs0d4brShFAi7e1Io7B+a+lds4drx4qHGEob+Wpr92GiUaTwZ/9x maYqvgYCr39MpFSgfb7y25Ul6Yhdt5OZ/iVPQXZIzqpHbuqWIa3cdtHcolWHhuARJe5M9bFMHig /NNA3X90DYJFsAjLemkq5uu5NViwHsoSyJWHWECV14qZMk4zyrJlTgXSqJdHezMymNeOZfYI7/8 GsbNLMzdQVg2jyumQiR5f4hNQPwveWG/mq5khEtoNqFWf7sI1FiHy9lVg+xsb39OMXuyb39Gfmx Waqe/ST6Rl6VT32kGir08pISeU7toCn3HjsysfuyJAjEsK54sY1HbpJlUJtUD7qiyc7VzPgvMdU E+nTWNIKCzbEtGyeAySudHBmNJxiyaaH33jd/T6U2485Q8y9XX53LQPDEJQZk0dv6Lq/0LWgSbE G8H6con49+UlZYhRp+k/wHQt8+bYZ9iYCIzL7CRSipiCHOZbefJ1ZtLPnQGgXmrcM+8JpmI8NrN thYZTQ7MlsIuayDITDU1Vl75NCZCdjr2XjqTfUrAFRMqfg5auIUZEon1YVLI/fSiGsrodxal2Rc zOIZa8I+SciSf8Hx2gl+Lv9d5b0IQy+FvCfzG+CQvDc5Jk9C4QE4/W8aqw9qsEHrt3Af2i4e+Jp GalnnYpqgDuBbYA== X-Developer-Key: i=jacopo.mondi@ideasonboard.com; a=openpgp; fpr=72392EDC88144A65C701EA9BA5826A2587AD026B 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" Temporary update the media.h header from Linux kernel using the flags introduced by: https://patchwork.linuxtv.org/project/linux-media/patch/20250724-multicontext-mainline-2025-v2-6-c9b316773486@ideasonboard.com/ Signed-off-by: Jacopo Mondi Reviewed-by: Isaac Scott --- include/linux/videodev2.h | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/include/linux/videodev2.h b/include/linux/videodev2.h index 317d063a7e2bf5c54b01b8c2328a1857dc2f6fc3..3025db045572a867b1da12b26da703a31d1dd453 100644 --- a/include/linux/videodev2.h +++ b/include/linux/videodev2.h @@ -1011,6 +1011,14 @@ struct v4l2_jpegcompression { * always use APP0 */ }; +/* + * V I D E O D E V I C E C O N T E X T + */ + +struct v4l2_context { + __u32 context_fd; +}; + /* * M E M O R Y - M A P P I N G B U F F E R S */ @@ -2733,6 +2741,8 @@ struct v4l2_remove_buffers { #define VIDIOC_QUERY_EXT_CTRL _IOWR('V', 103, struct v4l2_query_ext_ctrl) #define VIDIOC_REMOVE_BUFS _IOWR('V', 104, struct v4l2_remove_buffers) +/* Context handling */ +#define VIDIOC_BIND_CONTEXT _IOW('V', 105, struct v4l2_context) /* Reminder: when adding new ioctls please add support for them to drivers/media/v4l2-core/v4l2-compat-ioctl32.c as well! */