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