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