{"id":8452,"url":"https://patchwork.libcamera.org/api/1.1/patches/8452/?format=json","web_url":"https://patchwork.libcamera.org/patch/8452/","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":"<20200627030043.2088585-11-niklas.soderlund@ragnatech.se>","date":"2020-06-27T03:00:40","name":"[libcamera-devel,10/13] libcamera: ipu3: Remove the active flag from IPU3Stream","commit_ref":null,"pull_url":null,"state":"superseded","archived":false,"hash":"29aa4bac0ec0287e4ca638110b3886745444776c","submitter":{"id":5,"url":"https://patchwork.libcamera.org/api/1.1/people/5/?format=json","name":"Niklas Söderlund","email":"niklas.soderlund@ragnatech.se"},"delegate":null,"mbox":"https://patchwork.libcamera.org/patch/8452/mbox/","series":[{"id":1046,"url":"https://patchwork.libcamera.org/api/1.1/series/1046/?format=json","web_url":"https://patchwork.libcamera.org/project/libcamera/list/?series=1046","date":"2020-06-27T03:00:30","name":"libcamera: ipu3: Refactoring of ImgU","version":1,"mbox":"https://patchwork.libcamera.org/series/1046/mbox/"}],"comments":"https://patchwork.libcamera.org/api/patches/8452/comments/","check":"pending","checks":"https://patchwork.libcamera.org/api/patches/8452/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 E735FC2E67\n\tfor <parsemail@patchwork.libcamera.org>;\n\tSat, 27 Jun 2020 03:01:00 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id A552260B05;\n\tSat, 27 Jun 2020 05:01:00 +0200 (CEST)","from bin-mail-out-06.binero.net (bin-mail-out-06.binero.net\n\t[195.74.38.229])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 43F8A609E1\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tSat, 27 Jun 2020 05:00:57 +0200 (CEST)","from bismarck.berto.se (p4fca2eca.dip0.t-ipconnect.de\n\t[79.202.46.202]) by bin-vsp-out-03.atm.binero.net (Halon) with ESMTPA\n\tid 583ef079-b822-11ea-86ee-0050569116f7;\n\tSat, 27 Jun 2020 05:00:23 +0200 (CEST)"],"X-Halon-ID":"583ef079-b822-11ea-86ee-0050569116f7","Authorized-sender":"niklas@soderlund.pp.se","From":"=?utf-8?q?Niklas_S=C3=B6derlund?= <niklas.soderlund@ragnatech.se>","To":"libcamera-devel@lists.libcamera.org","Date":"Sat, 27 Jun 2020 05:00:40 +0200","Message-Id":"<20200627030043.2088585-11-niklas.soderlund@ragnatech.se>","X-Mailer":"git-send-email 2.27.0","In-Reply-To":"<20200627030043.2088585-1-niklas.soderlund@ragnatech.se>","References":"<20200627030043.2088585-1-niklas.soderlund@ragnatech.se>","MIME-Version":"1.0","Subject":"[libcamera-devel] [PATCH 10/13] libcamera: ipu3: Remove the active\n\tflag from IPU3Stream","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=\"utf-8\"","Content-Transfer-Encoding":"base64","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"},"content":"The active_ flag is only used inside one function, remove the global\nflag and handle it inside the single function.\n\nSigned-off-by: Niklas Söderlund <niklas.soderlund@ragnatech.se>\n---\n src/libcamera/pipeline/ipu3/ipu3.cpp | 20 +++++++-------------\n 1 file changed, 7 insertions(+), 13 deletions(-)","diff":"diff --git a/src/libcamera/pipeline/ipu3/ipu3.cpp b/src/libcamera/pipeline/ipu3/ipu3.cpp\nindex 1f320dc166767bab..b72b631cdc051aab 100644\n--- a/src/libcamera/pipeline/ipu3/ipu3.cpp\n+++ b/src/libcamera/pipeline/ipu3/ipu3.cpp\n@@ -33,13 +33,6 @@ LOG_DEFINE_CATEGORY(IPU3)\n \n class IPU3Stream : public Stream\n {\n-public:\n-\tIPU3Stream()\n-\t\t: active_(false)\n-\t{\n-\t}\n-\n-\tbool active_;\n };\n \n class IPU3CameraData : public CameraData\n@@ -486,8 +479,8 @@ int PipelineHandlerIPU3::configure(Camera *camera, CameraConfiguration *c)\n \t\treturn ret;\n \n \t/* Apply the format to the configured streams output devices. */\n-\toutStream->active_ = false;\n-\tvfStream->active_ = false;\n+\tbool outActive = false;\n+\tbool vfActive = false;\n \n \tfor (unsigned int i = 0; i < config->size(); ++i) {\n \t\t/*\n@@ -499,7 +492,6 @@ int PipelineHandlerIPU3::configure(Camera *camera, CameraConfiguration *c)\n \t\tIPU3Stream *stream = const_cast<IPU3Stream *>(config->streams()[i]);\n \t\tStreamConfiguration &cfg = (*config)[i];\n \n-\t\tstream->active_ = true;\n \t\tcfg.setStream(stream);\n \n \t\tif (stream == outStream) {\n@@ -508,12 +500,14 @@ int PipelineHandlerIPU3::configure(Camera *camera, CameraConfiguration *c)\n \t\t\t\treturn ret;\n \n \t\t\tcfg.stride = outputFormat.planes[0].bpl;\n+\t\t\toutActive = true;\n \t\t} else if (stream == vfStream) {\n \t\t\tret = imgu->configureViewfinder(cfg, &outputFormat);\n \t\t\tif (ret)\n \t\t\t\treturn ret;\n \n \t\t\tcfg.stride = outputFormat.planes[0].bpl;\n+\t\t\tvfActive = true;\n \t\t} else {\n \t\t\t/*\n \t\t\t * The RAW still capture stream just copies buffers from\n@@ -529,13 +523,13 @@ int PipelineHandlerIPU3::configure(Camera *camera, CameraConfiguration *c)\n \t * the configuration of the active one for that purpose (there should\n \t * be at least one active stream in the configuration request).\n \t */\n-\tif (!outStream->active_) {\n+\tif (!outActive) {\n \t\tret = imgu->configureOutput(config->at(0), &outputFormat);\n \t\tif (ret)\n \t\t\treturn ret;\n \t}\n \n-\tif (!vfStream->active_) {\n+\tif (!vfActive) {\n \t\tret = imgu->configureViewfinder(config->at(0), &outputFormat);\n \t\tif (ret)\n \t\t\treturn ret;\n@@ -555,7 +549,7 @@ int PipelineHandlerIPU3::configure(Camera *camera, CameraConfiguration *c)\n \t/* Apply the \"pipe_mode\" control to the ImgU subdevice. */\n \tControlList ctrls(imgu->imgu_->controls());\n \tctrls.set(V4L2_CID_IPU3_PIPE_MODE,\n-\t\t  static_cast<int32_t>(vfStream->active_ ? IPU3PipeModeVideo :\n+\t\t  static_cast<int32_t>(vfActive ? IPU3PipeModeVideo :\n \t\t\t\t       IPU3PipeModeStillCapture));\n \tret = imgu->imgu_->setControls(&ctrls);\n \tif (ret) {\n","prefixes":["libcamera-devel","10/13"]}