* [PATCH] v4l2-compliance: skip V4L2_CID_PRIVATE_BASE check for UVC
@ 2025-10-29 10:15 Hans Verkuil
2025-10-29 10:30 ` Ricardo Ribalda
0 siblings, 1 reply; 2+ messages in thread
From: Hans Verkuil @ 2025-10-29 10:15 UTC (permalink / raw)
To: Linux Media Mailing List; +Cc: Ricardo Ribalda
UVC doesn't support V4L2_CID_PRIVATE_BASE, so skip the check.
Signed-off-by: Hans Verkuil <hverkuil+cisco@kernel.org>
Reviewed-by: Ricardo Ribalda <ribalda@chromium.org>
---
Ricardo, can you test this to verify that this solves the issue?
---
diff --git a/utils/v4l2-compliance/v4l2-test-controls.cpp b/utils/v4l2-compliance/v4l2-test-controls.cpp
index e4925ca3..73a6a3be 100644
--- a/utils/v4l2-compliance/v4l2-test-controls.cpp
+++ b/utils/v4l2-compliance/v4l2-test-controls.cpp
@@ -321,6 +321,9 @@ int testQueryExtControls(struct node *node)
if (user_controls != user_controls_check)
return fail("expected %d user controls, got %d\n",
user_controls_check, user_controls);
+ /* UVC doesn't support V4L2_CID_PRIVATE_BASE */
+ if (is_uvcvideo)
+ priv_user_controls_check = 0;
if (priv_user_controls != priv_user_controls_check)
return fail("expected %d private controls, got %d\n",
priv_user_controls_check, priv_user_controls);
^ permalink raw reply related [flat|nested] 2+ messages in thread* Re: [PATCH] v4l2-compliance: skip V4L2_CID_PRIVATE_BASE check for UVC
2025-10-29 10:15 [PATCH] v4l2-compliance: skip V4L2_CID_PRIVATE_BASE check for UVC Hans Verkuil
@ 2025-10-29 10:30 ` Ricardo Ribalda
0 siblings, 0 replies; 2+ messages in thread
From: Ricardo Ribalda @ 2025-10-29 10:30 UTC (permalink / raw)
To: Hans Verkuil; +Cc: Linux Media Mailing List
Hi Hans
Thanks for the patch
On Wed, 29 Oct 2025 at 11:15, Hans Verkuil <hverkuil+cisco@kernel.org> wrote:
>
> UVC doesn't support V4L2_CID_PRIVATE_BASE, so skip the check.
>
> Signed-off-by: Hans Verkuil <hverkuil+cisco@kernel.org>
> Reviewed-by: Ricardo Ribalda <ribalda@chromium.org>
Tested-by: Ricardo Ribalda <ribalda@chromium.org>
> ---
I have used this patch on top of v4l2-utils 1.28
Using a kernel 6.12 +
https://patchwork.linuxtv.org/project/linux-media/patch/20251028-uvc-fix-which-v1-1-a7e6b82672a3@chromium.org/
The missing error is due to a non compliant module. Working also to fix that.
Regards!
v4l2-compliance 1.28.1GIT_COMMIT_CNT, 64 bits, 64-bit time_t
v4l2-compliance SHA: GIT_SHA GIT_COMMIT_DATE
Compliance test for uvcvideo device /dev/video0:
Driver Info:
Driver name : uvcvideo
Card type : ACER FHD VHDR User Facing: ACER
Bus info : usb-0000:00:14.0-6
Driver version : 6.12.45
Capabilities : 0x84a00001
Video Capture
Metadata Capture
Streaming
Extended Pix Format
Device Capabilities
Device Caps : 0x04200001
Video Capture
Streaming
Extended Pix Format
Media Driver Info:
Driver name : uvcvideo
Model : ACER FHD VHDR User Facing: ACER
Serial : 200901010001
Bus info : usb-0000:00:14.0-6
Media version : 6.12.45
Hardware revision: 0x00000015 (21)
Driver version : 6.12.45
Interface Info:
ID : 0x03000002
Type : V4L Video
Entity Info:
ID : 0x00000001 (1)
Name : ACER FHD VHDR User Facing: ACER
Function : V4L2 I/O
Flags : default
Pad 0x01000007 : 0: Sink
Link 0x02000010: from remote pad 0x100000a of entity
'Extension 4' (Video Pixel Formatter): Data, Enabled, Immutable
Required ioctls:
test MC information (see 'Media Driver Info' above): OK
test VIDIOC_QUERYCAP: OK
test invalid ioctls: OK
Allow for multiple opens:
test second /dev/video0 open: OK
test VIDIOC_QUERYCAP: OK
test VIDIOC_G/S_PRIORITY: OK
test for unlimited opens: OK
Debug ioctls:
test VIDIOC_DBG_G/S_REGISTER: OK (Not Supported)
test VIDIOC_LOG_STATUS: OK (Not Supported)
Input ioctls:
test VIDIOC_G/S_TUNER/ENUM_FREQ_BANDS: OK (Not Supported)
test VIDIOC_G/S_FREQUENCY: OK (Not Supported)
test VIDIOC_S_HW_FREQ_SEEK: OK (Not Supported)
test VIDIOC_ENUMAUDIO: OK (Not Supported)
test VIDIOC_G/S/ENUMINPUT: OK
test VIDIOC_G/S_AUDIO: OK (Not Supported)
Inputs: 1 Audio Inputs: 0 Tuners: 0
Output ioctls:
test VIDIOC_G/S_MODULATOR: OK (Not Supported)
test VIDIOC_G/S_FREQUENCY: OK (Not Supported)
test VIDIOC_ENUMAUDOUT: OK (Not Supported)
test VIDIOC_G/S/ENUMOUTPUT: OK (Not Supported)
test VIDIOC_G/S_AUDOUT: OK (Not Supported)
Outputs: 0 Audio Outputs: 0 Modulators: 0
Input/Output configuration ioctls:
test VIDIOC_ENUM/G/S/QUERY_STD: OK (Not Supported)
test VIDIOC_ENUM/G/S/QUERY_DV_TIMINGS: OK (Not Supported)
test VIDIOC_DV_TIMINGS_CAP: OK (Not Supported)
test VIDIOC_G/S_EDID: OK (Not Supported)
Control ioctls (Input 0):
test VIDIOC_QUERY_EXT_CTRL/QUERYMENU: OK
test VIDIOC_QUERYCTRL: OK
fail: v4l2-test-controls.cpp(571): could not set maximum value
test VIDIOC_G/S_CTRL: FAIL
test VIDIOC_G/S/TRY_EXT_CTRLS: OK
test VIDIOC_(UN)SUBSCRIBE_EVENT/DQEVENT: OK
test VIDIOC_G/S_JPEGCOMP: OK (Not Supported)
Standard Controls: 16 Private Controls: 1
Standard Compound Controls: 0 Private Compound Controls: 1
Format ioctls (Input 0):
test VIDIOC_ENUM_FMT/FRAMESIZES/FRAMEINTERVALS: OK
test VIDIOC_G/S_PARM: OK
test VIDIOC_G_FBUF: OK (Not Supported)
test VIDIOC_G_FMT: OK
test VIDIOC_TRY_FMT: OK
warn: v4l2-test-formats.cpp(1110): Could not set fmt2
test VIDIOC_S_FMT: OK
test VIDIOC_G_SLICED_VBI_CAP: OK (Not Supported)
test Cropping: OK (Not Supported)
test Composing: OK (Not Supported)
test Scaling: OK (Not Supported)
Codec ioctls (Input 0):
test VIDIOC_(TRY_)ENCODER_CMD: OK (Not Supported)
test VIDIOC_G_ENC_INDEX: OK (Not Supported)
test VIDIOC_(TRY_)DECODER_CMD: OK (Not Supported)
Buffer ioctls (Input 0):
test VIDIOC_REQBUFS/CREATE_BUFS/QUERYBUF: OK
test CREATE_BUFS maximum buffers: OK
test VIDIOC_REMOVE_BUFS: OK
test VIDIOC_EXPBUF: OK
test Requests: OK (Not Supported)
test blocking wait: OK
Total for uvcvideo device /dev/video0: 49, Succeeded: 48, Failed: 1, Warnings: 1
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2025-10-29 10:30 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-10-29 10:15 [PATCH] v4l2-compliance: skip V4L2_CID_PRIVATE_BASE check for UVC Hans Verkuil
2025-10-29 10:30 ` Ricardo Ribalda
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).