[PATCH v12 24/86] media: Documentation: Add scaling and post-scaler crop for common raw

Sakari Ailus
2026-04-09T20:15:35Z

Document scaling and post-scaler digital crop operations for the common
raw sensor model.

Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Reviewed-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>
Reviewed-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
Reviewed-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com>
---
.../media/v4l/subdev-config-model.rst | 26 ++++++++++++++-----
1 file changed, 20 insertions(+), 6 deletions(-)

diff --git a/Documentation/userspace-api/media/v4l/subdev-config-model.rst b/Documentation/userspace-api/media/v4l/subdev-config-model.rst
index b450f698a608..1525119cbeb9 100644
--- a/Documentation/userspace-api/media/v4l/subdev-config-model.rst
+++ b/Documentation/userspace-api/media/v4l/subdev-config-model.rst
@@ -146,12 +146,19 @@ binning and sub-sampling to achieve the desired size.

The digital crop operation takes place after binning and sub-sampling. It is
configured by setting the ``V4L2_SEL_TGT_CROP`` rectangle on (pad, stream) pair
-0/0. The resulting image size is further output by the sensor on the sensor's
-data interface.
+0/0.
+
+The scaling operation is performed after the digital crop. It is configured by
+setting the ``V4L2_SEL_TGT_COMPOSE`` rectangle on (pad, stream) pair 0/0,
+relative to the digital crop. The resulting image size is further output by the
+sensor on the sensor's data interface.

The sensor's output mbus code is configured by setting the format on the (pad,
-stream) pair 0/0. When setting the format, always use the same width and height
-as for the digital crop setting.
+stream) pair 0/0. The width and height fields are used to configure post-scaler
+digital crop if supported by the driver, affecting the right and bottom edges of
+the frame. If post-scaler digital crop is not supported, the width and height
+fields of the format will match the compose rectangle sizes applied on the same
+0/0 (pad, stream) pair.

Drivers may only support some or even none of these configurations, in which
case they do not expose the corresponding selection rectangles. If any selection
@@ -220,12 +227,19 @@ Also refer to :ref:`Selection targets <v4l2-selection-targets-table>`.
- X
- Digital crop. This rectangle is relative to the ``V4L2_SEL_TGT_COMPOSE``
rectangle on (pad, stream) pair 1/0.
+ * - 0/0
+ - ``V4L2_SEL_TGT_COMPOSE``
+ - \-
+ - X
+ - Scaling. This rectangle is relative to the ``V4L2_SEL_TGT_CROP``
+ rectangle on (pad, stream) pair 0/0.
* - 0/0
- Format
- X
- X
- - Image data source format. Always assign the width and height fields of
- the format to the same values than for the ``V4L2_SEL_TGT_CROP``
+ - Image data source format and post-scaler crop. The width and height
+ fields of the format, used to configure post-scaler crop on the right
+ and bottom edges of the image, are related to the ``V4L2_SEL_TGT_COMPOSE``
rectangle on (pad, stream) pair 0/0. The media bus code reflects the
pixel data output of the sensor. Setting the media bus code on this pad
configures the output format.
--
2.47.3