Show a patch.

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

{
    "id": 1625,
    "url": "https://patchwork.libcamera.org/api/1.1/patches/1625/?format=api",
    "web_url": "https://patchwork.libcamera.org/patch/1625/",
    "project": {
        "id": 1,
        "url": "https://patchwork.libcamera.org/api/1.1/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": "<20190704225334.26170-5-jacopo@jmondi.org>",
    "date": "2019-07-04T22:53:29",
    "name": "[libcamera-devel,4/9] libcamera: Rename PipelineHandler::allocateBuffers",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": false,
    "hash": "9b0fb9964e879bcf10ac2efc8d9f7199e5f00709",
    "submitter": {
        "id": 3,
        "url": "https://patchwork.libcamera.org/api/1.1/people/3/?format=api",
        "name": "Jacopo Mondi",
        "email": "jacopo@jmondi.org"
    },
    "delegate": null,
    "mbox": "https://patchwork.libcamera.org/patch/1625/mbox/",
    "series": [
        {
            "id": 407,
            "url": "https://patchwork.libcamera.org/api/1.1/series/407/?format=api",
            "web_url": "https://patchwork.libcamera.org/project/libcamera/list/?series=407",
            "date": "2019-07-04T22:53:25",
            "name": "Add support for external bufferes",
            "version": 1,
            "mbox": "https://patchwork.libcamera.org/series/407/mbox/"
        }
    ],
    "comments": "https://patchwork.libcamera.org/api/patches/1625/comments/",
    "check": "pending",
    "checks": "https://patchwork.libcamera.org/api/patches/1625/checks/",
    "tags": {},
    "headers": {
        "Return-Path": "<jacopo@jmondi.org>",
        "Received": [
            "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 3933A60C2C\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tFri,  5 Jul 2019 00:52:29 +0200 (CEST)",
            "from uno.lan (2-224-242-101.ip172.fastwebnet.it [2.224.242.101])\n\t(Authenticated sender: jacopo@jmondi.org)\n\tby relay5-d.mail.gandi.net (Postfix) with ESMTPSA id C3FA21C0007;\n\tThu,  4 Jul 2019 22:52:28 +0000 (UTC)"
        ],
        "X-Originating-IP": "2.224.242.101",
        "From": "Jacopo Mondi <jacopo@jmondi.org>",
        "To": "libcamera-devel@lists.libcamera.org",
        "Date": "Fri,  5 Jul 2019 00:53:29 +0200",
        "Message-Id": "<20190704225334.26170-5-jacopo@jmondi.org>",
        "X-Mailer": "git-send-email 2.21.0",
        "In-Reply-To": "<20190704225334.26170-1-jacopo@jmondi.org>",
        "References": "<20190704225334.26170-1-jacopo@jmondi.org>",
        "MIME-Version": "1.0",
        "Content-Transfer-Encoding": "8bit",
        "Subject": "[libcamera-devel] [PATCH 4/9] libcamera: Rename\n\tPipelineHandler::allocateBuffers",
        "X-BeenThere": "libcamera-devel@lists.libcamera.org",
        "X-Mailman-Version": "2.1.23",
        "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>",
        "X-List-Received-Date": "Thu, 04 Jul 2019 22:52:29 -0000"
    },
    "content": "Now that the pipeline handlers can inspect the Stream's memory type flag\nthe allocateBuffers() operation name does not match the actual operation\npurpose, which is to setup buffers to export memory to application or\neither prepare to use externally allocated buffers.\n\nTodo: rename the camera operation as well?\n\nSigned-off-by: Jacopo Mondi <jacopo@jmondi.org>\n---\n src/libcamera/camera.cpp                 | 2 +-\n src/libcamera/include/pipeline_handler.h | 4 ++--\n src/libcamera/pipeline/ipu3/ipu3.cpp     | 8 ++++----\n src/libcamera/pipeline/rkisp1/rkisp1.cpp | 6 +++---\n src/libcamera/pipeline/uvcvideo.cpp      | 8 ++++----\n src/libcamera/pipeline/vimc.cpp          | 8 ++++----\n src/libcamera/pipeline_handler.cpp       | 6 ++++--\n 7 files changed, 22 insertions(+), 20 deletions(-)",
    "diff": "diff --git a/src/libcamera/camera.cpp b/src/libcamera/camera.cpp\nindex 5f756d41744a..f3f01d040ecf 100644\n--- a/src/libcamera/camera.cpp\n+++ b/src/libcamera/camera.cpp\n@@ -716,7 +716,7 @@ int Camera::allocateBuffers()\n \t\treturn -EINVAL;\n \t}\n \n-\tint ret = pipe_->allocateBuffers(this, activeStreams_);\n+\tint ret = pipe_->setupBuffers(this, activeStreams_);\n \tif (ret) {\n \t\tLOG(Camera, Error) << \"Failed to allocate buffers\";\n \t\treturn ret;\ndiff --git a/src/libcamera/include/pipeline_handler.h b/src/libcamera/include/pipeline_handler.h\nindex f836d5d1a600..c40d108eb13c 100644\n--- a/src/libcamera/include/pipeline_handler.h\n+++ b/src/libcamera/include/pipeline_handler.h\n@@ -68,8 +68,8 @@ public:\n \t\tconst StreamRoles &roles) = 0;\n \tvirtual int configure(Camera *camera, CameraConfiguration *config) = 0;\n \n-\tvirtual int allocateBuffers(Camera *camera,\n-\t\t\t\t    const std::set<Stream *> &streams) = 0;\n+\tvirtual int setupBuffers(Camera *camera,\n+\t\t\t\t const std::set<Stream *> &streams) = 0;\n \tvirtual int freeBuffers(Camera *camera,\n \t\t\t\tconst std::set<Stream *> &streams) = 0;\n \ndiff --git a/src/libcamera/pipeline/ipu3/ipu3.cpp b/src/libcamera/pipeline/ipu3/ipu3.cpp\nindex 6f14da1f8c70..28dcefe3d19f 100644\n--- a/src/libcamera/pipeline/ipu3/ipu3.cpp\n+++ b/src/libcamera/pipeline/ipu3/ipu3.cpp\n@@ -208,8 +208,8 @@ public:\n \t\tconst StreamRoles &roles) override;\n \tint configure(Camera *camera, CameraConfiguration *config) override;\n \n-\tint allocateBuffers(Camera *camera,\n-\t\t\t    const std::set<Stream *> &streams) override;\n+\tint setupBuffers(Camera *camera,\n+\t\t\t const std::set<Stream *> &streams) override;\n \tint freeBuffers(Camera *camera,\n \t\t\tconst std::set<Stream *> &streams) override;\n \n@@ -589,8 +589,8 @@ int PipelineHandlerIPU3::configure(Camera *camera, CameraConfiguration *c)\n  * In order to be able to start the 'viewfinder' and 'stat' nodes, we need\n  * memory to be reserved.\n  */\n-int PipelineHandlerIPU3::allocateBuffers(Camera *camera,\n-\t\t\t\t\t const std::set<Stream *> &streams)\n+int PipelineHandlerIPU3::setupBuffers(Camera *camera,\n+\t\t\t\t      const std::set<Stream *> &streams)\n {\n \tIPU3CameraData *data = cameraData(camera);\n \tIPU3Stream *outStream = &data->outStream_;\ndiff --git a/src/libcamera/pipeline/rkisp1/rkisp1.cpp b/src/libcamera/pipeline/rkisp1/rkisp1.cpp\nindex dbb61a21354d..836de1f61630 100644\n--- a/src/libcamera/pipeline/rkisp1/rkisp1.cpp\n+++ b/src/libcamera/pipeline/rkisp1/rkisp1.cpp\n@@ -80,7 +80,7 @@ public:\n \t\tconst StreamRoles &roles) override;\n \tint configure(Camera *camera, CameraConfiguration *config) override;\n \n-\tint allocateBuffers(Camera *camera,\n+\tint setupBuffers(Camera *camera,\n \t\tconst std::set<Stream *> &streams) override;\n \tint freeBuffers(Camera *camera,\n \t\tconst std::set<Stream *> &streams) override;\n@@ -315,8 +315,8 @@ int PipelineHandlerRkISP1::configure(Camera *camera, CameraConfiguration *c)\n \treturn 0;\n }\n \n-int PipelineHandlerRkISP1::allocateBuffers(Camera *camera,\n-\t\t\t\t\t   const std::set<Stream *> &streams)\n+int PipelineHandlerRkISP1::setupBuffers(Camera *camera,\n+\t\t\t\t\tconst std::set<Stream *> &streams)\n {\n \tStream *stream = *streams.begin();\n \tint ret;\ndiff --git a/src/libcamera/pipeline/uvcvideo.cpp b/src/libcamera/pipeline/uvcvideo.cpp\nindex 5b3c79dda6dd..bba4e7f8d2a0 100644\n--- a/src/libcamera/pipeline/uvcvideo.cpp\n+++ b/src/libcamera/pipeline/uvcvideo.cpp\n@@ -63,8 +63,8 @@ public:\n \t\tconst StreamRoles &roles) override;\n \tint configure(Camera *camera, CameraConfiguration *config) override;\n \n-\tint allocateBuffers(Camera *camera,\n-\t\t\t    const std::set<Stream *> &streams) override;\n+\tint setupBuffers(Camera *camera,\n+\t\t\t const std::set<Stream *> &streams) override;\n \tint freeBuffers(Camera *camera,\n \t\t\tconst std::set<Stream *> &streams) override;\n \n@@ -191,8 +191,8 @@ int PipelineHandlerUVC::configure(Camera *camera, CameraConfiguration *config)\n \treturn 0;\n }\n \n-int PipelineHandlerUVC::allocateBuffers(Camera *camera,\n-\t\t\t\t\tconst std::set<Stream *> &streams)\n+int PipelineHandlerUVC::setupBuffers(Camera *camera,\n+\t\t\t\t     const std::set<Stream *> &streams)\n {\n \tUVCCameraData *data = cameraData(camera);\n \tStream *stream = *streams.begin();\ndiff --git a/src/libcamera/pipeline/vimc.cpp b/src/libcamera/pipeline/vimc.cpp\nindex c67bdb0ecbff..3e08768b670f 100644\n--- a/src/libcamera/pipeline/vimc.cpp\n+++ b/src/libcamera/pipeline/vimc.cpp\n@@ -70,8 +70,8 @@ public:\n \t\tconst StreamRoles &roles) override;\n \tint configure(Camera *camera, CameraConfiguration *config) override;\n \n-\tint allocateBuffers(Camera *camera,\n-\t\t\t    const std::set<Stream *> &streams) override;\n+\tint setupBuffers(Camera *camera,\n+\t\t\t const std::set<Stream *> &streams) override;\n \tint freeBuffers(Camera *camera,\n \t\t\tconst std::set<Stream *> &streams) override;\n \n@@ -193,8 +193,8 @@ int PipelineHandlerVimc::configure(Camera *camera, CameraConfiguration *config)\n \treturn 0;\n }\n \n-int PipelineHandlerVimc::allocateBuffers(Camera *camera,\n-\t\t\t\t\t const std::set<Stream *> &streams)\n+int PipelineHandlerVimc::setupBuffers(Camera *camera,\n+\t\t\t\t      const std::set<Stream *> &streams)\n {\n \tVimcCameraData *data = cameraData(camera);\n \tStream *stream = *streams.begin();\ndiff --git a/src/libcamera/pipeline_handler.cpp b/src/libcamera/pipeline_handler.cpp\nindex 0283e4e5ad51..67b215483847 100644\n--- a/src/libcamera/pipeline_handler.cpp\n+++ b/src/libcamera/pipeline_handler.cpp\n@@ -280,11 +280,13 @@ const ControlInfoMap &PipelineHandler::controls(Camera *camera)\n  */\n \n /**\n- * \\fn PipelineHandler::allocateBuffers()\n- * \\brief Allocate buffers for a stream\n+ * \\fn PipelineHandler::setupBuffers()\n+ * \\brief Setup buffer for a stream\n  * \\param[in] camera The camera the \\a stream belongs to\n  * \\param[in] streams The set of streams to allocate buffers for\n  *\n+ * \\todo Change this to describe both allocation and importing\n+ *\n  * This method allocates buffers internally in the pipeline handler for each\n  * stream in the \\a streams buffer set, and associates them with the stream's\n  * buffer pool.\n",
    "prefixes": [
        "libcamera-devel",
        "4/9"
    ]
}