ACL/Avanstar Device Driver Version 2.1X for UNIX System V Release 3.2 Software Installation Guide Manual Part Number: 650063-07 Contents Description 2 I. How to Install and Use the ACL/Avanstar Package 3 Before you install the software A. Choose values for hardware and software 3 B. Interactive Unix only: Kernel Configuration package and High Performance Disk Driver IRQs 9 HOW TO INSTALL THE SOFTWARE C. Load the package 13 D. Enter the parameters for the software driver 14 E. Reboot the system 18 After installation, how to set up ports F. Serial device names and ACL II(+) ports 19 G. Log-in terminals 20 H. Line printers 23 I. Transparent print function 24 II. How to Reconfigure the ACL/Avanstar Family Driver 26 III. How to Remove the ACL/Avanstar Family Driver 33 IV. Troubleshooting 34 Appendices I. How to load from 3.5-inch diskettes 42 II. How to enable RTS & CTS flow control 43 III. Changing ACL II/II+ Ports to DCE or DTE 46 IV. How to Change the Input Buffer Trigger Rate 47 V. How to Use Extended Baud Rates 49 VI. Changing Configurable External Panel's Interface Type 51 Customer Assistance 53 License Agreement 54 c 1994 Star Gate Technologies, Inc. All rights reserved. First issue: March 1990 All brand and product names are trademarks or registered trademarks of their respective companies. ACL/Avanstar Family Unix Device Driver Description The ACLTM/AvanstarTM Family Unix Device Driver diskette contains the ACL/Avanstar Family Unix Device Driver and support software for its configuration and use. This driver provides the interface between an ISA, EISA, or Micro Channel bus computer and up to four ACL/Avanstar family boards. The ACL/Avanstar family of serial communication boards from Star Gate Technologies includes the ACL, ACL II, ACL II+, ACL IIR, ACL IIR+, ACL 16, ACL 16+, ACL MC, ACL MC+, Avanstar 100e, Avanstar 100i, and Avanstar 100m. Compatible operating systems include AT&T Unix, ESIX and Intel Unix (Release 3.2), and Interactive Unix (Version 2.X/3.X, equivalent of System V Release 3.2). During installation, you link the ACL/Avanstar device driver into the Unix kernel and set up ports. Afterward, at power-up, the host PC automatically sets up the interface to the ACL/Avanstar family board(s). This driver supports serial ports for terminals, modems, line printers and the transparent print function. It also provides DTE/DCE selection through software on the ACL II and ACL II+ EIA-232 ports. It also fully supports VP/ix, including 8250 emulation. I. How to Install and Use the ACL/Avanstar Package A. How to Choose Values for Hardware and Software Listed below are the ACL/Avanstar driver parameters and some guidelines for choosing values. Record your selections so you can: make sure that your selections do not conflict with that of any other devices installed set up the ISA board hardware to match. Note that EISA and Micro Channel boards do not have any hardware settings; these boards are set up entirely with software. 1. Choose one of the following modes: interrupt operation ____ polled operation ____ Guidelines: Check your application software for specific guidelines. A general guideline is if you have an IRQ that is not used by any other device in the host PC, set up the driver software and the system configuration for interrupt operation. Otherwise, set them up for polled operation. Multiple Boards: You cannot mix modes. The boards must be either all interrupt driven or all polled. 2a. Choose an I/O address for each ISA bus board. Each board must have a unique range-a range not used by any other device in the host PC. The starting address is the address used for configuration. 200-207 for board ____ 300-307 for board ____ 600-607 for board ____ 700-707 for board ____ Attention ACL Board Owners... If the I/O PAL chip in location U45 (just above the 8-position DIP switch) is numbered ACX/16, 800204-01 or 900204-01, the I/O address choices will be 250, 350, 650 and 750. These I/O addresses apply to ACL boards originally sold with the ACX/32 or ACX/16 driver (XENIX drivers sold before June 1989). The following addresses are also available for the Avanstar 100i: 208-20F for board ____ 308-30F for board ____ 608-60F for board ____ 708-70F for board ____ 2b. Select a unique I/O address for each ACL MC+ board. The following addresses are available for ACL MC+ boards. 0800 for board ____ 0C00 for board ____ 1000 for board ____ 1400 for board ____ 1800 for board ____ 1C00 for board ____ 2000 for board ____ You will select these values when you set up the boards in step 6. However, you will not enter I/O address values during driver configuration for any Micro Channel boards. 2c. You may or may not need to select an I/O address when you set up an Avanstar 100m board (step 6). However, you will not enter an I/O address value during driver configuration for any Micro Channel board. 3. Note the dual port size: 8K bytes (ACL MC) ____ 16K bytes (some ACL, ACL II, ACL II+,ACL IIR, ACL IIR+; all ACL 16, ACL 16+, ACL MC+, Avanstar 100i, and Avanstar 100m) ____ 32K bytes (all Avanstar 100e) ____ 64K bytes (some ACL, ACL II, ACL II+, ACLIIR, and ACL IIR+) ____ NOTE Each of the 8-port ISA boards (ACL, ACL II, ACL II+, ACL IIR, ACL IIR+) is available with either a 16K or a 64K dual port. You can not change the dual port size of any of these boards because it is set by the hardware. 4. Dual Port Memory Address Recommendations: We recommend a location of D0000 (hex), an area often-though not always-free of conflicts with system memory or with non-ACL/Avanstar family devices. For other locations, see the board's hardware installation guide and the following table. Dual port Boundary it Four least significant digits size (K bytes) must be on (hex) of starting address (hex) 8 2000 0000, 2000, 4000, 6000, 8000, A000, C000 or E000 16 4000 0000, 4000, 8000 or C000 32 8000 0000, 8000 64 10000 0000 Guidelines: The dual port for an ACL, ACL 16, ACL 16+, Avanstar 100i, or Avanstar 100m board must be installed within the first megabyte of the host computer's memory space. The dual port for an ACL II, ACL II+, ACL IIR, ACL IIR+, ACL MC, ACL MC+, or Avanstar 100e must be placed between A0000 and F0000 in the first megabyte of the host computer's memory space. Multiple Boards: The dual ports of ISA and EISA boards may occupy different ranges, or they may overlap. There is no advantage to assigning different ranges for these boards, and you save address space by mapping all the dual ports to the same space. ACL/Avanstar family boards for Micro Channel architecture can not share address space with each other or with non-ACL/Avanstar family boards. Therefore, each ACL MC, ACL MC+, or Avanstar 100m must have a different starting address for its dual port. Choose a memory address for the dual port. Board 1______________ Board 3______________ Board 2______________ Board 4______________ 5. If the driver is to be interrupt-driven, choose an IRQ for each board installed, or choose one shared IRQ: Board 1 IRQ ____ Board 2 IRQ ____ Board 3 IRQ ____ Board 4 IRQ ____ Guidelines: Generally, each ACL/Avanstar family board may be assigned a unique IRQ, or all ACL/Avanstar family boards may share the same IRQ. However, if both EISA and ISA boards are installed in the same system, each board must have a unique IRQ, or the driver must be set for polled operation. The IRQ(s) assigned to any ACL/Avanstar family boards must not be used by any other device in the system. We generally recommend IRQ 5, a setting relatively free of conflicts. The following list shows the IRQs supported by each board. Board IRQ choices ACL 3 4 5 6 7 9* ACL II/II+ 3 4 5 9 10 11 12 15 ACL IIR/IIR+ 3 4 5 9 10 11 12 15 ACL 16/16+ 3 4 5 11 12 15 ACL MC 3 4 5 7 9 10 11 12 ACL MC+ 3 4 5 7 9 10 11 12 Avanstar 100e 3 4 5 7 10 11 12 15 Avanstar 100m 3 4 5 7 9 10 11 12 Avanstar 100i 3 4 5 7 10 11 12 15 *Note: Although the ACL board hardware offers IRQ 2, IRQ 2 is translated to IRQ 9 on ISA systems. If you use the IRQ 2 switch setting on an ACL board, select IRQ 9 during driver installation. Interactive Unix Only The Interactive Unix operating system is shipped with a high performance disk driver which uses IRQ 5, 11, 14 and 15 for a RAM disk and secondary controller. A conflict exists between the IRQ 5 default hardware setting on the ISA/EISA boards and the Interactive Unix operating system's gendev device. Choose a free IRQ for the hardware setting. Or, if you do not have a RAM disk or secondary controller in your host PC, free up the IRQs now reserved for those applications for your ACL/Avanstar family board(s). (Section B describes how to free up the IRQs now used by gendev.) 6. Now set up the board using the following guidelines. CAUTION Before you install the ACL/Avanstar family board(s) or the device driver software, make sure all other users are logged off your computer system. (a) Before installing an ISA board, set the switches for the I/O address by following the guidelines in section A of this manual. For any ISA board except the Avanstar 100i, also set the switches for the IRQ (if used) you selected in section A. There are no switches for IRQ settings for the Avanstar 100i (b) After installing a Micro Channel board, set it up with the ADF file on the Star Gate-supplied Option diskette and the configuration program on the Reference diskette included with the computer. (Micro Channel boards do not have any hardware settings.) Follow the guidelines in section A of this manual to select the dual port address and IRQ (if used) for each ACL MC, ACL MC+ and Avanstar 100m in the system. You will also need to select I/O addresses for all ACL MC+ and some Avanstar 100m boards at this time. However, no I/O address values will need to be entered during driver configuration for any Micro Channel boards. c After installing an EISA board, set it up with the system configuration utility and the CFG file on the Configuration diskette supplied with the board. (EISA bus boards do not have an hardware settings.) Select the dual port address and IRQ (if used) for each Avanstar 100e in the system. For more detailed instructions, see the applicable hardware installation guide. Proceed to Section B of this manual to continue software installation. B. For Interactive Unix Only (for others, go to Section C) Follow these steps to check for the Kernel Configuration Package and to change the gendev driver setup. How to Check for the Kernel Configuration Package The Kernel Configuration Kit must be installed on the Interactive Unix system before this driver can be installed. To check for the package's presence, follow these steps: Attention: If you try to install the ACL/Avanstar Family Unix System V device driver without the Kernel Configuration Kit present, the installation will abort and you'll see this message: ERROR: ACL/Avanstar Device Driver-Version XX requires that the Kernel Configuration Package be present. Please install the Kernel Configuration Package, and then install the ACL/Avanstar Device Driver. 1. At the system console, boot your Interactive Unix system and log in as root. 2. Type: sysadm 3. Select softwaremgmt (or software). 4. Select listpkg (or list installed packages). 5. Under the listings of the installed software package check for the entry: Kernel Configuration How to Install the Kernel Configuration Package 6. If there is an entry for Kernel Configuration, go to Step 11. Otherwise, continue to the next step to install the package. 7. Locate the Kernel Configuration package. It is a set of disks that comes with the Interactive Unix software. 8. At the main menu of sysadm, select: softwaremgmt (or software) 9. Then select: installpkg (or install a package) 10. Follow the on-screen prompts to insert and load each of the diskettes in the set. Note: You may check if you have successfully installed the kernel configuration package using the list option on the Software Management menu. 11. Return to the System Administration menu by typing: q 12. Return to the shell prompt by typing: q How to Change the High Performance Disk Driver Follow this procedure if you plan to use interrupt-driven operation and wish to free IRQs. Our ISA/EISA boards are now shipped with the hardware set to IRQ 5. But the Interactive Unix operating system is shipped with a high performance disk driver called gendev, which is configured to use IRQs 5, 11, 14 and 15. To resolve any conflicts, you can change the IRQ set by the hardware switches on an ACL family ISA board, or by the Reference Diskette for a Micro Channel board. The device driver sets the IRQ for an Avanstar 100i board. For an EISA board, use the system configuration utility. Or, if your host PC does not use a secondary controller or RAM disk, you can run kconfig to free up some IRQs for other applications, such as an ACL/Avanstar family board. For interactive Unix Version 2.x follow the steps on the next page. For interactive Unix Version 3.x, follow the steps listed on page 12. How to Change the High Performance Disk Driver for Interactive Unix Version 2.x 1. Log in as root. 2. Type: kconfig When prompted for root directory, press . 3. At the main menu select: Configure kernel 4. At the configuration menu select: Configure High Performance Disk Drive 5. Make the appropriate selections when prompted to modify the High Performance Disk Driver. 6. The screen will prompt: Is this the desired configuration (y): 7. Type: y 8. The screen prompts: Enter choice [1-7, m, q] 9. Type: q 10. The screen prompts: Save modified files in /etc/conf/(y): 11. Type: y 12. You will be returned to the main menu. 13. To rebuild a new kernel, type: q 14. At the shell prompt, type: shutdown -g0 15. The screen prompts: System is down, press any key to reboot. 16. To reboot, press any key and then follow the on-screen messages. How to Change the High Performance Disk Driver for Interactive Unix Version 3.x 1. Log in as root. 2. Type kconfig 3. Select the Configure menu title. 4. Select the HPDD menu option. 5. Select the Reconfigure HPDD menu option. 6. Select the Boot Controller menu option. 7. Configure the High Performance Disk Driver for your system. 8. After you have configured the High Performance Disk Driver, select Quit from the menu options to return to the menu bar. 9. The screen will prompt: Do you want to save your changes? Select YES. 10. Select the Build menu title. 11. Select the Build a Kernel menu option. 12. The screen will prompt: Please confirm that you want to build a kernel at this time. Select YES. 13. Enter description, if desired. 14. Select the Quit menu options to return to the menu bar. 15. Select the Install menu title. 16. Select the kernel that was just built from the list displayed, then select INSTALL. 17. Follow the on-screen instructions to shut down and reboot the system. C. How to Load Software from Diskette If You Have an Interactive Unix Driver Already Installed If an Interactive Unix Device Driver has been installed previously, you will need to remove the old driver. Section III contains instructions for removing the old driver. How to Make a Backup Copy Though not essential to driver installation, please make a backup copy of the ACL/Avanstar Family Unix Diskette using the standard procedure for copying a diskette. Install the device driver software using this procedure: 1. Log in as root. 2. If your Unix Operating System does not have the sysadm program, type: installpkg Or, if you have and prefer to use the sysadm program... Type: sysadm Then select softwaremgmt (or software). Then select installpkg (or install a package). If You Have 3.5-Inch Diskettes First try using sysadm, if it is installed. If you do not have sysadm, or if the driver does not successfully install using sysadm, see Appendix I for another installation procedure. 3. Follow the on-screen instructions to insert the ACL/Avanstar device driver diskette and press 4. The screen will display some messages about the installation and then prompt: Installing ACL/Avanstar Device Driver-Version... D. Enter Parameters for the Software Driver Follow the prompts to enter the values you selected in Section A. 5. The screen prompts: Should the driver poll or be interrupted? (i or p) Enter either: i (for interrupt) or p (for poll) If you enter no selection or something other than i or p, you will be reminded of these two acceptable choices. NOTE In the polled mode, the software driver will ignore any IRQs selected by the hardware switches on ACL family ISA bus boards. 6. The screen prompts: How many boards will be installed? (1-4) Enter one of the following choices: 1, 2, 3 or 4 If you enter no selection or something other than 1, 2, 3 or 4, you will be reminded of these choices. Note: If you later wish to change any driver parameters or add or remove board(s), use the configuration program described in Section II. If you have a Micro Channel board, go to Step 7b. 7a. Appears for ISA or EISA boards only: Adding board X. What board type is this board? 1. acl 2. acl2/2+ 3. acl2r/2r+ 4. acl16/16+ 5. Avanstar 100e 6. Avanstar 100i Select one (1 to 6, q to quit). Enter the appropriate choice: 1, 2, 3, 4, 5, or 6. 7b. Appears for Micro Channel boards only: Adding board X. What board type is this board? 1. aclmc/aclmc+ 2. Avanstar 100m Select one (1 or 2, q to quit). Enter 1 for either an ACL MC or an ACL MC+ board. 8a. Appears for an ACL family ISA board only: What I/O address is board X to use? (200, 300, 600 or 700) Enter the appropriate choice, making sure your selection matches the hardware setup selected by the switches. Attention ACL Board Users... If the I/O PAL chip in location U45 (just above the 8-position DIP switch) is numbered ACX/16, 800204-01 or 900204-01, enter whichever of these values is selected by the hardware switches: 250 350 650 750 These values are not displayed on the screen. These values apply to ACL boards originally sold with the ACX/32 or ACX/16 driver (SCO XENIX drivers sold before June 1989). 8b. Appears for an Avanstar 100i board only: What I/O address is board X to use? (200, 208, 300, 308, 600,608, 700, or 708) Enter the appropriate choice, making sure your selection matches the hardware setup selected by the switches. If you enter no selection or an unacceptable value, you'll be reminded of the acceptable choices. 9. Appears for an 8-port ACL family ISA board only: What size is the dual port on board X? (16 or 64) Enter 16 if you have a 16K dual port; 64 if you have a 64K dual port. If you enter no selection or something other than 16 or 64, you will be reminded of these two acceptable choices. 10. Appears for ISA boards only: What memory address is board X to use? Enter the hexadecimal dual port boundary address, following the guidelines in Section A. If the value is not on the correct boundary, you will be reminded to choose a value on the correct boundary. 11. Appears if you had selected interrupt-driven operation: What IRQ is board X to use? For an ACL family ISA bus board, make sure your selection matches the IRQ switch settings. (There are no switches for IRQ settings for the Avanstar 100i.) For an EISA bus board or a Micro Channel bus board, make sure your selection matches the system configuration value. If you enter no selection or an unacceptable choice, you will be reminded of these acceptable choices: Board IRQ choices ACL 3 4 5 6 7 9* ACL II/II+ 3 4 5 9 10 11 12 15 ACL IIR/IIR+ 3 4 5 9 10 11 12 15 ACL 16/16+ 3 4 5 11 12 15 ACL MC 3 4 5 7 9 10 11 12 ACL MC+ 3 4 5 7 9 10 11 12 Avanstar 100e 3 4 5 9 10 11 12 15 Avanstar 100m 3 4 5 7 9 10 11 12 Avanstar 100i 3 4 5 9 10 11 12 15 *Note: Although the ACL board hardware offers IRQ 2, IRQ 2 is translated to IRQ 9 on ISA systems. If you used the IRQ 2 switch setting on an ACL board, select IRQ 9 now for the driver configuration. 12. The screen will now list the parameters you have entered and prompt: OK to add board X? (y or n) If you type y, the software will install the board and ask you to repeat Steps 7 through 12 for any additional boards you are adding. If you type n, the software will repeat the entire series of questions for board X (Steps 7 through 12). Note: If you later wish to change the driver parameters of the board(s) or add or remove board(s), you can easily do so using the menu-driven configuration program described in Section II. 13. The screen then indicates that the operating system is being rebuilt. When the rebuilding is complete the screen will display: ACL/Avanstar Device Driver Installation Complete. E. How to Reboot the System 14. To complete installation type: 15. The system will then be automatically shut down. When the shutdown is complete, the screen will display: The system is down. Press any key to reboot. or The system is down. Reboot the system now. 16. Remove the ACL/Avanstar Unix Device Driver diskette from the disk drive. 17. Reboot the system by pressing any key or, simultaneously, 18. Follow the on-screen instructions to complete the reboot. Software loading is now complete. Continue to the next section to set up ports for log-in terminals and other devices. Note: An unsuccessful download will result in an error message, described in Section IV: Troubleshooting. Messages are also stored in /etc/acl/acl.log. F. Serial Device Names How ACL/Avanstar Family Device Names Work Device names are used to configure ports for various applications. Use these names to access the ACL/Avanstar family boards: Device Name Meaning /dev/ttya direct connection /dev/ttyA modem connection Examples /dev/ttya01 Direct connection for port 2 on board 1 /dev/ttyA15 Modem connection for port 6 on board 2 Note: In software, boards are numbered from 0 to 3, and ports are numbered from 0 to 7 for the first eight ports. On a 16-port board, ports are numbered from 0 to 9 (ports 1 to 10) and from a to f (ports 11 to 16). For information on setting up modems, see your operating system manuals. For information on setting up modems requiring RTS and CTS flow controls, see Appendix II. ACL II and ACL II+ boards with EIA-232 ports only: If you wish to select a DCE setup for an EIA-232 port through software, note the instructions in Appendix III. G. How to Set Up Log-in Terminals Before enabling a port for a terminal, check the /etc/gettydefs file to make sure that the parity, number of bits per character and baud rate correspond to the settings of the terminal which will be connected. Invoke the editor and make any modifications necessary to the gettydefs file, as described below. Example: How to Set Up Terminals for 8 Data Bits, 1 Stop Bit, No Parity As shipped, the /etc/gettydefs file is set up for: 7 data bits 1 stop bit even parity If you want to run your terminals at another common terminal setting-8 data bits, 1 stop bit and no parity-follow these steps: 1. Boot the system and log in as root. 2. Invoke the editor for the /etc/gettydefs file. 3. Locate the paragraphs starting with the baud rates you plan to use. To change from seven to eight data bits, edit the CS7 in each paragraph to: CS8 4. To invoke no parity, edit PARENB in the same paragraphs to: PARENB Example: Change the line for 9600 baud to (changes are in bold): 9600# B9600 OPOST ONLCR TAB3 BRKINT IGNPAR IXON IXANY -PARENB ISTRIP ECHO ECHOE ECHOK ICANON ISIG CS8 CREAD CLOCAL # B9600 OPOST ONLCR TAB3 BRKINT IGNPAR IXON IXANY -PARENB ISTRIP ECHO ECHOE ECHOK ICANON ISIG CS8 CREAD CLOCAL #login: #4800 5. Now write the changes and exit the editor. Then enable the ports for your terminal using the steps that follow. Refer to the Operating System manuals for other options. How to Enable a Log-In Port for a Log-In Terminal 1. Boot the system and log in as root. 2. Execute the editi program to enable a port. Type at the root prompt: /etc/acl/editi -e Or, if you have and prefer to use the sysadm program, type: sysadm Select: packagemgmt (or software) Select: acl Select: enable 3. The screen will display a listing of the ACL/Avanstar family board ports that are currently disabled. 4. Enter the name of a port you wish to enable. Repeat this step to enable multiple ports. Example: To enable port 2 on board 1 (the first ACL/Avanstar family board installed), type: ttya01 Note: In software, boards are numbered from 0 to 3, and ports are numbered from 0 to 7 for the first eight ports. On a 16-port board, ports are numbered from 0 to 9 (ports 1 to 10) and from a to f (ports 11 to 16). Refer to the operating system manuals for other options. How to Change the Initial Baud Rate for a Log-In Terminal 1. Boot the system and log in as root. 2. Execute the editi program to change the initial baud rate. Type: /etc/acl/editi -s If you have and prefer to use the sysadm program, type: sysadm Select: packagemgmt (or software) Select: acl To change the initial baud rate used by getty, select: setspeed 3. Enter the appropriate port and speed when prompted. How to Disable a Port for a Log-In Terminal 1. Boot the system and log in as root. 2. To disable a port, type at the root prompt: /etc/acl/editi -d If you have and prefer to use sysadm, type: sysadm Select: packagemgmt (or software) Select: acl Select: disable 3. The screen will display a listing of the ports that are currently enabled. 4. Enter the name of the port you wish to disable. Example: To disable Port 2 on Board 1 (the first board installed), type: ttya01 Note: In software, boards are numbered from 0 to 3, and ports are numbered from 0 to 7 for the first eight ports. On a 16-port board, ports are numbered from 0 to 9 (ports 1 to 10) and from a to f (ports 11 to 16). 5. Repeat Step 4 to disable multiple ports. For details on setting up ports for terminals, see your Operating System manuals. H. How to Use a Port for a Printer If you do not have the sysadm program on your system, refer to your Operating System manual for information on setting up a port for a printer. If you have sysadm, follow this procedure to set up a port for a printer: 1. Boot your Unix system and log in as root. 2. Run sysadm. 3. Select packagemgmt (package management). 4. Select lpmgmt (line printer management); follow the on-screen instructions. Note: The ports of ACL/Avanstar family boards will not appear in the list of serial ports available. However, you may enter an ACL/Avanstar family board serial port as the selection. Example: To select port 9 on 16-port board 2 (second ACL/Avanstar family board installed), use: /dev/ttya18 I. How to Use a Port for the Transparent Print Function The transparent print function allows a printer that is plugged into the back of a terminal to operate. The printer and terminal data streams are multiplexed in order to travel over the same serial cable. To configure a port for this function, follow these steps: 1. Log in as root. 2. At the root # prompt, type: cd /etc/acl 3. Invoke the editor for the file called: ttpinit 4. Locate the line for the board and port used by the terminal and transparent printer by using this key for the numbers after each ttpa : First Number: 0 = board 1 1 = board 2 2 = board 3 3 = board 4 Second Number: 0 = port 1 4 = port 5 8 = port 9 c = port 13 1 = port 2 5 = port 6 9 = port 10 d = port 14 2 = port 3 6 = port 7 a = port 11 e = port 15 3 = port 4 7 = port 8 b = port 12 f = port 16 Note: Ports 9 through 16 are for 16-port boards only. Example: The line for port 2 on board 1 is: #/etc/acl/ttp /dev/ttpa01 -s 0 -n 0 -f 0 5. Remove the # sign from the beginning of the line you located. 6. Consult the terminal manual for the ON and OFF strings that terminal uses for transparent printer data. Note: ON and OFF strings are one to four characters, with each character separated by a space. Characters are given by the decimal (not hex or octal) value of the ASCII code. 7. Consult the printer manual for the speed of that printer. 8. Replace the three zeros in the segment: -s 0 -n 0 -f 0 Replace the 0 after the: s with the speed of the printer in characters per second n with the decimal value of the ASCII code for the ON character(s) which your terminal recognizes as the beginning of transparent print data f with the decimal value of the ASCII code for the OFF character(s) which your terminal recognizes as the end of transparent print data Example: You plan to plug a terminal supporting transparent print into port 5 on board 2. The printer's speed is 120 characters per second; the terminal's transparent print ON string is or X (24 in decimal), and its OFF character is DC4 or T (20 in decimal). Edit this line: #/etc/acl/ttp /dev/ttpa14 -s 0 -n 0 -f 0 To become: /etc/acl/ttp /dev/ttpa14 -s 120 -n 24 -f 20 9. Write in the changes and exit the editor. 10. To utilize the printer(s), type at the prompt: /etc/acl/ttpinit Note: This file will also be executed each time the kernel is booted. II. How to Reconfigure the ACL/Avanstar Family Unix Device Driver Software Earlier, you set up software parameters for the boards you installed. If you wish to add or remove a board, or enter new values, we provide a menu- and message-driven configuration program to help you change driver parameters very easily. The five options on the main menu are: Main Menu Options 1) Switch to interrupt driven operation (polled mode option) or 1) Switch to polled operation. (interrupt mode option) 2) List parameters for all boards This option displays the I/O address, the dual port address, dual port size and IRQ (0 if the polled mode is used) for all boards as configured by the software. 3) Add a board This option allows you to configure the software parameters of one board. It will ask you for the I/O address (if an ISA bus board), the dual port address (if an ISA bus board), dual port size (if an 8-port ACL family ISA bus board) and IRQ line (if interrupt driven) and advise you on choices on all but the dual port address. Note that the board does not have to be physically installed for this option. 4) Modify a board This option allows you to modify the software parameters of any board you have previously added. It will ask you which parameter to modify-I/O address (if an ISA bus board), dual port address (if an ISA bus board), dual port size (if an 8-port ACL family ISA bus board), or IRQ line (interrupt- driven operation only)-and advise you on choices. 5) Remove a board This option allows you to remove the software parameters previously specified for one board. Entering Software Values When you enter a value to add or modify a board, the software checks if the value is among a group of acceptable entries. It does not check for conflicting or no longer available values. Nor does it check for the hardware value selected by an ISA board's switches or if the board is physically installed. Follow this procedure to load the configuration program and add boards. Note that the program lets you backtrack, modify or remove boards at any time. How to Run the ACL/Avanstar Configuration Program 1. Log in as root. 2. To run the menu-driven configuration program, type: /etc/acl/config How to List Current Values 3. The main menu will appear, and you can select list parameters for all boards by typing: 2 4. The values for I/O address, dual port address, dual port size and IRQ will be displayed for each board. Example: Board Type IRQ I/O DP addr DPsize 0 ACL2/2+ 5 200 d0000 64 1 ACL 3 300 d0000 64 How to Add a Board Note: When you add a board, the program will number the new board based on the order in which it was installed. For example, if there are 2 boards and you add a board, the new board will be board 3. Note: You may wish to review Section I-A to pick the parameters of the boards you are adding. 1. At the main menu, select add a board by typing: 3 If you are installing a Micro Channel board, go to Step 2b. 2a. Appears for ISA and EISA boards only: Installing board X. What kind of board is this board? 1. acl 2. acl2/acl2+ 3. acl2r/acl2r+ 4. acl16/acl16+ 5. Avanstar 100e 6. Avanstar 100i Select one (1 to 6, q to quit). Enter 1, 2, 3, 4, 5, or 6 making sure your selection matches the type of adapter board you are adding: 2b. Appears for Micro Channel boards only: Adding board X. What board type is this board? 1. aclmc/aclmc+ 2. Avanstar 100m Select one (1 or 2, q to quit). Enter 1 for either an ACL MC or an ACL MC+ board. 3a. Appears for ACL family ISA boards only: What I/O address is board X to use? (200, 300, 600 or 700) Enter the appropriate choice, making sure your selection matches the hardware setup selected by the switches. Note: For ACL boards equipped with PAL chip numbered ACX/16, 800204-01 or 900204-01 (at U45, just above the 8-position DIP switch), you should enter the value selected by the hardware switches. (These ACL boards were originally sold with the ACX/32 or ACX/16 driver (SCO XENIX drivers sold before June 1989).) The value is one of the following, though these values are not displayed on the screen: 250 350 650 750 3b. Appears for the Avanstar 100i board only: What I/O address is board X to use? (200, 208, 300, 308, 600, 608, 700, 708) Enter the appropriate choice, making sure your selection matches the hardware setup selected by the switches. If you enter no selection or an unacceptable choice, you will be reminded of the acceptable choices. 4. Appears for 8-Port ACL family ISA boards only: What size is the dual port on board X? (16 or 64) Enter 16 if you have a 16K dual port; 64 if you have a 64K dual port. If you enter no selection or something other than 16 or 64, you will be reminded of these two acceptable choices. 5. Appears for ISA boards only: What memory address is board X to use? Enter the starting address of the dual port based on the selection criteria in Section A of Chapter 1. 6. If you had selected interrupt-driven operation: What IRQ is board X to use? (3-7, 9-12 or 15) Enter one of the following choices, making sure you match the hardware value selected by the ACL family ISA board switches or the configuration software for EISA or Micro Channel systems. (There are no switches for IRQ settings for the Avanstar 100i.) Board Types IRQs Offered by Board ACL 3 4 5 6 7 9* ACL II/II+ 3 4 5 9 10 11 12 15 ACL IIR/IIR+ 3 4 5 9 10 11 12 15 ACL 16/16+ 3 4 5 11 12 15 ACL MC 3 4 5 7 9 10 11 12 ACL MC+ 3 4 5 7 9 10 11 12 Avanstar 100e 3 4 5 9 10 11 12 15 Avanstar 100m 3 4 5 7 9 10 11 12 Avanstar 100i 3 4 5 9 10 11 12 15 Note: Although the ACL board hardware offers IRQ 2, IRQ 2 is tranlated to IRQ 9 on ISA systems. If you used the IRQ 2 switch setting on an ACL board, select IRQ 9 now for the driver configuration. 7. The screen will now list the I/O address, dual port memory size, dual port address and IRQ you have entered and prompt: OK to add board X? (y nor n) If you enter y you will be returned to the main menu and the board will be added. If you enter n you will be returned to the main menu without adding the board. 8. If you wish to add one, two or three more boards (up to a total of four), repeat Steps 1 through 7 for each board. When you are satisfied with the software configuration, turn to page 32. Follow the steps to install the new configuration by performing a reboot. How to Modify a Board Note: If you are replacing one type of board with another-for example, replacing an ACL board with an ACL II-first delete the old board (page 32), then add the new board (page 28). 1. When you select 4) modify a board from the main menu, the screen will ask you which board do you wish to modify. 2. Respond by giving the number of the board (the number corresponds to the order in which you added the board, starting from 1). 3. You will next be given this list of parameters to select from: 1) I/O address 2) memory address 3) dual port size 4) IRQ line Note: Line 1 will appear for ISA boards only. Line 3 will appear for 8-port ACL family ISA boards only. Line 4 will not appear if you had earlier selected polled operation. 4. Make your selection and modifications. 5. To complete the modifications and return to the main menu, type: q 6. You will be asked if it is okay to update the board. If the modifications are correct, type: y If the modifications are incorrect, type: n When you are satisfied with the software configuration, turn to page 32. Follow the steps to install the new configuration and perform a reboot. How to Remove a Board 1. When you select 5) remove a board from the main menu, the screen will ask you which board do you wish to remove and list the options. 2. Respond by entering the number of the board (the number corresponds to the order in which you added the board, starting from 1. Your response will remove the board parameters directly and return you to the main menu. Note: When you remove a board, the program will renumber the remaining boards starting from 1. For example, if there are 3 boards and you remove board 1, board 2 will be renumbered board 1 and board 3 will be renumbered board 2. How to Rebuild and Reboot a New Kernel When you are satisfied with your software value selections for every board, follow these steps: 1. Exit the configuration program by typing: q 2. When you exit the config program, changes are made to the kernel configuration and the kernel is rebuilt. The screen will display messages describing the status of the kernel. 3. Reboot the system by typing: cd / shutdown -g0 Follow the on-screen prompts to complete the procedure. Then go to Sections I-F through I-I to set up ports. An unsuccessful download will result in an error message (see Section IV- Troubleshooting). Such messages are also stored in /etc/acl/acl.log. III. How to Remove the ACL/Avanstar Family Driver You can remove the driver completely from the system by following this procedure: Note: The removal process removes the following directories and their contents: /etc/acl /usr/admin/menu/packagemgmt/acl /etc/conf/pack.d/acl 1. Type: removepkg Or, if you have and prefer to use the sysadm program, type: sysadm Select software management by typing: 5 Select remove package by typing: 3 2. Follow the on-screen instructions to complete the removal and reboot the system. IV. Troubleshooting: What to Do if You Have Difficulty If you encounter a problem, it will likely be due to conflicts in the configuration of the software and/or hardware. This section describes the symptoms, causes and solutions for such problems. Installation Problems Symptom: You receive the message: WARNING: IRQ is already in use by . Board will be entered in the sdevice file, but it will be marked as "not installed." Cause: This message is from the ACL/Avanstar family configuration program. It means that IRQ is already claimed by device . The configuration program will create an entry in the sdevice file for board , but the configure field will be N. This means that the board will not be included when the kernel is built. Solution: Select an unused IRQ for the board with the conflict, if possible, or switch to polled operation. To do this, complete the installation, exit sysadm (if used), and run the ACL/Avanstar family configuration program (/etc/acl/config) to build a new kernel. Then adjust the hardware (ACL family ISA bus board only) or set up the EISA or Micro Channel bus board again with its configuration software if necessary and reboot to install the new kernel. (See Chapter II for help with the ACL/Avanstar configuration program.) Download Problems Symptom: When going to multiuser mode you receive the message: /etc/idrc.d/acl: /dev/acl: cannot open Cause: The kernel you have booted does not contain the ACL/Avanstar family driver, or the ACL/Avanstar family driver device node (/dev/acl) does not exist. The ACL/Avanstar family boards will not be properly initialized, and no communications with any device attached to the ACL/Avanstar family board will take place. Solution: Boot the proper kernel or reload the ACL/Avanstar package. Symptom: When going to multiuser mode, you do not receive a message indicating that download is being performed. There should be a message for each ACL/Avanstar family board in the system, for example: /etc/acl/load: load /etc/acl/.cp Where is the board number and is the board type. NOTE The following shows the Control Programs for all the boards: Board Type Control Program Filename ACL acl.cp ACL II(+) acl2.cp ACL IIR(+) acl2r.cp ACL 16(+) acl16.cp ACL MC aclmc.cp ACL MC+ aclmc3.cp Avanstar 100e a100e.cp Avanstar 100m a100m.cp Avanstar 100i a100i.cp Cause: Usually this happens because the hardware setup for an ISA board does not match the driver configuration for one of these reasons: For an ISA bus board, the DIP switch settings which select the I/O address do not match the value entered during the driver configuration. For example, the hardware switches are set for 300, but the driver is set for 700. An ACL board may have an I/O address decode PAL which does not match the I/O value entered. For example, the PAL might recognize 250, 350, 650, 750, but the driver is set for 200. Another possible cause might be that the ISA, EISA, or Micro Channel board is not configured at all. Solution: Check the status of the ACL/Avanstar family boards by running the ACL/Avanstar family status program (/etc/acl/stat). (See page 39 for information on the ACL/Avanstar status program.) If the board which was not downloaded is marked Not Configured, use the ACL/Avanstar family configuration program (/etc/acl/config) to add it to the software configuration. Then try again. If an ISA board is marked Not Present, then the I/O address of the hardware does not match the driver configuration. You need either to change the DIP switch settings or to use the ACL/Avanstar family configuration program to change the driver configuration. If an EISA board is marked Not Present, then either rerun the configuration software using the EISA configuration utility and the Configuration diskette, or use /etc/acl/config. If a Micro Channel board is marked Not Present, then either rerun the configuration software using the Reference diskette and the Option diskette, or use /etc/acl/config. Symptom: When going to multiuser mode, you receive a message that a download is starting, but then receive another message other than: /etc/acl/load: load successful Cause: Can be any of a number of possible causes. Solution: Write down the message, use the Tech Support Checklist on page 40, and call Star Gate Tech Support at 1-800-STAR GATE (1-800-782- 7428). ACL/Avanstar Port Usage Problems Symptom: No data comes out of an ACL/Avanstar family port, and the process that writes data to the port does not complete. Cause: This happens when the driver is configured for interrupt operation, and the DIP switch setting for IRQ selection (for ACL family ISA boards) or the software configuration (for EISA or Micro Channel boards) does not match the IRQ selected during the driver configuration. Solution: Use the ACL/Avanstar family status program (/etc/acl/stat) to check the status of the board and the current driver-configured IRQ value. (See page 39 for information on the ACL/Avanstar status program.) A board which is configured correctly will have a status of: Present, Started, Interrupts on A board which is not configured correctly will have a status of: Present, Started If the board is not configured correctly, change whatever was set incorrectly: (1) change the DIP switch setting if it's an ACL family ISA board. (See the board's hardware user's guide for instructions on configuring the board.) (2) rerun the configuration software if it's an EISA or Micro Channel board. (See the board's hardware user's guide for instructions on configuring the board.) (3) use the ACL/Avanstar Family configuration program (/etc/ acl/config) to change the driver configuration. Symptom: No data comes out of an ACL/Avanstar family board port, but the installation process does complete. Cause 1: This happens because the software tty settings do not match the hardware (terminal, printer, etc. settings). Solution 1: Use the stty program (stty -a < /dev/ttyaxx) to determine the current settings for ACL/Avanstar port xx. Check for baud rate, number of bits per character, number of stop bits, parity type, parity enabled and flow control. In the case of a port that has a getty running, you may need to change the contents of a gettydef entry or select a different entry. The default gettydef entry at installation is 9600 for all ACL/Avanstar family board ports. For a printer, you may need to alter the printer interface program. For more information on adding serial devices, see your Operating System manuals. Cause 2: The cable attaching the ACL/Avanstar family board to the serial device is not wired with the correct pinouts. Solution 2: Refer to the ACL/Avanstar family board user's guide and the serial device user's guide for the EIA-232 pinouts used on each. Use a cable that matches these up correctly. How to Check ACL/Avanstar Family Board Status Using /etc/acl/stat To check on the software configuration and board status, type: /etc/acl/stat You will see a table giving the board type, IRQ, I/O address, dual port address and size, and board status for each board (0-3). For example: DP DP Board Type IRQ address size Status bits 0 ACL 2/2+ 5 0xd0000 64 62(Present,Started,Interrupts On) 1 ? 3 0xd0000 64 1(Not Present) 2 ? 0 0 0 0(Not Configured) 3 ? 0 0 0 0(Not Configured) The status bits can be interpreted as follows: 0 (Not Configured) board may or may not be installed, but isn't driver-configured. 1 (Not Present) board is not physically installed, but is driver-configured. 22 (Present, Started) board is present but not configured correctly. 62 (Present, Started, Interrupts On) board is present and in interrupt mode operation. A2 (Present, Started, Polling On) board is present and in polled mode operation. Technical Support Checklist If you are having installation or compatibility problems, please have the following information at hand when calling for Tech Support: 1. From your ACL/Avanstar family board: board type-ACL, ACL II, ACL II+, ACL IIR, ACL IIR+, ACL 16, ACL 16+, ACL MC, ACL MC+, Avanstar 100e, Avanstar 100i, or Avanstar 100m? switch settings (if it's an ISA board) If installing an ACL board, what is the part number of the PAL chip in location U-45 (just above the DIP switch)? If installing an EISA or Micro Channel bus board, what board parameters were chosen through the system's configuration utility? 2. From the ACL/Avanstar family device driver diskette label: Type and version of operating system and version of driver. Example: Version X.XX 3. From your ACL/Avanstar software driver installation: I/O address (if it's an ISA board) memory address dual port size (if it's an 8-port ACL family ISA bus board) polled or interrupt driven operation IRQ line (if interrupt driven) To get this information, run the ACL/Avanstar status program (/etc/acl/stat) described on the previous page, or run the modify configuration program (/etc/acl/config) to list parameters for all boards (see Section II). 4. From your sales or purchase order form: number of ports size of dual port memory 5. From your host PC and its installed hardware and software: Type of system used Type of graphics card CPU and bus speed of system Are you using memory caching? What is your operating system? Examples: AT&T Unix, ESIX, Intel Unix, Interactive Unix What is the version of the operating system? Example: Version 2.0 What other devices do you have in your system? Examples: Tape backup, LAN card... If you have other devices installed, then for each device what is the: IRQ used I/O address range Memory address range Appendix I How to Install the ACL/Avanstar Family Driver from 3.5-Inch Diskettes If you were not able to install the driver using sysadm, follow these steps: 1. Boot the system and log in as root. 2. To call up the directory of devices and their minor numbers, type: ls -l /dev/rdsk |pg 3. There should be a listing of lines in the following format: crw--- <1 or 2>root sys , 4. Look for the line with a minor number of 80. You will need this number to find the right device name. 5. Find the device name at the end of that line and record it here for future reference: ______________ 6. Now type in the following command: /usr/lbin/Install.sh /dev/rdsk/ Now follow the on-screen instructions to complete the installation process. Appendix II How to Enable RTS and CTS Flow Control Introduction If you have a modem requiring RTS or CTS handshaking signals of the EIA- 232 interface, you must set up the ACL/Avanstar Family Unix Device driver to use these flow controls. With RTS flow control, if the host PC sees that its input buffer is nearly full, it will lower the RTS line. The serial device should then stop sending and wait for the host to catch up. The host will raise the RTS line when it is ready for more data. With CTS flow control, the serial device asserts the CTS line when it is ready to receive data. If the CTS line goes low, then the host PC will stop sending data until CTS goes high again. Setting RTS and CTS Flow Control from the Command Line We provide the setflow program to enable and disable RTS and CTS flow control from the shell command line. If no options are provided, it reports the current settings of the options. The general format of the command is: setflow Options: rts enable RTS flow control -rts disable RTS flow control cts enable CTS flow control -cts disable CTS flow control none disable RTS and CTS flow control Examples: To enable RTS flow control on the current terminal, type: setflow rts To enable RTS and CTS flow control on /dev/ttya00, type: setflow rts cts < /dev/ttya00 To disable RTS and CTS flow control on /dev/ttya12, type: setflow -rts -cts Setting RTS and CTS Flow Control from a Program To select RTS and CTS flow control, you can also make an ioctl() function call in a program. Several ioctl commands and the termiox structure are defined in the aclioctl.h file to select RTS and CTS flow control. The termiox structure is defined as follows: struct termiox { unsigned short x_hflag; /* hardware flow control modes */ unsigned short x_cflag; /* clock modes */ unsigned short x_rflag[NFF]; /* reserved modes */ unsigned short x_sflag; /* spare modes */ }; Only the x_hflag field is used and is defined as follows: #define RTSXOFF 0000001 /* Enable RTS flow control on input */ #define CTSXON 0000002 /* Enable CTS flow control on output */ The following commands are defined and use an arg parameter of type: struct termiox *arg; TCGETX Gets the parameters associated with the terminal and stores them in the termiox structure referenced by arg. TCSETX Sets the parameters associated with the terminal from the structure referenced by arg. The change is immediate. TCSETXW Waits for output to drain before setting the new parameters. This form should be used when output is in progress. TCSETXF Waits for the output to drain. It then flushes the input queue and sets the new parameters. EXAMPLE: The following "C" program selects RTS and CTS flow control: #include #include int fd; struct termiox x; . . . fd = open ("/dev/ttya00", O_RDWR | O_NDELAY); ioctl (fd, TCGETX, &x); x.x_hflag |= (RTSXOFF | CTSXON); ioctl (fd, TCSETXW, &x); . . . Appendix III How to Change ACL II & ACL II+ EIA-232 Ports to DCE or DTE Using Software (For owners of ACL II and ACL II+ boards with EIA-232 external connection panels only) The ACL II and ACL II+ boards are designed so you can select DCE or DTE operation for each EIA-232 port through software. The default is DTE. Use this procedure to change a port to the DCE configuration. (This option is not available with the other ACL/Avanstar Family boards.) 1. Use the select program. Type at the root prompt: /etc/acl/select dce 2. The screen will display the ACL II and ACL II+ ports now set up as DTE. 3. Enter the name of the port you wish to change to DCE. Example: To change the first port on the first ACL II or ACL II+ board installed to DCE, type: ttya00 4. Repeat Step 3 to change multiple ports. The change to DCE will take effect the next time a port is opened. Set modem and direct connect ports separately. Make sure the proper one or both are set correctly. To change a port back to DTE, type: /etc/acl/select dte for Step 1. Then follow Steps 2 through 4. You do not have to re-enable converted ports- once enabled, they stay enabled. Appendix IV How to Change the Input Buffer Trigger Rate You can now easily accommodate a mouse or any other peripheral requiring adjustments in packet size. You can change the value of the Input Buffer Trigger Rate (also called the Interrupt Rate) that the ACL/Avanstar Family Unix Driver programs for each port by following the steps below. The Input Buffer Trigger Rate defines the number of characters that must be received before the host PC is alerted to a service request. This rate is a word in the Channel Control Block, Offset 000AH, of the ACL/Avanstar Family Control Program. A service request will also be indicated if any characters have been received and the most recent character was received more than four character times in the past. The maximum value is 32767. For more information, see the ACL Family Technical Reference Manual or the Avanstar Family Technical Reference Manual. The default value of the interrupt rate is 30. A typical mouse, however, requires an interrupt rate of less than 30. To change a value, follow these steps: 1. Log in as root. 2. At the root # prompt, type: cd /etc/acl 3. Invoke the editor for the file called: ttyinit 4. Locate the line for the board and port connected to the peripheral needing a different interrupt rate by using this key for the numbers after each ttya : First Number: 0 = board 1 1 = board 2 2 = board 3 3 = board 4 Second Number: 0 = port 1 4 = port 5 8 = port 9 c = port 13 1 = port 2 5 = port 6 9 = port 10 d = port 14 2 = port 3 6 = port 7 a = port 11 e = port 15 3 = port 4 7 = port 8 b = port 12 f = port 16 Note: Ports 9 through 16 are for16 port boards only. Example: The line for port 3 on board 1 is: #/etc/acl/irate /dev/ttya02 0 5. Remove the # sign from the beginning of the line you located. 6. Replace the last zero (0) in the line with the desired interrupt rate: Example: To decrease the interrupt rate from 30 to 29 for port 1 on board 2, edit this line: # /etc/acl/irate /dev/ttya10 0 To become: /etc/acl/irate /dev/ttya10 29 Note: Unchanged ports will continue to use 30. Setting a value of 0 (zero) also causes the interrupt rate to be 30. Setting a value bigger than the Input Buffer High Water Mark-a value which depends on dual port size-causes the value to be equal to the Input Buffer High Water Mark. (For details, see the ACL Family Technical Reference Manual or the Avanstar Family Technical Reference Manual.) 7. Write in the changes and exit the editor. 8. To utilize the peripheral(s), type at the prompt: /etc/acl/ttyinit Note: This file will also be executed each time the kernel is booted. Appendix V How to Use Extended Baud Rates (For owners of ACL II+, ACL IIR+, ACL 16+, ACL MC+, Avanstar 100e, Avanstar 100i, and Avanstar 100m boards only) Introduction The ACL II+, ACL IIR+, ACL 16+, ACL MC+, Avanstar 100e, Avanstar 100i, and Avanstar 100m boards are capable of supporting baud rates up to 115.2K baud. Since Unix does not normally support these extended baud rates, support was added to the driver by redefining the standard baud rates less than 300 baud in the following manner: Baud Rates: Standard Extended 50 57.6K 75 76.8K (Avanstar boards only) 110 reserved 134 115.2K 150 reserved 200 reserved NOTE If 57.6K baud is selected on a channel of an ACL PLUS family board, then 57.6K baud must also be selected on the adjacent channel. If 115.2K baud is selected on a channel of an ACL PLUS family board, then 115.2K baud must also be selected on the adjacent channel. Setting Extended Baud Rates from the Command Line The Unix stty is used to select extended baud rates from the command line. Examples: To select 57.6K baud on the current terminal, type: stty 50 To select 115.2K baud on /dev/ttya00, type: stty 134 < /dev/ttya00 Setting Extended Baud Rates from a Program To select the extended baud rates, you can also make an ioctl() function call in a program. See your Unix System manuals for termio information. An understanding of the ioctl() function and the termio structure is necessary to select the extended baud rates. Example: The following "C" program selects 57.6K baud: #include #include int fd; struct termio t; . . . fd = open("/dev/ttya00", O_RDWR|O_NDELAY); ioctl(fd, TCGETA, &t); t.c_cflag =(t.c_cflag & ~CBAUD) | B50; ioctl(fd, TCSETAW, &t); close(fd); APPENDIX VI changING the interface type on the Avanstar FAMILY configurable external connection panels Driver Implementation The following IOCTL commands are added to the driver: ACLGETEIA /* returns 422/232 mode */ ACLSET232 /* sets 232 mode */ ACLSET422 /* sets 422 mode */ By default the board powers up in 232 mode. To change the EIA mode, open the port with O_NONBLOCK set, make the appropriate IOCTL (ACLSET232 or ACLSET422) call and close the port. The port will remain in that EIA mode until another IOCTL (ACLSET232 or ACLSET422) call is made or the system is reset. Utilities The following utility is provided to configure the ports for EIA-232 or EIA- 422: /etc/acl/eia /dev/tty[a|A] [232|422] The device name /dev/ttya is for a direct connection. The device name /dev/ttyA is for a modem connection. Boards are numbered from 0 to 3, and ports are numbered from 0 to 7 for the first eight ports. On a 16-port board, ports are numbered from 0 to 9 (ports 1 to 10) and from a to f (ports 11 to 16). Use the [232|422] option to set the EIA mode to either EIA-232 or EIA-422. Not specifying 232 or 422 returns the EIA mode of the device. A shell script /etc/acl/eiainit in the following format is also provided: #/etc/acl/eia /dev/ttya00 422 #/etc/acl/eia /dev/ttya01 422 . . . #/etc/acl/eia /dev/ttya3f 422 To configure the ports for EIA-232 or EIA-422, follow these steps: 1. Log in as root. 2. At the root # prompt, type: cd /etc/acl 3. Invoke the editor for eiainit /etc/idrc.d/acl calls eiainit at boot time to configure all the ports. All of the lines are commented out so that all the ports remain in EIA-232 mode. Simply remove the # sign on any of the ports that you want configured to EIA-422. For example, the line for port 8 on board 1 is: #/etc/acl/eia /dev/ttya07 422 4. Remove # from this line, save the changed file, and exit the editor. 5. To configure port 8 on board 1 to EIA-422, type at the prompt: /etc/acl/eiainit This file will also be executed each time the kernel is booted. NOTE Pin assignments and supported signals for EIA-232 and EIA-422 compliance are described in each board's hardware installation guide. Customer Assistance For customer service or sales assistance, call 1-800-STAR GATE (1-800-782-7428) or 216-349-1860 from 8 a.m. to 6 p.m., Eastern Standard Time. You can also use our BBS (216-349-2904). For your convenience, we have extended technical support hours from 7:30 a.m. to 7 p.m., EST. If you have any comments, suggestions, or corrections regarding this manual, please make photo-copies of the affected pages, indicate your comments on the copies, and mail or FAX the copies to the address or FAX number below. FAX (216) 349-1978 Star Gate Technologies, Inc. Attn: Technical Documentation Dept. 29300 Aurora Road Solon, Ohio 44139 LICENSE AGREEMENT License: You have the nonexclusive right to use the enclosed device driver on one host computer, plus the terminals connected to it, at a time. You may transfer the device driver from one computer system to another, provided the device driver is used only on one computer system at a time. Copyright: The ACL/Avanstar Family Unix System V device driver and its documentation are owned by Star Gate Technologies, Inc., and are protected by United States copyright laws and international treaty provisions. You must treat this material like any other copyrighted materials, except that you may make one copy of the SOFTWARE solely for backup or archival purposes and transfer the SOFTWARE to a single hard disk. Term: This license is effective until terminated. You may terminate it by destroying the program, its documentation and all copies. This license can be terminated by Star Gate Technologies, Inc., if you fail to comply with any term or condition of this agreement. As Is: The program and its documentation are provided "AS IS" without warranty of any kind. The entire risk as to the results and performance of the device driver is assumed by you. Should the program prove to be defective, you (and not Star Gate Technologies, Inc., or its dealers) assume the entire cost of all necessary servicing, repairs or corrections. Further, Star Gate Technologies, Inc., does not warrant, guarantee or make any representations regarding the use of, or the results of the use of, the device driver in terms of correctness, accuracy, reliability, currentness or otherwise. You rely on the program and results solely at your own risk. No Warranties: Star Gate Technologies, Inc., disclaims all warranties, expressed or implied, including but not limited to the implied warranties of merchantability or fitness for a particular purpose, with respect to the software, the accompanying written materials, and any accompanying hardware. No Liability or Consequential Damages: Neither Star Gate Technologies, Inc., nor anyone else who has been involved in the creation, production or delivery of this program shall be liable for any direct, indirect, consequential or incidental damages whatsoever (including, without limitation, damages for loss of business profits, business interruption, loss of business information, or other pecuniary loss) arising out of the use, the result of use, or the inability to use such product, even if Star Gate Technologies, Inc., has been advised of the possibility of such damages or claims. Because some states do not allow the exclusion or limitation of liability for consequential or incidental damages, the above limitation may not apply to you.