Show a patch.

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

{
    "id": 22521,
    "url": "https://patchwork.libcamera.org/api/patches/22521/?format=api",
    "web_url": "https://patchwork.libcamera.org/patch/22521/",
    "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": "<20250110235737.1524733-13-paul.elder@ideasonboard.com>",
    "date": "2025-01-10T23:57:37",
    "name": "[v7,12/12] ipa: raspberry: Report new AeEnable control as available",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": false,
    "hash": "09118a173c476054362ce18995c15c53b8b5f2d3",
    "submitter": {
        "id": 17,
        "url": "https://patchwork.libcamera.org/api/people/17/?format=api",
        "name": "Paul Elder",
        "email": "paul.elder@ideasonboard.com"
    },
    "delegate": null,
    "mbox": "https://patchwork.libcamera.org/patch/22521/mbox/",
    "series": [
        {
            "id": 4941,
            "url": "https://patchwork.libcamera.org/api/series/4941/?format=api",
            "web_url": "https://patchwork.libcamera.org/project/libcamera/list/?series=4941",
            "date": "2025-01-10T23:57:25",
            "name": "AEGC controls",
            "version": 7,
            "mbox": "https://patchwork.libcamera.org/series/4941/mbox/"
        }
    ],
    "comments": "https://patchwork.libcamera.org/api/patches/22521/comments/",
    "check": "pending",
    "checks": "https://patchwork.libcamera.org/api/patches/22521/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 94447C32FB\n\tfor <parsemail@patchwork.libcamera.org>;\n\tFri, 10 Jan 2025 23:58:24 +0000 (UTC)",
            "from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 040DE68549;\n\tSat, 11 Jan 2025 00:58:24 +0100 (CET)",
            "from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[IPv6:2001:4b98:dc2:55:216:3eff:fef7:d647])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 50C8B6854D\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tSat, 11 Jan 2025 00:58:14 +0100 (CET)",
            "from pyrite.hamster-moth.ts.net (unknown\n\t[IPv6:2604:2d80:9e93:ad00:3d82:7e4f:ab9b:8a])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id E0D7E19E7;\n\tSat, 11 Jan 2025 00:57:18 +0100 (CET)"
        ],
        "Authentication-Results": "lancelot.ideasonboard.com; dkim=pass (1024-bit key;\n\tunprotected) header.d=ideasonboard.com header.i=@ideasonboard.com\n\theader.b=\"VX21MBkC\"; dkim-atps=neutral",
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1736553439;\n\tbh=nx3OgWv78aOHGMHtaV/v/IcF9RfnJdqZL49n4rBjEOA=;\n\th=From:To:Cc:Subject:Date:In-Reply-To:References:From;\n\tb=VX21MBkCK6Rb/2w239/JifkJcjlpx967friwTrI2VQuPSbtNBiMKQrNn23b4yQvMA\n\teaqo9F/K6RxenEC6dIjo3Dxbd3IE7e+iNfZYyv3PXw9ECa/1F2/NBURPHs1k3vo7tx\n\tpCbN/k+zQoqB0QI5tW8/MaND2B4qXMPiIHBKPjus=",
        "From": "Paul Elder <paul.elder@ideasonboard.com>",
        "To": "libcamera-devel@lists.libcamera.org",
        "Cc": "Paul Elder <paul.elder@ideasonboard.com>,\n\tlaurent.pinchart@ideasonboard.com, stefan.klug@ideasonboard.com",
        "Subject": "[PATCH v7 12/12] ipa: raspberry: Report new AeEnable control as\n\tavailable",
        "Date": "Fri, 10 Jan 2025 17:57:37 -0600",
        "Message-Id": "<20250110235737.1524733-13-paul.elder@ideasonboard.com>",
        "X-Mailer": "git-send-email 2.39.2",
        "In-Reply-To": "<20250110235737.1524733-1-paul.elder@ideasonboard.com>",
        "References": "<20250110235737.1524733-1-paul.elder@ideasonboard.com>",
        "MIME-Version": "1.0",
        "Content-Transfer-Encoding": "8bit",
        "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": "Even though the new AeEnable control internally switches on and off the\nsub-controls (ExposureTimeMode and AnalogueGainMode), it still needs to\nbe declared as available. Report this control as available in the\nrpi IPA.\n\nSupport for the control does not need to be added as it is handled by\nthe Camera class. It does not need to be handled in metadata either as\nthe new version of AeEnable is not returned in metadata.\n\nSigned-off-by: Paul Elder <paul.elder@ideasonboard.com>\nReviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>\n\n---\nNo change in v7\n\nNew in v6\n---\n src/ipa/rpi/common/ipa_base.cpp | 2 ++\n 1 file changed, 2 insertions(+)",
    "diff": "diff --git a/src/ipa/rpi/common/ipa_base.cpp b/src/ipa/rpi/common/ipa_base.cpp\nindex d6721c49c..95aa460ab 100644\n--- a/src/ipa/rpi/common/ipa_base.cpp\n+++ b/src/ipa/rpi/common/ipa_base.cpp\n@@ -55,6 +55,8 @@ constexpr Duration controllerMinFrameDuration = 1.0s / 30.0;\n \n /* List of controls handled by the Raspberry Pi IPA */\n const ControlInfoMap::Map ipaControls{\n+\t/* \\todo Move this to the Camera class */\n+\t{ &controls::AeEnable, ControlInfo(false, true) },\n \t{ &controls::ExposureTimeMode,\n \t  ControlInfo(static_cast<int32_t>(controls::ExposureTimeModeAuto),\n \t\t      static_cast<int32_t>(controls::ExposureTimeModeManual)) },\n",
    "prefixes": [
        "v7",
        "12/12"
    ]
}