OSDN Git Service

[media] v4l2-ctrls.c: allow empty control handlers
authorHans Verkuil <hverkuil@xs4all.nl>
Mon, 25 Sep 2017 09:41:02 +0000 (06:41 -0300)
committerMauro Carvalho Chehab <mchehab@osg.samsung.com>
Wed, 4 Oct 2017 20:05:00 +0000 (17:05 -0300)
commitcecfe9b8a511ec0c9df456770abf547444c87de6
tree9df12370ca6fa60d7ebc53111a11829f44e95a24
parent5b2c8da1b040c4608c7cfdc0dd96bcaa190af268
[media] v4l2-ctrls.c: allow empty control handlers

If you have a control handler that does not contain any controls, then
currently calling VIDIOC_G/S/TRY_EXT_CTRLS with count == 0 will return
-EINVAL in the class_check() function.

This is not correct, there is no reason why this should return an error.

The purpose of setting count to 0 is to test if the ioctl can mix controls
from different control classes. And this is possible. The fact that there
are not actually any controls defined is another matter that is unrelated
to this test.

This caused v4l2-compliance to fail, so that is fixed with this patch applied.

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Reported-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
Tested-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
Acked-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
drivers/media/v4l2-core/v4l2-ctrls.c