Show a patch.

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

{
    "id": 26934,
    "url": "https://patchwork.libcamera.org/api/patches/26934/?format=api",
    "web_url": "https://patchwork.libcamera.org/patch/26934/",
    "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": "<20260618122245.946138-3-bryan.odonoghue@linaro.org>",
    "date": "2026-06-18T12:22:15",
    "name": "[02/30] libcamera: software_isp: gpu: Change the name of eglImageBayerOut_ to eglImageRGBAOut_",
    "commit_ref": null,
    "pull_url": null,
    "state": "new",
    "archived": false,
    "hash": "2e33a85c65b76750aea4797ab7d5c49167d1fa80",
    "submitter": {
        "id": 175,
        "url": "https://patchwork.libcamera.org/api/people/175/?format=api",
        "name": "Bryan O'Donoghue",
        "email": "bryan.odonoghue@linaro.org"
    },
    "delegate": null,
    "mbox": "https://patchwork.libcamera.org/patch/26934/mbox/",
    "series": [
        {
            "id": 6005,
            "url": "https://patchwork.libcamera.org/api/series/6005/?format=api",
            "web_url": "https://patchwork.libcamera.org/project/libcamera/list/?series=6005",
            "date": "2026-06-18T12:22:13",
            "name": "RFC/RFT: gpuisp: Multipass with speed optimisations on top",
            "version": 1,
            "mbox": "https://patchwork.libcamera.org/series/6005/mbox/"
        }
    ],
    "comments": "https://patchwork.libcamera.org/api/patches/26934/comments/",
    "check": "pending",
    "checks": "https://patchwork.libcamera.org/api/patches/26934/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 AE650C328C\n\tfor <parsemail@patchwork.libcamera.org>;\n\tThu, 18 Jun 2026 12:23:03 +0000 (UTC)",
            "from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 35A5C629DE;\n\tThu, 18 Jun 2026 14:23:01 +0200 (CEST)",
            "from mail-wm1-x330.google.com (mail-wm1-x330.google.com\n\t[IPv6:2a00:1450:4864:20::330])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 1254D629B6\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tThu, 18 Jun 2026 14:22:59 +0200 (CEST)",
            "by mail-wm1-x330.google.com with SMTP id\n\t5b1f17b1804b1-490aebf33e9so3915585e9.3\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tThu, 18 Jun 2026 05:22:59 -0700 (PDT)",
            "from inspiron14p-linux ([109.76.144.236])\n\tby smtp.gmail.com with ESMTPSA id\n\t5b1f17b1804b1-4922fa3a4easm275198015e9.3.2026.06.18.05.22.57\n\t(version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n\tThu, 18 Jun 2026 05:22:58 -0700 (PDT)"
        ],
        "Authentication-Results": "lancelot.ideasonboard.com; dkim=pass (2048-bit key;\n\tunprotected) header.d=linaro.org header.i=@linaro.org\n\theader.b=\"dAs88bqi\"; dkim-atps=neutral",
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=linaro.org; s=google; t=1781785379; x=1782390179;\n\tdarn=lists.libcamera.org; \n\th=content-transfer-encoding:mime-version:references:in-reply-to\n\t:message-id:date:subject:cc:to:from:from:to:cc:subject:date\n\t:message-id:reply-to;\n\tbh=FqNWrQwNLFM731dd+9mymOcD0H2BPBsCagCZYSKCaps=;\n\tb=dAs88bqiter0TL8WEk0fbXtK3mDNz+WvOqdMGrs/R4O4Sl25wUr3cOWzv9A2HxAcrE\n\t7mvF3HB5LyM4Ti89NlHbriPVj+veezETpRf+T8/658ExDt2bFlheVpFay2hWvWtSzB4s\n\tXPZQ+Q9spUwiTgkRmkH7OkQknxDPJKJ6KmageBwBWq7OGFGOSx0LyPvJDOXquwvhggbU\n\thE1Y+8lD/3ViDguCTWGafPtRNgf/JCHTqK15TVM9SI0n57V+62kLFZsvMpsEBgmhxlTx\n\t+1wNcwfH+lDycjAEum5zmP934VgojZXe6yya3hmtCfE5KNbhQJCBzcLOkkV94OT5uUDZ\n\t+KSQ==",
        "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20251104; t=1781785379; x=1782390179;\n\th=content-transfer-encoding:mime-version:references:in-reply-to\n\t:message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from\n\t:to:cc:subject:date:message-id:reply-to;\n\tbh=FqNWrQwNLFM731dd+9mymOcD0H2BPBsCagCZYSKCaps=;\n\tb=CElM4zLVOlKifJjbXL+EOy8OCmBw10YBAM5u21UJceSDux0FEDI4+nPhSTKtv3ne5y\n\tqac/GwI3UOIDan8xeI2ra5zebTAD8PbyeHDDQyz1P55RnTpxF37iKGMaS9mEEqIqBnaJ\n\tScsuJFX+yS+U9OJz+OIUgBeHjnA1/eWFgjZJLREL7c1ICfaat5G7xmGIdiS9aWGgyws6\n\tNrygrbDlq94OlkAgnLHoEYIG3GYyrTOU6QTUVtiSkvrLgyP7lNhJ+GpTGUvGBW0S7eDD\n\tsIXpHYFC5zjyI54gaIvXww5reoqQgp2CzsaqUBQPgJ0T/o7radI/k+iih+nRiivf+Lxq\n\tt3zg==",
        "X-Gm-Message-State": "AOJu0YzUnQ9zH3/V20hRNNzMKjYSSqjDwiu6bXBML4mV5q+mal9DaVBN\n\t98m4DAXb9LuBE7eEAsB9NIW4VtzQoOmukO/16MUE7yYnwb2AxSH8xxiDt/If3AMsvY/lGezrCHS\n\ttQI2ZZH4=",
        "X-Gm-Gg": "AfdE7cnchjGOORSmf2wpWZJG5QCkfWBEqQZqhT+gv83faDNCSdIawoi4lgzDg5INinX\n\tJVJ+FjbD/QgTtCaH8KksUowQXhNPPv8IjFW+UNU5vDrAXXu9uARyVvjMkZwh63C9npszqZMAwir\n\th7VDzY6wQlNc9jCzUjvrN3zuFGHsjY0PhxN0V3Q9aB2ywM3RyJPaoP1+gJb1nwVxO4Wk4SlxlOv\n\tqUueSyuEbjorSnYbq+z9NXPE11SfE4Lb3LWH1N7Oek80lyvFjdVitmtmY+FO2ucZ4OEZv/fjEQn\n\thsWIwSWPpgMPBI4Gp6kmXmyadsxl8OHq4Zx+wpVENZXsDGvXIxNkmDo93/65PTBRNwWDVP/XwnI\n\t0BXhQNkM2JPWeZuPKOMs6v5IESEpiduuNAB4p9sbqrobZFc77NtUtxpcraHqyVvMCLwSPtLMJR+\n\t2D2vPMju6VKWv/DKuEcuUTp9IdeQD7",
        "X-Received": "by 2002:a05:600c:1c25:b0:488:ac01:72de with SMTP id\n\t5b1f17b1804b1-492333e8f29mr129461395e9.5.1781785378539; \n\tThu, 18 Jun 2026 05:22:58 -0700 (PDT)",
        "From": "Bryan O'Donoghue <bryan.odonoghue@linaro.org>",
        "To": "libcamera-devel@lists.libcamera.org",
        "Cc": "bryan.odonoghue@linaro.org,\n\tpavel@ucw.cz",
        "Subject": "[PATCH 02/30] libcamera: software_isp: gpu: Change the name of\n\teglImageBayerOut_ to eglImageRGBAOut_",
        "Date": "Thu, 18 Jun 2026 13:22:15 +0100",
        "Message-ID": "<20260618122245.946138-3-bryan.odonoghue@linaro.org>",
        "X-Mailer": "git-send-email 2.54.0",
        "In-Reply-To": "<20260618122245.946138-1-bryan.odonoghue@linaro.org>",
        "References": "<20260618122245.946138-1-bryan.odonoghue@linaro.org>",
        "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": "In our mutli-pass shader design we will use textures to pass the output of\none compute or fragment shader to the next. Each phase will have its own\ndistinct name and output.\n\nA better more accurate name for the thing which we render into is\neglImageRGBAOut_ which has a very obvious meaning - its our RGBA output.\n\nWe aren't outputting Bayer data here, we are outputting RGBA data so denote\nit as such by way of its name.\n\nSigned-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>\n---\n src/libcamera/software_isp/software_isp_pipeline_gpu.cpp | 6 +++---\n src/libcamera/software_isp/software_isp_pipeline_gpu.h   | 2 +-\n 2 files changed, 4 insertions(+), 4 deletions(-)",
    "diff": "diff --git a/src/libcamera/software_isp/software_isp_pipeline_gpu.cpp b/src/libcamera/software_isp/software_isp_pipeline_gpu.cpp\nindex 53bb5e61f..c68a04fff 100644\n--- a/src/libcamera/software_isp/software_isp_pipeline_gpu.cpp\n+++ b/src/libcamera/software_isp/software_isp_pipeline_gpu.cpp\n@@ -538,7 +538,7 @@ int SoftwareIspPipelineGpu::debayerGPU(FrameBuffer *input, FrameBuffer *output,\n \t}\n \n \t/* Generate the output render framebuffer as render to texture */\n-\tegl_.createOutputDMABufTexture2D(*eglImageBayerOut_, output->planes()[0].fd.get());\n+\tegl_.createOutputDMABufTexture2D(*eglImageRGBAOut_, output->planes()[0].fd.get());\n \n \tsetShaderVariableValues(params);\n \tglViewport(0, 0, width_, height_);\n@@ -626,14 +626,14 @@ int SoftwareIspPipelineGpu::start()\n \teglImageBayerIn_ = std::make_unique<eGLImage>(glFormat_, inputConfig_.stride / bytesPerPixel_, height_, inputConfig_.stride, GL_TEXTURE0, 0);\n \n \t/* Texture we will render to */\n-\teglImageBayerOut_ = std::make_unique<eGLImage>(GL_RGBA, outputSize_.width, outputSize_.height, outputConfig_.stride, GL_TEXTURE1, 1);\n+\teglImageRGBAOut_ = std::make_unique<eGLImage>(GL_RGBA, outputSize_.width, outputSize_.height, outputConfig_.stride, GL_TEXTURE1, 1);\n \n \treturn 0;\n }\n \n void SoftwareIspPipelineGpu::stop()\n {\n-\teglImageBayerOut_.reset();\n+\teglImageRGBAOut_.reset();\n \teglImageBayerIn_.reset();\n \n \tif (programId_)\ndiff --git a/src/libcamera/software_isp/software_isp_pipeline_gpu.h b/src/libcamera/software_isp/software_isp_pipeline_gpu.h\nindex eb365d198..6f161e063 100644\n--- a/src/libcamera/software_isp/software_isp_pipeline_gpu.h\n+++ b/src/libcamera/software_isp/software_isp_pipeline_gpu.h\n@@ -74,7 +74,7 @@ private:\n \n \t/* Pointer to object representing input texture */\n \tstd::unique_ptr<eGLImage> eglImageBayerIn_;\n-\tstd::unique_ptr<eGLImage> eglImageBayerOut_;\n+\tstd::unique_ptr<eGLImage> eglImageRGBAOut_;\n \n \t/* Shader parameters */\n \tfloat firstRed_x_;\n",
    "prefixes": [
        "02/30"
    ]
}