{"id":9502,"url":"https://patchwork.libcamera.org/api/patches/9502/?format=json","web_url":"https://patchwork.libcamera.org/patch/9502/","project":{"id":1,"url":"https://patchwork.libcamera.org/api/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":"<20200907071604.8355-2-david.plowman@raspberrypi.com>","date":"2020-09-07T07:15:56","name":"[libcamera-devel,v8,1/8] libcamera: pipeline: raspberrypi: Revert \"Set sensor default orientation before configure()\"","commit_ref":null,"pull_url":null,"state":"accepted","archived":false,"hash":"08438caf827d0447a41a61ceec45ce9ba27cb2e7","submitter":{"id":42,"url":"https://patchwork.libcamera.org/api/people/42/?format=json","name":"David Plowman","email":"david.plowman@raspberrypi.com"},"delegate":null,"mbox":"https://patchwork.libcamera.org/patch/9502/mbox/","series":[{"id":1268,"url":"https://patchwork.libcamera.org/api/series/1268/?format=json","web_url":"https://patchwork.libcamera.org/project/libcamera/list/?series=1268","date":"2020-09-07T07:15:55","name":"2D transforms","version":8,"mbox":"https://patchwork.libcamera.org/series/1268/mbox/"}],"comments":"https://patchwork.libcamera.org/api/patches/9502/comments/","check":"pending","checks":"https://patchwork.libcamera.org/api/patches/9502/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 AA158BDB1C\n\tfor <parsemail@patchwork.libcamera.org>;\n\tMon,  7 Sep 2020 07:16:11 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id B449662B9D;\n\tMon,  7 Sep 2020 09:16:10 +0200 (CEST)","from mail-wm1-x334.google.com (mail-wm1-x334.google.com\n\t[IPv6:2a00:1450:4864:20::334])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 463BE60371\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tMon,  7 Sep 2020 09:16:09 +0200 (CEST)","by mail-wm1-x334.google.com with SMTP id a65so13282438wme.5\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tMon, 07 Sep 2020 00:16:09 -0700 (PDT)","from pi4-davidp.lan (plowpeople3.plus.com. [80.229.223.72])\n\tby smtp.gmail.com with ESMTPSA id\n\tb2sm25543636wmh.47.2020.09.07.00.16.07\n\t(version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n\tMon, 07 Sep 2020 00:16:08 -0700 (PDT)"],"Authentication-Results":"lancelot.ideasonboard.com;\n\tdkim=fail reason=\"signature verification failed\" (2048-bit key;\n\tunprotected) header.d=raspberrypi.com header.i=@raspberrypi.com\n\theader.b=\"e3iOECqe\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=raspberrypi.com; s=google;\n\th=from:to:cc:subject:date:message-id:in-reply-to:references\n\t:mime-version:content-transfer-encoding;\n\tbh=GXI6YekHnWkMPTQZaJl+U5wRCpF/l72zpWIww/sUItY=;\n\tb=e3iOECqe3OOllFavJf0LnJZ3xDoXg15PvrID79+2O7GLlcv7n4gLAEAlFYrIj0Mm+1\n\teGT/0lIQGMWxw3a05fb/zB6eES8g2DztfsfVKhgkjqkHM0RxCPDoXCLZfxfRC77rGNNS\n\tZK8kbQjFJAOWcX9GapaiQs1G/b4K1wNwWGapaP94AsmYx2JPRib7X7lekNBU4oay4izh\n\tnFztEdXrXflSOR7pSNtPX17mClD4+NQL7CkDtBcfWNgBB+9vyeEcX/HCtzgqRZxYbTqX\n\tj8Id4Zp9bXokLMOU7TjD/98zOJ4Xb9ChYKIt30J68cqrZKPr7b0cThpZjjAnGt8ZCLh2\n\tT4MQ==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20161025;\n\th=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to\n\t:references:mime-version:content-transfer-encoding;\n\tbh=GXI6YekHnWkMPTQZaJl+U5wRCpF/l72zpWIww/sUItY=;\n\tb=UAXMh+qDk2coOQjmMFQPwYcpRD8ysEYLDubqyJQsqHQIK6B5MqNUlbA/Fj0oaAKfj5\n\t2TpEyLnun4UBFixT5MVhtKAbuhngeFhXY+0UWngIpVTXqiwxA/48yvWMQ8LC1dhSk9qn\n\toN8t3fjCQofDhiaLoZpdWmpom3HZSWsQSxcaVX79FM9tmX3D8ZnEMTiDGpPqJdzbn6jq\n\tgfUTvUEfvE1YYjefhM9Xc9oy30+uMAWzSdS3j8PFahonnc2xotzrt5+aRXlNzO9UDQgw\n\tmt330w7w3Nmftn1SMwaygLdbnaU2WMbYac4AfHfBuSzTU7LjAosYkMMwcSf7az4Qerp/\n\tl4mA==","X-Gm-Message-State":"AOAM53102dngvve/o1seDcvLCUqY7xVKGvsI5p8/GhW0zDUQhdQ+EraH\n\tXM/NlM+BKS/T1Sg6KFTYeGQY/ocMz479/g==","X-Google-Smtp-Source":"ABdhPJwuvhd9/W9AdILFLedgg0lYEQ5qXtdATlO1CWpd0lAFUV1LRX/hBAxwLf7DfPdjZgHzPz8pwg==","X-Received":"by 2002:a7b:c3da:: with SMTP id\n\tt26mr18402240wmj.23.1599462968714; \n\tMon, 07 Sep 2020 00:16:08 -0700 (PDT)","From":"David Plowman <david.plowman@raspberrypi.com>","To":"libcamera-devel@lists.libcamera.org","Date":"Mon,  7 Sep 2020 08:15:56 +0100","Message-Id":"<20200907071604.8355-2-david.plowman@raspberrypi.com>","X-Mailer":"git-send-email 2.20.1","In-Reply-To":"<20200907071604.8355-1-david.plowman@raspberrypi.com>","References":"<20200907071604.8355-1-david.plowman@raspberrypi.com>","MIME-Version":"1.0","Subject":"[libcamera-devel] [PATCH v8 1/8] libcamera: pipeline: raspberrypi:\n\tRevert \"Set sensor default orientation before configure()\"","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":"This reverts commit 1e8c91b65695449c5246d17ba7dc439c8058b781.\n\nNow that we shall be implementing application-defined 2D transforms\nit's no longer possible to set the sensor orientation so early on. We\nhave to wait until we have the CameraConfiguration object as that's\nwhere the application puts its choice of transform.\n\nSigned-off-by: David Plowman <david.plowman@raspberrypi.com>\nReviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>\nReviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>\n---\n src/libcamera/pipeline/raspberrypi/raspberrypi.cpp | 14 +++++++-------\n 1 file changed, 7 insertions(+), 7 deletions(-)","diff":"diff --git a/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp b/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp\nindex ce43af3..f78b73e 100644\n--- a/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp\n+++ b/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp\n@@ -962,13 +962,6 @@ bool PipelineHandlerRPi::match(DeviceEnumerator *enumerator)\n \t/* Initialize the camera properties. */\n \tdata->properties_ = data->sensor_->properties();\n \n-\t/* Configure the H/V flip controls based on the sensor rotation. */\n-\tControlList ctrls(data->unicam_[Unicam::Image].dev()->controls());\n-\tint32_t rotation = data->properties_.get(properties::Rotation);\n-\tctrls.set(V4L2_CID_HFLIP, static_cast<int32_t>(!!rotation));\n-\tctrls.set(V4L2_CID_VFLIP, static_cast<int32_t>(!!rotation));\n-\tdata->unicam_[Unicam::Image].dev()->setControls(&ctrls);\n-\n \t/*\n \t * List the available output streams.\n \t * Currently cannot do Unicam streams!\n@@ -1173,6 +1166,13 @@ int RPiCameraData::configureIPA()\n \t\t\t\t\t      { V4L2_CID_EXPOSURE, result.data[1] } });\n \t\t\tsensorMetadata_ = result.data[2];\n \t\t}\n+\n+\t\t/* Configure the H/V flip controls based on the sensor rotation. */\n+\t\tControlList ctrls(unicam_[Unicam::Image].dev()->controls());\n+\t\tint32_t rotation = sensor_->properties().get(properties::Rotation);\n+\t\tctrls.set(V4L2_CID_HFLIP, static_cast<int32_t>(!!rotation));\n+\t\tctrls.set(V4L2_CID_VFLIP, static_cast<int32_t>(!!rotation));\n+\t\tunicam_[Unicam::Image].dev()->setControls(&ctrls);\n \t}\n \n \tif (result.operation & RPI_IPA_CONFIG_SENSOR) {\n","prefixes":["libcamera-devel","v8","1/8"]}