diff options
Diffstat (limited to 'sound/usb/midi.c')
-rw-r--r-- | sound/usb/midi.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/sound/usb/midi.c b/sound/usb/midi.c index 156cd0716c42..25bce7e5b1af 100644 --- a/sound/usb/midi.c +++ b/sound/usb/midi.c | |||
@@ -784,7 +784,7 @@ static struct usb_protocol_ops snd_usbmidi_novation_ops = { | |||
784 | }; | 784 | }; |
785 | 785 | ||
786 | /* | 786 | /* |
787 | * "raw" protocol: used by the MOTU FastLane. | 787 | * "raw" protocol: just move raw MIDI bytes from/to the endpoint |
788 | */ | 788 | */ |
789 | 789 | ||
790 | static void snd_usbmidi_raw_input(struct snd_usb_midi_in_endpoint* ep, | 790 | static void snd_usbmidi_raw_input(struct snd_usb_midi_in_endpoint* ep, |
@@ -2122,7 +2122,7 @@ int snd_usbmidi_create(struct snd_card *card, | |||
2122 | umidi->usb_protocol_ops = &snd_usbmidi_novation_ops; | 2122 | umidi->usb_protocol_ops = &snd_usbmidi_novation_ops; |
2123 | err = snd_usbmidi_detect_per_port_endpoints(umidi, endpoints); | 2123 | err = snd_usbmidi_detect_per_port_endpoints(umidi, endpoints); |
2124 | break; | 2124 | break; |
2125 | case QUIRK_MIDI_FASTLANE: | 2125 | case QUIRK_MIDI_RAW_BYTES: |
2126 | umidi->usb_protocol_ops = &snd_usbmidi_raw_ops; | 2126 | umidi->usb_protocol_ops = &snd_usbmidi_raw_ops; |
2127 | /* | 2127 | /* |
2128 | * Interface 1 contains isochronous endpoints, but with the same | 2128 | * Interface 1 contains isochronous endpoints, but with the same |
@@ -2133,7 +2133,8 @@ int snd_usbmidi_create(struct snd_card *card, | |||
2133 | * interface 0, so we have to make sure that the USB core looks | 2133 | * interface 0, so we have to make sure that the USB core looks |
2134 | * again at interface 0 by calling usb_set_interface() on it. | 2134 | * again at interface 0 by calling usb_set_interface() on it. |
2135 | */ | 2135 | */ |
2136 | usb_set_interface(umidi->dev, 0, 0); | 2136 | if (umidi->usb_id == USB_ID(0x07fd, 0x0001)) /* MOTU Fastlane */ |
2137 | usb_set_interface(umidi->dev, 0, 0); | ||
2137 | err = snd_usbmidi_detect_per_port_endpoints(umidi, endpoints); | 2138 | err = snd_usbmidi_detect_per_port_endpoints(umidi, endpoints); |
2138 | break; | 2139 | break; |
2139 | case QUIRK_MIDI_EMAGIC: | 2140 | case QUIRK_MIDI_EMAGIC: |