aboutsummaryrefslogtreecommitdiffstats
path: root/sound/usb/usbmidi.c
diff options
context:
space:
mode:
Diffstat (limited to 'sound/usb/usbmidi.c')
-rw-r--r--sound/usb/usbmidi.c21
1 files changed, 12 insertions, 9 deletions
diff --git a/sound/usb/usbmidi.c b/sound/usb/usbmidi.c
index bee70068dce0..5778a9b725ec 100644
--- a/sound/usb/usbmidi.c
+++ b/sound/usb/usbmidi.c
@@ -524,16 +524,16 @@ static struct usb_protocol_ops snd_usbmidi_novation_ops = {
524}; 524};
525 525
526/* 526/*
527 * Mark of the Unicorn USB MIDI protocol: raw MIDI. 527 * "raw" protocol: used by the MOTU FastLane.
528 */ 528 */
529 529
530static void snd_usbmidi_motu_input(snd_usb_midi_in_endpoint_t* ep, 530static void snd_usbmidi_raw_input(snd_usb_midi_in_endpoint_t* ep,
531 uint8_t* buffer, int buffer_length) 531 uint8_t* buffer, int buffer_length)
532{ 532{
533 snd_usbmidi_input_data(ep, 0, buffer, buffer_length); 533 snd_usbmidi_input_data(ep, 0, buffer, buffer_length);
534} 534}
535 535
536static void snd_usbmidi_motu_output(snd_usb_midi_out_endpoint_t* ep) 536static void snd_usbmidi_raw_output(snd_usb_midi_out_endpoint_t* ep)
537{ 537{
538 int count; 538 int count;
539 539
@@ -549,9 +549,9 @@ static void snd_usbmidi_motu_output(snd_usb_midi_out_endpoint_t* ep)
549 ep->urb->transfer_buffer_length = count; 549 ep->urb->transfer_buffer_length = count;
550} 550}
551 551
552static struct usb_protocol_ops snd_usbmidi_motu_ops = { 552static struct usb_protocol_ops snd_usbmidi_raw_ops = {
553 .input = snd_usbmidi_motu_input, 553 .input = snd_usbmidi_raw_input,
554 .output = snd_usbmidi_motu_output, 554 .output = snd_usbmidi_raw_output,
555}; 555};
556 556
557/* 557/*
@@ -1505,8 +1505,8 @@ int snd_usb_create_midi_interface(snd_usb_audio_t* chip,
1505 umidi->usb_protocol_ops = &snd_usbmidi_novation_ops; 1505 umidi->usb_protocol_ops = &snd_usbmidi_novation_ops;
1506 err = snd_usbmidi_detect_per_port_endpoints(umidi, endpoints); 1506 err = snd_usbmidi_detect_per_port_endpoints(umidi, endpoints);
1507 break; 1507 break;
1508 case QUIRK_MIDI_MOTU: 1508 case QUIRK_MIDI_RAW:
1509 umidi->usb_protocol_ops = &snd_usbmidi_motu_ops; 1509 umidi->usb_protocol_ops = &snd_usbmidi_raw_ops;
1510 err = snd_usbmidi_detect_per_port_endpoints(umidi, endpoints); 1510 err = snd_usbmidi_detect_per_port_endpoints(umidi, endpoints);
1511 break; 1511 break;
1512 case QUIRK_MIDI_EMAGIC: 1512 case QUIRK_MIDI_EMAGIC:
@@ -1515,6 +1515,9 @@ int snd_usb_create_midi_interface(snd_usb_audio_t* chip,
1515 sizeof(snd_usb_midi_endpoint_info_t)); 1515 sizeof(snd_usb_midi_endpoint_info_t));
1516 err = snd_usbmidi_detect_endpoints(umidi, &endpoints[0], 1); 1516 err = snd_usbmidi_detect_endpoints(umidi, &endpoints[0], 1);
1517 break; 1517 break;
1518 case QUIRK_MIDI_MIDITECH:
1519 err = snd_usbmidi_detect_per_port_endpoints(umidi, endpoints);
1520 break;
1518 default: 1521 default:
1519 snd_printd(KERN_ERR "invalid quirk type %d\n", quirk->type); 1522 snd_printd(KERN_ERR "invalid quirk type %d\n", quirk->type);
1520 err = -ENXIO; 1523 err = -ENXIO;