aboutsummaryrefslogtreecommitdiffstats
path: root/sound
diff options
context:
space:
mode:
Diffstat (limited to 'sound')
-rw-r--r--sound/usb/usbquirks.h75
1 files changed, 38 insertions, 37 deletions
diff --git a/sound/usb/usbquirks.h b/sound/usb/usbquirks.h
index 938dff5f9cef..82a8d14c26af 100644
--- a/sound/usb/usbquirks.h
+++ b/sound/usb/usbquirks.h
@@ -39,6 +39,30 @@
39 .idProduct = prod, \ 39 .idProduct = prod, \
40 .bInterfaceClass = USB_CLASS_VENDOR_SPEC 40 .bInterfaceClass = USB_CLASS_VENDOR_SPEC
41 41
42/* Creative/E-Mu devices */
43{
44 USB_DEVICE(0x041e, 0x3010),
45 .driver_info = (unsigned long) & (const struct snd_usb_audio_quirk) {
46 .vendor_name = "Creative Labs",
47 .product_name = "Sound Blaster MP3+",
48 .ifnum = QUIRK_NO_INTERFACE
49 }
50},
51{
52 /* E-Mu 0202 USB */
53 .match_flags = USB_DEVICE_ID_MATCH_DEVICE,
54 .idVendor = 0x041e,
55 .idProduct = 0x3f02,
56 .bInterfaceClass = USB_CLASS_AUDIO,
57},
58{
59 /* E-Mu 0404 USB */
60 .match_flags = USB_DEVICE_ID_MATCH_DEVICE,
61 .idVendor = 0x041e,
62 .idProduct = 0x3f04,
63 .bInterfaceClass = USB_CLASS_AUDIO,
64},
65
42/* 66/*
43 * Logitech QuickCam: bDeviceClass is vendor-specific, so generic interface 67 * Logitech QuickCam: bDeviceClass is vendor-specific, so generic interface
44 * class matches do not take effect without an explicit ID match. 68 * class matches do not take effect without an explicit ID match.
@@ -97,19 +121,7 @@
97 .bInterfaceClass = USB_CLASS_AUDIO, 121 .bInterfaceClass = USB_CLASS_AUDIO,
98 .bInterfaceSubClass = USB_SUBCLASS_AUDIO_CONTROL 122 .bInterfaceSubClass = USB_SUBCLASS_AUDIO_CONTROL
99}, 123},
100/* E-Mu devices */ 124
101{
102 .match_flags = USB_DEVICE_ID_MATCH_DEVICE,
103 .idVendor = 0x041e,
104 .idProduct = 0x3f02,
105 .bInterfaceClass = USB_CLASS_AUDIO,
106},
107{
108 .match_flags = USB_DEVICE_ID_MATCH_DEVICE,
109 .idVendor = 0x041e,
110 .idProduct = 0x3f04,
111 .bInterfaceClass = USB_CLASS_AUDIO,
112},
113/* 125/*
114 * Yamaha devices 126 * Yamaha devices
115 */ 127 */
@@ -1165,19 +1177,6 @@ YAMAHA_DEVICE(0x7010, "UB99"),
1165 } 1177 }
1166 } 1178 }
1167}, 1179},
1168{
1169 USB_DEVICE(0x582, 0x00a6),
1170 .driver_info = (unsigned long) & (const struct snd_usb_audio_quirk) {
1171 .vendor_name = "Roland",
1172 .product_name = "Juno-G",
1173 .ifnum = 0,
1174 .type = QUIRK_MIDI_FIXED_ENDPOINT,
1175 .data = & (const struct snd_usb_midi_endpoint_info) {
1176 .out_cables = 0x0001,
1177 .in_cables = 0x0001
1178 }
1179 }
1180},
1181{ /* 1180{ /*
1182 * This quirk is for the "Advanced" modes of the Edirol UA-25. 1181 * This quirk is for the "Advanced" modes of the Edirol UA-25.
1183 * If the switch is not in an advanced setting, the UA-25 has 1182 * If the switch is not in an advanced setting, the UA-25 has
@@ -1336,6 +1335,19 @@ YAMAHA_DEVICE(0x7010, "UB99"),
1336}, 1335},
1337 /* TODO: add Edirol MD-P1 support */ 1336 /* TODO: add Edirol MD-P1 support */
1338{ 1337{
1338 USB_DEVICE(0x582, 0x00a6),
1339 .driver_info = (unsigned long) & (const struct snd_usb_audio_quirk) {
1340 .vendor_name = "Roland",
1341 .product_name = "Juno-G",
1342 .ifnum = 0,
1343 .type = QUIRK_MIDI_FIXED_ENDPOINT,
1344 .data = & (const struct snd_usb_midi_endpoint_info) {
1345 .out_cables = 0x0001,
1346 .in_cables = 0x0001
1347 }
1348 }
1349},
1350{
1339 /* Roland SH-201 */ 1351 /* Roland SH-201 */
1340 USB_DEVICE(0x0582, 0x00ad), 1352 USB_DEVICE(0x0582, 0x00ad),
1341 .driver_info = (unsigned long) & (const struct snd_usb_audio_quirk) { 1353 .driver_info = (unsigned long) & (const struct snd_usb_audio_quirk) {
@@ -1719,17 +1731,6 @@ YAMAHA_DEVICE(0x7010, "UB99"),
1719 } 1731 }
1720}, 1732},
1721 1733
1722{
1723 /* Creative Sound Blaster MP3+ */
1724 USB_DEVICE(0x041e, 0x3010),
1725 .driver_info = (unsigned long) & (const struct snd_usb_audio_quirk) {
1726 .vendor_name = "Creative Labs",
1727 .product_name = "Sound Blaster MP3+",
1728 .ifnum = QUIRK_NO_INTERFACE
1729 }
1730
1731},
1732
1733/* Emagic devices */ 1734/* Emagic devices */
1734{ 1735{
1735 USB_DEVICE(0x086a, 0x0001), 1736 USB_DEVICE(0x086a, 0x0001),