ALSA: oxfw: fix to handle correct stream for PCM playback
[sfrench/cifs-2.6.git] / Documentation / serial / rocket.rst
1 ================================================
2 Comtrol(tm) RocketPort(R)/RocketModem(TM) Series
3 ================================================
4
5 Device Driver for the Linux Operating System
6 ============================================
7
8 Product overview
9 ----------------
10
11 This driver provides a loadable kernel driver for the Comtrol RocketPort
12 and RocketModem PCI boards. These boards provide, 2, 4, 8, 16, or 32
13 high-speed serial ports or modems.  This driver supports up to a combination
14 of four RocketPort or RocketModems boards in one machine simultaneously.
15 This file assumes that you are using the RocketPort driver which is
16 integrated into the kernel sources.
17
18 The driver can also be installed as an external module using the usual
19 "make;make install" routine.  This external module driver, obtainable
20 from the Comtrol website listed below, is useful for updating the driver
21 or installing it into kernels which do not have the driver configured
22 into them.  Installations instructions for the external module
23 are in the included README and HW_INSTALL files.
24
25 RocketPort ISA and RocketModem II PCI boards currently are only supported by
26 this driver in module form.
27
28 The RocketPort ISA board requires I/O ports to be configured by the DIP
29 switches on the board.  See the section "ISA Rocketport Boards" below for
30 information on how to set the DIP switches.
31
32 You pass the I/O port to the driver using the following module parameters:
33
34 board1:
35         I/O port for the first ISA board
36 board2:
37         I/O port for the second ISA board
38 board3:
39         I/O port for the third ISA board
40 board4:
41         I/O port for the fourth ISA board
42
43 There is a set of utilities and scripts provided with the external driver
44 (downloadable from http://www.comtrol.com) that ease the configuration and
45 setup of the ISA cards.
46
47 The RocketModem II PCI boards require firmware to be loaded into the card
48 before it will function.  The driver has only been tested as a module for this
49 board.
50
51 Installation Procedures
52 -----------------------
53
54 RocketPort/RocketModem PCI cards require no driver configuration, they are
55 automatically detected and configured.
56
57 The RocketPort driver can be installed as a module (recommended) or built
58 into the kernel. This is selected, as for other drivers, through the `make config`
59 command from the root of the Linux source tree during the kernel build process.
60
61 The RocketPort/RocketModem serial ports installed by this driver are assigned
62 device major number 46, and will be named /dev/ttyRx, where x is the port number
63 starting at zero (ex. /dev/ttyR0, /devttyR1, ...).  If you have multiple cards
64 installed in the system, the mapping of port names to serial ports is displayed
65 in the system log at /var/log/messages.
66
67 If installed as a module, the module must be loaded.  This can be done
68 manually by entering "modprobe rocket".  To have the module loaded automatically
69 upon system boot, edit a `/etc/modprobe.d/*.conf` file and add the line
70 "alias char-major-46 rocket".
71
72 In order to use the ports, their device names (nodes) must be created with mknod.
73 This is only required once, the system will retain the names once created.  To
74 create the RocketPort/RocketModem device names, use the command
75 "mknod /dev/ttyRx c 46 x" where x is the port number starting at zero.
76
77 For example::
78
79         > mknod /dev/ttyR0 c 46 0
80         > mknod /dev/ttyR1 c 46 1
81         > mknod /dev/ttyR2 c 46 2
82
83 The Linux script MAKEDEV will create the first 16 ttyRx device names (nodes)
84 for you::
85
86         >/dev/MAKEDEV ttyR
87
88 ISA Rocketport Boards
89 ---------------------
90
91 You must assign and configure the I/O addresses used by the ISA Rocketport
92 card before installing and using it.  This is done by setting a set of DIP
93 switches on the Rocketport board.
94
95
96 Setting the I/O address
97 -----------------------
98
99 Before installing RocketPort(R) or RocketPort RA boards, you must find
100 a range of I/O addresses for it to use. The first RocketPort card
101 requires a 68-byte contiguous block of I/O addresses, starting at one
102 of the following: 0x100h, 0x140h, 0x180h, 0x200h, 0x240h, 0x280h,
103 0x300h, 0x340h, 0x380h.  This I/O address must be reflected in the DIP
104 switches of *all* of the Rocketport cards.
105
106 The second, third, and fourth RocketPort cards require a 64-byte
107 contiguous block of I/O addresses, starting at one of the following
108 I/O addresses: 0x100h, 0x140h, 0x180h, 0x1C0h, 0x200h, 0x240h, 0x280h,
109 0x2C0h, 0x300h, 0x340h, 0x380h, 0x3C0h.  The I/O address used by the
110 second, third, and fourth Rocketport cards (if present) are set via
111 software control.  The DIP switch settings for the I/O address must be
112 set to the value of the first Rocketport cards.
113
114 In order to distinguish each of the card from the others, each card
115 must have a unique board ID set on the dip switches.  The first
116 Rocketport board must be set with the DIP switches corresponding to
117 the first board, the second board must be set with the DIP switches
118 corresponding to the second board, etc.  IMPORTANT: The board ID is
119 the only place where the DIP switch settings should differ between the
120 various Rocketport boards in a system.
121
122 The I/O address range used by any of the RocketPort cards must not
123 conflict with any other cards in the system, including other
124 RocketPort cards.  Below, you will find a list of commonly used I/O
125 address ranges which may be in use by other devices in your system.
126 On a Linux system, "cat /proc/ioports" will also be helpful in
127 identifying what I/O addresses are being used by devices on your
128 system.
129
130 Remember, the FIRST RocketPort uses 68 I/O addresses.  So, if you set it
131 for 0x100, it will occupy 0x100 to 0x143.  This would mean that you
132 CAN NOT set the second, third or fourth board for address 0x140 since
133 the first 4 bytes of that range are used by the first board.  You would
134 need to set the second, third, or fourth board to one of the next available
135 blocks such as 0x180.
136
137 RocketPort and RocketPort RA SW1 Settings::
138
139             +-------------------------------+
140             | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 |
141             +-------+-------+---------------+
142             | Unused| Card  | I/O Port Block|
143             +-------------------------------+
144
145   DIP Switches                             DIP Switches
146   7    8                                   6    5
147   ===================                      ===================
148   On   On   UNUSED, MUST BE ON.            On   On   First Card    <==== Default
149                                            On   Off  Second Card
150                                            Off  On   Third Card
151                                            Off  Off  Fourth Card
152
153   DIP Switches         I/O Address Range
154   4    3    2    1     Used by the First Card
155   =====================================
156   On   Off  On   Off   100-143
157   On   Off  Off  On    140-183
158   On   Off  Off  Off   180-1C3       <==== Default
159   Off  On   On   Off   200-243
160   Off  On   Off  On    240-283
161   Off  On   Off  Off   280-2C3
162   Off  Off  On   Off   300-343
163   Off  Off  Off  On    340-383
164   Off  Off  Off  Off   380-3C3
165
166 Reporting Bugs
167 --------------
168
169 For technical support, please provide the following
170 information: Driver version, kernel release, distribution of
171 kernel, and type of board you are using. Error messages and log
172 printouts port configuration details are especially helpful.
173
174 USA:
175     :Phone: (612) 494-4100
176     :FAX: (612) 494-4199
177     :email: support@comtrol.com
178
179 Comtrol Europe:
180     :Phone: +44 (0) 1 869 323-220
181     :FAX: +44 (0) 1 869 323-211
182     :email: support@comtrol.co.uk
183
184 Web:    http://www.comtrol.com
185 FTP:    ftp.comtrol.com