|
@@ -2955,6 +2955,58 @@ 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,
|