Cover Letter Detail
Show a cover letter.
GET /api/1.1/covers/1681/?format=api
{ "id": 1681, "url": "https://patchwork.libcamera.org/api/1.1/covers/1681/?format=api", "web_url": "https://patchwork.libcamera.org/cover/1681/", "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": "<20190713172351.25452-1-laurent.pinchart@ideasonboard.com>", "date": "2019-07-13T17:23:35", "name": "[libcamera-devel,v2,00/16] Add support for external buffers", "submitter": { "id": 2, "url": "https://patchwork.libcamera.org/api/1.1/people/2/?format=api", "name": "Laurent Pinchart", "email": "laurent.pinchart@ideasonboard.com" }, "mbox": "https://patchwork.libcamera.org/cover/1681/mbox/", "series": [ { "id": 430, "url": "https://patchwork.libcamera.org/api/1.1/series/430/?format=api", "web_url": "https://patchwork.libcamera.org/project/libcamera/list/?series=430", "date": "2019-07-13T17:23:35", "name": "Add support for external buffers", "version": 2, "mbox": "https://patchwork.libcamera.org/series/430/mbox/" } ], "comments": "https://patchwork.libcamera.org/api/covers/1681/comments/", "headers": { "Return-Path": "<laurent.pinchart@ideasonboard.com>", "Received": [ "from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[213.167.242.64])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id CD42160C23\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tSat, 13 Jul 2019 19:24:24 +0200 (CEST)", "from pendragon.ideasonboard.com (softbank126209254147.bbtec.net\n\t[126.209.254.147])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 624982B2\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tSat, 13 Jul 2019 19:24:23 +0200 (CEST)" ], "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1563038664;\n\tbh=xLpeTP6D8eEw5SUutoTcdaumrmewP84AveS6Zfs7vks=;\n\th=From:To:Subject:Date:From;\n\tb=tF7Lbpw3BaAsQ4oKSMAorOsFxXDNcmY43UFhnWFmgmGU/6glhRwJRwDQQbJcOpG9F\n\tBFkuCeSCWvEgagGfesi0AVd631CBlcxpTqZ6GyqBfA2HN5WZROt535LXuDzmKGN6rB\n\tFvrQxu6LxFlj8Rq0T/P1VjU5z5dv2t4guQZa8mNc=", "From": "Laurent Pinchart <laurent.pinchart@ideasonboard.com>", "To": "libcamera-devel@lists.libcamera.org", "Date": "Sat, 13 Jul 2019 20:23:35 +0300", "Message-Id": "<20190713172351.25452-1-laurent.pinchart@ideasonboard.com>", "X-Mailer": "git-send-email 2.21.0", "MIME-Version": "1.0", "Content-Type": "text/plain; charset=UTF-8", "Content-Transfer-Encoding": "8bit", "Subject": "[libcamera-devel] [PATCH v2 00/16] Add support for external buffers", "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": "Sat, 13 Jul 2019 17:24:25 -0000" }, "content": "a.k.a. Cover letter at 2:00am after a long code camp\n\nHello everybody,\n\nThis patch series adds buffer import to libcamera. This is the result of\nlots of back-and-forth face-to-face work between Jacopo and me, and\nshould get close to upstreamable state.\n\nAfter having worked and reworked the code for way too long, I believe\nwe'll need another rework of the API on top of this series to more\nclearly separate the different concepts into different objects. For the\ntime being, this should allow us to import buffers from the Android\ncamera HAL, and goes (in my opinion at least in the right direction).\n\nSummarizing the series here is difficult as it interleaves fixes and\nreworks that may appear semi-random with patches that implement the core\nof buffer importing. The first large change is patch 06/16 that reworks\nthe Buffer class extensively and splits it in two. Patch 11/16 and 12/16\nprepare for buffer import by extending the application-facing API of the\nrelated classes, and patches 14/16 and 15/16 implementing the remaining\npart of buffer importing. Finally patch 16/16 adds a buffer import test.\n\nJacopo Mondi (6):\n libcamera: stream: Shorten access to the bufferPool\n libcamera: stream: Add Stream memory type\n libcamera: buffer: Add dmabuf file descriptors\n libcamera: stream: Map external buffers to indexes\n libcamera: pipeline: Support importing buffers\n test: camera: Add buffer import and mapping test\n\nLaurent Pinchart (10):\n libcamera: camera: Don't move buffers away from request at completion\n libcamera: camera: Don't check buffer count before freeing buffers\n libcamera: pipeline_handler: Simplify request completion\n libcamera: request: Add cookie to make request tracking easier\n libcamera: v4l2_videodevice: Add helper to queue all buffers\n libcamera: buffer: Split memory information to BufferMemory\n libcamera: v4l2_videodevice: Signal buffer completion at streamoff\n time\n libcamera: pipeline: ipu3: Use stream configuration to get buffers\n count\n libcamera: Stop using Stream::bufferPool to get the number of buffers\n libcamera: buffer: Add an accessor to the BufferMemory\n\n include/libcamera/buffer.h | 63 ++--\n include/libcamera/camera.h | 3 +-\n include/libcamera/request.h | 12 +-\n include/libcamera/stream.h | 23 ++\n src/cam/buffer_writer.cpp | 6 +-\n src/cam/capture.cpp | 38 +-\n src/libcamera/buffer.cpp | 177 +++++++---\n src/libcamera/camera.cpp | 42 ++-\n src/libcamera/include/pipeline_handler.h | 2 +-\n src/libcamera/include/v4l2_videodevice.h | 9 +-\n src/libcamera/pipeline/ipu3/ipu3.cpp | 78 +++--\n src/libcamera/pipeline/rkisp1/rkisp1.cpp | 12 +-\n src/libcamera/pipeline/uvcvideo.cpp | 8 +-\n src/libcamera/pipeline/vimc.cpp | 8 +-\n src/libcamera/pipeline_handler.cpp | 49 +--\n src/libcamera/request.cpp | 70 +++-\n src/libcamera/stream.cpp | 234 ++++++++++++-\n src/libcamera/v4l2_videodevice.cpp | 109 ++++--\n src/qcam/main_window.cpp | 36 +-\n test/camera/buffer_import.cpp | 425 +++++++++++++++++++++++\n test/camera/capture.cpp | 20 +-\n test/camera/meson.build | 1 +\n test/camera/statemachine.cpp | 6 +-\n test/v4l2_videodevice/buffer_sharing.cpp | 14 +-\n test/v4l2_videodevice/capture_async.cpp | 8 +-\n 25 files changed, 1201 insertions(+), 252 deletions(-)\n create mode 100644 test/camera/buffer_import.cpp" }