Show a patch.

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

{
    "id": 15280,
    "url": "https://patchwork.libcamera.org/api/patches/15280/?format=api",
    "web_url": "https://patchwork.libcamera.org/patch/15280/",
    "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": "<20220113141558.5805-3-david.plowman@raspberrypi.com>",
    "date": "2022-01-13T14:15:58",
    "name": "[libcamera-devel,v2,2/2] pipeline: raspberrypi: Simplify calculation of sensor's native Bayer order",
    "commit_ref": "b2290573c09ca3781fc0577f7785f8398a5780b2",
    "pull_url": null,
    "state": "accepted",
    "archived": false,
    "hash": "11985cb9770af4738e140ede6e79897ea425f226",
    "submitter": {
        "id": 42,
        "url": "https://patchwork.libcamera.org/api/people/42/?format=api",
        "name": "David Plowman",
        "email": "david.plowman@raspberrypi.com"
    },
    "delegate": null,
    "mbox": "https://patchwork.libcamera.org/patch/15280/mbox/",
    "series": [
        {
            "id": 2893,
            "url": "https://patchwork.libcamera.org/api/series/2893/?format=api",
            "web_url": "https://patchwork.libcamera.org/project/libcamera/list/?series=2893",
            "date": "2022-01-13T14:15:56",
            "name": "Make sensor use its native Bayer order",
            "version": 2,
            "mbox": "https://patchwork.libcamera.org/series/2893/mbox/"
        }
    ],
    "comments": "https://patchwork.libcamera.org/api/patches/15280/comments/",
    "check": "pending",
    "checks": "https://patchwork.libcamera.org/api/patches/15280/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 A84B4C325B\n\tfor <parsemail@patchwork.libcamera.org>;\n\tThu, 13 Jan 2022 14:16:07 +0000 (UTC)",
            "from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id E1F3860935;\n\tThu, 13 Jan 2022 15:16:06 +0100 (CET)",
            "from mail-wm1-x332.google.com (mail-wm1-x332.google.com\n\t[IPv6:2a00:1450:4864:20::332])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id C2CA5604F4\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tThu, 13 Jan 2022 15:16:04 +0100 (CET)",
            "by mail-wm1-x332.google.com with SMTP id v123so3977631wme.2\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tThu, 13 Jan 2022 06:16:04 -0800 (PST)",
            "from pi4-davidp.lan (plowpeople3.plus.com. [80.229.223.72])\n\tby smtp.gmail.com with ESMTPSA id\n\tb2sm3284584wrd.35.2022.01.13.06.16.03\n\t(version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n\tThu, 13 Jan 2022 06:16:03 -0800 (PST)"
        ],
        "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=\"g9gzCMyG\"; 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=PtWJNFmk1vWzp2J6OmgnsiVLUT9BGhimEM0bzjBaDAI=;\n\tb=g9gzCMyGmMf2OQWA7mQtriNj9+2H3Xr4WNFU+xvWrzPQtXNNj+u2d5WA66ITPJOnvV\n\tp6UoSSpnohAZvshtVvKX8+uHOu1s+RaesZAiEyr/dQHIJcnLxwwU1+eBRnO2AIAvt6Xz\n\tUi78omCBGt2UHkNS+poml+2kV/zSrtYrTtKPgBLC/bFxanqopwjE98Z3kldF0vTQJYZr\n\tpLcsGockhIZeAnvWUTNJ6lMGm8peKG5UnbEArLH7aXuK3hL9KbrFeNDAlIfldQ9zlOoq\n\tJpM8bGzb6NfYpOwWzuIPUnW7tVA7qrJRRXvnBN2jsbMCbi9xjYibUA6xadqi5X1b7QbJ\n\tRkJg==",
        "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20210112;\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=PtWJNFmk1vWzp2J6OmgnsiVLUT9BGhimEM0bzjBaDAI=;\n\tb=c/ioKBYpBYDuX8yw2s/IgCrqOdCgF/BJ16X4JV0qE5OND9dNFZBYi8s5aDcIY+WZ4T\n\t/fEKFdiH8jkpXP/k9pHKabzI9uRcwdlSm2669RWOAqXmxpwPBfQVG2g0c/6kdvnwzjkp\n\tksweePAIBcbtwVN5oO7ifTHkT3R1VNLWCDGMhGqEKg3I/X6pVKDWxVy56YJPKxxzYWki\n\tppbY52bI2iF1hErJ/fmJLPoTuNwuZlytxZxcI8tBRXxBCus6eCyG2GlV+Q/8dovrTzfH\n\tcxMutMa2g5Gf+2lUMXRtFce8LwRrnnR8PFnMpg3rb+pHFykrwL91g/k15bw4qrsjE+w4\n\tPFWQ==",
        "X-Gm-Message-State": "AOAM530UjIoix+7TN2W2SQb5wwnf+oUG6Lzfm4DiLMeqyqxHu+ZC7MnO\n\t/0BKfvyHNFJA13Ivvb9xwIolz1zlOPneWEZc",
        "X-Google-Smtp-Source": "ABdhPJy62t05DYyJVwul+KsWAltAr7HIp6VtqUvv2U+eAEf5U0A0IVqS8lXeZi5K8YT2oxeVxMtIIw==",
        "X-Received": "by 2002:a05:600c:1d95:: with SMTP id\n\tp21mr4013972wms.9.1642083364227; \n\tThu, 13 Jan 2022 06:16:04 -0800 (PST)",
        "From": "David Plowman <david.plowman@raspberrypi.com>",
        "To": "libcamera-devel@lists.libcamera.org",
        "Date": "Thu, 13 Jan 2022 14:15:58 +0000",
        "Message-Id": "<20220113141558.5805-3-david.plowman@raspberrypi.com>",
        "X-Mailer": "git-send-email 2.30.2",
        "In-Reply-To": "<20220113141558.5805-1-david.plowman@raspberrypi.com>",
        "References": "<20220113141558.5805-1-david.plowman@raspberrypi.com>",
        "MIME-Version": "1.0",
        "Content-Transfer-Encoding": "8bit",
        "Subject": "[libcamera-devel] [PATCH v2 2/2] pipeline: raspberrypi: Simplify\n\tcalculation of sensor's native Bayer order",
        "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>",
        "Errors-To": "libcamera-devel-bounces@lists.libcamera.org",
        "Sender": "\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"
    },
    "content": "Now that the sensor is defined to list mbus codes using its native\n(untransformed) Bayer order, the method of obtaining it can be\nsimplified. We don't have to try and reset the flips, we just use the\nvalue directly from the sensor.\n\nSigned-off-by: David Plowman <david.plowman@raspberrypi.com>\n---\n src/libcamera/pipeline/raspberrypi/raspberrypi.cpp | 9 ++-------\n 1 file changed, 2 insertions(+), 7 deletions(-)",
    "diff": "diff --git a/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp b/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp\nindex 49d7ff23..79cb75c6 100644\n--- a/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp\n+++ b/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp\n@@ -1279,8 +1279,8 @@ int PipelineHandlerRPi::registerCamera(MediaDevice *unicam, MediaDevice *isp, Me\n \t * Thirdly, what is the \"native\" Bayer order, when no transforms are\n \t * applied?\n \t *\n-\t * As part of answering the final question, we reset the camera to\n-\t * no transform at all.\n+\t * We note that the sensor's cached list of supported formats is\n+\t * already in the \"native\" order, with any flips having been undone.\n \t */\n \tconst V4L2Subdevice *sensor = data->sensor_->device();\n \tconst struct v4l2_query_ext_ctrl *hflipCtrl = sensor->controlInfo(V4L2_CID_HFLIP);\n@@ -1288,11 +1288,6 @@ int PipelineHandlerRPi::registerCamera(MediaDevice *unicam, MediaDevice *isp, Me\n \t\t/* We assume it will support vflips too... */\n \t\tdata->supportsFlips_ = true;\n \t\tdata->flipsAlterBayerOrder_ = hflipCtrl->flags & V4L2_CTRL_FLAG_MODIFY_LAYOUT;\n-\n-\t\tControlList ctrls(data->sensor_->controls());\n-\t\tctrls.set(V4L2_CID_HFLIP, 0);\n-\t\tctrls.set(V4L2_CID_VFLIP, 0);\n-\t\tdata->setSensorControls(ctrls);\n \t}\n \n \t/* Look for a valid Bayer format. */\n",
    "prefixes": [
        "libcamera-devel",
        "v2",
        "2/2"
    ]
}