From: Pavan Bobba <opensource206@gmail.com>
To: skhan@linuxfoundation.org, kieran.bingham@ideasonboard.com,
mchehab@kernel.org
Cc: linux-kernel@vger.kernel.org, linux-media@vger.kernel.org,
Pavan Bobba <opensource206@gmail.com>
Subject: [PATCH 5/5] docs: media: vimc: document RGB/YUV input entity
Date: Thu, 20 Nov 2025 14:19:26 +0530 [thread overview]
Message-ID: <20251120084926.18620-6-opensource206@gmail.com> (raw)
In-Reply-To: <20251120084926.18620-1-opensource206@gmail.com>
Update the vimc admin guide to describe the RGB/YUV input entity and
show how to use it in a pipeline.
The existing media-ctl and v4l2-ctl examples are updated to:
Use the correct device name, platform:vimc.0.
Keep the original sensor → debayer → scaler pipeline example.
Add a new example that switches the scaler input to the RGB/YUV
entity and requests ARGB output with a padded capture stride via
bytesperline.
A new vimc-input subdevice section documents the RGB/YUV frame source
entity, its default RGB888 bus format, and how it can be used for
software-driven frame injection in pipelines that start after a real
debayer stage.
This makes it easier for users to understand and exercise the RGB/YUV
input entity in vimc-based experiments.
Signed-off-by: Pavan Bobba <opensource206@gmail.com>
---
Documentation/admin-guide/media/vimc.rst | 39 ++++++++++++++++++------
1 file changed, 30 insertions(+), 9 deletions(-)
diff --git a/Documentation/admin-guide/media/vimc.rst b/Documentation/admin-guide/media/vimc.rst
index 29d843a8ddb1..a1b7de769e23 100644
--- a/Documentation/admin-guide/media/vimc.rst
+++ b/Documentation/admin-guide/media/vimc.rst
@@ -4,7 +4,7 @@ The Virtual Media Controller Driver (vimc)
==========================================
The vimc driver emulates complex video hardware using the V4L2 API and the Media
-API. It has a capture device and three subdevices: sensor, debayer and scaler.
+API. It has a capture device and three subdevices: sensor, debayer, scaler and RGB/YUV input entity.
Topology
--------
@@ -29,17 +29,28 @@ configuration on each linked subdevice to stream frames through the pipeline.
If the configuration doesn't match, the stream will fail. The ``v4l-utils``
package is a bundle of user-space applications, that comes with ``media-ctl`` and
``v4l2-ctl`` that can be used to configure the vimc configuration. This sequence
-of commands fits for the default topology:
+-of commands fits for the default topology:
.. code-block:: bash
- media-ctl -d platform:vimc -V '"Sensor A":0[fmt:SBGGR8_1X8/640x480]'
- media-ctl -d platform:vimc -V '"Debayer A":0[fmt:SBGGR8_1X8/640x480]'
- media-ctl -d platform:vimc -V '"Scaler":0[fmt:RGB888_1X24/640x480]'
- media-ctl -d platform:vimc -V '"Scaler":0[crop:(100,50)/400x150]'
- media-ctl -d platform:vimc -V '"Scaler":1[fmt:RGB888_1X24/300x700]'
- v4l2-ctl -z platform:vimc -d "RGB/YUV Capture" -v width=300,height=700
- v4l2-ctl -z platform:vimc -d "Raw Capture 0" -v pixelformat=BA81
+ media-ctl -d platform:vimc.0 -V '"Sensor A":0[fmt:SBGGR8_1X8/640x480]'
+ media-ctl -d platform:vimc.0 -V '"Debayer A":0[fmt:SBGGR8_1X8/640x480]'
+ media-ctl -d platform:vimc.0 -V '"Scaler":0[fmt:RGB888_1X24/640x480]'
+ media-ctl -d platform:vimc.0 -V '"Scaler":0[crop:(100,50)/400x150]'
+ media-ctl -d platform:vimc.0 -V '"Scaler":1[fmt:RGB888_1X24/300x700]'
+ v4l2-ctl -z platform:vimc.0 -d "RGB/YUV Capture" -v width=300,height=700
+ v4l2-ctl -z platform:vimc.0 -d "Raw Capture 0" -v pixelformat=BA81
+
+The following commands switch the scaler input to the RGB/YUV entity and request
+ARGB output with a padded capture stride.
+
+.. code-block:: bash
+
+ media-ctl -d platform:vimc.0 -V '"RGB/YUV Input":0[fmt:RGB888_1X24/640x480]'
+ media-ctl -d platform:vimc.0 -V '"Scaler":0[fmt:RGB888_1X24/640x480]'
+ media-ctl -d platform:vimc.0 -V '"Scaler":1[fmt:ARGB8888_1X32/640x480]'
+ v4l2-ctl -z platform:vimc.0 -d "RGB/YUV Capture" \
+ -v pixelformat=RGB3,width=640,height=480,bytesperline=4096
Subdevices
----------
@@ -53,6 +64,16 @@ vimc-sensor:
* 1 Pad source
+vimc-input:
+ Simulates an RGB/YUV frame source for pipelines that start after a real
+ debayer stage. It exposes a single source pad that initially advertises
+ ``MEDIA_BUS_FMT_RGB888_1X24`` and accepts the usual width/height updates via
+ ``media-ctl``, which is useful for software-driven frame injection
+ experiments.
+ Exposes:
+
+ * 1 Pad source
+
vimc-lens:
Ancillary lens for a sensor. Supports auto focus control. Linked to
a vimc-sensor using an ancillary link. The lens supports FOCUS_ABSOLUTE
--
2.43.0
next prev parent reply other threads:[~2025-11-20 8:50 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-11-20 8:49 [PATCH 0/5] media: vimc: add RGB/YUV input entity and improve pipeline support Pavan Bobba
2025-11-20 8:49 ` [PATCH 1/5] media: vimc: add RGB/YUV input entity implementation Pavan Bobba
2025-11-20 8:49 ` [PATCH 2/5] media: vimc: add support for V4L2_FIELD_ALTERNATE in vimc-sensor Pavan Bobba
2025-11-20 8:49 ` [PATCH 3/5] media: vimc: debayer: add support for multiple RGB formats Pavan Bobba
2025-11-20 8:49 ` [PATCH 4/5] media: vimc: capture: support custom bytesperline values Pavan Bobba
2025-11-20 8:49 ` Pavan Bobba [this message]
2025-11-20 16:38 ` [PATCH 0/5] media: vimc: add RGB/YUV input entity and improve pipeline support Shuah Khan
2025-11-28 3:11 ` opensource india
2025-12-09 5:04 ` opensource india
2025-12-15 19:10 ` Shuah Khan
2025-12-15 19:45 ` Shuah Khan
2025-12-16 2:57 ` opensource india
2025-12-29 16:04 ` opensource india
2025-12-31 20:43 ` Shuah Khan
2026-01-01 1:11 ` opensource india
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=20251120084926.18620-6-opensource206@gmail.com \
--to=opensource206@gmail.com \
--cc=kieran.bingham@ideasonboard.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=mchehab@kernel.org \
--cc=skhan@linuxfoundation.org \
/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).