Show a cover letter.

GET /api/covers/15275/?format=api
HTTP 200 OK
Allow: GET, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "id": 15275,
    "url": "https://patchwork.libcamera.org/api/covers/15275/?format=api",
    "web_url": "https://patchwork.libcamera.org/cover/15275/",
    "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": "<20220113102529.3163441-1-naush@raspberrypi.com>",
    "date": "2022-01-13T10:25:27",
    "name": "[libcamera-devel,RFC,v1,0/2] MediaDevice enumeration helper",
    "submitter": {
        "id": 34,
        "url": "https://patchwork.libcamera.org/api/people/34/?format=api",
        "name": "Naushir Patuck",
        "email": "naush@raspberrypi.com"
    },
    "mbox": "https://patchwork.libcamera.org/cover/15275/mbox/",
    "series": [
        {
            "id": 2892,
            "url": "https://patchwork.libcamera.org/api/series/2892/?format=api",
            "web_url": "https://patchwork.libcamera.org/project/libcamera/list/?series=2892",
            "date": "2022-01-13T10:25:27",
            "name": "MediaDevice enumeration helper",
            "version": 1,
            "mbox": "https://patchwork.libcamera.org/series/2892/mbox/"
        }
    ],
    "comments": "https://patchwork.libcamera.org/api/covers/15275/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 06867BE086\n\tfor <parsemail@patchwork.libcamera.org>;\n\tThu, 13 Jan 2022 10:25:38 +0000 (UTC)",
            "from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 676EE604F4;\n\tThu, 13 Jan 2022 11:25:37 +0100 (CET)",
            "from mail-wr1-x436.google.com (mail-wr1-x436.google.com\n\t[IPv6:2a00:1450:4864:20::436])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 80C5E6017E\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tThu, 13 Jan 2022 11:25:35 +0100 (CET)",
            "by mail-wr1-x436.google.com with SMTP id h10so9235290wrb.1\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tThu, 13 Jan 2022 02:25:35 -0800 (PST)",
            "from naush-laptop.pitowers.org\n\t([2a00:1098:3142:14:194e:c2b:3339:eb51])\n\tby smtp.gmail.com with ESMTPSA id\n\ts22sm6757855wmc.1.2022.01.13.02.25.34\n\t(version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n\tThu, 13 Jan 2022 02:25:34 -0800 (PST)"
        ],
        "Authentication-Results": "lancelot.ideasonboard.com;\n\tdkim=fail reason=\"signature verification failed\" (2048-bit key;\n\tunprotected) header.d=raspberrypi.com header.i=@raspberrypi.com\n\theader.b=\"A2JTxWid\"; dkim-atps=neutral",
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=raspberrypi.com; s=google;\n\th=from:to:cc:subject:date:message-id:mime-version\n\t:content-transfer-encoding;\n\tbh=8+4UngsDGmlpirT7Rok66ibI8lVSBCBsChlVWmeLC2M=;\n\tb=A2JTxWidWjLsS1VWBpu1VnkY4ALlOxt/zzLit1UZbOZFY77tnd1P+FXoFASgFr/j9h\n\tJgVewJHhyRnpnqQp2hldkAMzRh2HmmKvJTkY4hL+Z14mijh39W8IBiZIYIAolr7tyyqK\n\tcvUhMgJlHszSyqKiMgGRgVC0BBJ2YOoO2uWbjNPQhnu/F/wnfuyn0leNOD/1BMv3KQGU\n\tWHM6Wev3F72vfIFmfybK5aMWGyPrSsYGzCCPPZrkN0v91cHwYLIG01LyfvxMT1yVSU4R\n\tzgEgeQ35PdI9ezJq1XNNUAm5YvtcDehtTCX9l60nUhyDYdCotvLdKCuN42k+ir4xRLTl\n\t3jPg==",
        "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20210112;\n\th=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version\n\t:content-transfer-encoding;\n\tbh=8+4UngsDGmlpirT7Rok66ibI8lVSBCBsChlVWmeLC2M=;\n\tb=BVyHxZjt/hADwdyR61Byzn+Qxdi58nuW+gdmz/jH9UsfxGUiZXMrsOOisd4+28XPWG\n\tTyFsYlw/TviLWJo1wzsc1f9aM9epKLcPTAPEC6Qnx6YXZJGxRKBRjFYHYDAQaPn0xA25\n\tUk7EGyfMV8eMcBVL2Bs+ECynvqMNVnKoOTUUXb/CB+HD659342BZianfNpDTTw+gr7rk\n\teBDFncV0Y4bk91e66HLt0NAj41+veNthCUKVeXyeKyRIejb3Gb1RpXqW8hVa38UeoRK6\n\twPF4GsyfAdzvv3XDozdRJl8rjDeORH+lD0Z5jAQJjzQ0aKQFTCxZN7ZyqoQMKeW4x9/4\n\tCbuA==",
        "X-Gm-Message-State": "AOAM53273Cfz6R1TfC93FEB4rK7vL5pRXDPQvh0ShLR6J4PLMcOHTymS\n\t+X+0dTKOCCdUYvJG4HApquMdmLLkr9LeMtX7",
        "X-Google-Smtp-Source": "ABdhPJxHvcIIxj6qMxvuDPmOYqElyzc8A+yIXq04/y0irtO9rniHZbW5DMipqgG2G6hFysfBlhNibQ==",
        "X-Received": "by 2002:a05:6000:1843:: with SMTP id\n\tc3mr3442500wri.316.1642069534789; \n\tThu, 13 Jan 2022 02:25:34 -0800 (PST)",
        "From": "Naushir Patuck <naush@raspberrypi.com>",
        "To": "libcamera-devel@lists.libcamera.org",
        "Date": "Thu, 13 Jan 2022 10:25:27 +0000",
        "Message-Id": "<20220113102529.3163441-1-naush@raspberrypi.com>",
        "X-Mailer": "git-send-email 2.25.1",
        "MIME-Version": "1.0",
        "Content-Transfer-Encoding": "8bit",
        "Subject": "[libcamera-devel] [RFC v1 0/2] MediaDevice enumeration helper",
        "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": "Hi,\n\nAs discussed some time back, I've created a helper to enumerate media device\ntopologies so we don't have to implement similar functions in each pipeline\nhandler.\n\nPatch 1 adds a MediaDevice::enumerateMediaWalks() helper function that does\nthe enumeration and returns a vector of \"MediaWalks\" which pipeline handlers\nmay use to configure the media device topology.  Patch 2 updates the RPi pipeline\nhandler to use this helper and remove the existing media device enumeration code.\n\nI'm sure this may need to be tweaked for use in other pipeline handlers, and\ngetting feedback on this would be useful.  The Simple pipeline handler is an\nobvious candidate, and after having a brief look through the code, I think the\nhelper introduced here could simplify the Simple(!) pipeline handler as well.\nHowever, before committing to changing that code over, I wanted to ensure I was\non the right path, and I don't have any means to test any of these changes on\nother platforms.\n\nThanks,\nNaush\n\nNaushir Patuck (2):\n  libcamera: media_device: Add enumerateMediaWalks() helper\n  pipeline: raspberrypi: Use MediaDevice::enumerateMediaWalks()\n\n include/libcamera/internal/media_device.h     |  12 ++\n src/libcamera/media_device.cpp                | 135 +++++++++++++++++\n .../pipeline/raspberrypi/raspberrypi.cpp      | 142 ++++--------------\n 3 files changed, 179 insertions(+), 110 deletions(-)"
}