34 #define USB_DEVICE_VENDOR_SPEC(vend, prod) \
35 .match_flags = USB_DEVICE_ID_MATCH_VENDOR | \
36 USB_DEVICE_ID_MATCH_PRODUCT | \
37 USB_DEVICE_ID_MATCH_INT_CLASS, \
40 .bInterfaceClass = USB_CLASS_VENDOR_SPEC
44 USB_DEVICE(0x0403, 0xb8d8),
55 USB_DEVICE(0x041e, 0x3048),
57 .vendor_name =
"Toshiba",
58 .product_name =
"SB-0500",
65 USB_DEVICE(0x041e, 0x3010),
67 .vendor_name =
"Creative Labs",
68 .product_name =
"Sound Blaster MP3+",
74 .match_flags = USB_DEVICE_ID_MATCH_DEVICE,
81 .match_flags = USB_DEVICE_ID_MATCH_DEVICE,
88 .match_flags = USB_DEVICE_ID_MATCH_DEVICE,
95 .match_flags = USB_DEVICE_ID_MATCH_DEVICE,
106 .match_flags = USB_DEVICE_ID_MATCH_DEVICE |
115 .match_flags = USB_DEVICE_ID_MATCH_DEVICE |
124 .match_flags = USB_DEVICE_ID_MATCH_DEVICE |
133 .match_flags = USB_DEVICE_ID_MATCH_DEVICE |
142 .match_flags = USB_DEVICE_ID_MATCH_DEVICE |
151 .match_flags = USB_DEVICE_ID_MATCH_DEVICE |
160 USB_DEVICE(0x046d, 0x0990),
162 .vendor_name =
"Logitech, Inc.",
163 .product_name =
"QuickCam Pro 9000",
172 #define YAMAHA_DEVICE(id, name) { \
173 USB_DEVICE(0x0499, id), \
174 .driver_info = (unsigned long) & (const struct snd_usb_audio_quirk) { \
175 .vendor_name = "Yamaha", \
176 .product_name = name, \
177 .ifnum = QUIRK_ANY_INTERFACE, \
178 .type = QUIRK_MIDI_YAMAHA \
181 #define YAMAHA_INTERFACE(id, intf, name) { \
182 USB_DEVICE_VENDOR_SPEC(0x0499, id), \
183 .driver_info = (unsigned long) & (const struct snd_usb_audio_quirk) { \
184 .vendor_name = "Yamaha", \
185 .product_name = name, \
187 .type = QUIRK_MIDI_YAMAHA \
273 USB_DEVICE(0x0499, 0x1503),
321 #undef YAMAHA_INTERFACE
327 USB_DEVICE(0x0582, 0x0000),
329 .vendor_name =
"Roland",
330 .product_name =
"UA-100",
372 .out_cables = 0x0007,
383 USB_DEVICE(0x0582, 0x0002),
385 .vendor_name =
"EDIROL",
386 .product_name =
"UM-4",
402 .out_cables = 0x000f,
413 USB_DEVICE(0x0582, 0x0003),
415 .vendor_name =
"Roland",
416 .product_name =
"SC-8850",
432 .out_cables = 0x003f,
443 USB_DEVICE(0x0582, 0x0004),
445 .vendor_name =
"Roland",
446 .product_name =
"U-8",
462 .out_cables = 0x0005,
475 USB_DEVICE(0x0582, 0x0005),
477 .vendor_name =
"EDIROL",
478 .product_name =
"UM-2",
494 .out_cables = 0x0003,
505 USB_DEVICE(0x0582, 0x0007),
507 .vendor_name =
"Roland",
508 .product_name =
"SC-8820",
524 .out_cables = 0x0013,
535 USB_DEVICE(0x0582, 0x0008),
537 .vendor_name =
"Roland",
538 .product_name =
"PC-300",
554 .out_cables = 0x0001,
566 USB_DEVICE(0x0582, 0x0009),
568 .vendor_name =
"EDIROL",
569 .product_name =
"UM-1",
585 .out_cables = 0x0001,
596 USB_DEVICE(0x0582, 0x000b),
598 .vendor_name =
"Roland",
599 .product_name =
"SK-500",
615 .out_cables = 0x0013,
628 USB_DEVICE(0x0582, 0x000c),
630 .vendor_name =
"Roland",
631 .product_name =
"SC-D70",
673 .out_cables = 0x0007,
692 USB_DEVICE(0x0582, 0x0010),
694 .vendor_name =
"EDIROL",
695 .product_name =
"UA-5",
715 USB_DEVICE(0x0582, 0x0012),
717 .vendor_name =
"Roland",
718 .product_name =
"XV-5050",
722 .out_cables = 0x0001,
729 USB_DEVICE(0x0582, 0x0014),
731 .vendor_name =
"EDIROL",
732 .product_name =
"UM-880",
736 .out_cables = 0x01ff,
743 USB_DEVICE(0x0582, 0x0016),
745 .vendor_name =
"EDIROL",
746 .product_name =
"SD-90",
762 .out_cables = 0x000f,
774 USB_DEVICE(0x0582, 0x001b),
776 .vendor_name =
"Roland",
777 .product_name =
"MMP-2",
793 .out_cables = 0x0001,
805 USB_DEVICE(0x0582, 0x001d),
807 .vendor_name =
"Roland",
808 .product_name =
"V-SYNTH",
812 .out_cables = 0x0001,
819 USB_DEVICE(0x0582, 0x0023),
821 .vendor_name =
"EDIROL",
822 .product_name =
"UM-550",
826 .out_cables = 0x003f,
837 USB_DEVICE(0x0582, 0x0025),
839 .vendor_name =
"EDIROL",
840 .product_name =
"UA-20",
886 .out_cables = 0x0001,
898 USB_DEVICE(0x0582, 0x0027),
900 .vendor_name =
"EDIROL",
901 .product_name =
"SD-20",
905 .out_cables = 0x0003,
912 USB_DEVICE(0x0582, 0x0029),
914 .vendor_name =
"EDIROL",
915 .product_name =
"SD-80",
919 .out_cables = 0x000f,
932 .vendor_name =
"EDIROL",
933 .product_name =
"UA-700",
957 USB_DEVICE(0x0582, 0x002d),
959 .vendor_name =
"Roland",
960 .product_name =
"XV-2020",
964 .out_cables = 0x0001,
971 USB_DEVICE(0x0582, 0x002f),
973 .vendor_name =
"Roland",
974 .product_name =
"VariOS",
978 .out_cables = 0x0007,
985 USB_DEVICE(0x0582, 0x0033),
987 .vendor_name =
"EDIROL",
988 .product_name =
"PCR",
992 .out_cables = 0x0003,
1003 USB_DEVICE(0x0582, 0x0037),
1005 .vendor_name =
"Roland",
1006 .product_name =
"Digital Piano",
1010 .out_cables = 0x0001,
1023 .vendor_name =
"BOSS",
1024 .product_name =
"GS-10",
1048 USB_DEVICE(0x0582, 0x0040),
1050 .vendor_name =
"Roland",
1051 .product_name =
"GI-20",
1055 .out_cables = 0x0001,
1062 USB_DEVICE(0x0582, 0x0042),
1064 .vendor_name =
"Roland",
1065 .product_name =
"RS-70",
1069 .out_cables = 0x0001,
1076 USB_DEVICE(0x0582, 0x0047),
1100 USB_DEVICE(0x0582, 0x0048),
1107 .out_cables = 0x0003,
1115 USB_DEVICE(0x0582, 0x004c),
1117 .vendor_name =
"EDIROL",
1118 .product_name =
"PCR-A",
1138 USB_DEVICE(0x0582, 0x004d),
1140 .vendor_name =
"EDIROL",
1141 .product_name =
"PCR-A",
1145 .out_cables = 0x0003,
1155 USB_DEVICE(0x0582, 0x0050),
1157 .vendor_name =
"EDIROL",
1158 .product_name =
"UA-3FX",
1177 USB_DEVICE(0x0582, 0x0052),
1179 .vendor_name =
"EDIROL",
1180 .product_name =
"UM-1SX",
1186 USB_DEVICE(0x0582, 0x0060),
1188 .vendor_name =
"Roland",
1189 .product_name =
"EXR Series",
1196 USB_DEVICE(0x0582, 0x0064),
1219 USB_DEVICE(0x0582, 0x0065),
1226 .out_cables = 0x0001,
1235 .vendor_name =
"Roland",
1236 .product_name =
"SP-606",
1240 .out_cables = 0x0001,
1247 USB_DEVICE(0x0582, 0x006d),
1249 .vendor_name =
"Roland",
1250 .product_name =
"FANTOM-X",
1254 .out_cables = 0x0001,
1267 .vendor_name =
"EDIROL",
1268 .product_name =
"UA-25",
1292 USB_DEVICE(0x0582, 0x0075),
1294 .vendor_name =
"BOSS",
1295 .product_name =
"DR-880",
1299 .out_cables = 0x0001,
1308 .vendor_name =
"Roland",
1313 .out_cables = 0x0003,
1320 USB_DEVICE(0x0582, 0x0080),
1322 .vendor_name =
"Roland",
1323 .product_name =
"G-70",
1327 .out_cables = 0x0001,
1336 USB_DEVICE(0x0582, 0x008b),
1338 .vendor_name =
"EDIROL",
1339 .product_name =
"PC-50",
1343 .out_cables = 0x0001,
1350 USB_DEVICE(0x0582, 0x0096),
1352 .vendor_name =
"EDIROL",
1353 .product_name =
"UA-1EX",
1372 USB_DEVICE(0x0582, 0x009a),
1374 .vendor_name =
"EDIROL",
1375 .product_name =
"UM-3EX",
1379 .out_cables = 0x000f,
1389 USB_DEVICE(0x0582, 0x00a3),
1391 .vendor_name =
"EDIROL",
1392 .product_name =
"UA-4FX",
1416 USB_DEVICE(0x582, 0x00a6),
1418 .vendor_name =
"Roland",
1419 .product_name =
"Juno-G",
1423 .out_cables = 0x0001,
1430 USB_DEVICE(0x0582, 0x00ad),
1432 .vendor_name =
"Roland",
1433 .product_name =
"SH-201",
1449 .out_cables = 0x0001,
1461 USB_DEVICE(0x0582, 0x00c2),
1463 .vendor_name =
"Roland",
1464 .product_name =
"SonicCell",
1480 .out_cables = 0x0001,
1498 USB_DEVICE(0x0582, 0x00c4),
1515 .out_cables = 0x0001,
1527 USB_DEVICE(0x0582, 0x00da),
1544 .out_cables = 0x0001,
1561 .vendor_name =
"EDIROL",
1562 .product_name =
"UA-25EX",
1615 .out_cables = 0x0001,
1630 USB_DEVICE(0x0582, 0x0109),
1664 .out_cables = 0x0003,
1671 USB_DEVICE(0x0582, 0x0111),
1673 .vendor_name =
"Roland",
1674 .product_name =
"GAIA",
1690 .out_cables = 0x0003,
1701 USB_DEVICE(0x0582, 0x0113),
1720 .out_cables = 0x0001,
1731 USB_DEVICE(0x0582, 0x0127),
1758 USB_DEVICE(0x0582, 0x012a),
1765 .out_cables = 0x0001,
1771 USB_DEVICE(0x0582, 0x011e),
1790 .out_cables = 0x0001,
1801 USB_DEVICE(0x0582, 0x0130),
1824 .out_cables = 0x0001,
1835 USB_DEVICE(0x0582, 0x014d),
1854 .out_cables = 0x0001,
1875 .vendor_name =
"Hercules",
1876 .product_name =
"DJ Console (WE)",
1880 .out_cables = 0x0001,
1890 .vendor_name =
"M-Audio",
1891 .product_name =
"MidiSport 2x2",
1895 .out_cables = 0x0003,
1903 .vendor_name =
"M-Audio",
1904 .product_name =
"MidiSport 1x1",
1908 .out_cables = 0x0001,
1916 .vendor_name =
"M-Audio",
1917 .product_name =
"Keystation",
1921 .out_cables = 0x0001,
1929 .vendor_name =
"M-Audio",
1930 .product_name =
"MidiSport 4x4",
1934 .out_cables = 0x000f,
1945 USB_DEVICE_VER(0x0763, 0x1031, 0x0100, 0x0109),
1947 .vendor_name =
"M-Audio",
1948 .product_name =
"MidiSport 8x8",
1952 .out_cables = 0x01ff,
1960 .vendor_name =
"M-Audio",
1961 .product_name =
"MidiSport 8x8",
1965 .out_cables = 0x01ff,
1973 .vendor_name =
"M-Audio",
1974 .product_name =
"MidiSport 2x4",
1978 .out_cables = 0x000f,
1986 .vendor_name =
"M-Audio",
1987 .product_name =
"Quattro",
2037 .out_cables = 0x0001,
2050 .vendor_name =
"M-Audio",
2051 .product_name =
"AudioPhile",
2055 .out_cables = 0x0001,
2063 .vendor_name =
"M-Audio",
2064 .product_name =
"Ozone",
2068 .out_cables = 0x0001,
2076 .vendor_name =
"M-Audio",
2077 .product_name =
"OmniStudio",
2121 .out_cables = 0x0001,
2132 USB_DEVICE(0x0763, 0x2019),
2155 .out_cables = 0x0001,
2196 .rate_table = (
unsigned int[]) {
2197 44100, 48000, 88200, 96000
2220 .rate_table = (
unsigned int[]) {
2221 44100, 48000, 88200, 96000
2263 .rate_table = (
unsigned int[]) {
2264 44100, 48000, 88200, 96000
2287 .rate_table = (
unsigned int[]) {
2288 44100, 48000, 88200, 96000
2302 USB_DEVICE(0x07cf, 0x6801),
2304 .vendor_name =
"Casio",
2305 .product_name =
"PL-40R",
2312 USB_DEVICE(0x07cf, 0x6802),
2314 .vendor_name =
"Casio",
2315 .product_name =
"Keyboard",
2328 .idProduct = 0x0001,
2329 .bDeviceSubClass = 2,
2331 .vendor_name =
"MOTU",
2332 .product_name =
"Fastlane",
2353 USB_DEVICE(0x086a, 0x0001),
2355 .vendor_name =
"Emagic",
2360 .out_cables = 0x80ff,
2366 USB_DEVICE(0x086a, 0x0002),
2368 .vendor_name =
"Emagic",
2373 .out_cables = 0x80ff,
2379 USB_DEVICE(0x086a, 0x0003),
2381 .vendor_name =
"Emagic",
2386 .out_cables = 0x800f,
2396 .vendor_name =
"KORG, Inc.",
2406 .vendor_name =
"KORG, Inc.",
2415 USB_DEVICE(0x09e8, 0x0062),
2417 .vendor_name =
"AKAI",
2418 .product_name =
"MPD16",
2428 .vendor_name =
"TerraTec",
2429 .product_name =
"PHASE 26",
2437 .vendor_name =
"TerraTec",
2438 .product_name =
"PHASE 26",
2446 .vendor_name =
"TerraTec",
2447 .product_name =
"PHASE 26",
2453 USB_DEVICE(0x0ccd, 0x0028),
2455 .vendor_name =
"TerraTec",
2456 .product_name =
"Aureon5.1MkII",
2461 USB_DEVICE(0x0ccd, 0x0035),
2463 .vendor_name =
"Miditech",
2464 .product_name =
"Play'n Roll",
2472 USB_DEVICE(0x103d, 0x0100),
2474 .vendor_name =
"Stanton",
2475 .product_name =
"ScratchAmp",
2480 USB_DEVICE(0x103d, 0x0101),
2482 .vendor_name =
"Stanton",
2483 .product_name =
"ScratchAmp",
2492 .vendor_name =
"Novation",
2493 .product_name =
"ReMOTE Audio/XStation",
2501 .vendor_name =
"Novation",
2502 .product_name =
"Speedio",
2508 USB_DEVICE(0x1235, 0x000e),
2519 .vendor_name =
"Novation",
2520 .product_name =
"ReMOTE25",
2538 .out_cables = 0x0003,
2556 USB_DEVICE(0x13e5, 0x0001),
2558 .vendor_name =
"Rane",
2559 .product_name =
"SL-1",
2567 .match_flags = USB_DEVICE_ID_MATCH_DEVICE,
2569 .idProduct = 0x1000,
2573 .match_flags = USB_DEVICE_ID_MATCH_DEVICE,
2575 .idProduct = 0x1010,
2579 .match_flags = USB_DEVICE_ID_MATCH_DEVICE,
2581 .idProduct = 0x1020,
2586 USB_DEVICE(0x1f38, 0x0001),
2592 USB_DEVICE(0x4752, 0x0011),
2594 .vendor_name =
"Miditech",
2595 .product_name =
"Midistart-2",
2604 USB_DEVICE(0x7104, 0x2202),
2614 .match_flags = USB_DEVICE_ID_MATCH_DEVICE |
2620 .vendor_name =
"Hauppauge",
2621 .product_name =
"HVR-950Q",
2628 .match_flags = USB_DEVICE_ID_MATCH_DEVICE |
2634 .vendor_name =
"Hauppauge",
2635 .product_name =
"HVR-850",
2642 .match_flags = USB_DEVICE_ID_MATCH_DEVICE |
2648 .vendor_name =
"Hauppauge",
2649 .product_name =
"HVR-950Q",
2656 .match_flags = USB_DEVICE_ID_MATCH_DEVICE |
2662 .vendor_name =
"Hauppauge",
2663 .product_name =
"HVR-950Q",
2670 .match_flags = USB_DEVICE_ID_MATCH_DEVICE |
2676 .vendor_name =
"Hauppauge",
2677 .product_name =
"HVR-950Q",
2684 .match_flags = USB_DEVICE_ID_MATCH_DEVICE |
2690 .vendor_name =
"Hauppauge",
2691 .product_name =
"HVR-950Q",
2698 .match_flags = USB_DEVICE_ID_MATCH_DEVICE |
2704 .vendor_name =
"Hauppauge",
2705 .product_name =
"HVR-950Q",
2712 .match_flags = USB_DEVICE_ID_MATCH_DEVICE |
2718 .vendor_name =
"Hauppauge",
2719 .product_name =
"HVR-950Q",
2726 .match_flags = USB_DEVICE_ID_MATCH_DEVICE |
2732 .vendor_name =
"Hauppauge",
2733 .product_name =
"HVR-950Q",
2742 USB_DEVICE(0x0dba, 0x1000),
2744 .vendor_name =
"Digidesign",
2745 .product_name =
"MBox",
2765 .maxpacksize = 0x130,
2771 .rate_table = (
unsigned int[]) {
2785 .match_flags = USB_DEVICE_ID_MATCH_DEVICE,
2787 .idProduct = 0x8021,
2790 .vendor_name =
"TASCAM",
2791 .product_name =
"US122 MKII",
2818 .rate_table = (
unsigned int[]) {
2819 44100, 48000, 88200, 96000
2832 USB_DEVICE(0x045e, 0x0283),
2835 .vendor_name =
"Microsoft",
2836 .product_name =
"XboxLive Headset/Xbox Communicator",
2898 #undef USB_DEVICE_VENDOR_SPEC