]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
USB: add QUIRK_NO_BOS for video capture several devices
authorA1RM4X <dev@a1rm4x.com>
Wed, 4 Feb 2026 19:26:48 +0000 (14:26 -0500)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 23 Feb 2026 19:08:06 +0000 (20:08 +0100)
Several USB capture devices also need the USB_QUIRK_NO_BOS set for them
to work properly, odds are they are all the same chip inside, just
different vendor/product ids.

This fixes up:
  - ASUS TUF 4K PRO
  - Avermedia Live Gamer Ultra 2.1 (GC553G2)
  - UGREEN 35871
to now run at full speed (10 Gbps/4K 60 fps mode.)

Link: https://lore.kernel.org/r/CACy+XB-f-51xGpNQFCSm5pE_momTQLu=BaZggHYU1DiDmFX=ug@mail.gmail.com
Cc: stable <stable@kernel.org>
Signed-off-by: A1RM4X <dev@a1rm4x.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/usb/core/quirks.c

index 9e7e49712739d755f56d745f12afe6e69761e3ec..e347236d83e8d5888ab3800ff066ac212f1fc7cc 100644 (file)
@@ -376,6 +376,9 @@ static const struct usb_device_id usb_quirk_list[] = {
        /* SanDisk Extreme 55AE */
        { USB_DEVICE(0x0781, 0x55ae), .driver_info = USB_QUIRK_NO_LPM },
 
+       /* Avermedia Live Gamer Ultra 2.1 (GC553G2) - BOS descriptor fetch hangs at SuperSpeed Plus */
+       { USB_DEVICE(0x07ca, 0x2553), .driver_info = USB_QUIRK_NO_BOS },
+
        /* Realforce 87U Keyboard */
        { USB_DEVICE(0x0853, 0x011b), .driver_info = USB_QUIRK_NO_LPM },
 
@@ -436,6 +439,9 @@ static const struct usb_device_id usb_quirk_list[] = {
        { USB_DEVICE(0x0b05, 0x17e0), .driver_info =
                        USB_QUIRK_IGNORE_REMOTE_WAKEUP },
 
+       /* ASUS TUF 4K PRO - BOS descriptor fetch hangs at SuperSpeed Plus */
+       { USB_DEVICE(0x0b05, 0x1ab9), .driver_info = USB_QUIRK_NO_BOS },
+
        /* Realtek Semiconductor Corp. Mass Storage Device (Multicard Reader)*/
        { USB_DEVICE(0x0bda, 0x0151), .driver_info = USB_QUIRK_CONFIG_INTF_STRINGS },
 
@@ -564,6 +570,9 @@ static const struct usb_device_id usb_quirk_list[] = {
 
        { USB_DEVICE(0x2386, 0x350e), .driver_info = USB_QUIRK_NO_LPM },
 
+       /* UGREEN 35871 - BOS descriptor fetch hangs at SuperSpeed Plus */
+       { USB_DEVICE(0x2b89, 0x5871), .driver_info = USB_QUIRK_NO_BOS },
+
        /* APTIV AUTOMOTIVE HUB */
        { USB_DEVICE(0x2c48, 0x0132), .driver_info =
                        USB_QUIRK_SHORT_SET_ADDRESS_REQ_TIMEOUT },