From 45339d5ba86acb3aaf18745a4b30be113a4c7429 Mon Sep 17 00:00:00 2001 From: Hans Verkuil Date: Thu, 23 Apr 2015 03:38:57 -0300 Subject: [PATCH] [media] DocBook/media: Improve G_EDID specification When using VIDIOC_G_EDID there is a special case where start_blocks and blocks are both set to 0. In that case the driver just has to set blocks to the total number of available blocks and return 0. Even though the drivers do this right and v4l2-compliance tests for it, it turned out not to be documented in the spec. Fix this. Signed-off-by: Hans Verkuil Reported-by: Mats Randgaard Signed-off-by: Mauro Carvalho Chehab --- Documentation/DocBook/media/v4l/vidioc-g-edid.xml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/Documentation/DocBook/media/v4l/vidioc-g-edid.xml b/Documentation/DocBook/media/v4l/vidioc-g-edid.xml index 6df40db4c8ba..e44340c1f9f7 100644 --- a/Documentation/DocBook/media/v4l/vidioc-g-edid.xml +++ b/Documentation/DocBook/media/v4l/vidioc-g-edid.xml @@ -82,6 +82,13 @@ If blocks have to be retrieved from the sink, then this call will block until they have been read. + If start_block and blocks are + both set to 0 when VIDIOC_G_EDID is called, then the driver will + set blocks to the total number of available EDID blocks + and it will return 0 without copying any data. This is an easy way to discover how many + EDID blocks there are. Note that if there are no EDID blocks available at all, then + the driver will set blocks to 0 and it returns 0. + To set the EDID blocks of a receiver the application has to fill in the pad, blocks and edid fields and set start_block to 0. It is not possible to set part of an EDID, -- 2.20.1