UVC Camera shuts off after 3 seconds in Tumbleweed

Hello,

I’m trying to use a basic USB-powered UVC camera (think generic GoPro) as a webcam in fully-updated Tumbleweed 20210221. When I set the camera in Webcam mode, it stays on for exactly 3 seconds, then stops. This behavior happens only on my Tumbleweed machine but not on a Windows 10 laptop; the camera stays on continuously in Webcam mode on Windows as it is designed to do.

Google tells me it may be a kernel issuebut I’d like to get your take on it.

Here’s the system log from the time the Webcam is activated until the time it stops:


Feb 11 14:02:21 myhost kernel: uvcvideo: Found UVC 1.00 device Android (1f3a:100e)
Feb 11 14:02:22 myhost kernel: uvcvideo: Failed to query (GET_INFO) UVC control 2 on unit 1: -110 (exp. 1).
Feb 11 14:02:22 myhost kernel: uvcvideo: Failed to query (GET_INFO) UVC control 2 on unit 2: -32 (exp. 1).
Feb 11 14:02:22 myhost kernel: input: Android: UVC Camera as /devices/pci0000:00/0000:00:14.0/usb2/2-10/2-10:1.0/input/input93
Feb 11 14:02:22 myhost mtp-probe[15484]: checking bus 2, device 105: "/sys/devices/pci0000:00/0000:00:14.0/usb2/2-10"
Feb 11 14:02:22 myhost mtp-probe[15484]: bus: 2, device: 105 was not an MTP device
Feb 11 14:02:22 myhost mtp-probe[15493]: checking bus 2, device 105: "/sys/devices/pci0000:00/0000:00:14.0/usb2/2-10"
Feb 11 14:02:22 myhost mtp-probe[15493]: bus: 2, device: 105 was not an MTP device
Feb 11 14:02:23 myhost webcamoid[14531]: qrc:/Webcamoid/share/qml/OptionList.qml:53: TypeError: Cannot read property 'right' of null
Feb 11 14:02:23 myhost webcamoid[14531]: qrc:/Webcamoid/share/qml/OptionList.qml:54: TypeError: Cannot read property 'left' of null
Feb 11 14:02:23 myhost kernel: uvcvideo: Failed to query (GET_DEF) UVC control 2 on unit 2: -110 (exp. 2).
Feb 11 14:02:25 myhost kernel: usb 2-10: USB disconnect, device number 105

Details from v4l2-ctl during the 3 seconds the Webcam is on:


myhost:/home/myhost # v4l2-ctl --info
Driver Info:
        Driver name      : uvcvideo
        Card type        : Android: UVC Camera
        Bus info         : usb-0000:00:14.0-9
        Driver version   : 5.10.12
        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            : Android: UVC Camera
        Serial           : 20080411
        Bus info         : usb-0000:00:14.0-9
        Media version    : 5.10.12
        Hardware revision: 0x00000233 (563)
        Driver version   : 5.10.12
Interface Info:
        ID               : 0x03000002
        Type             : V4L Video
Entity Info:
        ID               : 0x00000001 (1)
        Name             : Android: UVC Camera
        Function         : V4L2 I/O
        Flags         : default
        Pad 0x01000007   : 0: Sink
          Link 0x0200000d: from remote pad 0x100000a of entity 'Processing 2': Data, Enabled, Immutable

Details from hwinfo during the 3 seconds the Webcam is on:


myhost:/home/myhost # hwinfo | grep video
video bios: size 0xe200
video bios: entry 0xc000:0x17a8
        uvcvideo: /devices/pci0000:00/0000:00:14.0/usb2/2-9/2-9:1.0
        uvcvideo: /devices/pci0000:00/0000:00:14.0/usb2/2-9/2-9:1.1
        uvcvideo: module = uvcvideo
        uvcvideo: /devices/pci0000:00/0000:00:14.0/usb2/2-9/2-9:1.0
        uvcvideo: /devices/pci0000:00/0000:00:14.0/usb2/2-9/2-9:1.1
        uvcvideo: module = uvcvideo
    input device: bus = usb, bus_id = 2-9:1.0 driver = uvcvideo
        uvcvideo: /devices/pci0000:00/0000:00:14.0/usb2/2-9/2-9:1.0
        uvcvideo: /devices/pci0000:00/0000:00:14.0/usb2/2-9/2-9:1.1
        uvcvideo: module = uvcvideo
  E: DRIVER=uvcvideo
  E: ID_TYPE=video
  E: ID_USB_DRIVER=uvcvideo
  E: ID_TYPE=video
  E: ID_USB_DRIVER=uvcvideo
  P: /devices/pci0000:00/0000:00:14.0/usb2/2-9/2-9:1.0/video4linux/video0
  N: video0
  S: v4l/by-path/pci-0000:00:14.0-usb-0:9:1.0-video-index0
  S: v4l/by-id/usb-USB_Developer_Android_20080411-video-index0
  E: DEVPATH=/devices/pci0000:00/0000:00:14.0/usb2/2-9/2-9:1.0/video4linux/video0
  E: SUBSYSTEM=video4linux
  E: DEVNAME=/dev/video0
  E: ID_TYPE=video
  E: ID_USB_DRIVER=uvcvideo
  E: ID_FOR_SEAT=video4linux-pci-0000_00_14_0-usb-0_9_1_0
  E: DEVLINKS=/dev/v4l/by-path/pci-0000:00:14.0-usb-0:9:1.0-video-index0 /dev/v4l/by-id/usb-USB_Developer_Android_20080411-video-index0
  P: /devices/pci0000:00/0000:00:14.0/usb2/2-9/2-9:1.0/video4linux/video1
  N: video1
  S: v4l/by-id/usb-USB_Developer_Android_20080411-video-index1
  S: v4l/by-path/pci-0000:00:14.0-usb-0:9:1.0-video-index1
  E: DEVPATH=/devices/pci0000:00/0000:00:14.0/usb2/2-9/2-9:1.0/video4linux/video1
  E: SUBSYSTEM=video4linux
  E: DEVNAME=/dev/video1
  E: ID_TYPE=video
  E: ID_USB_DRIVER=uvcvideo
  E: ID_FOR_SEAT=video4linux-pci-0000_00_14_0-usb-0_9_1_0
  E: DEVLINKS=/dev/v4l/by-id/usb-USB_Developer_Android_20080411-video-index1 /dev/v4l/by-path/pci-0000:00:14.0-usb-0:9:1.0-video-index1
  E: DRIVER=uvcvideo
/devices/pci0000:00/0000:00:14.0/usb2/2-9/2-9:1.0/video4linux/video0
  name: /dev/video0
  links: /dev/v4l/by-path/pci-0000:00:14.0-usb-0:9:1.0-video-index0, /dev/v4l/by-id/usb-USB_Developer_Android_20080411-video-index0
/devices/pci0000:00/0000:00:14.0/usb2/2-9/2-9:1.0/video4linux/video1
  name: /dev/video1
  links: /dev/v4l/by-id/usb-USB_Developer_Android_20080411-video-index1, /dev/v4l/by-path/pci-0000:00:14.0-usb-0:9:1.0-video-index1
  <3>[141911.613580] uvcvideo: Failed to query (GET_DEF) UVC control 2 on unit 2: -110 (exp. 2).
  <3>[141912.129540] uvcvideo: Failed to query (GET_DEF) UVC control 2 on unit 2: -110 (exp. 2).
  <3>[141912.637606] uvcvideo: Failed to query (GET_DEF) UVC control 2 on unit 2: -110 (exp. 2).
  <3>[141913.149585] uvcvideo: Failed to query (GET_DEF) UVC control 2 on unit 2: -110 (exp. 2).
  <3>[141913.661595] uvcvideo: Failed to query (GET_DEF) UVC control 2 on unit 2: -110 (exp. 2).
  <3>[141914.177633] uvcvideo: Failed to query (GET_DEF) UVC control 2 on unit 2: -110 (exp. 2).
  <3>[141914.813570] uvcvideo: Failed to query (GET_DEF) UVC control 2 on unit 2: -110 (exp. 2).
  <3>[141915.325602] uvcvideo: Failed to query (GET_DEF) UVC control 2 on unit 2: -110 (exp. 2).
  <3>[141915.837606] uvcvideo: Failed to query (GET_DEF) UVC control 2 on unit 2: -110 (exp. 2).
  <3>[141916.349627] uvcvideo: Failed to query (GET_DEF) UVC control 2 on unit 2: -110 (exp. 2).
  <6>[142729.523440] uvcvideo: Found UVC 1.00 device Android (1f3a:100e)
  <3>[142730.041301] uvcvideo: Failed to query (GET_INFO) UVC control 2 on unit 1: -110 (exp. 1).
  <3>[142730.041396] uvcvideo: Failed to query (GET_INFO) UVC control 2 on unit 2: -32 (exp. 1).
  <6>[142753.015607] uvcvideo: Found UVC 1.00 device Android (1f3a:100e)
  <3>[142753.529306] uvcvideo: Failed to query (GET_INFO) UVC control 2 on unit 1: -110 (exp. 1).
  <3>[142753.529406] uvcvideo: Failed to query (GET_INFO) UVC control 2 on unit 2: -32 (exp. 1).
  <6>[142775.075372] uvcvideo: Found UVC 1.00 device Android (1f3a:100e)
  <3>[142775.581118] uvcvideo: Failed to query (GET_INFO) UVC control 2 on unit 1: -110 (exp. 1).
  <3>[142775.581248] uvcvideo: Failed to query (GET_INFO) UVC control 2 on unit 2: -32 (exp. 1).
  <3>[142776.409158] uvcvideo: Failed to query (GET_DEF) UVC control 2 on unit 2: -110 (exp. 2).
  <3>[142776.921064] uvcvideo: Failed to query (GET_DEF) UVC control 2 on unit 2: -110 (exp. 2).
  <3>[142948.632244] uvcvideo: Failed to query (GET_DEF) UVC control 2 on unit 2: -110 (exp. 2).
  <3>[142949.144186] uvcvideo: Failed to query (GET_DEF) UVC control 2 on unit 2: -110 (exp. 2).
  <3>[142949.656213] uvcvideo: Failed to query (GET_DEF) UVC control 2 on unit 2: -110 (exp. 2).
  <3>[142950.168148] uvcvideo: Failed to query (GET_DEF) UVC control 2 on unit 2: -110 (exp. 2).
  <3>[142950.680221] uvcvideo: Failed to query (GET_DEF) UVC control 2 on unit 2: -110 (exp. 2).
  uvcvideo 114688 1 - Live 0xffffffffc2f83000
  videobuf2_vmalloc 20480 1 uvcvideo, Live 0xffffffffc2f5b000
  videobuf2_memops 20480 1 videobuf2_vmalloc, Live 0xffffffffc2f53000
  videobuf2_v4l2 36864 1 uvcvideo, Live 0xffffffffc2f79000
  videobuf2_common 65536 2 uvcvideo,videobuf2_v4l2, Live 0xffffffffc2f68000
  videodev 294912 4 uvcvideo,videobuf2_v4l2,videobuf2_common, Live 0xffffffffc2f0a000
  mc 61440 5 snd_usb_audio,uvcvideo,videobuf2_v4l2,videobuf2_common,videodev, Live 0xffffffffc2efa000
  usbcore 323584 12 snd_usb_audio,snd_usbmidi_lib,uvcvideo,uas,usb_storage,usbhid,xhci_pci,xhci_hcd,ehci_pci,ehci_hcd, Live 0xffffffffc035f000
  video 53248 1 dell_wmi, Live 0xffffffffc0338000

Thanks in advance for any guidance.

Derek

Maybe:
https://bugzilla.kernel.org/show_bug.cgi?id=210767

The BugZilla report certainly sounds like the issue I’m experiencing, but I can’t understand the action that I need to take. They mention it is fixed with a particular patch, but how could I tell if that patch is in the current Tumbleweed kernel, or when it might be rolled out?

Are there any other avenues to pursue with remediating this problem?

Hi
Unlikely since it’s still active… Open an openSUSE Bug report against the kernel at openSUSE:Submitting bug reports - openSUSE and point to the kernel bug, they might include or know it’s status…

Downstream bug report is at 1180117 – Regression in uvcvideo: Webcam (1f3a:100e) stopped working as of 5.3.18-lp152.50-default

Closed: 1180117 – Regression in uvcvideo: Webcam (1f3a:100e) stopped working as of 5.3.18-lp152.50-default

Maybe update is needed.