Patch Detail
Show a patch.
GET /api/1.1/patches/15012/?format=api
{ "id": 15012, "url": "https://patchwork.libcamera.org/api/1.1/patches/15012/?format=api", "web_url": "https://patchwork.libcamera.org/patch/15012/", "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": "<20211203125359.25191-1-kieran.bingham@ideasonboard.com>", "date": "2021-12-03T12:53:59", "name": "[libcamera-devel] libcamera: ipu3: Only process focus if we have a lens", "commit_ref": "294663eece8c067d268442724b969c9dfa081b0a", "pull_url": null, "state": "accepted", "archived": false, "hash": "9d6376519ea1f1a84ce5d5a5c61000f6673e2011", "submitter": { "id": 4, "url": "https://patchwork.libcamera.org/api/1.1/people/4/?format=api", "name": "Kieran Bingham", "email": "kieran.bingham@ideasonboard.com" }, "delegate": null, "mbox": "https://patchwork.libcamera.org/patch/15012/mbox/", "series": [ { "id": 2811, "url": "https://patchwork.libcamera.org/api/1.1/series/2811/?format=api", "web_url": "https://patchwork.libcamera.org/project/libcamera/list/?series=2811", "date": "2021-12-03T12:53:59", "name": "[libcamera-devel] libcamera: ipu3: Only process focus if we have a lens", "version": 1, "mbox": "https://patchwork.libcamera.org/series/2811/mbox/" } ], "comments": "https://patchwork.libcamera.org/api/patches/15012/comments/", "check": "pending", "checks": "https://patchwork.libcamera.org/api/patches/15012/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 6CAD5BF415\n\tfor <parsemail@patchwork.libcamera.org>;\n\tFri, 3 Dec 2021 12:54:12 +0000 (UTC)", "from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id BC0BD607DE;\n\tFri, 3 Dec 2021 13:54:11 +0100 (CET)", "from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[IPv6:2001:4b98:dc2:55:216:3eff:fef7:d647])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 55C1860725\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tFri, 3 Dec 2021 13:54:10 +0100 (CET)", "from Monstersaurus.local\n\t(cpc89244-aztw30-2-0-cust3082.18-1.cable.virginm.net [86.31.172.11])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id D0C472A5;\n\tFri, 3 Dec 2021 13:54:09 +0100 (CET)" ], "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=\"kiKZASOs\"; dkim-atps=neutral", "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1638536049;\n\tbh=hXlDwnNj0EiemImTazlCvHHMRiS1HG4QzuljboKzJY4=;\n\th=From:To:Cc:Subject:Date:From;\n\tb=kiKZASOs7AHbyY8fH6C9j1m0xqodFw7Us/1z1F+i4pTdZv58XbTkM2Rc34rbGtIJW\n\tY96kLnNL3DAYO/BznqKoVRAdzMobiXW3OGVnFc83L4Bk3/Y2k1YwQAzsRPMB/JLOq+\n\tqcE05Z9SW7K8XPNrbHjoPF/1m3pEbYVqdZ0Cq+W4=", "From": "Kieran Bingham <kieran.bingham@ideasonboard.com>", "To": "libcamera devel <libcamera-devel@lists.libcamera.org>", "Date": "Fri, 3 Dec 2021 12:53:59 +0000", "Message-Id": "<20211203125359.25191-1-kieran.bingham@ideasonboard.com>", "X-Mailer": "git-send-email 2.30.2", "MIME-Version": "1.0", "Content-Transfer-Encoding": "8bit", "Subject": "[libcamera-devel] [PATCH] libcamera: ipu3: Only process focus if we\n\thave a lens", "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": "If there is no lens detected by the system, then we will not be able to\nset the control, so we can skip processing of the list.\n\nFurthermore, if the IPA has not set a V4L2_CID_FOCUS_ABSOLUTE control,\nthen a warning will be printed as the lensControls.get() will not\nsucceed.\n\nBreak out of the control parsing when there is no CameraLens\ndevice, or if there is no absolute focus control set by the IPA.\n\nSigned-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>\n---\n src/libcamera/pipeline/ipu3/ipu3.cpp | 12 +++++++++---\n 1 file changed, 9 insertions(+), 3 deletions(-)", "diff": "diff --git a/src/libcamera/pipeline/ipu3/ipu3.cpp b/src/libcamera/pipeline/ipu3/ipu3.cpp\nindex 1215bdb84224..16380d2091b2 100644\n--- a/src/libcamera/pipeline/ipu3/ipu3.cpp\n+++ b/src/libcamera/pipeline/ipu3/ipu3.cpp\n@@ -1242,13 +1242,19 @@ void IPU3CameraData::queueFrameAction(unsigned int id,\n \t\tconst ControlList &sensorControls = action.sensorControls;\n \t\tdelayedCtrls_->push(sensorControls);\n \n+\t\tCameraLens *focusLens = cio2_.sensor()->focusLens();\n+\t\tif (!focusLens)\n+\t\t\tbreak;\n+\n \t\tconst ControlList lensControls = action.lensControls;\n+\t\tif (!lensControls.contains(V4L2_CID_FOCUS_ABSOLUTE))\n+\t\t\tbreak;\n+\n \t\tconst ControlValue &focusValue =\n \t\t\tlensControls.get(V4L2_CID_FOCUS_ABSOLUTE);\n \n-\t\tCameraLens *focusLens = cio2_.sensor()->focusLens();\n-\t\tif (focusLens && !focusValue.isNone())\n-\t\t\tfocusLens->setFocusPostion(focusValue.get<int32_t>());\n+\t\tfocusLens->setFocusPostion(focusValue.get<int32_t>());\n+\n \t\tbreak;\n \t}\n \tcase ipa::ipu3::ActionParamFilled: {\n", "prefixes": [ "libcamera-devel" ] }