]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
media: media/doc: Allow sizeimage to be set by v4l clients
authorStanimir Varbanov <stanimir.varbanov@linaro.org>
Thu, 30 May 2019 09:33:12 +0000 (05:33 -0400)
committerMauro Carvalho Chehab <mchehab+samsung@kernel.org>
Wed, 5 Jun 2019 16:41:39 +0000 (12:41 -0400)
This changes v4l2_pix_format and v4l2_plane_pix_format sizeimage
field description to allow v4l clients to set bigger image size
in case of variable length compressed data.

Presently s5p-mfc and mtk-vcodec codec drivers use that. Lets
make it obvious in the documentation.

Signed-off-by: Stanimir Varbanov <stanimir.varbanov@linaro.org>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
Documentation/media/uapi/v4l/pixfmt-v4l2-mplane.rst
Documentation/media/uapi/v4l/pixfmt-v4l2.rst

index 5688c816e334a89119f8f96747535505a9437214..db43dda5aafbc7d3c04e064a5f8338bd47e11450 100644 (file)
@@ -31,7 +31,20 @@ describing all planes of that format.
 
     * - __u32
       - ``sizeimage``
-      - Maximum size in bytes required for image data in this plane.
+      - Maximum size in bytes required for image data in this plane,
+       set by the driver. When the image consists of variable length
+       compressed data this is the number of bytes required by the
+       codec to support the worst-case compression scenario.
+
+       The driver will set the value for uncompressed images.
+
+       Clients are allowed to set the sizeimage field for variable length
+       compressed data flagged with ``V4L2_FMT_FLAG_COMPRESSED`` at
+       :ref:`VIDIOC_ENUM_FMT`, but the driver may ignore it and set the
+       value itself, or it may modify the provided value based on
+       alignment requirements or minimum/maximum size requirements.
+       If the client wants to leave this to the driver, then it should
+       set sizeimage to 0.
     * - __u32
       - ``bytesperline``
       - Distance in bytes between the leftmost pixels in two adjacent
index 71eebfc6d8534b52d68c9442fd7f81025dbcb02c..da6da2ef139a813189a9e9bdb8214a2bab1dacbb 100644 (file)
@@ -89,7 +89,18 @@ Single-planar format structure
       - Size in bytes of the buffer to hold a complete image, set by the
        driver. Usually this is ``bytesperline`` times ``height``. When
        the image consists of variable length compressed data this is the
-       maximum number of bytes required to hold an image.
+       number of bytes required by the codec to support the worst-case
+       compression scenario.
+
+       The driver will set the value for uncompressed images.
+
+       Clients are allowed to set the sizeimage field for variable length
+       compressed data flagged with ``V4L2_FMT_FLAG_COMPRESSED`` at
+       :ref:`VIDIOC_ENUM_FMT`, but the driver may ignore it and set the
+       value itself, or it may modify the provided value based on
+       alignment requirements or minimum/maximum size requirements.
+       If the client wants to leave this to the driver, then it should
+       set sizeimage to 0.
     * - __u32
       - ``colorspace``
       - Image colorspace, from enum :c:type:`v4l2_colorspace`.