Message ID | 20250912-flash_reco-v2-0-d5bb80a2e619@emfend.at |
---|---|
Headers | show
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 [92.243.16.209]) by patchwork.libcamera.org (Postfix) with ESMTPS id 52E26C324E for <parsemail@patchwork.libcamera.org>; Fri, 12 Sep 2025 07:13:31 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id 38109613A3; Fri, 12 Sep 2025 09:13:30 +0200 (CEST) Authentication-Results: lancelot.ideasonboard.com; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=emfend.at header.i=@emfend.at header.b="EWUcqFDy"; dkim-atps=neutral Received: from lx20.hoststar.hosting (lx20.hoststar.hosting [168.119.41.54]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id 949D5613A3 for <libcamera-devel@lists.libcamera.org>; Fri, 12 Sep 2025 09:13:27 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=emfend.at; s=mail; h=Cc:To:Content-Transfer-Encoding:Content-Type:MIME-Version: Message-Id:Date:Subject:From:Sender:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: In-Reply-To:References:List-Id:List-Help:List-Unsubscribe:List-Subscribe: List-Post:List-Owner:List-Archive; bh=wzSnx12OEWJt2URK59JhJ1eyr/d+RYPz3MrAxbdJ8JQ=; b=EWUcqFDyCKPwsFMw1WZcPeGQeQ m+6UGBmjseIhDwhqLY06ouu5cFS2W/41IVGr08zNv6zU2iMR4EgU8e8z1PsFygY+GZYaaOm6EqJHW J+2nlmDHZzAve+vGkYpKlh6xu69S5MQ9ZbBfZLqnBiNu6WiIQQPHqjvTqDnxbtlt83jQ=; Received: from 194-208-208-245.tele.net ([194.208.208.245]:58477 helo=[127.0.1.1]) by lx20.hoststar.hosting with esmtpsa (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.93) (envelope-from <matthias.fend@emfend.at>) id 1uwxyI-008cBW-A6; Fri, 12 Sep 2025 09:13:26 +0200 From: Matthias Fend <matthias.fend@emfend.at> Subject: [PATCH v2 0/5] Support for v4l2 flash devices Date: Fri, 12 Sep 2025 09:13:19 +0200 Message-Id: <20250912-flash_reco-v2-0-d5bb80a2e619@emfend.at> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit X-B4-Tracking: v=1; b=H4sIABDIw2gC/6tWKk4tykwtVrJSqFYqSi3LLM7MzwNyjHQUlJIzE vPSU3UzU4B8JSMDI1MDS0Mj3bScxOKM+KLU5HzdlBRjU3ODlERDgxRjJaCGgqLUtMwKsGHRsbW 1ALqRa5pcAAAA X-Change-ID: 20250912-flash_reco-dd3570da10d3 To: libcamera-devel@lists.libcamera.org Cc: Matthias Fend <matthias.fend@emfend.at> X-Mailer: b4 0.14.2 X-Spam-Score: X-Spam-Bar: X-Spam-Report: 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>, <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>, <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> |
Series |
|
Related |
show
|
Hi, even though the API contained here is considered too low-level and the series will therefore probably never be merged, I have nevertheless decided to include the feedback I have already received and send an updated series. Perhaps this will be helpful to someone in the meantime, until a new API exists. - This series brings initial support for v4l2 flash devices. With these patches, v4l2 flash devices can be controlled by applications via libcamera controls. Applications therefore only require one API and do not have to worry about details such as finding the appropriate v4l2 flash device. The controls are currently quite transparent and no advanced flash sequences (pre-flash, AGC precorrection, etc.) are supported. This functionality should be easy to integrate into the various pipeline handlers and is implemented as an example for the RKSIP1 pipeline. Signed-off-by: Matthias Fend <matthias.fend@emfend.at> --- Changes in v2: - Move controls from draft to core - Improve documentation for new controls - CameraFlash::Consistently use controlInfoMap_ - CameraFlash: add error checking in getSubdevControl() - CameraFlash: make return value getX() optional - CameraFlash: remove model() and controls() - CameraFlash: use class enums - FlashControl: also map values for metadata controls --- Matthias Fend (5): libcamera: control_ids_core: Add flash controls libcamera: Add support for camera flash devices Documentation: Add flash driver requirements libcamera: Add flash helpers for pipeline handlers rkisp1: Add support for camera flash devices Documentation/documentation-contents.rst | 1 + Documentation/flash_driver_requirements.rst | 40 +++++ Documentation/index.rst | 1 + Documentation/meson.build | 1 + include/libcamera/internal/camera_flash.h | 72 ++++++++ include/libcamera/internal/camera_sensor.h | 2 + include/libcamera/internal/flash_control.h | 23 +++ src/libcamera/camera_flash.cpp | 249 ++++++++++++++++++++++++++ src/libcamera/control_ids_core.yaml | 78 ++++++++ src/libcamera/flash_control.cpp | 148 +++++++++++++++ src/libcamera/meson.build | 2 + src/libcamera/pipeline/rkisp1/rkisp1.cpp | 5 + src/libcamera/sensor/camera_sensor_legacy.cpp | 13 ++ src/libcamera/sensor/camera_sensor_raw.cpp | 13 ++ 14 files changed, 648 insertions(+) --- base-commit: b8d332cdcc130c27232f61369e7bab2d954e7ac6 change-id: 20250912-flash_reco-dd3570da10d3 Best regards,