Cover Letter Detail
Show a cover letter.
GET /api/covers/8621/?format=api
{ "id": 8621, "url": "https://patchwork.libcamera.org/api/covers/8621/?format=api", "web_url": "https://patchwork.libcamera.org/cover/8621/", "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": "<20200704133140.1738660-1-paul.elder@ideasonboard.com>", "date": "2020-07-04T13:31:18", "name": "[libcamera-devel,v3,00/22] Clean up formats in v4l2-compat and pipeline handlers", "submitter": { "id": 17, "url": "https://patchwork.libcamera.org/api/people/17/?format=api", "name": "Paul Elder", "email": "paul.elder@ideasonboard.com" }, "mbox": "https://patchwork.libcamera.org/cover/8621/mbox/", "series": [ { "id": 1083, "url": "https://patchwork.libcamera.org/api/series/1083/?format=api", "web_url": "https://patchwork.libcamera.org/project/libcamera/list/?series=1083", "date": "2020-07-04T13:31:18", "name": "Clean up formats in v4l2-compat and pipeline handlers", "version": 3, "mbox": "https://patchwork.libcamera.org/series/1083/mbox/" } ], "comments": "https://patchwork.libcamera.org/api/covers/8621/comments/", "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 74FD2BD792\n\tfor <parsemail@patchwork.libcamera.org>;\n\tSat, 4 Jul 2020 13:31:57 +0000 (UTC)", "from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id E8AA160E01;\n\tSat, 4 Jul 2020 15:31:56 +0200 (CEST)", "from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[213.167.242.64])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 13DA6609C7\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tSat, 4 Jul 2020 15:31:55 +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 75769296;\n\tSat, 4 Jul 2020 15:31:53 +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=\"BNePsRpB\"; dkim-atps=neutral", "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1593869514;\n\tbh=wNYe2VmNyrkdvwC+XGz6Q7yLRnuUgKpD64a50DItQBw=;\n\th=From:To:Cc:Subject:Date:From;\n\tb=BNePsRpBOkWtRpWvyPxbORtfeOurNvNAAsixpme2RG4M563+JUlGSecBK5UWkfcDU\n\td9jr8+zYEtxpHCSVwzpWDXCeT6U/BV3wNqRi9sOuQjRKmCpjcG3LBCnQt1Qe75ttl2\n\tdL5ISwzWY5o1sYoTEaP+qNzWOnWA8h0+omTv4DgQ=", "From": "Paul Elder <paul.elder@ideasonboard.com>", "To": "libcamera-devel@lists.libcamera.org", "Date": "Sat, 4 Jul 2020 22:31:18 +0900", "Message-Id": "<20200704133140.1738660-1-paul.elder@ideasonboard.com>", "X-Mailer": "git-send-email 2.27.0", "MIME-Version": "1.0", "Subject": "[libcamera-devel] [PATCH v3 00/22] Clean up formats in v4l2-compat\n\tand pipeline handlers", "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": "This patch series:\n- improves format-related calculations (stride, frameSize)\n- cleans up the v4l2 compatibility layer related to formats\n- fixes v4l2 compatibility interception for the raspberry pi pipeline\n handler\n- fixes unsupported formats in uvcvideo and raspberrypi pipeline\n handlers (the others were fine already)\n- moves filling in stride and frameSize from camera configuration time\n to configuration validation time for all pipeline handlers\n\nI know it's kind of big but they're all related... some of these patches\ncame from stray short series that never got reviewed, so those can now\nbe disregarded.\n\nPatches 1~7 add functions and fields that are necessary in the rest of\nthe patches. Patches 8~10 move formats out of V4L2CameraProxy, and clean\nup some of its code. Patches 13 forces pipeline handlers to use\nacquireMediaDevice so that media devices can automatically be mapped to\ndevnums for the v4l2 compatibility layer to intercept, and patch 12\nmakes the raspberrypi pipeline handler conform to this. Patches 14~15\nfilter out unsupported formats at configuration generation time, to\nprevent them from being selected, in the pipeline handlers that hadn't\nalready done so. Patches 16~21 move filling in the stide and frameSize\nparameters from camera configuration time to configuration validation\ntime.\n\nPaul Elder (22):\n libcamera: formats: Add NV24 and NV42, and reorder NV formats\n libcamera: formats: Add fields to info to ease calculating stride\n libcamera: StreamConfiguration: Add frameSize field\n libcamera: V4L2VideoDevice: Add tryFormat\n libcamera: formats: PixelFormatInfo: Add v4l2 lookup function\n libcamera: PixelFormatInfo: Add functions stride and frameSize\n v4l2: v4l2_camera: Add validateConfiguration\n v4l2: v4l2_camera_proxy: Use libcamera formats\n v4l2: v4l2_camera_proxy: Get stride and frameSize from stream config\n v4l2: v4l2_camera_proxy: Use stream config in tryFormat\n libcamera: pipeline: raspberrypi: Simplify format fetching\n libcamera: pipeline: raspberrypi: Acquire media devices with\n acquireMediaDevice\n libcamera: pipeline_handler: Fatal if registering camera without media\n devices\n libcamera: pipeline: raspberrypi: Filter out unsupported formats\n libcamera: pipeline: uvcvideo: Filter out unsupported formats\n libcamera: ipu3: Fill stride and frameSize at config validation\n libcamera: raspberrypi: Fill stride and frameSize at config validation\n libcamera: rkisp1: Fill stride and frameSize at config validation\n libcamera: simple: Fill stride and frameSize at config validation\n libcamera: uvcvideo: Fill stride and frameSize at config validation\n libcamera: vimc: Fill stride and frameSize at config validation\n libcamera: StreamConfiguration: Update stride documentation\n\n include/libcamera/internal/formats.h | 15 +-\n include/libcamera/internal/v4l2_videodevice.h | 4 +\n include/libcamera/stream.h | 1 +\n src/libcamera/formats.cpp | 229 ++++++++++++++++--\n src/libcamera/pipeline/ipu3/ipu3.cpp | 12 +-\n .../pipeline/raspberrypi/raspberrypi.cpp | 43 ++--\n src/libcamera/pipeline/rkisp1/rkisp1.cpp | 5 +-\n src/libcamera/pipeline/simple/converter.cpp | 14 ++\n src/libcamera/pipeline/simple/converter.h | 5 +\n src/libcamera/pipeline/simple/simple.cpp | 28 ++-\n src/libcamera/pipeline/uvcvideo/uvcvideo.cpp | 44 +++-\n src/libcamera/pipeline/vimc/vimc.cpp | 5 +-\n src/libcamera/pipeline_handler.cpp | 4 +\n src/libcamera/stream.cpp | 22 +-\n src/libcamera/v4l2_videodevice.cpp | 121 +++++++++\n src/v4l2/v4l2_camera.cpp | 29 +++\n src/v4l2/v4l2_camera.h | 3 +\n src/v4l2/v4l2_camera_proxy.cpp | 206 +++-------------\n src/v4l2/v4l2_camera_proxy.h | 8 -\n 19 files changed, 544 insertions(+), 254 deletions(-)" }