From: Hans Verkuil <hans.verk...@cisco.com>

For output buffers the application has to set the bytesused field.
In reality applications often do not set this since drivers that
deal with fix image sizes just override it anyway.

The vb2 framework will replace this field with the length field if
bytesused was set to 0 by the application, which is what happens
in practice. Document this behavior.

Signed-off-by: Hans Verkuil <hans.verk...@cisco.com>
---
 Documentation/DocBook/media/v4l/io.xml | 13 +++++++++++--
 1 file changed, 11 insertions(+), 2 deletions(-)

diff --git a/Documentation/DocBook/media/v4l/io.xml 
b/Documentation/DocBook/media/v4l/io.xml
index 97a69bf..188e621 100644
--- a/Documentation/DocBook/media/v4l/io.xml
+++ b/Documentation/DocBook/media/v4l/io.xml
@@ -699,7 +699,12 @@ linkend="v4l2-buf-type" /></entry>
 buffer. It depends on the negotiated data format and may change with
 each buffer for compressed variable size data like JPEG images.
 Drivers must set this field when <structfield>type</structfield>
-refers to an input stream, applications when it refers to an output 
stream.</entry>
+refers to an input stream, applications when it refers to an output stream.
+If the application sets this to 0 for an output stream, then
+<structfield>bytesused</structfield> will be set to the size of the
+buffer (see the <structfield>length</structfield> field of this struct) by
+the driver. For multiplanar formats this field is ignored and the
+<structfield>planes</structfield> pointer is used instead.</entry>
          </row>
          <row>
            <entry>__u32</entry>
@@ -861,7 +866,11 @@ should set this to 0.</entry>
            <entry></entry>
            <entry>The number of bytes occupied by data in the plane
              (its payload). Drivers must set this field when 
<structfield>type</structfield>
-             refers to an input stream, applications when it refers to an 
output stream.</entry>
+             refers to an input stream, applications when it refers to an 
output stream.
+             If the application sets this to 0 for an output stream, then
+             <structfield>bytesused</structfield> will be set to the size of 
the
+             plane (see the <structfield>length</structfield> field of this 
struct)
+             by the driver.</entry>
          </row>
          <row>
            <entry>__u32</entry>
-- 
1.9.1

--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to