aboutsummaryrefslogtreecommitdiffstats
path: root/sound/usb/usbmidi.c
diff options
context:
space:
mode:
authorSebastien Alaiwan <sebastien.alaiwan@gmail.com>2010-02-16 02:55:08 -0500
committerJaroslav Kysela <perex@perex.cz>2010-02-16 03:34:56 -0500
commitd39e82db73eb876c60d00f00219d767b3be30307 (patch)
tree6a6d0fdaae86bd4089e66578dd2bed19a6987d87 /sound/usb/usbmidi.c
parentc3a3e040f01457d2ea4f199f75ca205401001a3b (diff)
ALSA: USB MIDI support for Access Music VirusTI
Here's a patch that adds MIDI support through USB for one of the Access Music synths, the VirusTI. The synth uses standard USBMIDI protocol on its USB interface 3, although it does signal "vendor specific" class. A magic string has to be sent on interface 3 to enable the sending of MIDI from the synth (this string was found by sniffing usb communication of the Windows driver). This is all my patch does, and it works on my computer. Please note that the synth can also do standard usb audio I/O on its interfaces 2&3, which already works with the current snd-usb-audio driver, except for the audio input from the synth. I'm going to work on it when I have some time. Signed-off-by: Sebastien Alaiwan <sebastien.alaiwan@gmail.com> Signed-off-by: Clemens Ladisch <clemens@ladisch.de> (cosmetics, list terminator) Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Diffstat (limited to 'sound/usb/usbmidi.c')
-rw-r--r--sound/usb/usbmidi.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/sound/usb/usbmidi.c b/sound/usb/usbmidi.c
index 6e89b8368d9a..8f5bc1e8dabc 100644
--- a/sound/usb/usbmidi.c
+++ b/sound/usb/usbmidi.c
@@ -1407,6 +1407,12 @@ static struct port_info {
1407 EXTERNAL_PORT(0x086a, 0x0001, 8, "%s Broadcast"), 1407 EXTERNAL_PORT(0x086a, 0x0001, 8, "%s Broadcast"),
1408 EXTERNAL_PORT(0x086a, 0x0002, 8, "%s Broadcast"), 1408 EXTERNAL_PORT(0x086a, 0x0002, 8, "%s Broadcast"),
1409 EXTERNAL_PORT(0x086a, 0x0003, 4, "%s Broadcast"), 1409 EXTERNAL_PORT(0x086a, 0x0003, 4, "%s Broadcast"),
1410 /* Access Music Virus TI */
1411 EXTERNAL_PORT(0x133e, 0x0815, 0, "%s MIDI"),
1412 PORT_INFO(0x133e, 0x0815, 1, "%s Synth", 0,
1413 SNDRV_SEQ_PORT_TYPE_MIDI_GENERIC |
1414 SNDRV_SEQ_PORT_TYPE_HARDWARE |
1415 SNDRV_SEQ_PORT_TYPE_SYNTHESIZER),
1410}; 1416};
1411 1417
1412static struct port_info *find_port_info(struct snd_usb_midi* umidi, int number) 1418static struct port_info *find_port_info(struct snd_usb_midi* umidi, int number)