Show a patch.

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

{
    "id": 11813,
    "url": "https://patchwork.libcamera.org/api/patches/11813/?format=api",
    "web_url": "https://patchwork.libcamera.org/patch/11813/",
    "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": "<20210401101340.160590-8-paul.elder@ideasonboard.com>",
    "date": "2021-04-01T10:13:39",
    "name": "[libcamera-devel,RFC,7/8] android: camera_device: Add AWB mode off to available AWB modes",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": false,
    "hash": "4dfd0c249d8486d4a2fb655f33abfda88b7161c3",
    "submitter": {
        "id": 17,
        "url": "https://patchwork.libcamera.org/api/people/17/?format=api",
        "name": "Paul Elder",
        "email": "paul.elder@ideasonboard.com"
    },
    "delegate": {
        "id": 17,
        "url": "https://patchwork.libcamera.org/api/users/17/?format=api",
        "username": "epaul",
        "first_name": "Paul",
        "last_name": "Elder",
        "email": "paul.elder@ideasonboard.com"
    },
    "mbox": "https://patchwork.libcamera.org/patch/11813/mbox/",
    "series": [
        {
            "id": 1878,
            "url": "https://patchwork.libcamera.org/api/series/1878/?format=api",
            "web_url": "https://patchwork.libcamera.org/project/libcamera/list/?series=1878",
            "date": "2021-04-01T10:13:32",
            "name": "android: First set of FULL fixes",
            "version": 1,
            "mbox": "https://patchwork.libcamera.org/series/1878/mbox/"
        }
    ],
    "comments": "https://patchwork.libcamera.org/api/patches/11813/comments/",
    "check": "pending",
    "checks": "https://patchwork.libcamera.org/api/patches/11813/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 0B0D7C0DA4\n\tfor <parsemail@patchwork.libcamera.org>;\n\tThu,  1 Apr 2021 10:14:09 +0000 (UTC)",
            "from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id BAC1D68792;\n\tThu,  1 Apr 2021 12:14:08 +0200 (CEST)",
            "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 5B9A66878F\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tThu,  1 Apr 2021 12:14:07 +0200 (CEST)",
            "from pyrite.rasen.tech (unknown\n\t[IPv6:2400:4051:61:600:2c71:1b79:d06d:5032])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 8C26CF7;\n\tThu,  1 Apr 2021 12:14:05 +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=\"cshTrOU8\"; dkim-atps=neutral",
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1617272047;\n\tbh=x1KBS6uP/ftCL+BBxMAc2Y54i5C3CPyJHe130MLy8Yk=;\n\th=From:To:Cc:Subject:Date:In-Reply-To:References:From;\n\tb=cshTrOU8quj62h85cFB555pS+IbRDYFLf9JyeGPo7jw7PtV9owXFGaFPgnzrc9xvM\n\tNXvJjP0hj5vpHT1W9X+BBGNyLbE//T7KTkSC08VMq6gvxDj6nT+nAVrLukE9xf7o3t\n\tnoH70MzRZbphEurRoSy7oNQuQ9kPf3gzOyHF/6WY=",
        "From": "Paul Elder <paul.elder@ideasonboard.com>",
        "To": "libcamera-devel@lists.libcamera.org",
        "Date": "Thu,  1 Apr 2021 19:13:39 +0900",
        "Message-Id": "<20210401101340.160590-8-paul.elder@ideasonboard.com>",
        "X-Mailer": "git-send-email 2.27.0",
        "In-Reply-To": "<20210401101340.160590-1-paul.elder@ideasonboard.com>",
        "References": "<20210401101340.160590-1-paul.elder@ideasonboard.com>",
        "MIME-Version": "1.0",
        "Subject": "[libcamera-devel] [RFC PATCH 7/8] android: camera_device: Add AWB\n\tmode off to available AWB modes",
        "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": "Hardware level FULL requires AWB mode off to be an available AWB mode.\nAdd it.\n\nHardware level FULL additionally requires the AWB mode of the result\nmetadata to be what was provided in the request metadata. Do this.\n\nThis allows the following CTS test to pass:\n- android.hardware.camera2.cts.CaptureRequestTest#testAwbModeAndLock\n\nSigned-off-by: Paul Elder <paul.elder@ideasonboard.com>\n---\n src/android/camera_device.cpp | 8 ++++++--\n 1 file changed, 6 insertions(+), 2 deletions(-)",
    "diff": "diff --git a/src/android/camera_device.cpp b/src/android/camera_device.cpp\nindex 584c3c4a..a187beff 100644\n--- a/src/android/camera_device.cpp\n+++ b/src/android/camera_device.cpp\n@@ -859,9 +859,11 @@ const camera_metadata_t *CameraDevice::getStaticMetadata()\n \n \t/*\n \t * \\todo Inspect the Camera capabilities to report the available\n-\t * AWB modes. Default to AUTO as CTS tests require it.\n+\t * AWB modes. Default to AUTO as CTS tests require it. FULL requires\n+\t * OFF.\n \t */\n \tstd::vector<uint8_t> availableAwbModes = {\n+\t\tANDROID_CONTROL_AWB_MODE_OFF,\n \t\tANDROID_CONTROL_AWB_MODE_AUTO,\n \t};\n \tstaticMetadata_->addEntry(ANDROID_CONTROL_AWB_AVAILABLE_MODES,\n@@ -2141,7 +2143,9 @@ CameraDevice::getResultMetadata(const Camera3RequestDescriptor &descriptor,\n \tresultMetadata->addEntry(ANDROID_CONTROL_AF_TRIGGER, &value, 1);\n \n \tvalue = ANDROID_CONTROL_AWB_MODE_AUTO;\n-\tresultMetadata->addEntry(ANDROID_CONTROL_AWB_MODE, &value, 1);\n+\tfound = settings.getEntry(ANDROID_CONTROL_AWB_MODE, &entry);\n+\tresultMetadata->addEntry(ANDROID_CONTROL_AWB_MODE,\n+\t\t\t\t found ? entry.data.u8 : &value, 1);\n \n \tvalue = ANDROID_CONTROL_AWB_LOCK_OFF;\n \tresultMetadata->addEntry(ANDROID_CONTROL_AWB_LOCK, &value, 1);\n",
    "prefixes": [
        "libcamera-devel",
        "RFC",
        "7/8"
    ]
}