Show a patch.

GET /api/1.1/patches/10150/?format=api
HTTP 200 OK
Allow: GET, PUT, PATCH, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "id": 10150,
    "url": "https://patchwork.libcamera.org/api/1.1/patches/10150/?format=api",
    "web_url": "https://patchwork.libcamera.org/patch/10150/",
    "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": "<20201021002418.21764-3-laurent.pinchart@ideasonboard.com>",
    "date": "2020-10-21T00:24:18",
    "name": "[libcamera-devel,2/2] libcamera: pipeline: simple: Set format on sink pad during propagation",
    "commit_ref": null,
    "pull_url": null,
    "state": "rejected",
    "archived": false,
    "hash": "54b4c5770c65ada4595118ed2de678d8190151d3",
    "submitter": {
        "id": 2,
        "url": "https://patchwork.libcamera.org/api/1.1/people/2/?format=api",
        "name": "Laurent Pinchart",
        "email": "laurent.pinchart@ideasonboard.com"
    },
    "delegate": {
        "id": 14,
        "url": "https://patchwork.libcamera.org/api/1.1/users/14/?format=api",
        "username": "pinchartl",
        "first_name": "Laurent",
        "last_name": "Pinchart",
        "email": "laurent.pinchart@ideasonboard.com"
    },
    "mbox": "https://patchwork.libcamera.org/patch/10150/mbox/",
    "series": [
        {
            "id": 1393,
            "url": "https://patchwork.libcamera.org/api/1.1/series/1393/?format=api",
            "web_url": "https://patchwork.libcamera.org/project/libcamera/list/?series=1393",
            "date": "2020-10-21T00:24:16",
            "name": "[libcamera-devel] libcamera: pipeline: Fail match() when no camera is registered",
            "version": 1,
            "mbox": "https://patchwork.libcamera.org/series/1393/mbox/"
        }
    ],
    "comments": "https://patchwork.libcamera.org/api/patches/10150/comments/",
    "check": "pending",
    "checks": "https://patchwork.libcamera.org/api/patches/10150/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 5F126BDB1F\n\tfor <parsemail@patchwork.libcamera.org>;\n\tWed, 21 Oct 2020 00:25:12 +0000 (UTC)",
            "from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 30AB661DC5;\n\tWed, 21 Oct 2020 02:25:12 +0200 (CEST)",
            "from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[213.167.242.64])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id B940261D92\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tWed, 21 Oct 2020 02:25:08 +0200 (CEST)",
            "from pendragon.lan (62-78-145-57.bb.dnainternet.fi [62.78.145.57])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 59372555\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tWed, 21 Oct 2020 02:25:08 +0200 (CEST)"
        ],
        "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=\"NU+Dzrcm\"; dkim-atps=neutral",
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1603239908;\n\tbh=Kamq1K8iHixKPlkVVwGI0Hk9LT/rvb4X/fWxthYA57E=;\n\th=From:To:Subject:Date:In-Reply-To:References:From;\n\tb=NU+Dzrcm5Kmapywm7sJfoVBbYkYIZ4HJMTxOCGQzGAwH92SnQsqI4CzknY0l/KsMx\n\tutGliy/dh5LhEgGdRIqs7xl1uCovBXqEsQ8bVP8GCBKn2O3WJQtOuhGI2Q3bmTEnoT\n\tj/rLscsafiI6dLYm5fX400/zUcX84G3WSbkHUHOw=",
        "From": "Laurent Pinchart <laurent.pinchart@ideasonboard.com>",
        "To": "libcamera-devel@lists.libcamera.org",
        "Date": "Wed, 21 Oct 2020 03:24:18 +0300",
        "Message-Id": "<20201021002418.21764-3-laurent.pinchart@ideasonboard.com>",
        "X-Mailer": "git-send-email 2.27.0",
        "In-Reply-To": "<20201021002418.21764-1-laurent.pinchart@ideasonboard.com>",
        "References": "<20201021002418.21764-1-laurent.pinchart@ideasonboard.com>",
        "MIME-Version": "1.0",
        "Subject": "[libcamera-devel] [PATCH 2/2] libcamera: pipeline: simple: Set\n\tformat on sink pad during propagation",
        "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": "When propagating formats through the media controller pipeline, the\nsimple pipeline handler retrieves the format on sink pads and sets it on\nsource pads. This assumes that subdevs will propagate formats\ninternally, as required by the V4L2 subdev API. However, in some cases,\npropagation isn't properly handled by the subdev driver.\n\nWhen can work around this issue by setting the format on source pads\ninstead of getting it. This will have the effect of trying to propgate\nthe same format through the pipeline, possibly overriding the default\nformat propagated by subdev drivers. It will however not cause the\npipeline configuration to be invalid, as subdevs are required to\nconstraint the format set on their sources based on the configuration of\nthe sources, and this requirement is better implemented in kernel driver\nthan the format propagation requirement.\n\nSigned-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>\n---\n src/libcamera/pipeline/simple/simple.cpp | 2 +-\n 1 file changed, 1 insertion(+), 1 deletion(-)",
    "diff": "diff --git a/src/libcamera/pipeline/simple/simple.cpp b/src/libcamera/pipeline/simple/simple.cpp\nindex 4b6f708e8fee..45ecefc59851 100644\n--- a/src/libcamera/pipeline/simple/simple.cpp\n+++ b/src/libcamera/pipeline/simple/simple.cpp\n@@ -386,7 +386,7 @@ int SimpleCameraData::setupFormats(V4L2SubdeviceFormat *format,\n \n \t\tif (source->entity() != sensor_->entity()) {\n \t\t\tV4L2Subdevice *subdev = pipe->subdev(source->entity());\n-\t\t\tret = subdev->getFormat(source->index(), format, whence);\n+\t\t\tret = subdev->setFormat(source->index(), format, whence);\n \t\t\tif (ret < 0)\n \t\t\t\treturn ret;\n \t\t}\n",
    "prefixes": [
        "libcamera-devel",
        "2/2"
    ]
}