~ubuntu-branches/ubuntu/precise/linux-lowlatency/precise

« back to all changes in this revision

Viewing changes to Documentation/sound/alsa/serial-u16550.txt

  • Committer: Package Import Robot
  • Author(s): Alessio Igor Bogani
  • Date: 2011-10-26 11:13:05 UTC
  • Revision ID: package-import@ubuntu.com-20111026111305-tz023xykf0i6eosh
Tags: upstream-3.2.0
ImportĀ upstreamĀ versionĀ 3.2.0

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
 
 
2
                        Serial UART 16450/16550 MIDI driver
 
3
                        ===================================
 
4
 
 
5
The adaptor module parameter allows you to select either:
 
6
 
 
7
  0 - Roland Soundcanvas support (default)
 
8
  1 - Midiator MS-124T support (1)
 
9
  2 - Midiator MS-124W S/A mode (2)
 
10
  3 - MS-124W M/B mode support (3)
 
11
  4 - Generic device with multiple input support (4)
 
12
 
 
13
For the Midiator MS-124W, you must set the physical M-S and A-B
 
14
switches on the Midiator to match the driver mode you select.
 
15
 
 
16
In Roland Soundcanvas mode, multiple ALSA raw MIDI substreams are supported
 
17
(midiCnD0-midiCnD15).  Whenever you write to a different substream, the driver
 
18
sends the nonstandard MIDI command sequence F5 NN, where NN is the substream
 
19
number plus 1.  Roland modules use this command to switch between different
 
20
"parts", so this feature lets you treat each part as a distinct raw MIDI
 
21
substream. The driver provides no way to send F5 00 (no selection) or to not
 
22
send the F5 NN command sequence at all; perhaps it ought to.
 
23
 
 
24
Usage example for simple serial converter:
 
25
 
 
26
        /sbin/setserial /dev/ttyS0 uart none
 
27
        /sbin/modprobe snd-serial-u16550 port=0x3f8 irq=4 speed=115200
 
28
 
 
29
Usage example for Roland SoundCanvas with 4 MIDI ports:
 
30
 
 
31
        /sbin/setserial /dev/ttyS0 uart none
 
32
        /sbin/modprobe snd-serial-u16550 port=0x3f8 irq=4 outs=4
 
33
 
 
34
In MS-124T mode, one raw MIDI substream is supported (midiCnD0); the outs
 
35
module parameter is automatically set to 1. The driver sends the same data to
 
36
all four MIDI Out connectors.  Set the A-B switch and the speed module
 
37
parameter to match (A=19200, B=9600).
 
38
 
 
39
Usage example for MS-124T, with A-B switch in A position:
 
40
 
 
41
        /sbin/setserial /dev/ttyS0 uart none
 
42
        /sbin/modprobe snd-serial-u16550 port=0x3f8 irq=4 adaptor=1 \
 
43
                        speed=19200
 
44
 
 
45
In MS-124W S/A mode, one raw MIDI substream is supported (midiCnD0);
 
46
the outs module parameter is automatically set to 1. The driver sends
 
47
the same data to all four MIDI Out connectors at full MIDI speed.
 
48
 
 
49
Usage example for S/A mode:
 
50
 
 
51
        /sbin/setserial /dev/ttyS0 uart none
 
52
        /sbin/modprobe snd-serial-u16550 port=0x3f8 irq=4 adaptor=2
 
53
 
 
54
In MS-124W M/B mode, the driver supports 16 ALSA raw MIDI substreams;
 
55
the outs module parameter is automatically set to 16.  The substream
 
56
number gives a bitmask of which MIDI Out connectors the data should be
 
57
sent to, with midiCnD1 sending to Out 1, midiCnD2 to Out 2, midiCnD4 to
 
58
Out 3, and midiCnD8 to Out 4.  Thus midiCnD15 sends the data to all 4 ports.
 
59
As a special case, midiCnD0 also sends to all ports, since it is not useful
 
60
to send the data to no ports.  M/B mode has extra overhead to select the MIDI
 
61
Out for each byte, so the aggregate data rate across all four MIDI Outs is
 
62
at most one byte every 520 us, as compared with the full MIDI data rate of
 
63
one byte every 320 us per port.
 
64
 
 
65
Usage example for M/B mode:
 
66
 
 
67
        /sbin/setserial /dev/ttyS0 uart none
 
68
        /sbin/modprobe snd-serial-u16550 port=0x3f8 irq=4 adaptor=3
 
69
 
 
70
The MS-124W hardware's M/A mode is currently not supported. This mode allows
 
71
the MIDI Outs to act independently at double the aggregate throughput of M/B,
 
72
but does not allow sending the same byte simultaneously to multiple MIDI Outs. 
 
73
The M/A protocol requires the driver to twiddle the modem control lines under
 
74
timing constraints, so it would be a bit more complicated to implement than
 
75
the other modes.
 
76
 
 
77
Midiator models other than MS-124W and MS-124T are currently not supported. 
 
78
Note that the suffix letter is significant; the MS-124 and MS-124B are not
 
79
compatible, nor are the other known models MS-101, MS-101B, MS-103, and MS-114.
 
80
I do have documentation (tim.mann@compaq.com) that partially covers these models,
 
81
but no units to experiment with.  The MS-124W support is tested with a real unit.
 
82
The MS-124T support is untested, but should work.
 
83
 
 
84
The Generic driver supports multiple input and output substreams over a single
 
85
serial port.  Similar to Roland Soundcanvas mode, F5 NN is used to select the
 
86
appropriate input or output stream (depending on the data direction).
 
87
Additionally, the CTS signal is used to regulate the data flow.  The number of
 
88
inputs is specified by the ins parameter.