Show a patch.

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

{
    "id": 16982,
    "url": "https://patchwork.libcamera.org/api/patches/16982/?format=api",
    "web_url": "https://patchwork.libcamera.org/patch/16982/",
    "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": "<20220805135312.47497-8-jacopo@jmondi.org>",
    "date": "2022-08-05T13:53:09",
    "name": "[libcamera-devel,v2,07/10] ipa: rkisp1: Convert to use the FCQueue",
    "commit_ref": null,
    "pull_url": null,
    "state": "accepted",
    "archived": false,
    "hash": "14ddb092e1dc5f62bcacafdc0321846c16b88a9e",
    "submitter": {
        "id": 3,
        "url": "https://patchwork.libcamera.org/api/people/3/?format=api",
        "name": "Jacopo Mondi",
        "email": "jacopo@jmondi.org"
    },
    "delegate": null,
    "mbox": "https://patchwork.libcamera.org/patch/16982/mbox/",
    "series": [
        {
            "id": 3376,
            "url": "https://patchwork.libcamera.org/api/series/3376/?format=api",
            "web_url": "https://patchwork.libcamera.org/project/libcamera/list/?series=3376",
            "date": "2022-08-05T13:53:02",
            "name": "libcamera: Align IPU3 and RKISP1 interfaces",
            "version": 2,
            "mbox": "https://patchwork.libcamera.org/series/3376/mbox/"
        }
    ],
    "comments": "https://patchwork.libcamera.org/api/patches/16982/comments/",
    "check": "pending",
    "checks": "https://patchwork.libcamera.org/api/patches/16982/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 09F42C3275\n\tfor <parsemail@patchwork.libcamera.org>;\n\tFri,  5 Aug 2022 13:53:32 +0000 (UTC)",
            "from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id BFDCA63328;\n\tFri,  5 Aug 2022 15:53:31 +0200 (CEST)",
            "from relay5-d.mail.gandi.net (relay5-d.mail.gandi.net\n\t[217.70.183.197])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 637D463328\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tFri,  5 Aug 2022 15:53:30 +0200 (CEST)",
            "(Authenticated sender: jacopo@jmondi.org)\n\tby mail.gandi.net (Postfix) with ESMTPSA id 8A1FF1C0006;\n\tFri,  5 Aug 2022 13:53:29 +0000 (UTC)"
        ],
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org;\n\ts=mail; t=1659707611;\n\tbh=hfVnOqc4Ky8GVl5lTaiHHhaKOlAtj47IyJhUdOAB1OM=;\n\th=To:Date:In-Reply-To:References:Subject:List-Id:List-Unsubscribe:\n\tList-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:\n\tFrom;\n\tb=pWGz52yAoXjThLl6RDK7gt6yylIZOL3XOHXBstJIY2SXATHVFoASZEgG7+lKm+etq\n\tF5J48xVyXOdA4oHRKUK4sgtAZ13ZAwkCW/G4I0WFfvvLUerGD2+P7MsHyZg0hT3p1A\n\tN0KkETLQXl4QfuCUUu8dU9j3FFafVVueiqrhMAe3NI0L1aGUTpTXp+s00Uwc2KyrrF\n\tiuQTKR6W64oRdfoqBiIEpxT1qRrO3opy+S5nU3A5kpqPr+1NXdf/4FzCTFKlpv+AGB\n\t0KMkAMLKTl0pZvH7pvbgiNVFsxrfc1ZlfuFJ1LHYycawIKvh6qEnz6nA0vz5/647HM\n\tkTsTD9tijId4w==",
        "To": "libcamera-devel@lists.libcamera.org",
        "Date": "Fri,  5 Aug 2022 15:53:09 +0200",
        "Message-Id": "<20220805135312.47497-8-jacopo@jmondi.org>",
        "X-Mailer": "git-send-email 2.37.1",
        "In-Reply-To": "<20220805135312.47497-1-jacopo@jmondi.org>",
        "References": "<20220805135312.47497-1-jacopo@jmondi.org>",
        "MIME-Version": "1.0",
        "Content-Transfer-Encoding": "8bit",
        "Subject": "[libcamera-devel] [PATCH v2 07/10] ipa: rkisp1: Convert to use the\n\tFCQueue",
        "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>",
        "From": "Jacopo Mondi via libcamera-devel <libcamera-devel@lists.libcamera.org>",
        "Reply-To": "Jacopo Mondi <jacopo@jmondi.org>",
        "Errors-To": "libcamera-devel-bounces@lists.libcamera.org",
        "Sender": "\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"
    },
    "content": "From: Kieran Bingham via libcamera-devel <libcamera-devel@lists.libcamera.org>\n\nEstablish a queue of FrameContexts using the new FCQueue and use it to\nsupply the FrameContext to the algorithms.\n\nThe algorithms on the RKISP1 do not use this yet themselves, but are\nable to do so after the introduction of this patch.\n\nSigned-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>\nSigned-off-by: Jacopo Mondi <jacopo@jmondi.org>\n---\n src/ipa/rkisp1/ipa_context.h | 2 ++\n src/ipa/rkisp1/rkisp1.cpp    | 6 +++---\n 2 files changed, 5 insertions(+), 3 deletions(-)",
    "diff": "diff --git a/src/ipa/rkisp1/ipa_context.h b/src/ipa/rkisp1/ipa_context.h\nindex c42bcd73b314..dd756f4025d1 100644\n--- a/src/ipa/rkisp1/ipa_context.h\n+++ b/src/ipa/rkisp1/ipa_context.h\n@@ -86,6 +86,8 @@ struct RKISP1FrameContext : public IPAFrameContext {\n struct IPAContext {\n \tIPASessionConfiguration configuration;\n \tIPAActiveState activeState;\n+\n+\tFCQueue<RKISP1FrameContext> frameContexts;\n };\n \n } /* namespace ipa::rkisp1 */\ndiff --git a/src/ipa/rkisp1/rkisp1.cpp b/src/ipa/rkisp1/rkisp1.cpp\nindex a2483f27cf52..2c7fdde55f49 100644\n--- a/src/ipa/rkisp1/rkisp1.cpp\n+++ b/src/ipa/rkisp1/rkisp1.cpp\n@@ -192,6 +192,7 @@ int IPARkISP1::start()\n void IPARkISP1::stop()\n {\n \t/* Clean the IPA context at the end of the streaming session. */\n+\tcontext_.frameContexts.clear();\n \tcontext_ = {};\n }\n \n@@ -318,6 +319,8 @@ void IPARkISP1::fillParamsBuffer(const uint32_t frame, const uint32_t bufferId)\n void IPARkISP1::processStatsBuffer(const uint32_t frame, const uint32_t bufferId,\n \t\t\t\t   const ControlList &sensorControls)\n {\n+\tRKISP1FrameContext &frameContext = context_.frameContexts.get(frame);\n+\n \tconst rkisp1_stat_buffer *stats =\n \t\treinterpret_cast<rkisp1_stat_buffer *>(\n \t\t\tmappedBuffers_.at(bufferId).planes()[0].data());\n@@ -329,9 +332,6 @@ void IPARkISP1::processStatsBuffer(const uint32_t frame, const uint32_t bufferId\n \n \tunsigned int aeState = 0;\n \n-\t/* \\todo Obtain the frame context to pass to process from the FCQueue */\n-\tRKISP1FrameContext frameContext;\n-\n \tfor (auto const &algo : algorithms())\n \t\talgo->process(context_, frameContext, stats);\n \n",
    "prefixes": [
        "libcamera-devel",
        "v2",
        "07/10"
    ]
}