dma: rework config parsing
[dragonfly.git] / share / man / man4 / rp.4
blob09b9189e74acc726c8106465540daba9dcd6330a
1 .\" Copyright (c) 1995 Comtrol, Inc.
2 .\" All rights reserved.
3 .\"
4 .\" $FreeBSD: src/share/man/man4/rp.4,v 1.2.2.2 2003/06/10 21:01:38 ceri Exp $
5 .\" $DragonFly: src/share/man/man4/rp.4,v 1.2 2003/06/17 04:36:59 dillon Exp $
6 .Dd November 15, 1995
7 .Os
8 .Dt RP 4
9 .Sh NAME
10 .Nm rp
11 .Nd "driver for Comtrol RocketPort Intelligent Serial Port Cards"
12 .Sh SYNOPSIS
13 .Cd "device rp"
14 .Cd "device rp0 at isa? port 0x180"
15 .Sh DESCRIPTION
16 This driver provides a kernel device driver for the
17 .Tn RocketPort
18 and
19 .Tn RocketPort RA
20 serial boards.
21 These boards provide 8, 16, or 32 high-speed serial ports
22 while requiring only 68 bytes of I/O space for all 8, 16,
23 or 32 ports, and do not require an interrupt channel.
24 This driver supports up to four
25 .Tn RocketPort
27 .Tn RocketPort RA
28 boards in one machine simultaneously.
29 If you are using four 32 port
30 .Tn RocketPort
31 boards, you can put as many as 128 intelligent serial ports
32 on your system.
33 .Pp
34 The
35 .Nm
36 driver supports the following speeds: 50, 75, 110, 134, 150,
37 200, 300, 600, 1200, 1800, 2400, 4800, 9600, 19200, 38400, 7200,
38 14400, 57600, 76800, 115200, and 230400.
39 (You must use
40 .Xr termios 4 ,
41 rather than the old style ioctl interface to use non-traditional
42 speeds.)
43 .Pp
44 An open on the
45 .Nm
46 driver will block until carrier is present, unless
47 .Dv O_NONBLOCK
49 .Dv CLOCAL
50 is set.
51 .Sh HARDWARE CONFIGURATION
52 The first
53 .Tn RocketPort
55 .Tn RocketPort RA
56 card requires a 68-byte contiguous block of I/O addresses,
57 starting at one of the following:
58 0x100h, 0x140h, 0x180h, 0x200h, 0x240h, 0x280h, 0x300h, 0x340h,
59 0x380h.
60 The second, third, and fourth
61 .Tn RocketPort
62 cards require only a
63 64-byte contiguous block of I/O addresses, starting at one of the
64 above address ranges.
65 The I/O address range used by any of the
66 .Tn RocketPort
67 cards must not conflict with any other cards in the system,
68 including other
69 .Tn RocketPort
70 cards.
71 The starting range of the I/O ports used by each card
72 must match with the I/O address specified in the kernel
73 configuration file.
74 .Pp
75 Since the first
76 .Tn RocketPort
77 uses 68 I/O addresses, if the first card is
78 set to use an I/O block starting at 0x100,
79 it will occupy the I/O ports between 0x100 and 0x143.
80 This means that the second, third, or fourth
81 .Tn RocketPort
82 board may not use the block of addresses starting at 0x140,
83 since the first three I/O addresses of that range
84 are used by the first board.
85 This is an important point to keep in mind.
86 .Pp
87 The configuration of the
88 .Tn RocketPort
89 cards is done via the set of 8 DIP switches,
90 labeled SW1 on the
91 .Tn RocketPort
92 card:
93 .Bd -literal -offset indent
94 +-------------------------------+
95 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 |
96 +-------+-------+---------------+
97 | Unused| Card  | I/O Port Block|
98 +-------------------------------+
99 .Ed
101 DIP switches 7 and 8 are unused, and must be left on.
103 DIP switches 6 and 5 identify the card number of each
104 .Tn RocketPort
105 card.
106 The first card installed in the system must have its DIP switches set
107 as card number one; the second card installed in the system must have
108 its DIP switches set as card number two; and so on.
109 As shipped from
110 the factory, DIP switches 6 and 5 are both on by default, indicating
111 that this is the first card installed on the system:
112 .Bd -literal -offset indent
113 DIP Switches
114 6    5
115 ===================
116 On   On   First Card
117 On   Off  Second Card
118 Off  On   Third Card
119 Off  Off  Fourth Card
122 DIP switches 4, 3, 2, and 1 indicate the I/O address range used by the
123 first
124 .Tn RocketPort
125 card.
126 If there are more than one
127 .Tn RocketPort
128 cards installed in a system,
129 the second, third and fourth
130 .Tn RocketPort
131 cards must
132 also be set to the I/O address range used by the first
133 .Tn RocketPort
134 card;
135 all cards must have these DIP switches set identically
136 for proper operation.
137 As shipped from the factory, DIP switch 4 is on,
138 and switches 3, 2, and 1 are off by default,
139 indicating an I/O address range used by the first
140 card which starts at 0x180 and extends to 0x1C3.
141 .Bd -literal -offset indent
142 DIP Switches         I/O Address Range
143 4    3    2    1     Used by the First Card
144 =====================================
145 On   Off  On   Off   100-143
146 On   Off  Off  On    140-183
147 On   Off  Off  Off   180-1C3
148 Off  On   On   Off   200-243
149 Off  On   Off  On    240-283
150 Off  On   Off  Off   280-2C3
151 Off  Off  On   Off   300-343
152 Off  Off  Off  On    340-383
153 Off  Off  Off  Off   380-3C3
155 .Sh FILES
156 .Bl -tag -width ".Pa /dev/ttyR[RSTU][0-31]"
157 .It Pa /dev/ttyR[RSTU][0-31]
159 .Sh AUTHORS
160 .An Theodore Ts'o Aq tytso@mit.edu
162 This driver was written under contract for Comtrol Corporation.
163 For dealer, distributor and other information regarding Comtrol
164 .Tn RocketPort ,
165 contact Comtrol Corporation at (800) 926-6876 or send email to
166 .Aq info@comtrol.com .
167 To report bugs for this driver, please send email to
168 .Aq bug-bsdi-rocketport@comtrol.com .
169 .Sh BUGS
170 If incoming software flow control is enabled on a 486 or Pentium
171 machine, and the flow control is very heavily exercised, on rare occasions
172 a character will get dropped.
173 This problem does not occur on a 386, and
174 it is not currently known whether the bug is in the
176 driver
177 or in the
178 .Bsx
179 tty layer.
180 .\" (Although my bet is that it's in the higher-level tty layer;
181 .\" given the bugs I found while writing this driver, it's clear
182 .\" the BSD software flow control code hasn't been tested very much
183 .\" at all! -- TYT)