Patch Detail
Show a patch.
GET /api/1.1/patches/13371/?format=api
{ "id": 13371, "url": "https://patchwork.libcamera.org/api/1.1/patches/13371/?format=api", "web_url": "https://patchwork.libcamera.org/patch/13371/", "project": { "id": 1, "url": "https://patchwork.libcamera.org/api/1.1/projects/1/?format=api", "name": "libcamera", "link_name": "libcamera", "list_id": "libcamera_core", "list_email": "libcamera-devel@lists.libcamera.org", "web_url": "", "scm_url": "", "webscm_url": "" }, "msgid": "<20210816143536.125939-2-umang.jain@ideasonboard.com>", "date": "2021-08-16T14:35:36", "name": "[libcamera-devel,v2,2/2] pipeline: ipu3: Skip recording timestamp for cancelled buffers", "commit_ref": null, "pull_url": null, "state": "accepted", "archived": false, "hash": "0a42213a0901cee5a5b95db575e6646e28655f81", "submitter": { "id": 86, "url": "https://patchwork.libcamera.org/api/1.1/people/86/?format=api", "name": "Umang Jain", "email": "umang.jain@ideasonboard.com" }, "delegate": { "id": 12, "url": "https://patchwork.libcamera.org/api/1.1/users/12/?format=api", "username": "uajain", "first_name": "Umang", "last_name": "Jain", "email": "umang.jain@ideasonboard.com" }, "mbox": "https://patchwork.libcamera.org/patch/13371/mbox/", "series": [ { "id": 2361, "url": "https://patchwork.libcamera.org/api/1.1/series/2361/?format=api", "web_url": "https://patchwork.libcamera.org/project/libcamera/list/?series=2361", "date": "2021-08-16T14:35:35", "name": "[libcamera-devel,v2,1/2] pipeline: vimc: Force complete of request on cancelled buffers", "version": 2, "mbox": "https://patchwork.libcamera.org/series/2361/mbox/" } ], "comments": "https://patchwork.libcamera.org/api/patches/13371/comments/", "check": "pending", "checks": "https://patchwork.libcamera.org/api/patches/13371/checks/", "tags": {}, "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 49080BD87C\n\tfor <parsemail@patchwork.libcamera.org>;\n\tMon, 16 Aug 2021 14:35:48 +0000 (UTC)", "from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 03F9C688A3;\n\tMon, 16 Aug 2021 16:35:48 +0200 (CEST)", "from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[213.167.242.64])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 108CA68893\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tMon, 16 Aug 2021 16:35:46 +0200 (CEST)", "from perceval.ideasonboard.com (unknown [103.238.109.15])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id E51D53E5;\n\tMon, 16 Aug 2021 16:35:44 +0200 (CEST)" ], "Authentication-Results": "lancelot.ideasonboard.com;\n\tdkim=fail reason=\"signature verification failed\" (1024-bit key;\n\tunprotected) header.d=ideasonboard.com header.i=@ideasonboard.com\n\theader.b=\"FTzuDEDC\"; dkim-atps=neutral", "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1629124545;\n\tbh=G3nMivOvayeTu0fmzgNMwJY868TGSllUxk4YTM3KylM=;\n\th=From:To:Cc:Subject:Date:In-Reply-To:References:From;\n\tb=FTzuDEDCumTdf4AL9Rwg995JQkBUjCzCyTHCjQwTRDWDqwEDXUgGOKS/tCiev7zDk\n\t+CGxK0NQhngNp3NFw8iXX8lyZrapnQxIS3rJXLiYlV41Jt/YohbzpsTLF6blzh3ZZF\n\tYuWdH3/QC/DE6H3tnOGl327uVd4EOF2afGjLWxcw=", "From": "Umang Jain <umang.jain@ideasonboard.com>", "To": "libcamera-devel@lists.libcamera.org", "Date": "Mon, 16 Aug 2021 20:05:36 +0530", "Message-Id": "<20210816143536.125939-2-umang.jain@ideasonboard.com>", "X-Mailer": "git-send-email 2.31.1", "In-Reply-To": "<20210816143536.125939-1-umang.jain@ideasonboard.com>", "References": "<20210816143536.125939-1-umang.jain@ideasonboard.com>", "MIME-Version": "1.0", "Content-Transfer-Encoding": "8bit", "Subject": "[libcamera-devel] [PATCH v2 2/2] pipeline: ipu3: Skip recording\n\ttimestamp for cancelled buffers", "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": "There is no point in recording sensor's timestamp when V4L2VideoDevice\nhas marked the frame buffers with FrameMetadata::FrameCancelled\n(happens when the streams are stopped). The cancelled buffers\nhandling block will proceed to cleanup and cause an early\nreturn in cio2BufferReady() anyway and we are sure that at this\npoint, there is no useful purposes of setting the timestamp.\n\nSigned-off-by: Umang Jain <umang.jain@ideasonboard.com>\n---\n src/libcamera/pipeline/ipu3/ipu3.cpp | 18 +++++++++---------\n 1 file changed, 9 insertions(+), 9 deletions(-)", "diff": "diff --git a/src/libcamera/pipeline/ipu3/ipu3.cpp b/src/libcamera/pipeline/ipu3/ipu3.cpp\nindex 6e26a7b7..1c4776be 100644\n--- a/src/libcamera/pipeline/ipu3/ipu3.cpp\n+++ b/src/libcamera/pipeline/ipu3/ipu3.cpp\n@@ -1318,15 +1318,6 @@ void IPU3CameraData::cio2BufferReady(FrameBuffer *buffer)\n \n \tRequest *request = info->request;\n \n-\t/*\n-\t * Record the sensor's timestamp in the request metadata.\n-\t *\n-\t * \\todo The sensor timestamp should be better estimated by connecting\n-\t * to the V4L2Device::frameStart signal.\n-\t */\n-\trequest->metadata().set(controls::SensorTimestamp,\n-\t\t\t\tbuffer->metadata().timestamp);\n-\n \t/* If the buffer is cancelled force a complete of the whole request. */\n \tif (buffer->metadata().status == FrameMetadata::FrameCancelled) {\n \t\tfor (auto it : request->buffers()) {\n@@ -1340,6 +1331,15 @@ void IPU3CameraData::cio2BufferReady(FrameBuffer *buffer)\n \t\treturn;\n \t}\n \n+\t/*\n+\t * Record the sensor's timestamp in the request metadata.\n+\t *\n+\t * \\todo The sensor timestamp should be better estimated by connecting\n+\t * to the V4L2Device::frameStart signal.\n+\t */\n+\trequest->metadata().set(controls::SensorTimestamp,\n+\t\t\t\tbuffer->metadata().timestamp);\n+\n \tif (request->findBuffer(&rawStream_))\n \t\tpipe_->completeBuffer(request, buffer);\n \n", "prefixes": [ "libcamera-devel", "v2", "2/2" ] }