On Wed, 3 Apr 2002, Peter Enderborg wrote:

> I have tryed to get some answer from Jaroslav about subdevices on midi.
> Im trying to write a driver for midisport 8x8/s and that have 9 midi
> ports. On my hack to figure out the protocol I use virmidi to handle the
> interface to alsa. But virmidi only have four subdevices per device. I

You can set up to eight virmidi devices (snd_midi_devs parameter controls
this count). On rawmidi side, there is 16 rawmidi substreams (subdevices)
per one virmidi device. These subdevices are used for event merging 
(write) and coping (read). On sequencer side, there is one client and 
one port connected to virmidi device.

> need to see the driver for a midi interface that using all the 16
> subdevices. Since I don't get answer from Jaroslav i guess he don't have
> the time or my question is stupid. But can someone help me out? Where
> should I look?

There are two ways:

1) we can add a new mode to virmidi code which suppress copying and 
   merging and connects more sequencer ports per a sequencer client
   to rawmidi subdevices to handle such devices
2) without any change - simply use more than one virmidi card and connect 
   your code to more clients:

        modprobe snd-virmidi snd_index=1,2 snd_enable=1,1 snd_midi_devs=8,8

        (use index values as you wish)

        In this case, you should have available this routing table:

        sequencer (client:port)         rawmidi (card:device:subdevice)
        72:0                            1:0:any
        73:0                            1:1:any
        ....                            ....
        79:0                            1:7:any
        80:0                            2:0:any
        ....                            ...
        87:0                            2:7:any


                                                Jaroslav

-----
Jaroslav Kysela <[EMAIL PROTECTED]>
Linux Kernel Sound Maintainer
ALSA Project  http://www.alsa-project.org
SuSE Linux    http://www.suse.com


_______________________________________________
Alsa-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/alsa-devel

Reply via email to