aboutsummaryrefslogtreecommitdiffstats
path: root/sound/usb/usbquirks.h
diff options
context:
space:
mode:
Diffstat (limited to 'sound/usb/usbquirks.h')
-rw-r--r--sound/usb/usbquirks.h103
1 files changed, 88 insertions, 15 deletions
diff --git a/sound/usb/usbquirks.h b/sound/usb/usbquirks.h
index 6190ada00e38..0992a0923f1a 100644
--- a/sound/usb/usbquirks.h
+++ b/sound/usb/usbquirks.h
@@ -82,6 +82,7 @@ YAMAHA_DEVICE(0x1012, "TYROS"),
82YAMAHA_DEVICE(0x1013, "PF-500"), 82YAMAHA_DEVICE(0x1013, "PF-500"),
83YAMAHA_DEVICE(0x1014, "S90"), 83YAMAHA_DEVICE(0x1014, "S90"),
84YAMAHA_DEVICE(0x1015, "MOTIF-R"), 84YAMAHA_DEVICE(0x1015, "MOTIF-R"),
85YAMAHA_DEVICE(0x1016, "MDP-5"),
85YAMAHA_DEVICE(0x1017, "CVP-204"), 86YAMAHA_DEVICE(0x1017, "CVP-204"),
86YAMAHA_DEVICE(0x1018, "CVP-206"), 87YAMAHA_DEVICE(0x1018, "CVP-206"),
87YAMAHA_DEVICE(0x1019, "CVP-208"), 88YAMAHA_DEVICE(0x1019, "CVP-208"),
@@ -90,6 +91,7 @@ YAMAHA_DEVICE(0x101b, "PSR-1100"),
90YAMAHA_DEVICE(0x101c, "PSR-2100"), 91YAMAHA_DEVICE(0x101c, "PSR-2100"),
91YAMAHA_DEVICE(0x101d, "CLP-175"), 92YAMAHA_DEVICE(0x101d, "CLP-175"),
92YAMAHA_DEVICE(0x101e, "PSR-K1"), 93YAMAHA_DEVICE(0x101e, "PSR-K1"),
94YAMAHA_DEVICE(0x101f, "EZ-J24"),
93YAMAHA_DEVICE(0x1020, "EZ-250i"), 95YAMAHA_DEVICE(0x1020, "EZ-250i"),
94YAMAHA_DEVICE(0x1021, "MOTIF ES 6"), 96YAMAHA_DEVICE(0x1021, "MOTIF ES 6"),
95YAMAHA_DEVICE(0x1022, "MOTIF ES 7"), 97YAMAHA_DEVICE(0x1022, "MOTIF ES 7"),
@@ -294,7 +296,8 @@ YAMAHA_DEVICE(0x7010, "UB99"),
294 } 296 }
295}, 297},
296{ 298{
297 /* a later revision uses ID 0x0099 */ 299 /* Has ID 0x0099 when not in "Advanced Driver" mode.
300 * The UM-2EX has only one input, but we cannot detect this. */
298 USB_DEVICE(0x0582, 0x0005), 301 USB_DEVICE(0x0582, 0x0005),
299 .driver_info = (unsigned long) & (const struct snd_usb_audio_quirk) { 302 .driver_info = (unsigned long) & (const struct snd_usb_audio_quirk) {
300 .vendor_name = "EDIROL", 303 .vendor_name = "EDIROL",
@@ -385,7 +388,7 @@ YAMAHA_DEVICE(0x7010, "UB99"),
385 } 388 }
386}, 389},
387{ 390{
388 /* a later revision uses ID 0x009d */ 391 /* has ID 0x009d when not in "Advanced Driver" mode */
389 USB_DEVICE(0x0582, 0x0009), 392 USB_DEVICE(0x0582, 0x0009),
390 .driver_info = (unsigned long) & (const struct snd_usb_audio_quirk) { 393 .driver_info = (unsigned long) & (const struct snd_usb_audio_quirk) {
391 .vendor_name = "EDIROL", 394 .vendor_name = "EDIROL",
@@ -1090,6 +1093,53 @@ YAMAHA_DEVICE(0x7010, "UB99"),
1090 } 1093 }
1091 } 1094 }
1092}, 1095},
1096 /* TODO: add Edirol UA-101 support */
1097{
1098 /* has ID 0x0081 when not in "Advanced Driver" mode */
1099 USB_DEVICE(0x0582, 0x0080),
1100 .driver_info = (unsigned long) & (const struct snd_usb_audio_quirk) {
1101 .vendor_name = "Roland",
1102 .product_name = "G-70",
1103 .ifnum = 0,
1104 .type = QUIRK_MIDI_FIXED_ENDPOINT,
1105 .data = & (const struct snd_usb_midi_endpoint_info) {
1106 .out_cables = 0x0001,
1107 .in_cables = 0x0001
1108 }
1109 }
1110},
1111 /* TODO: add Roland V-SYNTH XT support */
1112 /* TODO: add BOSS GT-PRO support */
1113{
1114 /* has ID 0x008c when not in "Advanced Driver" mode */
1115 USB_DEVICE(0x0582, 0x008b),
1116 .driver_info = (unsigned long) & (const struct snd_usb_audio_quirk) {
1117 .vendor_name = "EDIROL",
1118 .product_name = "PC-50",
1119 .ifnum = 0,
1120 .type = QUIRK_MIDI_FIXED_ENDPOINT,
1121 .data = & (const struct snd_usb_midi_endpoint_info) {
1122 .out_cables = 0x0001,
1123 .in_cables = 0x0001
1124 }
1125 }
1126},
1127 /* TODO: add Edirol PC-80 support */
1128 /* TODO: add Edirol UA-1EX support */
1129{
1130 USB_DEVICE(0x0582, 0x009a),
1131 .driver_info = (unsigned long) & (const struct snd_usb_audio_quirk) {
1132 .vendor_name = "EDIROL",
1133 .product_name = "UM-3EX",
1134 .ifnum = 0,
1135 .type = QUIRK_MIDI_FIXED_ENDPOINT,
1136 .data = & (const struct snd_usb_midi_endpoint_info) {
1137 .out_cables = 0x000f,
1138 .in_cables = 0x000f
1139 }
1140 }
1141},
1142 /* TODO: add Edirol MD-P1 support */
1093 1143
1094/* Guillemot devices */ 1144/* Guillemot devices */
1095{ 1145{
@@ -1111,15 +1161,6 @@ YAMAHA_DEVICE(0x7010, "UB99"),
1111 } 1161 }
1112 } 1162 }
1113}, 1163},
1114 /* TODO: add Edirol UA-101 support */
1115 /* TODO: add Roland G-70 support */
1116 /* TODO: add Roland V-SYNTH XT support */
1117 /* TODO: add BOSS GT-PRO support */
1118 /* TODO: add Edirol PC-50 support */
1119 /* TODO: add Edirol PC-80 support */
1120 /* TODO: add Edirol UA-1EX support */
1121 /* TODO: add Edirol UM-3 support */
1122 /* TODO: add Edirol MD-P1 support */
1123 1164
1124/* Midiman/M-Audio devices */ 1165/* Midiman/M-Audio devices */
1125{ 1166{
@@ -1367,6 +1408,27 @@ YAMAHA_DEVICE(0x7010, "UB99"),
1367 } 1408 }
1368}, 1409},
1369 1410
1411/* Casio devices */
1412{
1413 USB_DEVICE(0x07cf, 0x6801),
1414 .driver_info = (unsigned long) & (const struct snd_usb_audio_quirk) {
1415 .vendor_name = "Casio",
1416 .product_name = "PL-40R",
1417 .ifnum = 0,
1418 .type = QUIRK_MIDI_YAMAHA
1419 }
1420},
1421{
1422 /* this ID is used by several devices without a product ID */
1423 USB_DEVICE(0x07cf, 0x6802),
1424 .driver_info = (unsigned long) & (const struct snd_usb_audio_quirk) {
1425 .vendor_name = "Casio",
1426 .product_name = "Keyboard",
1427 .ifnum = 0,
1428 .type = QUIRK_MIDI_YAMAHA
1429 }
1430},
1431
1370/* Mark of the Unicorn devices */ 1432/* Mark of the Unicorn devices */
1371{ 1433{
1372 /* thanks to Robert A. Lerche <ral 'at' msbit.com> */ 1434 /* thanks to Robert A. Lerche <ral 'at' msbit.com> */
@@ -1468,6 +1530,15 @@ YAMAHA_DEVICE(0x7010, "UB99"),
1468 .type = QUIRK_MIDI_STANDARD_INTERFACE 1530 .type = QUIRK_MIDI_STANDARD_INTERFACE
1469 } 1531 }
1470}, 1532},
1533{
1534 USB_DEVICE(0x0ccd, 0x0035),
1535 .driver_info = (unsigned long) & (const struct snd_usb_audio_quirk) {
1536 .vendor_name = "Miditech",
1537 .product_name = "Play'n Roll",
1538 .ifnum = 0,
1539 .type = QUIRK_MIDI_CME
1540 }
1541},
1471 1542
1472/* Novation EMS devices */ 1543/* Novation EMS devices */
1473{ 1544{
@@ -1498,22 +1569,24 @@ YAMAHA_DEVICE(0x7010, "UB99"),
1498 } 1569 }
1499}, 1570},
1500 1571
1572/* Miditech devices */
1501{ 1573{
1502 USB_DEVICE(0x4752, 0x0011), 1574 USB_DEVICE(0x4752, 0x0011),
1503 .driver_info = (unsigned long) & (const struct snd_usb_audio_quirk) { 1575 .driver_info = (unsigned long) & (const struct snd_usb_audio_quirk) {
1504 .vendor_name = "Miditech", 1576 .vendor_name = "Miditech",
1505 .product_name = "Midistart-2", 1577 .product_name = "Midistart-2",
1506 .ifnum = 0, 1578 .ifnum = 0,
1507 .type = QUIRK_MIDI_MIDITECH 1579 .type = QUIRK_MIDI_CME
1508 } 1580 }
1509}, 1581},
1582
1583/* Central Music devices */
1510{ 1584{
1585 /* this ID used by both Miditech MidiStudio-2 and CME UF-x */
1511 USB_DEVICE(0x7104, 0x2202), 1586 USB_DEVICE(0x7104, 0x2202),
1512 .driver_info = (unsigned long) & (const struct snd_usb_audio_quirk) { 1587 .driver_info = (unsigned long) & (const struct snd_usb_audio_quirk) {
1513 .vendor_name = "Miditech",
1514 .product_name = "MidiStudio-2",
1515 .ifnum = 0, 1588 .ifnum = 0,
1516 .type = QUIRK_MIDI_MIDITECH 1589 .type = QUIRK_MIDI_CME
1517 } 1590 }
1518}, 1591},
1519 1592