[PATCH 01/10] media: uvcvideo: Return -EINVAL for REQUEST API

From: Ricardo Ribalda
Date: Thu Mar 11 2021 - 07:21:33 EST


The driver does not support it.

Fixes v4l2-compliance:

Buffer ioctls (Input 0):
fail: v4l2-test-buffers.cpp(1925): ret != EINVAL && ret != EBADR && ret != ENOTTY
test Requests: FAIL

Signed-off-by: Ricardo Ribalda <ribalda@xxxxxxxxxxxx>
---
drivers/media/usb/uvc/uvc_v4l2.c | 3 +++
1 file changed, 3 insertions(+)

diff --git a/drivers/media/usb/uvc/uvc_v4l2.c b/drivers/media/usb/uvc/uvc_v4l2.c
index 252136cc885c..5e3ec4a376e4 100644
--- a/drivers/media/usb/uvc/uvc_v4l2.c
+++ b/drivers/media/usb/uvc/uvc_v4l2.c
@@ -1046,6 +1046,9 @@ static int uvc_ioctl_g_ext_ctrls(struct file *file, void *fh,
unsigned int i;
int ret;

+ if (ctrls->which == V4L2_CTRL_WHICH_REQUEST_VAL)
+ return -EINVAL;
+
if (ctrls->which == V4L2_CTRL_WHICH_DEF_VAL) {
for (i = 0; i < ctrls->count; ++ctrl, ++i) {
struct v4l2_queryctrl qc = { .id = ctrl->id };
--
2.31.0.rc2.261.g7f71774620-goog