Trouble with uvcvideo on kernels newer than 5.10

Hello,

I could need some help to get my USB-microscope(uvc) working with newer kernels.
With 5.10 all is working correctly but on every later kernel (5.15, 5.18, 5.19, 6.08 tested so far) it throws errors and is not creating the /dev/video device nodes.

As recommended in other uvcvideo related threads, I can get the device node created after running
sudo rmmod uvcvideo; sudo modprobe uvcvideo
but the USB errors are still there and I get no image from the /dev/video device.

Any help is appreciated as I’m not able to find the cause of this problem. Thanks in advance.

dmesg

$ dmesg
usb 1-3.1: new high-speed USB device number 8 using xhci_hcd
usb 1-3.1: device descriptor read/64, error -110
usb 1-3.1: New USB device found, idVendor=1908, idProduct=3256, bcdDevice= 1.00
usb 1-3.1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
usb 1-3.1: Product: TIGA Device
usb 1-3.1: Manufacturer: Generic
usb 1-3.1: SerialNumber: 20160418V1.000
usb 1-3.1: 5:2: failed to get current value for ch 1 (-110)
usb 1-3.1: 5:2: cannot get min/max values for control 2 (id 5)
usb-storage 1-3.1:1.4: USB Mass Storage device detected
scsi host0: usb-storage 1-3.1:1.4
usbcore: registered new interface driver usb-storage
usbcore: registered new interface driver uas
videodev: Linux video capture interface: v2.00
usb 1-3.1: Found UVC 1.00 device TIGA Device (1908:3256)
usb 1-3.1: UVC non compliance - GET_DEF(PROBE) not supported. Enabling workaround.
uvcvideo 1-3.1:1.1: Failed to query (129) UVC probe control : -110 (exp. 26).
uvcvideo 1-3.1:1.1: Failed to initialize the device (-5).
usbcore: registered new interface driver uvcvideo
usb 1-3.1: reset high-speed USB device number 8 using xhci_hcd
usb 1-3.1: device descriptor read/64, error -110
usb 1-3.1: device descriptor read/64, error -110
usb 1-3.1: reset high-speed USB device number 8 using xhci_hcd
usb 1-3.1: device descriptor read/64, error -110
usb 1-3.1: device descriptor read/64, error -110
usb 1-3.1: reset high-speed USB device number 8 using xhci_hcd
xhci_hcd 0000:00:14.0: Timeout while waiting for setup device command
xhci_hcd 0000:00:14.0: Timeout while waiting for setup device command
usb 1-3.1: device not accepting address 8, error -62
usb 1-3.1: reset high-speed USB device number 8 using xhci_hcd

lsusb

$ lsusb output (takes a while until listing device)
Bus 001 Device 010: ID 1908:3256 GEMBIRD TIGA Device

modinfo uvcvideo (output is mostly the same on the working and non-working kernels)

$ modinfo uvcvideo
filename: /lib/modules/6.0.8-1-MANJARO/kernel/drivers/media/usb/uvc/uvcvideo.ko.zst
version: 1.1.1
license: GPL
description: USB Video Class driver
author: Laurent Pinchart
srcversion: D6EE243317E474E40460806
depends: videobuf2-v4l2,videodev,mc,videobuf2-common,videobuf2-vmalloc
retpoline: Y
intree: Y
name: uvcvideo
vermagic: 6.0.8-1-MANJARO SMP preempt mod_unload
parm: clock:Video buffers timestamp clock
parm: hwtimestamps:Use hardware timestamps (uint)
parm: nodrop:Don’t drop incomplete frames (uint)
parm: quirks:Forced device quirks (uint)
parm: trace:Trace level bitmask (uint)
parm: timeout:Streaming control requests timeout (uint)

v4l2-ctl

Before running rmmod/modprobe, v4l2 does not list any device:
$ v4l2-ctl --list-devices
Cannot open device /dev/video0, exiting.

dmesg after rmmod/modprobe

$ dmesg
usbcore: deregistering interface driver uvcvideo
usbcore: registered new interface driver uvcvideo
usb 1-2: new high-speed USB device number 9 using xhci_hcd
usb 1-2: device descriptor read/64, error -110
usb 1-2: New USB device found, idVendor=1908, idProduct=3256, bcdDevice= 1.00
usb 1-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
usb 1-2: Product: TIGA Device
usb 1-2: Manufacturer: Generic
usb 1-2: SerialNumber: 20160418V1.000
usb 1-2: Found UVC 1.00 device TIGA Device (1908:3256)
input: TIGA Device: TIGA Device as /devices/pci0000:00/0000:00:14.0/usb1/1-2/1-2:1.0/input/input32
usb 1-2: 5:2: failed to get current value for ch 1 (-110)
usb 1-2: 5:2: cannot get min/max values for control 2 (id 5)
usb-storage 1-2:1.4: USB Mass Storage device detected
scsi host0: usb-storage 1-2:1.4
usb 1-2: 5:2: cannot get min/max values for control 2 (id 5)
usb 1-2: 5:2: cannot get min/max values for control 2 (id 5)
uvcvideo 1-2:1.1: Failed to set UVC probe control : -110 (exp. 26).
usb 1-2: 5:2: cannot get min/max values for control 2 (id 5)
uvcvideo 1-2:1.1: Failed to set UVC probe control : -110 (exp. 26).
usb 1-2: 5:2: cannot get min/max values for control 2 (id 5)
uvcvideo 1-2:1.1: Failed to set UVC probe control : -110 (exp. 26).
usb 1-2: 5:2: cannot get min/max values for control 2 (id 5)
usb 1-2:1.1: Failed to set UVC probe control : -110 (exp. 26).
usb 1-2: 3:0: usb_set_interface failed (-110)
usb 1-2: USB disconnect, device number 9
usb 1-2: 3:1: usb_set_interface failed (-71)
usb 1-2: 3:0: usb_set_interface failed (-19)

v4l2 output after "rmmod/modprobe uvcvideo

$ v4l2-ctl --list-devices
TIGA Device: TIGA Device (usb-0000:00:14.0-2):
/dev/video0
/dev/video1
/dev/media0

And just in case, here is the `dmesg` output on the working kernel 5.10

$ dmesg
usb 1-2: new high-speed USB device number 8 using xhci_hcd
usb 1-2: device descriptor read/64, error -110
usb 1-2: New USB device found, idVendor=1908, idProduct=3256, bcdDevice= 1.00
usb 1-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
usb 1-2: Product: TIGA Device
usb 1-2: Manufacturer: Generic
usb 1-2: SerialNumber: 20160418V1.000
usb-storage 1-2:1.4: USB Mass Storage device detected
scsi host0: usb-storage 1-2:1.4
usbcore: registered new interface driver usb-storage
usbcore: registered new interface driver uas
videodev: Linux video capture interface: v2.00
uvcvideo: Found UVC 1.00 device TIGA Device (1908:3256)
input: TIGA Device: TIGA Device as /devices/pci0000:00/0000:00:14.0/usb1/1-2/1-2:1.0/input/input34
usbcore: registered new interface driver uvcvideo
USB Video Class driver (1.1.1)
scsi host0: scsi scan: INQUIRY result too short (5), using 36
scsi 0:0:0:0: Direct-Access Buildwin Media-Player 1.00 PQ: 0 ANSI: 2
sd 0:0:0:0: [sda] Attached SCSI removable disk

Can not add output of inxi -Fazy as forum is complaining about adding links, weird.

Hi and welcome to the forum :+1:

Although i can’t really help with your problem, i have some suggestions for you to try:

  • Try what is mentioned at Webcam_setup#V4L1_support
  • Another thing to try is to install the AUR package v4l-utils.git in hope that it may have extra bug-fixes as the one you use by the default distro package.