{"id":19277,"url":"https://patchwork.libcamera.org/api/patches/19277/?format=json","web_url":"https://patchwork.libcamera.org/patch/19277/","project":{"id":1,"url":"https://patchwork.libcamera.org/api/projects/1/?format=json","name":"libcamera","link_name":"libcamera","list_id":"libcamera_core","list_email":"libcamera-devel@lists.libcamera.org","web_url":"","scm_url":"","webscm_url":""},"msgid":"<20231204161901.6632-2-naush@raspberrypi.com>","date":"2023-12-04T16:19:00","name":"[libcamera-devel,v1,1/2] build: controls: Add Raspberry Pi vendor specific controls","commit_ref":null,"pull_url":null,"state":"accepted","archived":false,"hash":"7c81a3af724c37b62ee0a7f71ed61e8353b91556","submitter":{"id":34,"url":"https://patchwork.libcamera.org/api/people/34/?format=json","name":"Naushir Patuck","email":"naush@raspberrypi.com"},"delegate":null,"mbox":"https://patchwork.libcamera.org/patch/19277/mbox/","series":[{"id":4099,"url":"https://patchwork.libcamera.org/api/series/4099/?format=json","web_url":"https://patchwork.libcamera.org/project/libcamera/list/?series=4099","date":"2023-12-04T16:18:59","name":"Raspberry Pi vendor controls","version":1,"mbox":"https://patchwork.libcamera.org/series/4099/mbox/"}],"comments":"https://patchwork.libcamera.org/api/patches/19277/comments/","check":"pending","checks":"https://patchwork.libcamera.org/api/patches/19277/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 D9A5CC322E\n\tfor <parsemail@patchwork.libcamera.org>;\n\tMon,  4 Dec 2023 16:18:50 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 6BBCE629CF;\n\tMon,  4 Dec 2023 17:18:50 +0100 (CET)","from mail-ej1-x634.google.com (mail-ej1-x634.google.com\n\t[IPv6:2a00:1450:4864:20::634])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 57753629CD\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tMon,  4 Dec 2023 17:18:48 +0100 (CET)","by mail-ej1-x634.google.com with SMTP id\n\ta640c23a62f3a-a18b0f69b33so831843866b.0\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tMon, 04 Dec 2023 08:18:48 -0800 (PST)","from localhost.localdomain ([188.39.149.98])\n\tby smtp.gmail.com with ESMTPSA id\n\tg5-20020a170906198500b009c5c5c2c5a4sm5445134ejd.219.2023.12.04.08.18.46\n\t(version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n\tMon, 04 Dec 2023 08:18:46 -0800 (PST)"],"DKIM-Signature":["v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org;\n\ts=mail; t=1701706730;\n\tbh=/v4zSQ7v4xevwPPInsO0BXWyq5rTpxgb/3gp4zmt90k=;\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:\n\tFrom;\n\tb=gn/ZtYNyx++U3C7s/ikU6bR6N/wwiCSEPbPOthI8iCnHa3olkalWfj7dzkkrpjXg6\n\tNZdLHct+HbXnzkntWsaacUxQ/VcpAmlZN6RrTgpYUtqhrQBR1KP9O+HIsDd2csDV9b\n\tMmY01Fg0hMrNA8bKny9ni4TFPiB10bPP2Mxykk6c/1REBQ8MtE8oHPdAK7qQfxSreI\n\tKcFC6EFpwpGZ537pfoMulLhHH4En3v4gch3gYMw56G+V8P3SwqjoSY7AztDTnGs6vQ\n\tMJQoR/1SsdbB9g5Y6+CyHb3CXXofqOStZFXkXzRaJN8qmRdsWZEYXuDlJySeewlaFi\n\th1WnSahI7RMhg==","v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=raspberrypi.com; s=google; t=1701706727; x=1702311527;\n\tdarn=lists.libcamera.org; \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=y8ncGodAQ6bEVK+GpWf7ReWnK1V/zDtSzIhEDDR6iyo=;\n\tb=AJ8uiKkqKXNiyzQ1ZFtA09ktBmP1Q6rI+P+isPlV8v3AeFek29HBtk9dIwTKbW3Y+S\n\tadtOHQyMnBXwGRS9qjrwL2H5EM58kQAVuoC31VqeMcMmhhVpkqDD5kzxZlpk+6nEMlM3\n\tQtFq88MFtePXN+ACUjAhw+W/vKYIXNxdNqUmERlzL1z5JWLIHjt+Lyk11LRQqTTbTmqW\n\tyPiuWU2tdWHkOBOsERZVaSrIUiTaixhI9o6/9jT3tFxfFEyfiaDc2weQBAQoa4T98hdY\n\txkR04dKWEiezb+rhZvC+pqvky4fM1VW6L/bikrQ5jECQkjkuZdPWPRgzTeASxWqeAhID\n\tnHxQ=="],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (2048-bit key; \n\tunprotected) header.d=raspberrypi.com\n\theader.i=@raspberrypi.com\n\theader.b=\"AJ8uiKkq\"; dkim-atps=neutral","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20230601; t=1701706727; x=1702311527;\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=y8ncGodAQ6bEVK+GpWf7ReWnK1V/zDtSzIhEDDR6iyo=;\n\tb=KQR+DHjrseSTgKt7SKK7V1ETgxLBLkMHvvorBhiIjGqtPaBFfAe8jsIjYRXv0wceRP\n\teL6URE59xUX79rtNB15L6vlXp/sKnmeCBncDrYrd0iCfXLE1kt3EL76tRzK8BHAff+e6\n\t3jzQxKujkm7Yu9I3SKDoz00CQS8FdQ8mQJRp6+pLRs9dX8XPfcuCGi2L/OebcQ4XwS3e\n\tHBsBkAX3b4wryT6/wETDXmLI97UIwuMRxVNAWIuc99G/h3G0hShjWRv29jqSGyAIj0uP\n\tpy8vBggeD5jP30T/JXbmMWLELdOSp3KtO1ppc9+cVRdjtYbKJDARjwq8KmHJzEmHVjAk\n\t6qmg==","X-Gm-Message-State":"AOJu0YznY+ODhAhjo3yyqaWMhgAF/+ULoKkHnxDCPA9hDTwpM7NqkVOK\n\tau3JTDzboCmxAUuT+NqHuI9hNtJRBqY2Lxf9ECK/mA==","X-Google-Smtp-Source":"AGHT+IEFPUF8FVk1VtLgF5pdCYIlHO+QqdumsiGpIPydjcSWFC9QgWQhi99MCVPOE4DEq9pg32N4dQ==","X-Received":"by 2002:a17:906:ccc7:b0:9e8:2441:5cd4 with SMTP id\n\tot7-20020a170906ccc700b009e824415cd4mr6093171ejb.17.1701706727676; \n\tMon, 04 Dec 2023 08:18:47 -0800 (PST)","To":"libcamera-devel@lists.libcamera.org","Date":"Mon,  4 Dec 2023 16:19:00 +0000","Message-Id":"<20231204161901.6632-2-naush@raspberrypi.com>","X-Mailer":"git-send-email 2.34.1","In-Reply-To":"<20231204161901.6632-1-naush@raspberrypi.com>","References":"<20231204161901.6632-1-naush@raspberrypi.com>","MIME-Version":"1.0","Content-Transfer-Encoding":"8bit","Subject":"[libcamera-devel] [PATCH v1 1/2] build: controls: Add Raspberry Pi\n\tvendor specific controls","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":"Naushir Patuck via libcamera-devel\n\t<libcamera-devel@lists.libcamera.org>","Reply-To":"Naushir Patuck <naush@raspberrypi.com>","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"},"content":"Add a new control_ids_rpi.yaml file to hold the Raspberry Pi specific\nvendor controls.\n\nDefine a control StatsOutputEnable to allow the ISP hardware statistics\nto be output through metadata via the Bcm2835StatsOutput control. The\nimplementation of these controls will follow in a subsequent patch.\n\nSigned-off-by: Naushir Patuck <naush@raspberrypi.com>\n---\n include/libcamera/meson.build      |  1 +\n src/libcamera/control_ids_rpi.yaml | 29 +++++++++++++++++++++++++++++\n 2 files changed, 30 insertions(+)\n create mode 100644 src/libcamera/control_ids_rpi.yaml","diff":"diff --git a/include/libcamera/meson.build b/include/libcamera/meson.build\nindex bab858a3790f..84c6c4cb8bf6 100644\n--- a/include/libcamera/meson.build\n+++ b/include/libcamera/meson.build\n@@ -36,6 +36,7 @@ controls_map = {\n     'controls': {\n         'draft': 'control_ids_draft.yaml',\n         'core': 'control_ids_core.yaml',\n+        'rpi/vc4': 'control_ids_rpi.yaml',\n     },\n \n     'properties': {\ndiff --git a/src/libcamera/control_ids_rpi.yaml b/src/libcamera/control_ids_rpi.yaml\nnew file mode 100644\nindex 000000000000..cb097f887e16\n--- /dev/null\n+++ b/src/libcamera/control_ids_rpi.yaml\n@@ -0,0 +1,29 @@\n+# SPDX-License-Identifier: LGPL-2.1-or-later\n+#\n+# Copyright (C) 2023, Raspberry Pi Ltd\n+#\n+%YAML 1.1\n+---\n+# Raspberry Pi (VC4 and PiSP) specific vendor controls\n+vendor: rpi\n+controls:\n+  - StatsOutputEnable:\n+      type: bool\n+      description: |\n+        Toggles the Raspberry Pi IPA to output a binary dump of the hardware\n+        generated statistics through the Request metadata in the Bcm2835StatsOutput\n+        control.\n+\n+        \\sa Bcm2835StatsOutput\n+\n+  - Bcm2835StatsOutput:\n+      type: uint8_t\n+      size: [n]\n+      description: |\n+        Span of the BCM2835 ISP generated statistics for the current frame. This\n+        is sent in the Request metadata if the StatsOutputEnable is set to true.\n+        The statistics struct definition can be found in include/linux/bcm2835-isp.h.\n+\n+        \\sa StatsOutputEnable\n+\n+...\n","prefixes":["libcamera-devel","v1","1/2"]}