diff options
Diffstat (limited to 'sound/usb')
-rw-r--r-- | sound/usb/usbaudio.c | 8 | ||||
-rw-r--r-- | sound/usb/usbmixer_maps.c | 10 | ||||
-rw-r--r-- | sound/usb/usbquirks.h | 50 |
3 files changed, 63 insertions, 5 deletions
diff --git a/sound/usb/usbaudio.c b/sound/usb/usbaudio.c index d5ae2055b896..2ead878bcb8f 100644 --- a/sound/usb/usbaudio.c +++ b/sound/usb/usbaudio.c | |||
@@ -1444,9 +1444,9 @@ static snd_pcm_hardware_t snd_usb_playback = | |||
1444 | SNDRV_PCM_INFO_BATCH | | 1444 | SNDRV_PCM_INFO_BATCH | |
1445 | SNDRV_PCM_INFO_INTERLEAVED | | 1445 | SNDRV_PCM_INFO_INTERLEAVED | |
1446 | SNDRV_PCM_INFO_BLOCK_TRANSFER, | 1446 | SNDRV_PCM_INFO_BLOCK_TRANSFER, |
1447 | .buffer_bytes_max = (256*1024), | 1447 | .buffer_bytes_max = 1024 * 1024, |
1448 | .period_bytes_min = 64, | 1448 | .period_bytes_min = 64, |
1449 | .period_bytes_max = (128*1024), | 1449 | .period_bytes_max = 512 * 1024, |
1450 | .periods_min = 2, | 1450 | .periods_min = 2, |
1451 | .periods_max = 1024, | 1451 | .periods_max = 1024, |
1452 | }; | 1452 | }; |
@@ -1458,9 +1458,9 @@ static snd_pcm_hardware_t snd_usb_capture = | |||
1458 | SNDRV_PCM_INFO_BATCH | | 1458 | SNDRV_PCM_INFO_BATCH | |
1459 | SNDRV_PCM_INFO_INTERLEAVED | | 1459 | SNDRV_PCM_INFO_INTERLEAVED | |
1460 | SNDRV_PCM_INFO_BLOCK_TRANSFER, | 1460 | SNDRV_PCM_INFO_BLOCK_TRANSFER, |
1461 | .buffer_bytes_max = (256*1024), | 1461 | .buffer_bytes_max = 1024 * 1024, |
1462 | .period_bytes_min = 64, | 1462 | .period_bytes_min = 64, |
1463 | .period_bytes_max = (128*1024), | 1463 | .period_bytes_max = 512 * 1024, |
1464 | .periods_min = 2, | 1464 | .periods_min = 2, |
1465 | .periods_max = 1024, | 1465 | .periods_max = 1024, |
1466 | }; | 1466 | }; |
diff --git a/sound/usb/usbmixer_maps.c b/sound/usb/usbmixer_maps.c index f05500b05ec0..c1264434e50a 100644 --- a/sound/usb/usbmixer_maps.c +++ b/sound/usb/usbmixer_maps.c | |||
@@ -238,6 +238,16 @@ static struct usbmix_ctl_map usbmix_ctl_maps[] = { | |||
238 | .selector_map = audigy2nx_selectors, | 238 | .selector_map = audigy2nx_selectors, |
239 | }, | 239 | }, |
240 | { | 240 | { |
241 | /* Hercules DJ Console (Windows Edition) */ | ||
242 | .id = USB_ID(0x06f8, 0xb000), | ||
243 | .ignore_ctl_error = 1, | ||
244 | }, | ||
245 | { | ||
246 | /* Hercules DJ Console (Macintosh Edition) */ | ||
247 | .id = USB_ID(0x06f8, 0xd002), | ||
248 | .ignore_ctl_error = 1, | ||
249 | }, | ||
250 | { | ||
241 | .id = USB_ID(0x08bb, 0x2702), | 251 | .id = USB_ID(0x08bb, 0x2702), |
242 | .map = linex_map, | 252 | .map = linex_map, |
243 | .ignore_ctl_error = 1, | 253 | .ignore_ctl_error = 1, |
diff --git a/sound/usb/usbquirks.h b/sound/usb/usbquirks.h index f74e652a1e51..948759da6563 100644 --- a/sound/usb/usbquirks.h +++ b/sound/usb/usbquirks.h | |||
@@ -117,6 +117,10 @@ YAMAHA_DEVICE(0x103a, NULL), | |||
117 | YAMAHA_DEVICE(0x103b, NULL), | 117 | YAMAHA_DEVICE(0x103b, NULL), |
118 | YAMAHA_DEVICE(0x103c, NULL), | 118 | YAMAHA_DEVICE(0x103c, NULL), |
119 | YAMAHA_DEVICE(0x103d, NULL), | 119 | YAMAHA_DEVICE(0x103d, NULL), |
120 | YAMAHA_DEVICE(0x103e, NULL), | ||
121 | YAMAHA_DEVICE(0x103f, NULL), | ||
122 | YAMAHA_DEVICE(0x1040, NULL), | ||
123 | YAMAHA_DEVICE(0x1041, NULL), | ||
120 | YAMAHA_DEVICE(0x2000, "DGP-7"), | 124 | YAMAHA_DEVICE(0x2000, "DGP-7"), |
121 | YAMAHA_DEVICE(0x2001, "DGP-5"), | 125 | YAMAHA_DEVICE(0x2001, "DGP-5"), |
122 | YAMAHA_DEVICE(0x2002, NULL), | 126 | YAMAHA_DEVICE(0x2002, NULL), |
@@ -1010,6 +1014,40 @@ YAMAHA_DEVICE(0x7010, "UB99"), | |||
1010 | } | 1014 | } |
1011 | } | 1015 | } |
1012 | }, | 1016 | }, |
1017 | { | ||
1018 | USB_DEVICE_VENDOR_SPEC(0x0582, 0x007a), | ||
1019 | .driver_info = (unsigned long) & (const snd_usb_audio_quirk_t) { | ||
1020 | .vendor_name = "Roland", | ||
1021 | /* RD-700SX, RD-300SX */ | ||
1022 | .ifnum = 0, | ||
1023 | .type = QUIRK_MIDI_FIXED_ENDPOINT, | ||
1024 | .data = & (const snd_usb_midi_endpoint_info_t) { | ||
1025 | .out_cables = 0x0003, | ||
1026 | .in_cables = 0x0003 | ||
1027 | } | ||
1028 | } | ||
1029 | }, | ||
1030 | |||
1031 | /* Guillemot devices */ | ||
1032 | { | ||
1033 | /* | ||
1034 | * This is for the "Windows Edition" where the external MIDI ports are | ||
1035 | * the only MIDI ports; the control data is reported through HID | ||
1036 | * interfaces. The "Macintosh Edition" has ID 0xd002 and uses standard | ||
1037 | * compliant USB MIDI ports for external MIDI and controls. | ||
1038 | */ | ||
1039 | USB_DEVICE_VENDOR_SPEC(0x06f8, 0xb000), | ||
1040 | .driver_info = (unsigned long) & (const snd_usb_audio_quirk_t) { | ||
1041 | .vendor_name = "Hercules", | ||
1042 | .product_name = "DJ Console (WE)", | ||
1043 | .ifnum = 4, | ||
1044 | .type = QUIRK_MIDI_FIXED_ENDPOINT, | ||
1045 | .data = & (const snd_usb_midi_endpoint_info_t) { | ||
1046 | .out_cables = 0x0001, | ||
1047 | .in_cables = 0x0001 | ||
1048 | } | ||
1049 | } | ||
1050 | }, | ||
1013 | 1051 | ||
1014 | /* Midiman/M-Audio devices */ | 1052 | /* Midiman/M-Audio devices */ |
1015 | { | 1053 | { |
@@ -1339,10 +1377,20 @@ YAMAHA_DEVICE(0x7010, "UB99"), | |||
1339 | } | 1377 | } |
1340 | }, | 1378 | }, |
1341 | 1379 | ||
1380 | /* TerraTec devices */ | ||
1381 | { | ||
1382 | USB_DEVICE_VENDOR_SPEC(0x0ccd, 0x0012), | ||
1383 | .driver_info = (unsigned long) & (const snd_usb_audio_quirk_t) { | ||
1384 | .vendor_name = "TerraTec", | ||
1385 | .product_name = "PHASE 26", | ||
1386 | .ifnum = 3, | ||
1387 | .type = QUIRK_MIDI_STANDARD_INTERFACE | ||
1388 | } | ||
1389 | }, | ||
1342 | { | 1390 | { |
1343 | USB_DEVICE_VENDOR_SPEC(0x0ccd, 0x0013), | 1391 | USB_DEVICE_VENDOR_SPEC(0x0ccd, 0x0013), |
1344 | .driver_info = (unsigned long) & (const snd_usb_audio_quirk_t) { | 1392 | .driver_info = (unsigned long) & (const snd_usb_audio_quirk_t) { |
1345 | .vendor_name = "Terratec", | 1393 | .vendor_name = "TerraTec", |
1346 | .product_name = "PHASE 26", | 1394 | .product_name = "PHASE 26", |
1347 | .ifnum = 3, | 1395 | .ifnum = 3, |
1348 | .type = QUIRK_MIDI_STANDARD_INTERFACE | 1396 | .type = QUIRK_MIDI_STANDARD_INTERFACE |