Solved USB Webcam Causes Long Boot on Fedora, Works Fine if Plugged in After Boot

Solved issue

KeYunLong

New Member
Joined
Jul 22, 2022
Messages
29
Reaction score
12
Credits
630
Hello everyone,

I’m running Fedora (uname -r 6.12.7-200.fc41.x86_64), and I’ve encountered a frustrating issue where my USB webcam (ID 1d5b:0104) dramatically slows down the boot process when it’s left plugged in. The system sits there trying to enumerate the device, repeatedly displaying “device descriptor read/64, error -110” and “unable to enumerate USB device,” then finally proceeds with the boot. If I simply unplug the webcam before powering on and then reconnect it after logging in, everything works as expected—Cheese, Viber, OBS Studio detect /dev/video0 with no problem. Below is a summary of what’s happening and what I’ve tried:
  1. Slow Boot Symptoms and Logs
    • During boot (or shortly after logging in), dmesg shows multiple reset attempts of the camera with errors like “usb 1-8.1: device descriptor read/64, error -110.” Eventually, the kernel gives up and prints “unable to enumerate USB device.” Once those resets finish, the system continues booting.
    • This obviously increases my total startup time by ~1 minute or more.
  2. Camera Works If Connected Post-Boot
    • After the system is fully up, if I plug in the same camera, Fedora recognizes it immediately:
    “usb 1-8.1: New USB device found, idVendor=1d5b, idProduct=0104 … Found UVC 1.00 device webcam (1d5b:0104).”
    • Cheese then show /dev/video0 with no issues.
  3. Already Attempted Workarounds
    • Tried Different USB Ports: Including USB 2.0 vs. 3.0, no change (same error -110 in dmesg).
    • Verified systemd-analyze blame: The biggest delays appear to come from repeated USB initialization attempts rather than a systemd service.
    • Confirmed that blacklisting uvcvideo at boot (to skip loading the driver early) helps reduce the boot delay but obviously prevents the camera from being recognized until I manually modprobe it.
    • Masking systemd-udev-settle.service was suggested in some slow-boot cases, but in my setup, that service isn’t significantly delaying things. The root cause is the kernel’s repeated resets of the camera, not an explicit userland wait.
  4. My Goal
    • I’d like to keep the webcam always plugged in but avoid 60+ seconds of USB timeouts. Ideally, Fedora would detect it reliably on first boot pass—like it does after boot.
    • If it’s purely a hardware quirk, I’m open to adding a kernel boot quirk (e.g., usbcore.quirks=1d5b:0104:u) or some other approach that folks might recommend. I just want to cut down on the enumeration delays while still being able to use the camera in Cheese, Viber, OBS, etc.
Has anyone run into something like this and found a way around the timeouts? Any insight on driver quirks, alternative modules, or BIOS/UEFI tweaks would be greatly appreciated. Thanks in advance!

Data:

Here’s a snippet from dmesg with the camera plugged in at boot:

usb 1-8.1: reset high-speed USB device number 6 using xhci_hcd

usb 1-8.1: device descriptor read/64, error -110
usb 1-8.1: unable to enumerate USB device

After that series of timeouts, the system finishes booting. If I connect the same camera after login, I see:

[ 42.425344] usb 1-8.1: new high-speed USB device number 8 using xhci_hcd
[ 42.512530] usb 1-8.1: New USB device found, idVendor=1d5b, idProduct=0104, bcdDevice= 0.10
[ 42.512534] usb 1-8.1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 42.512535] usb 1-8.1: Product: webcam
[ 42.512536] usb 1-8.1: Manufacturer: webcam
[ 42.512537] usb 1-8.1: SerialNumber: AN20200825001
[ 42.514186] usb 1-8.1: Found UVC 1.00 device webcam (1d5b:0104)
[ 42.548275] usbcore: registered new interface driver snd-usb-audio

Camera Model & Fedora Details:
Bus 001 Device 008: ID 1d5b:0104 Smartronix, Inc. webcam
Fedora - 6.12.7-200.fc41.x86_64
 


I have to say, I have 4 computers running fedora with webcams ( two are built in laptop cams, two are external USB webcams. ( logitech ), and I have never seen this. But here are some things you can try.

Disable USB Autosuspend: You can create a udev rule to disable USB autosuspend for your webcam. Create a file /etc/udev/rules.d/99-usb-autosuspend.rules with the following content:
ACTION=="add", SUBSYSTEM=="usb", ATTR{idVendor}=="1d5b", ATTR{idProduct}=="0104", TEST=="power/control", ATTR{power/control}="on"

Add a Kernel Boot Parameter: You can add a kernel boot parameter to disable USB autosuspend. Edit the GRUB configuration file /etc/default/grub and add usbcore.autosuspend=-1 to the GRUB_CMDLINE_LINUX line. Then update GRUB:
sudo grub2-mkconfig -o /boot/grub2/grub.cfg

Use a Powered USB Hub: Sometimes, using a powered USB hub can help if the issue is related to insufficient power from the USB port

Update UEFI/BIOS Settings: Check your UEFI/BIOS settings for any USB-related options that might help. Some users have found success by disabling USB legacy support or enabling USB wake support

Blacklist the USB Driver: If you don't need the webcam during boot, you can blacklist the driver and load it manually after boot. Create a file /etc/modprobe.d/blacklist-webcam.conf with the following content:
blacklist uvcvideo

After booting, you can load the driver manually with: bash sudo modprobe uvcvideo
 
Hey dos2unix,

Thanks for all the suggestions. Not sure if I've added it before, but when the camera if connected from the boot the double splash screen (with Asus and Fedora logo) appears - first is oversized and takes very long to load, second is adjusted to my system resolution and takes short to load. Here’s an update on the troubleshooting steps I’ve taken to address slow boot times when the camera is connected:

• Created a Udev Rule to Disable USB Autosuspend
I placed a rule in /etc/udev/rules.d/ (targeting the camera’s vendor/product ID) with ATTR{power/control}="on,". Unfortunately, this did not help—likely because the camera never properly exposes that “power/control” file during early enumeration.

• Added Kernel Parameter usbcore.autosuspend=-1
Verified in /proc/cmdline that the kernel param was active, so the system-wide autosuspend is disabled.

• Disabled “Fast Boot” and “Legacy USB Support” in UEFI
Both toggles were set to [Disabled], but the early boot stall persists.

• Plan to Get a Powered USB Hub
Since the above steps haven’t worked, I’ll try a powered USB hub in about two weeks. If power or current draw triggers the enumeration stall, an external powered hub might help indeed.

• Why I Didn’t Use "Blacklist the USB Driver (uvcvideo)" solution
Blacklisting the webcam driver would still require a manual modprobe to enable the camera after every boot. I’d rather just leave the camera unplugged until after boot if I have to do something manual. The net effect is the same, so blacklisting isn’t very appealing.

I’ll report back once I’ve tested the powered hub. Thanks again for all your help!
 
I think I had something similar happen to a usb device. What I ended up doing was the following, unplugged all the devices from my system. Also the psu plug and switched off the button on my psu, then I pressed the power button for 30 seconds to 1 minute. After that I connected everything again and I didn't have the problem of my usb device causing a slow boot anymore.
 
I think I had something similar happen to a usb device. What I ended up doing was the following, unplugged all the devices from my system. Also the psu plug and switched off the button on my psu, then I pressed the power button for 30 seconds to 1 minute. After that I connected everything again and I didn't have the problem of my usb device causing a slow boot anymore.
Hello f33dm3bits,

I tested your solution, unfortunately it didn't work.

Steps done:
  1. Shut down my PC normally (via the operating system).
  2. Switched off the PSU.
  3. Unplugged any remaining power cables and peripherals.
  4. Pressed and holded the power button for 30–60 seconds to discharge residual current.
  5. Reconnected my power cables and peripherals.
  6. Switched the PSU back on.
  7. Powered on my machine.
Beside of that I reinstalled Fedora. Also I tested if my PSU is strong enough for my PC build by using the website: https://www.newegg.com/tools/power-supply-calculator - my PC consumes 500 - 599 Watts and my PSU is 650 W (EU 80+ Bronze).
 
Update: I've got a TP-Link USB 3.0 7-Port Hub model: UH700. I connected the camera to both normal and fast charge ports. No difference. I will try to get another camera model to see if I will have the same issue with different camera as well.
 
I changed the camera to Genius (model: WideCam F100), connected to TP-Link USB 3.0 (normal, not fast charge port) and it works on my Fedora 41 with Asus PRIME B660M-A WIFI D4 motherboard!!

If someone has similar setup please note that the camera Sandberg USB Chat Webcam 1080P HD (134-15) might not work for them.

Big thanks to dos2unix and f33dm3bits for help.

Topic can be closed.
 

Staff online

Members online


Top