Loading sound/usb/quirks-table.h +84 −86 Original line number Diff line number Diff line Loading @@ -72,22 +72,21 @@ } }, /* Creative/Toshiba Multimedia Center SB-0500 */ /* Creative/E-Mu devices */ { USB_DEVICE(0x041e, 0x3048), USB_DEVICE(0x041e, 0x3010), .driver_info = (unsigned long) & (const struct snd_usb_audio_quirk) { .vendor_name = "Toshiba", .product_name = "SB-0500", .vendor_name = "Creative Labs", .product_name = "Sound Blaster MP3+", .ifnum = QUIRK_NO_INTERFACE } }, /* Creative/E-Mu devices */ /* Creative/Toshiba Multimedia Center SB-0500 */ { USB_DEVICE(0x041e, 0x3010), USB_DEVICE(0x041e, 0x3048), .driver_info = (unsigned long) & (const struct snd_usb_audio_quirk) { .vendor_name = "Creative Labs", .product_name = "Sound Blaster MP3+", .vendor_name = "Toshiba", .product_name = "SB-0500", .ifnum = QUIRK_NO_INTERFACE } }, Loading Loading @@ -2521,10 +2520,10 @@ YAMAHA_DEVICE(0x7010, "UB99"), } }, { USB_DEVICE(0x1235, 0x0018), USB_DEVICE(0x1235, 0x0010), .driver_info = (unsigned long) &(const struct snd_usb_audio_quirk) { .vendor_name = "Novation", .product_name = "Twitch", .vendor_name = "Focusrite", .product_name = "Saffire 6 USB", .ifnum = QUIRK_ANY_INTERFACE, .type = QUIRK_COMPOSITE, .data = (const struct snd_usb_audio_quirk[]) { Loading Loading @@ -2561,19 +2560,10 @@ YAMAHA_DEVICE(0x7010, "UB99"), } }, { USB_DEVICE_VENDOR_SPEC(0x1235, 0x4661), USB_DEVICE(0x1235, 0x0018), .driver_info = (unsigned long) & (const struct snd_usb_audio_quirk) { .vendor_name = "Novation", .product_name = "ReMOTE25", .ifnum = 0, .type = QUIRK_MIDI_NOVATION } }, { USB_DEVICE(0x1235, 0x0010), .driver_info = (unsigned long) &(const struct snd_usb_audio_quirk) { .vendor_name = "Focusrite", .product_name = "Saffire 6 USB", .product_name = "Twitch", .ifnum = QUIRK_ANY_INTERFACE, .type = QUIRK_COMPOSITE, .data = (const struct snd_usb_audio_quirk[]) { Loading Loading @@ -2609,6 +2599,66 @@ YAMAHA_DEVICE(0x7010, "UB99"), } } }, { USB_DEVICE_VENDOR_SPEC(0x1235, 0x4661), .driver_info = (unsigned long) & (const struct snd_usb_audio_quirk) { .vendor_name = "Novation", .product_name = "ReMOTE25", .ifnum = 0, .type = QUIRK_MIDI_NOVATION } }, { /* * Focusrite Scarlett 18i6 * * Avoid mixer creation, which otherwise fails because some of * the interface descriptor subtypes for interface 0 are * unknown. That should be fixed or worked-around but this at * least allows the device to be used successfully with a DAW * and an external mixer. See comments below about other * ignored interfaces. */ USB_DEVICE(0x1235, 0x8004), .driver_info = (unsigned long) & (const struct snd_usb_audio_quirk) { .vendor_name = "Focusrite", .product_name = "Scarlett 18i6", .ifnum = QUIRK_ANY_INTERFACE, .type = QUIRK_COMPOSITE, .data = & (const struct snd_usb_audio_quirk[]) { { /* InterfaceSubClass 1 (Control Device) */ .ifnum = 0, .type = QUIRK_IGNORE_INTERFACE }, { .ifnum = 1, .type = QUIRK_AUDIO_STANDARD_INTERFACE }, { .ifnum = 2, .type = QUIRK_AUDIO_STANDARD_INTERFACE }, { /* InterfaceSubClass 1 (Control Device) */ .ifnum = 3, .type = QUIRK_IGNORE_INTERFACE }, { .ifnum = 4, .type = QUIRK_MIDI_STANDARD_INTERFACE }, { /* InterfaceSubClass 1 (Device Firmware Update) */ .ifnum = 5, .type = QUIRK_IGNORE_INTERFACE }, { .ifnum = -1 } } } }, /* Access Music devices */ { Loading Loading @@ -2711,7 +2761,7 @@ YAMAHA_DEVICE(0x7010, "UB99"), } }, { USB_DEVICE_VENDOR_SPEC(0x2040, 0x7240), USB_DEVICE_VENDOR_SPEC(0x2040, 0x7210), .match_flags = USB_DEVICE_ID_MATCH_DEVICE | USB_DEVICE_ID_MATCH_INT_CLASS | USB_DEVICE_ID_MATCH_INT_SUBCLASS, Loading @@ -2719,13 +2769,13 @@ YAMAHA_DEVICE(0x7010, "UB99"), .bInterfaceSubClass = USB_SUBCLASS_AUDIOCONTROL, .driver_info = (unsigned long) &(const struct snd_usb_audio_quirk) { .vendor_name = "Hauppauge", .product_name = "HVR-850", .product_name = "HVR-950Q", .ifnum = QUIRK_ANY_INTERFACE, .type = QUIRK_AUDIO_ALIGN_TRANSFER, } }, { USB_DEVICE_VENDOR_SPEC(0x2040, 0x7210), USB_DEVICE_VENDOR_SPEC(0x2040, 0x7217), .match_flags = USB_DEVICE_ID_MATCH_DEVICE | USB_DEVICE_ID_MATCH_INT_CLASS | USB_DEVICE_ID_MATCH_INT_SUBCLASS, Loading @@ -2739,7 +2789,7 @@ YAMAHA_DEVICE(0x7010, "UB99"), } }, { USB_DEVICE_VENDOR_SPEC(0x2040, 0x7217), USB_DEVICE_VENDOR_SPEC(0x2040, 0x721b), .match_flags = USB_DEVICE_ID_MATCH_DEVICE | USB_DEVICE_ID_MATCH_INT_CLASS | USB_DEVICE_ID_MATCH_INT_SUBCLASS, Loading @@ -2753,7 +2803,7 @@ YAMAHA_DEVICE(0x7010, "UB99"), } }, { USB_DEVICE_VENDOR_SPEC(0x2040, 0x721b), USB_DEVICE_VENDOR_SPEC(0x2040, 0x721e), .match_flags = USB_DEVICE_ID_MATCH_DEVICE | USB_DEVICE_ID_MATCH_INT_CLASS | USB_DEVICE_ID_MATCH_INT_SUBCLASS, Loading @@ -2767,7 +2817,7 @@ YAMAHA_DEVICE(0x7010, "UB99"), } }, { USB_DEVICE_VENDOR_SPEC(0x2040, 0x721e), USB_DEVICE_VENDOR_SPEC(0x2040, 0x721f), .match_flags = USB_DEVICE_ID_MATCH_DEVICE | USB_DEVICE_ID_MATCH_INT_CLASS | USB_DEVICE_ID_MATCH_INT_SUBCLASS, Loading @@ -2781,7 +2831,7 @@ YAMAHA_DEVICE(0x7010, "UB99"), } }, { USB_DEVICE_VENDOR_SPEC(0x2040, 0x721f), USB_DEVICE_VENDOR_SPEC(0x2040, 0x7240), .match_flags = USB_DEVICE_ID_MATCH_DEVICE | USB_DEVICE_ID_MATCH_INT_CLASS | USB_DEVICE_ID_MATCH_INT_SUBCLASS, Loading @@ -2789,7 +2839,7 @@ YAMAHA_DEVICE(0x7010, "UB99"), .bInterfaceSubClass = USB_SUBCLASS_AUDIOCONTROL, .driver_info = (unsigned long) &(const struct snd_usb_audio_quirk) { .vendor_name = "Hauppauge", .product_name = "HVR-950Q", .product_name = "HVR-850", .ifnum = QUIRK_ANY_INTERFACE, .type = QUIRK_AUDIO_ALIGN_TRANSFER, } Loading Loading @@ -3092,58 +3142,6 @@ YAMAHA_DEVICE(0x7010, "UB99"), } }, { /* * Focusrite Scarlett 18i6 * * Avoid mixer creation, which otherwise fails because some of * the interface descriptor subtypes for interface 0 are * unknown. That should be fixed or worked-around but this at * least allows the device to be used successfully with a DAW * and an external mixer. See comments below about other * ignored interfaces. */ USB_DEVICE(0x1235, 0x8004), .driver_info = (unsigned long) & (const struct snd_usb_audio_quirk) { .vendor_name = "Focusrite", .product_name = "Scarlett 18i6", .ifnum = QUIRK_ANY_INTERFACE, .type = QUIRK_COMPOSITE, .data = & (const struct snd_usb_audio_quirk[]) { { /* InterfaceSubClass 1 (Control Device) */ .ifnum = 0, .type = QUIRK_IGNORE_INTERFACE }, { .ifnum = 1, .type = QUIRK_AUDIO_STANDARD_INTERFACE }, { .ifnum = 2, .type = QUIRK_AUDIO_STANDARD_INTERFACE }, { /* InterfaceSubClass 1 (Control Device) */ .ifnum = 3, .type = QUIRK_IGNORE_INTERFACE }, { .ifnum = 4, .type = QUIRK_MIDI_STANDARD_INTERFACE }, { /* InterfaceSubClass 1 (Device Firmware Update) */ .ifnum = 5, .type = QUIRK_IGNORE_INTERFACE }, { .ifnum = -1 } } } }, { /* * Some USB MIDI devices don't have an audio control interface, Loading Loading
sound/usb/quirks-table.h +84 −86 Original line number Diff line number Diff line Loading @@ -72,22 +72,21 @@ } }, /* Creative/Toshiba Multimedia Center SB-0500 */ /* Creative/E-Mu devices */ { USB_DEVICE(0x041e, 0x3048), USB_DEVICE(0x041e, 0x3010), .driver_info = (unsigned long) & (const struct snd_usb_audio_quirk) { .vendor_name = "Toshiba", .product_name = "SB-0500", .vendor_name = "Creative Labs", .product_name = "Sound Blaster MP3+", .ifnum = QUIRK_NO_INTERFACE } }, /* Creative/E-Mu devices */ /* Creative/Toshiba Multimedia Center SB-0500 */ { USB_DEVICE(0x041e, 0x3010), USB_DEVICE(0x041e, 0x3048), .driver_info = (unsigned long) & (const struct snd_usb_audio_quirk) { .vendor_name = "Creative Labs", .product_name = "Sound Blaster MP3+", .vendor_name = "Toshiba", .product_name = "SB-0500", .ifnum = QUIRK_NO_INTERFACE } }, Loading Loading @@ -2521,10 +2520,10 @@ YAMAHA_DEVICE(0x7010, "UB99"), } }, { USB_DEVICE(0x1235, 0x0018), USB_DEVICE(0x1235, 0x0010), .driver_info = (unsigned long) &(const struct snd_usb_audio_quirk) { .vendor_name = "Novation", .product_name = "Twitch", .vendor_name = "Focusrite", .product_name = "Saffire 6 USB", .ifnum = QUIRK_ANY_INTERFACE, .type = QUIRK_COMPOSITE, .data = (const struct snd_usb_audio_quirk[]) { Loading Loading @@ -2561,19 +2560,10 @@ YAMAHA_DEVICE(0x7010, "UB99"), } }, { USB_DEVICE_VENDOR_SPEC(0x1235, 0x4661), USB_DEVICE(0x1235, 0x0018), .driver_info = (unsigned long) & (const struct snd_usb_audio_quirk) { .vendor_name = "Novation", .product_name = "ReMOTE25", .ifnum = 0, .type = QUIRK_MIDI_NOVATION } }, { USB_DEVICE(0x1235, 0x0010), .driver_info = (unsigned long) &(const struct snd_usb_audio_quirk) { .vendor_name = "Focusrite", .product_name = "Saffire 6 USB", .product_name = "Twitch", .ifnum = QUIRK_ANY_INTERFACE, .type = QUIRK_COMPOSITE, .data = (const struct snd_usb_audio_quirk[]) { Loading Loading @@ -2609,6 +2599,66 @@ YAMAHA_DEVICE(0x7010, "UB99"), } } }, { USB_DEVICE_VENDOR_SPEC(0x1235, 0x4661), .driver_info = (unsigned long) & (const struct snd_usb_audio_quirk) { .vendor_name = "Novation", .product_name = "ReMOTE25", .ifnum = 0, .type = QUIRK_MIDI_NOVATION } }, { /* * Focusrite Scarlett 18i6 * * Avoid mixer creation, which otherwise fails because some of * the interface descriptor subtypes for interface 0 are * unknown. That should be fixed or worked-around but this at * least allows the device to be used successfully with a DAW * and an external mixer. See comments below about other * ignored interfaces. */ USB_DEVICE(0x1235, 0x8004), .driver_info = (unsigned long) & (const struct snd_usb_audio_quirk) { .vendor_name = "Focusrite", .product_name = "Scarlett 18i6", .ifnum = QUIRK_ANY_INTERFACE, .type = QUIRK_COMPOSITE, .data = & (const struct snd_usb_audio_quirk[]) { { /* InterfaceSubClass 1 (Control Device) */ .ifnum = 0, .type = QUIRK_IGNORE_INTERFACE }, { .ifnum = 1, .type = QUIRK_AUDIO_STANDARD_INTERFACE }, { .ifnum = 2, .type = QUIRK_AUDIO_STANDARD_INTERFACE }, { /* InterfaceSubClass 1 (Control Device) */ .ifnum = 3, .type = QUIRK_IGNORE_INTERFACE }, { .ifnum = 4, .type = QUIRK_MIDI_STANDARD_INTERFACE }, { /* InterfaceSubClass 1 (Device Firmware Update) */ .ifnum = 5, .type = QUIRK_IGNORE_INTERFACE }, { .ifnum = -1 } } } }, /* Access Music devices */ { Loading Loading @@ -2711,7 +2761,7 @@ YAMAHA_DEVICE(0x7010, "UB99"), } }, { USB_DEVICE_VENDOR_SPEC(0x2040, 0x7240), USB_DEVICE_VENDOR_SPEC(0x2040, 0x7210), .match_flags = USB_DEVICE_ID_MATCH_DEVICE | USB_DEVICE_ID_MATCH_INT_CLASS | USB_DEVICE_ID_MATCH_INT_SUBCLASS, Loading @@ -2719,13 +2769,13 @@ YAMAHA_DEVICE(0x7010, "UB99"), .bInterfaceSubClass = USB_SUBCLASS_AUDIOCONTROL, .driver_info = (unsigned long) &(const struct snd_usb_audio_quirk) { .vendor_name = "Hauppauge", .product_name = "HVR-850", .product_name = "HVR-950Q", .ifnum = QUIRK_ANY_INTERFACE, .type = QUIRK_AUDIO_ALIGN_TRANSFER, } }, { USB_DEVICE_VENDOR_SPEC(0x2040, 0x7210), USB_DEVICE_VENDOR_SPEC(0x2040, 0x7217), .match_flags = USB_DEVICE_ID_MATCH_DEVICE | USB_DEVICE_ID_MATCH_INT_CLASS | USB_DEVICE_ID_MATCH_INT_SUBCLASS, Loading @@ -2739,7 +2789,7 @@ YAMAHA_DEVICE(0x7010, "UB99"), } }, { USB_DEVICE_VENDOR_SPEC(0x2040, 0x7217), USB_DEVICE_VENDOR_SPEC(0x2040, 0x721b), .match_flags = USB_DEVICE_ID_MATCH_DEVICE | USB_DEVICE_ID_MATCH_INT_CLASS | USB_DEVICE_ID_MATCH_INT_SUBCLASS, Loading @@ -2753,7 +2803,7 @@ YAMAHA_DEVICE(0x7010, "UB99"), } }, { USB_DEVICE_VENDOR_SPEC(0x2040, 0x721b), USB_DEVICE_VENDOR_SPEC(0x2040, 0x721e), .match_flags = USB_DEVICE_ID_MATCH_DEVICE | USB_DEVICE_ID_MATCH_INT_CLASS | USB_DEVICE_ID_MATCH_INT_SUBCLASS, Loading @@ -2767,7 +2817,7 @@ YAMAHA_DEVICE(0x7010, "UB99"), } }, { USB_DEVICE_VENDOR_SPEC(0x2040, 0x721e), USB_DEVICE_VENDOR_SPEC(0x2040, 0x721f), .match_flags = USB_DEVICE_ID_MATCH_DEVICE | USB_DEVICE_ID_MATCH_INT_CLASS | USB_DEVICE_ID_MATCH_INT_SUBCLASS, Loading @@ -2781,7 +2831,7 @@ YAMAHA_DEVICE(0x7010, "UB99"), } }, { USB_DEVICE_VENDOR_SPEC(0x2040, 0x721f), USB_DEVICE_VENDOR_SPEC(0x2040, 0x7240), .match_flags = USB_DEVICE_ID_MATCH_DEVICE | USB_DEVICE_ID_MATCH_INT_CLASS | USB_DEVICE_ID_MATCH_INT_SUBCLASS, Loading @@ -2789,7 +2839,7 @@ YAMAHA_DEVICE(0x7010, "UB99"), .bInterfaceSubClass = USB_SUBCLASS_AUDIOCONTROL, .driver_info = (unsigned long) &(const struct snd_usb_audio_quirk) { .vendor_name = "Hauppauge", .product_name = "HVR-950Q", .product_name = "HVR-850", .ifnum = QUIRK_ANY_INTERFACE, .type = QUIRK_AUDIO_ALIGN_TRANSFER, } Loading Loading @@ -3092,58 +3142,6 @@ YAMAHA_DEVICE(0x7010, "UB99"), } }, { /* * Focusrite Scarlett 18i6 * * Avoid mixer creation, which otherwise fails because some of * the interface descriptor subtypes for interface 0 are * unknown. That should be fixed or worked-around but this at * least allows the device to be used successfully with a DAW * and an external mixer. See comments below about other * ignored interfaces. */ USB_DEVICE(0x1235, 0x8004), .driver_info = (unsigned long) & (const struct snd_usb_audio_quirk) { .vendor_name = "Focusrite", .product_name = "Scarlett 18i6", .ifnum = QUIRK_ANY_INTERFACE, .type = QUIRK_COMPOSITE, .data = & (const struct snd_usb_audio_quirk[]) { { /* InterfaceSubClass 1 (Control Device) */ .ifnum = 0, .type = QUIRK_IGNORE_INTERFACE }, { .ifnum = 1, .type = QUIRK_AUDIO_STANDARD_INTERFACE }, { .ifnum = 2, .type = QUIRK_AUDIO_STANDARD_INTERFACE }, { /* InterfaceSubClass 1 (Control Device) */ .ifnum = 3, .type = QUIRK_IGNORE_INTERFACE }, { .ifnum = 4, .type = QUIRK_MIDI_STANDARD_INTERFACE }, { /* InterfaceSubClass 1 (Device Firmware Update) */ .ifnum = 5, .type = QUIRK_IGNORE_INTERFACE }, { .ifnum = -1 } } } }, { /* * Some USB MIDI devices don't have an audio control interface, Loading