From patchwork Tue Oct 20 05:23:33 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Prasanth R X-Patchwork-Id: 28531 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 19951C324C for ; Tue, 20 Oct 2026 05:24:32 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id 3140B68ECB; Tue, 20 Oct 2026 07:24:31 +0200 (CEST) Authentication-Results: lancelot.ideasonboard.com; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="G+1bORDW"; dkim-atps=neutral Received: from mail-pg1-x52d.google.com (mail-pg1-x52d.google.com [IPv6:2607:f8b0:4864:20::52d]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id 64FB868E22 for ; Tue, 20 Oct 2026 07:24:29 +0200 (CEST) Received: by mail-pg1-x52d.google.com with SMTP id 41be03b00d2f7-cd632f7a4a1so1041423a12.3 for ; Mon, 19 Oct 2026 22:24:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1792473867; x=1793078667; darn=lists.libcamera.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to:content-type; bh=i50g1GULLWncB56sjEWW6IA4YozmdbOH3hmq7RFHcXQ=; b=G+1bORDW+saopc9rbRnu5aNxfTMpEW06lWsUzgyG9NJpUVsOR1tg/c7YUWdXTsmCZj 8Hxn2ILVSLmWxtGeKLuhM7qwgZgHOZyFDmTQC8BW4tLjrx/IDI6S4H0hl2Yp8CF5p6U3 16ILIAikKdqa3Vte8ygJZcg3/3+76PV1Eabl/FivDiTkPai6E7TQsbtoS6gnjgdSHwbC k6uvAq9vjzKUPxVhfy4+g3lIPP/qqoml+eEYZ8PECFCSc3W5fNAbhm480nQBNLcztZsg E6aSATGYkp9cCC/5e4+yXTb1lBnAVq3UD2xU9uDZD1VMexwhecXX6mCb8u/0so4FyQCA QBPw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1792473867; x=1793078667; h=content-transfer-encoding:mime-version: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=i50g1GULLWncB56sjEWW6IA4YozmdbOH3hmq7RFHcXQ=; b=KLB77rEfF0bJXFb8bAcodyZz2E5JMGMIGnBUHrTEhz6QBUZfb6LPU7OEN+mGAtJ5pL kAQkWCwZMHbzXzFSmG59EG0+cjjg7OA2+bp+yKBBrJm1xGIVeQ1lEl7KikDYCc/0+jPm eTvirJcqlIK42M0fpfEUtfvr0Jsb8menjnktS/9YZyhXZY/uvsO0dbBfF+5LITMMwqDC G0oJqpqtFsW8vS7+6TBoWsfVgY6p0nS7f7syTwkyYhH1FfEzcw9IH4esnrs2dICa894I 3w2mI2I75LF0kebczJJSKLbLYl0Lhteyuo6nCW7/Cq0ZGMlh1y2UnYyB+w4UZmuCuPE3 d8PA== X-Gm-Message-State: AFq9FYIAYOmSn7GmI9Ny4fsEFlKGMdcgCAd3khDjCCe4+oo2OH+IQloF mf+DwEaGTSHCqBydoYRjrAgrYO9JXqZcbMSAQ0pO+hDuGElwcp67tDjEp/Zr3vG6 X-Gm-Gg: AYBFou3aXIpwfxfQ35PAacY/gC+M4hj0IjEWXPBJ9zDi/vVW8/XDmiqiQyulGCOjqP6 mFvjw22QX69XJP+i/l4okk9r6GmcTC0BopanFBDRwOgx7gIcyq4pNZh6g6GrEGHWgIrN8apAxT+ cmZ2Nl6D8f1X/SSLHR6VZAe7aichF9AYg3qEb5eI7/UiL33F+xAYOFnE6UCFfkmv9QQQfkL39nF xTPEtsdb7hO0/NBid89gZSg8pnm5ZeZvvkOa3zDfwt0JcH2gXYOCr0UOdMYdAUZnQ1DqrWP+f7B 2GcwoMqZoiQaD5pa1Ejlfluvs3MUbeQ7gEKd4zyI79Px0vXC/I8cLYUob6thz/EbIJvlVt18IM4 fN2o2/A1bo8zEvwLJhmuLAYtzFvy+Kc2hmIwuoR5cPZvH1HBm9mq2x4le3XQ5QGx1TSa/vaV+8Q i6bAdmYz24+get7ZDbEBmYSCYu29jmL23uEsQCPd7J0HtpmewsV9Z7ZtIpcjWPr15evgfsJq566 aOqegzmXSiW1bM2Bq4xxDqSsAkQCEf16g== X-Received: by 2002:a17:90b:1d43:b0:3ac:9ed8:f309 with SMTP id 98e67ed59e1d1-3acef14549fmr8153822a91.29.1792473867444; Mon, 19 Oct 2026 22:24:27 -0700 (PDT) Received: from prasanth.alps.lineo.co.jp (vpn1.lineo.co.jp. [203.141.200.204]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-3acd3b16c2asm8839279a91.2.2026.10.19.22.24.25 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 19 Oct 2026 22:24:26 -0700 (PDT) From: Prasanth R To: libcamera-devel@lists.libcamera.org Cc: laurent.pinchart@ideasonboard.com, kieran.bingham@ideasonboard.com, Prasanth R Subject: [PATCH v2] v4l2: v4l2_camera_proxy: Dispatch VIDIOC_PREPARE_BUF Date: Tue, 20 Oct 2026 14:23:33 +0900 Message-Id: <20261020052333.123580-1-ragaprasanth@gmail.com> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 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" Commit b5225f00cde0 added VIDIOC_PREPARE_BUF to the supported ioctls, but did not add it to the switch case. Add the missing case. Fixes: b5225f00cde0 ("v4l2: V4L2CameraProxy: Add support for PREPARE_BUF as one of the supported ioctl") Signed-off-by: Prasanth R --- src/v4l2/v4l2_camera_proxy.cpp | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/v4l2/v4l2_camera_proxy.cpp b/src/v4l2/v4l2_camera_proxy.cpp index 7f8522d5e..d1f3ac7df 100644 --- a/src/v4l2/v4l2_camera_proxy.cpp +++ b/src/v4l2/v4l2_camera_proxy.cpp @@ -708,7 +708,8 @@ int V4L2CameraProxy::vidioc_qbuf(V4L2CameraFile *file, struct v4l2_buffer *arg) if (ret < 0) return ret; - buffers_[arg->index].flags |= V4L2_BUF_FLAG_QUEUED; + buffers_[arg->index].flags |= V4L2_BUF_FLAG_QUEUED | + V4L2_BUF_FLAG_PREPARED; arg->flags = buffers_[arg->index].flags; @@ -835,7 +836,8 @@ int V4L2CameraProxy::vidioc_streamoff(V4L2CameraFile *file, int *arg) int ret = vcam_->streamOff(); for (struct v4l2_buffer &buf : buffers_) - buf.flags &= ~(V4L2_BUF_FLAG_QUEUED | V4L2_BUF_FLAG_DONE); + buf.flags &= ~(V4L2_BUF_FLAG_QUEUED | V4L2_BUF_FLAG_DONE | + V4L2_BUF_FLAG_PREPARED); return ret; } @@ -997,6 +999,9 @@ int V4L2CameraProxy::ioctl(V4L2CameraFile *file, unsigned long longRequest, void case VIDIOC_QUERYBUF: ret = vidioc_querybuf(file, static_cast(arg)); break; + case VIDIOC_PREPARE_BUF: + ret = vidioc_prepare_buf(file, static_cast(arg)); + break; case VIDIOC_QBUF: ret = vidioc_qbuf(file, static_cast(arg)); break;