{"id":10782,"url":"https://patchwork.libcamera.org/api/1.1/patches/10782/?format=json","web_url":"https://patchwork.libcamera.org/patch/10782/","project":{"id":1,"url":"https://patchwork.libcamera.org/api/1.1/projects/1/?format=json","name":"libcamera","link_name":"libcamera","list_id":"libcamera_core","list_email":"libcamera-devel@lists.libcamera.org","web_url":"","scm_url":"","webscm_url":""},"msgid":"<20201230180120.78407-5-jacopo@jmondi.org>","date":"2020-12-30T18:01:18","name":"[libcamera-devel,v3,4/6] libcamera: camera_sensor: Default 'location' to External","commit_ref":null,"pull_url":null,"state":"superseded","archived":false,"hash":"ed42903c711b4ba3590ee77dd8c2c354045bda60","submitter":{"id":3,"url":"https://patchwork.libcamera.org/api/1.1/people/3/?format=json","name":"Jacopo Mondi","email":"jacopo@jmondi.org"},"delegate":null,"mbox":"https://patchwork.libcamera.org/patch/10782/mbox/","series":[{"id":1560,"url":"https://patchwork.libcamera.org/api/1.1/series/1560/?format=json","web_url":"https://patchwork.libcamera.org/project/libcamera/list/?series=1560","date":"2020-12-30T18:01:14","name":"libcamera: camera_sensor: Make validation more strict","version":3,"mbox":"https://patchwork.libcamera.org/series/1560/mbox/"}],"comments":"https://patchwork.libcamera.org/api/patches/10782/comments/","check":"pending","checks":"https://patchwork.libcamera.org/api/patches/10782/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 9A859C0F1C\n\tfor <parsemail@patchwork.libcamera.org>;\n\tWed, 30 Dec 2020 18:01:17 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 74E5A6200C;\n\tWed, 30 Dec 2020 19:01:17 +0100 (CET)","from relay7-d.mail.gandi.net (relay7-d.mail.gandi.net\n\t[217.70.183.200])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 17A5E61D64\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tWed, 30 Dec 2020 19:01:13 +0100 (CET)","from uno.lan (2-224-242-101.ip172.fastwebnet.it [2.224.242.101])\n\t(Authenticated sender: jacopo@jmondi.org)\n\tby relay7-d.mail.gandi.net (Postfix) with ESMTPSA id B7B2320006\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tWed, 30 Dec 2020 18:01:12 +0000 (UTC)"],"X-Originating-IP":"2.224.242.101","From":"Jacopo Mondi <jacopo@jmondi.org>","To":"libcamera-devel@lists.libcamera.org","Date":"Wed, 30 Dec 2020 19:01:18 +0100","Message-Id":"<20201230180120.78407-5-jacopo@jmondi.org>","X-Mailer":"git-send-email 2.29.2","In-Reply-To":"<20201230180120.78407-1-jacopo@jmondi.org>","References":"<20201230180120.78407-1-jacopo@jmondi.org>","MIME-Version":"1.0","Subject":"[libcamera-devel] [PATCH v3 4/6] libcamera: camera_sensor: Default\n\t'location' to External","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>","Content-Type":"text/plain; charset=\"us-ascii\"","Content-Transfer-Encoding":"7bit","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"},"content":"If the sensor driver does not report the camera location default it\nto 'External' instead of 'Front'.\n\nAs the camera location is used to construct the camera unique name\npresented to the user, it makes more sense to report multiple 'External'\ncameras instead of multiple 'Front' ones.\n\nSigned-off-by: Jacopo Mondi <jacopo@jmondi.org>\n---\n src/libcamera/camera_sensor.cpp | 13 ++++++-------\n 1 file changed, 6 insertions(+), 7 deletions(-)","diff":"diff --git a/src/libcamera/camera_sensor.cpp b/src/libcamera/camera_sensor.cpp\nindex 2ce19a40b448..1a316da45511 100644\n--- a/src/libcamera/camera_sensor.cpp\n+++ b/src/libcamera/camera_sensor.cpp\n@@ -352,7 +352,6 @@ int CameraSensor::initProperties()\n \tconst ControlInfoMap &controls = subdev_->controls();\n \tint32_t propertyValue;\n \n-\t/* Camera Location: default is front location. */\n \tconst auto &orientation = controls.find(V4L2_CID_CAMERA_ORIENTATION);\n \tif (orientation != controls.end()) {\n \t\tint32_t v4l2Orientation = orientation->second.def().get<int32_t>();\n@@ -361,22 +360,22 @@ int CameraSensor::initProperties()\n \t\tdefault:\n \t\t\tLOG(CameraSensor, Warning)\n \t\t\t\t<< \"Unsupported camera location \"\n-\t\t\t\t<< v4l2Orientation << \", setting to Front\";\n+\t\t\t\t<< v4l2Orientation << \", setting to External\";\n \t\t\t/* Fall-through */\n+\t\tcase V4L2_CAMERA_ORIENTATION_EXTERNAL:\n+\t\t\tpropertyValue = properties::CameraLocationExternal;\n+\t\t\tbreak;\n \t\tcase V4L2_CAMERA_ORIENTATION_FRONT:\n \t\t\tpropertyValue = properties::CameraLocationFront;\n \t\t\tbreak;\n \t\tcase V4L2_CAMERA_ORIENTATION_BACK:\n \t\t\tpropertyValue = properties::CameraLocationBack;\n \t\t\tbreak;\n-\t\tcase V4L2_CAMERA_ORIENTATION_EXTERNAL:\n-\t\t\tpropertyValue = properties::CameraLocationExternal;\n-\t\t\tbreak;\n \t\t}\n \t} else {\n-\t\tpropertyValue = properties::CameraLocationFront;\n+\t\tpropertyValue = properties::CameraLocationExternal;\n \t\tLOG(CameraSensor, Debug)\n-\t\t\t<< \"Location property defaulted to 'Front Camera'\";\n+\t\t\t<< \"Location property defaulted to 'External Camera'\";\n \t}\n \tproperties_.set(properties::Location, propertyValue);\n \n","prefixes":["libcamera-devel","v3","4/6"]}