From: Richard Leitner <richard.leitner@linux.dev>
To: Sakari Ailus <sakari.ailus@linux.intel.com>,
Dave Stevenson <dave.stevenson@raspberrypi.com>,
Mauro Carvalho Chehab <mchehab@kernel.org>,
Lee Jones <lee@kernel.org>, Pavel Machek <pavel@kernel.org>,
Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Cc: linux-media@vger.kernel.org, linux-kernel@vger.kernel.org,
linux-leds@vger.kernel.org,
Richard Leitner <richard.leitner@linux.dev>,
Hans Verkuil <hverkuil@kernel.org>
Subject: [PATCH v8 3/8] Documentation: uAPI: media: add V4L2_CID_FLASH_{DURATION,STROBE_OE}
Date: Tue, 04 Nov 2025 15:30:54 +0100 [thread overview]
Message-ID: <20251104-ov9282-flash-strobe-v8-3-b91dfef1c65a@linux.dev> (raw)
In-Reply-To: <20251104-ov9282-flash-strobe-v8-0-b91dfef1c65a@linux.dev>
Add the new strobe duration and hardware strobe output enable to v4l
uAPI documentation. Additionally add labels for cross-referencing v4l
controls.
Signed-off-by: Richard Leitner <richard.leitner@linux.dev>
---
.../userspace-api/media/v4l/ext-ctrls-flash.rst | 42 ++++++++++++++++++++++
1 file changed, 42 insertions(+)
diff --git a/Documentation/userspace-api/media/v4l/ext-ctrls-flash.rst b/Documentation/userspace-api/media/v4l/ext-ctrls-flash.rst
index d22c5efb806a1..7cf0d33e79ff0 100644
--- a/Documentation/userspace-api/media/v4l/ext-ctrls-flash.rst
+++ b/Documentation/userspace-api/media/v4l/ext-ctrls-flash.rst
@@ -57,6 +57,8 @@ Flash Control IDs
``V4L2_CID_FLASH_CLASS (class)``
The FLASH class descriptor.
+.. _v4l2-cid-flash-led-mode:
+
``V4L2_CID_FLASH_LED_MODE (menu)``
Defines the mode of the flash LED, the high-power white LED attached
to the flash controller. Setting this control may not be possible in
@@ -80,6 +82,8 @@ Flash Control IDs
+.. _v4l2-cid-flash-strobe-source:
+
``V4L2_CID_FLASH_STROBE_SOURCE (menu)``
Defines the source of the flash LED strobe.
@@ -96,6 +100,12 @@ Flash Control IDs
- The flash strobe is triggered by an external source. Typically
this is a sensor, which makes it possible to synchronise the
flash strobe start to exposure start.
+ This method of controlling flash LED strobe has two additional
+ prerequisites: the strobe source's :ref:`strobe output
+ <v4l2-cid-flash-strobe-oe>` must be enabled (if available)
+ and the flash controller's :ref:`flash LED mode
+ <v4l2-cid-flash-led-mode>` must be set to
+ ``V4L2_FLASH_LED_MODE_FLASH``.
@@ -186,3 +196,35 @@ Flash Control IDs
charged before strobing. LED flashes often require a cooldown period
after strobe during which another strobe will not be possible. This
is a read-only control.
+
+.. _v4l2-cid-flash-duration:
+
+``V4L2_CID_FLASH_DURATION (integer)``
+ Duration of the flash strobe pulse generated by the strobe source, when
+ using external strobe. This control shall be implemented by the device
+ generating the hardware flash strobe signal, typically a camera sensor,
+ connected to a flash controller.
+
+ The flash controllers :ref:`strobe source <v4l2-cid-flash-strobe-source>`
+ must be configured to ``V4L2_FLASH_STROBE_SOURCE_EXTERNAL`` for this
+ mode of operation. For more details please also take a look at the
+ documentation there.
+
+ The unit should be microseconds (µs) if possible.
+
+.. _v4l2-cid-flash-strobe-oe:
+
+``V4L2_CID_FLASH_STROBE_OE (boolean)``
+ Enables the output of a hardware strobe signal from the strobe source,
+ when using external strobe. This control shall be implemented by the device
+ generating the hardware flash strobe signal, typically a camera sensor,
+ connected to a flash controller.
+
+ Provided the signal generating device driver supports it, the length of the
+ strobe signal can be configured by adjusting its
+ :ref:`flash duration <v4l2-cid-flash-duration>`.
+
+ The flash controllers :ref:`strobe source <v4l2-cid-flash-strobe-source>`
+ must be configured to ``V4L2_FLASH_STROBE_SOURCE_EXTERNAL`` for this
+ mode of operation. For more details please also take a look at the
+ documentation there.
--
2.47.3
next prev parent reply other threads:[~2025-11-04 14:31 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-11-04 14:30 [PATCH v8 0/8] Add strobe duration and strobe output enable v4l2 ctrl Richard Leitner
2025-11-04 14:30 ` [PATCH v8 1/8] media: v4l: ctrls: add a control for flash/strobe duration Richard Leitner
2025-11-04 14:30 ` [PATCH v8 2/8] media: v4l: ctrls: add a control for enabling strobe output Richard Leitner
2025-11-04 14:30 ` Richard Leitner [this message]
2025-11-04 14:30 ` [PATCH v8 4/8] media: i2c: ov9282: add output enable register definitions Richard Leitner
2025-11-04 14:30 ` [PATCH v8 5/8] media: i2c: ov9282: add strobe output enable v4l2 control Richard Leitner
2025-11-04 14:30 ` [PATCH v8 6/8] media: i2c: ov9282: add strobe_duration " Richard Leitner
2025-11-04 14:30 ` [PATCH v8 7/8] media: i2c: ov9282: implement try_ctrl for strobe_duration Richard Leitner
2025-11-07 21:05 ` kernel test robot
2025-11-04 14:30 ` [PATCH v8 8/8] media: i2c: ov9282: dynamic flash_duration maximum Richard Leitner
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20251104-ov9282-flash-strobe-v8-3-b91dfef1c65a@linux.dev \
--to=richard.leitner@linux.dev \
--cc=dave.stevenson@raspberrypi.com \
--cc=hverkuil@kernel.org \
--cc=laurent.pinchart@ideasonboard.com \
--cc=lee@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-leds@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=mchehab@kernel.org \
--cc=pavel@kernel.org \
--cc=sakari.ailus@linux.intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).