Patch Detail
Show a patch.
GET /api/patches/611/?format=api
{ "id": 611, "url": "https://patchwork.libcamera.org/api/patches/611/?format=api", "web_url": "https://patchwork.libcamera.org/patch/611/", "project": { "id": 1, "url": "https://patchwork.libcamera.org/api/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": "<20190224173701.8587-4-niklas.soderlund@ragnatech.se>", "date": "2019-02-24T17:37:00", "name": "[libcamera-devel,v2,3/4] libcamera: pipeline: vimc: enforce stream configuration", "commit_ref": "0cd7602e9cfc7db28138d5962563a77366a977f9", "pull_url": null, "state": "accepted", "archived": false, "hash": "92d95ff4d6b15af26726a03076475dec1412a7d5", "submitter": { "id": 5, "url": "https://patchwork.libcamera.org/api/people/5/?format=api", "name": "Niklas Söderlund", "email": "niklas.soderlund@ragnatech.se" }, "delegate": null, "mbox": "https://patchwork.libcamera.org/patch/611/mbox/", "series": [ { "id": 190, "url": "https://patchwork.libcamera.org/api/series/190/?format=api", "web_url": "https://patchwork.libcamera.org/project/libcamera/list/?series=190", "date": "2019-02-24T17:36:57", "name": "libcamera: enforce stream configuration", "version": 2, "mbox": "https://patchwork.libcamera.org/series/190/mbox/" } ], "comments": "https://patchwork.libcamera.org/api/patches/611/comments/", "check": "pending", "checks": "https://patchwork.libcamera.org/api/patches/611/checks/", "tags": {}, "headers": { "Return-Path": "<niklas.soderlund@ragnatech.se>", "Received": [ "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 0179B610B2\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tSun, 24 Feb 2019 18:37:12 +0100 (CET)", "from bismarck.berto.se (unknown [89.233.230.99])\n\tby bin-vsp-out-03.atm.binero.net (Halon) with ESMTPA\n\tid d0d17687-385a-11e9-b5ae-0050569116f7;\n\tSun, 24 Feb 2019 18:37:11 +0100 (CET)" ], "X-Halon-ID": "d0d17687-385a-11e9-b5ae-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": "Sun, 24 Feb 2019 18:37:00 +0100", "Message-Id": "<20190224173701.8587-4-niklas.soderlund@ragnatech.se>", "X-Mailer": "git-send-email 2.20.1", "In-Reply-To": "<20190224173701.8587-1-niklas.soderlund@ragnatech.se>", "References": "<20190224173701.8587-1-niklas.soderlund@ragnatech.se>", "MIME-Version": "1.0", "Content-Type": "text/plain; charset=UTF-8", "Content-Transfer-Encoding": "8bit", "Subject": "[libcamera-devel] [PATCH v2 3/4] libcamera: pipeline: vimc: enforce\n\tstream configuration", "X-BeenThere": "libcamera-devel@lists.libcamera.org", "X-Mailman-Version": "2.1.23", "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>", "X-List-Received-Date": "Sun, 24 Feb 2019 17:37:13 -0000" }, "content": "The format requested by configureStreams() should exactly match what is\nprogrammed on the video device. If they do not match the call should\nfail as the application in that case will not know what configuration\nwas actually programmed.\n\nSigned-off-by: Niklas Söderlund <niklas.soderlund@ragnatech.se>\nReviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>\n---\n src/libcamera/pipeline/vimc.cpp | 12 +++++++++++-\n 1 file changed, 11 insertions(+), 1 deletion(-)", "diff": "diff --git a/src/libcamera/pipeline/vimc.cpp b/src/libcamera/pipeline/vimc.cpp\nindex a93a7589643834c6..812777cffbb3e618 100644\n--- a/src/libcamera/pipeline/vimc.cpp\n+++ b/src/libcamera/pipeline/vimc.cpp\n@@ -83,6 +83,7 @@ int PipelineHandlerVimc::configureStreams(Camera *camera,\n \t\t\t\t std::map<Stream *, StreamConfiguration> &config)\n {\n \tStreamConfiguration *cfg = &config[&stream_];\n+\tint ret;\n \n \tLOG(VIMC, Debug) << \"Configure the camera for resolution \"\n \t\t\t << cfg->width << \"x\" << cfg->height;\n@@ -92,7 +93,16 @@ int PipelineHandlerVimc::configureStreams(Camera *camera,\n \tformat.height = cfg->height;\n \tformat.fourcc = cfg->pixelFormat;\n \n-\treturn video_->setFormat(&format);\n+\tret = video_->setFormat(&format);\n+\tif (ret)\n+\t\treturn ret;\n+\n+\tif (format.width != cfg->width ||\n+\t format.height != cfg->height ||\n+\t format.fourcc != cfg->pixelFormat)\n+\t\treturn -EINVAL;\n+\n+\treturn 0;\n }\n \n int PipelineHandlerVimc::allocateBuffers(Camera *camera, Stream *stream)\n", "prefixes": [ "libcamera-devel", "v2", "3/4" ] }