Patch Detail
Show a patch.
GET /api/patches/18403/?format=api
{ "id": 18403, "url": "https://patchwork.libcamera.org/api/patches/18403/?format=api", "web_url": "https://patchwork.libcamera.org/patch/18403/", "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": "<20230315102300.2265491-2-chenghaoyang@google.com>", "date": "2023-03-15T10:22:55", "name": "[libcamera-devel,v4,1/6] libcamera: pipeline: Accept a camera having no MediaDevice", "commit_ref": null, "pull_url": null, "state": "superseded", "archived": false, "hash": "21419ac980f26a8e940e8c2a0cc6d95c75f5ce23", "submitter": { "id": 117, "url": "https://patchwork.libcamera.org/api/people/117/?format=api", "name": "Cheng-Hao Yang", "email": "chenghaoyang@chromium.org" }, "delegate": null, "mbox": "https://patchwork.libcamera.org/patch/18403/mbox/", "series": [ { "id": 3806, "url": "https://patchwork.libcamera.org/api/series/3806/?format=api", "web_url": "https://patchwork.libcamera.org/project/libcamera/list/?series=3806", "date": "2023-03-15T10:22:54", "name": "Virtual pipeline handler", "version": 4, "mbox": "https://patchwork.libcamera.org/series/3806/mbox/" } ], "comments": "https://patchwork.libcamera.org/api/patches/18403/comments/", "check": "pending", "checks": "https://patchwork.libcamera.org/api/patches/18403/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 C1FF0C3263\n\tfor <parsemail@patchwork.libcamera.org>;\n\tWed, 15 Mar 2023 10:23:12 +0000 (UTC)", "from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 4F2C762710;\n\tWed, 15 Mar 2023 11:23:10 +0100 (CET)", "from mail-pj1-x102a.google.com (mail-pj1-x102a.google.com\n\t[IPv6:2607:f8b0:4864:20::102a])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id A562461ED2\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tWed, 15 Mar 2023 11:23:08 +0100 (CET)", "by mail-pj1-x102a.google.com with SMTP id\n\tom3-20020a17090b3a8300b0023efab0e3bfso1188761pjb.3\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tWed, 15 Mar 2023 03:23:08 -0700 (PDT)", "from chenghaoyang-low.c.googlers.com.com\n\t(112.157.221.35.bc.googleusercontent.com. [35.221.157.112])\n\tby smtp.gmail.com with ESMTPSA id\n\tf11-20020a17090274cb00b001a0450da45csm3262786plt.185.2023.03.15.03.23.06\n\t(version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n\tWed, 15 Mar 2023 03:23:06 -0700 (PDT)" ], "DKIM-Signature": [ "v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org;\n\ts=mail; t=1678875790;\n\tbh=2cvQaGtnoIqMdmnYnTkS9L5wb/oeWw5111IC9HCyQCA=;\n\th=To:Date:In-Reply-To:References:Subject:List-Id:List-Unsubscribe:\n\tList-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:Cc:\n\tFrom;\n\tb=g6tORs6W3qF6R3JhFCh8Sfrq5nW5wsKuqLp24nCBeNkA8SxuecRvvm9sm7NFwWssW\n\tGcbJMKG3f4EyX9vFm1U3m3r6uDmSUKTp3Z49lKAmOY/0CxDJkpCXiPdKzDOICfoav9\n\t8MT3k6uCldMGWkNjJ0NhT6qCmEEhNMu9AnpFI6Zierwn8Fl3e1AVnjYOHx08gSPYz/\n\teh+EtgdK4tvZ77XfQW8ESbnmgX93bQ31h/INMHacBUwQskrQJXqWue2KzX39+8kneX\n\tcRwVooGK5Nhu4A39J4Nj5ogzhd+AHGGxsOdJIgSL/9d/KTWJQYmJAPPjNnyqd9uKrL\n\tDAANMSCS00yNg==", "v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=chromium.org; s=google; t=1678875787;\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=E1+F3oSK6UpV4JEY1nZu+MgbDhGpFB/0GAG68op+4Lo=;\n\tb=esh382bqvS5e190fQDlGtZGVM4I49bDmkxztIMc6rR3LCz3/bOzV/AYZVPWGcnZak+\n\taf5EnWagyl4skTJfu5H9Zi0DAIpocpbvL711UFLJTTMMxMo1nGP7rgVkbfV1eEmG8e7E\n\tGV4Oj3VMdG/mdhQqfb3viLH1irxkz5CBTiXJY=" ], "Authentication-Results": "lancelot.ideasonboard.com; dkim=pass (1024-bit key; \n\tunprotected) header.d=chromium.org\n\theader.i=@chromium.org header.b=\"esh382bq\"; \n\tdkim-atps=neutral", "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20210112; t=1678875787;\n\th=content-transfer-encoding:mime-version:references:in-reply-to\n\t:message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc\n\t:subject:date:message-id:reply-to;\n\tbh=E1+F3oSK6UpV4JEY1nZu+MgbDhGpFB/0GAG68op+4Lo=;\n\tb=ZBf5o5lQDXS9msS6d/r885lfWKRpaHtB1/6QbKHEVybBXKi+Q+bt3bUwIUdPB8hO02\n\tyy54IZ3CU02CzfLlKMteYNCjK2JXIVCAadOpIttVFA7J1VWM7vmFRI8s+KRilxNvLwGl\n\tACp4vJisDPM28nfxYSszBWbewDXxV5SVb+4RlKX6sIzrWGBOe8G0V6O6SZ39mnT1T7vJ\n\tBj2EwQyScZ+O6KIuB9sIKgBT9s7Ls+F8X58mabz2eMxDu4WiwxKcsFBWV/hdgHZgwHSa\n\tthySCaTcQdkExy8Pm4B0ewXo5RYWCWL3TRHQ0UJpegzRSxROb6BAvD4HINbNIWK0qFrH\n\tvaJQ==", "X-Gm-Message-State": "AO0yUKXaHGgIKIzIsB5LAba25mnIdcaWSyTY5ZGW3uELidVAxEGxPjKe\n\t+zpUJtrLS29xsry7kb306mubw77+mP6qnrHb7kc=", "X-Google-Smtp-Source": "AK7set9H/aB2AE0onUgoV6Eq4pVg+UhsgLbWzabjMnJDeWusaH3zYY59umpF6JUkIepH0xPatNQGQg==", "X-Received": "by 2002:a17:903:283:b0:1a1:78e6:d600 with SMTP id\n\tj3-20020a170903028300b001a178e6d600mr1722493plr.10.1678875787020; \n\tWed, 15 Mar 2023 03:23:07 -0700 (PDT)", "X-Google-Original-From": "Harvey Yang <chenghaoyang@google.com>", "To": "libcamera-devel@lists.libcamera.org", "Date": "Wed, 15 Mar 2023 10:22:55 +0000", "Message-Id": "<20230315102300.2265491-2-chenghaoyang@google.com>", "X-Mailer": "git-send-email 2.40.0.rc1.284.g88254d51c5-goog", "In-Reply-To": "<20230315102300.2265491-1-chenghaoyang@google.com>", "References": "<20230315102300.2265491-1-chenghaoyang@google.com>", "MIME-Version": "1.0", "Content-Transfer-Encoding": "8bit", "Subject": "[libcamera-devel] [PATCH v4 1/6] libcamera: pipeline: Accept a\n\tcamera having no MediaDevice", "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>", "From": "Harvey Yang via libcamera-devel <libcamera-devel@lists.libcamera.org>", "Reply-To": "Harvey Yang <chenghaoyang@chromium.org>", "Cc": "Harvey Yang <chenghaoyang@google.com>,\n\tHarvey Yang <chenghaoyang@chromium.org>", "Errors-To": "libcamera-devel-bounces@lists.libcamera.org", "Sender": "\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>" }, "content": "The Fatal check of having at least one MediaDevice was to prevent\npipeline handler implementations searching and owning media devices with\ncustom conventions, instead of using the base function\n|acquireMediaDevice|. It also has the assumption that there's at least\none media device to make a camera work.\n\nNow that the assumption will be broken by the virtual pipeline handler\nadded in the following patches, and developers should be aware of the\navailable functions in the base class to handle media devices, the Fatal\ncheck is no longer needed.\n\nSigned-off-by: Harvey Yang <chenghaoyang@chromium.org>\n---\n src/libcamera/pipeline_handler.cpp | 4 ----\n 1 file changed, 4 deletions(-)", "diff": "diff --git a/src/libcamera/pipeline_handler.cpp b/src/libcamera/pipeline_handler.cpp\nindex f72613b8..21979ea5 100644\n--- a/src/libcamera/pipeline_handler.cpp\n+++ b/src/libcamera/pipeline_handler.cpp\n@@ -604,10 +604,6 @@ void PipelineHandler::registerCamera(std::shared_ptr<Camera> camera)\n {\n \tcameras_.push_back(camera);\n \n-\tif (mediaDevices_.empty())\n-\t\tLOG(Pipeline, Fatal)\n-\t\t\t<< \"Registering camera with no media devices!\";\n-\n \t/*\n \t * Walk the entity list and map the devnums of all capture video nodes\n \t * to the camera.\n", "prefixes": [ "libcamera-devel", "v4", "1/6" ] }