b.liu | e958203 | 2025-04-17 19:18:16 +0800 | [diff] [blame^] | 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 |