Release Notes PN 93000352 (SPARC) Digi International RAS Driver for Solaris Version G Solaris 2.7, 2.8 and 2.9 Software Package PN 40002060 (SPARC) Software Manual PN 92000363 August 1, 2002 INTRODUCTION This device driver software provides support for up to 32 Digi RAS PCI adapters on the Solaris operating system. SUPPORTED PRODUCTS AccelePort 2p, 4p, 8p, 16p AccelePort RAS A4 AccelePort RAS A8 Digi International announced the discontinuation of the DataFire RAS product line in September 2001. In our continued effort to support DataFire RAS customers, we we entered into a definitive agreement to sell the DataFire RAS product line to Patton Electronics Company in November 2001. All business areas related to the DataFire RAS product line are now handled by Patton Electronics. If you have any technical questions with respect to the DataFire RAS product line, please contact Patton Electronics via e-mail at support@patton.com, or call 1-301-975-1000 and ask for the technical support team. Additional information is also available on the Patton Electronics website at , including driver updates and future releases. Please note that the AccelePort RAS product line is NOT part of the DataFire RAS product line acquisition by Patton Electronics. Digi International will continue to sell and fully support all AccelePort RAS products without restrictions. ENHANCEMENTS Changes since F: -- Added support for Solaris 2.9 -- Removed support for Digi DataFire RAS Adapters Changes since E: -- AccelePort RAS and DataFire RAS firmware updated to release M -- Fix bug related to interrupts. See also "BUG FIXES" -- Adds the ability to open a dial-out device while a dial-in device is waiting on carrier. -- Modify the dm_admin application to support up to 32 boards. Digi International supports only 4 boards, however it is possible to run up to 32 boards in a system. Changes since D: -- Added support for the ditty clear option. This frees up ports that are draining very slowly or are stuck by flow control. Note: The digiras_reset utility has the same functionality. -- Added functionality to the digiras_reset utility. Added the "-R" option to issue a more complete reset. This option was added because the "-x" option command had to be issued multiple times for it to work. Added the "-A" option to reset all serial ports on an adapter. -- Modified the driver to allow boards other than the AccelePort Xp adapter to use interrupts. -- Note: Man pages have been added for the driver and many of its utilities. The driver man page can be read by the "man DIGIras" or "man digiras" commands. The man pages were added in a previous release but never mentioned. Changes since C: -- Made significant improvement to the performance of the driver. This performance enhancement affects the AccelePort RAS and DataFire RAS adapters when running applications, such as PPP or login terminals. It did not affect the AccelePort Xp adapter as much as it did the RAS adapters. -- Upgraded the AccelePort Xp firmware from version A1 to B. -- Added the digiras_reset utility. This utility functions to hang-up modems, reset modems, and reset stuck serial ports. Changes since B: -- Upgraded the AccelePort RAS and DataFire RAS firmware from version K2 to version K3 Changes since A: -- Upgraded the AccelePort RAS and DataFire RAS firmware from version J3 to version K2 -- Added new device names. The device names have the format "/dev/dgrasXXXs" and are replacing device names with the format /dev/DIGIras/bXXpXXs. The "/dev/DIGIras/bXXpXXs" device names continue to exist. This is described in more detail below. -- Modified the /dev/term and /dev/cua device links to "/dev/term/dgrasXXX" and "/dev/cua/dgrasXXX". This change allows the /dev/term and /dev/cua links to use a unique name rather than a cryptic sequential number. -- Added the dm_gui utility to the package. The dm_gui is an X Windows graphical application that monitors and configures adapters. -- Added simple utility called digiras_info. This utility gives information on device names. -- Added support for clone management devices. This allows a utility, such as dm_gui to be opened multiple times. Changes since 3P: -- The behavior of the "cspeed" flag to ditty has been made friendly. Its use is described in the NOTES SETTING LESSER-USED AND ARBITRARY BAUD RATES section. -- Upgraded the AccelePort Xp firmware from version 4P to version A1. -- Upgraded the AccelePort RAS and DataFire RAS firmware from version K2P to version J3. Changes since 2P: -- Upgraded the AccelePort Xp firmware from version 3P to version 4P. -- Upgraded the AccelePort RAS and DataFire RAS firmware from version K1P to version K2P. Changes since 1P: -- Improved the reporting of OS and driver versions by PortAssist Manager (PAM). -- Upgraded the AccelePort Xp firmware from version 1P to version 3P. -- Upgraded the AccelePort RAS and DataFire RAS firmware from version J1 to version K1P. -- Added line to /etc/rc2.d/S90DIGIras which can be uncommented to enable the launching of the PAM Communications Agent upon boot. BUG FIXES Changes since F: -- No bug fixes since F Changes since E: -- Fixed a problem where the adapters were not detected properly. -- Modified the driver to report correct information to the dpa application when the port is closed. -- Fixed a bug where hardware flow control was not being cleared on open after having been set on a previously opened port. Note: Once a configuration ioctl (e.g. setting baud rate) was sent on a port, the hardware flow control was set correctly. Most applications send a configuration ioctl before data transfer, so this problem is unlikely to have affected many customers. -- Fixed a problem with baud rates having been set incorrectly for applications that mixed the old termio method of setting baud rates with the new termio method of setting baud rates. This problem affected the AccelePort Xp adapter running at speeds greater than 38400 with applications that mixed the old and new methods of setting baud rates. -- Added support for the TIOCGWINSZ and TIOCSWINSZ ioctls. This allows the user to save rows and columns when using an stty device. Changes since D: -- Fixed problems with crashes during the open and close routines. -- Ditty now shows altpin settings that are set on a per board basis by editing the dgdxb.conf file. Changes since C: -- Fixed a problem where the driver was not loading under an unpatched Solaris 7 operating system. This problem may occur in earlier operating systems. -- Fixed the altpin option to work for the AccelePort Xp adapters. -- Fixed a bug that degraded the performance of the DataFire RAS and AccelePort RAS adapters in PPP and terminal applications -- Improved the drain latency time. -- Fixed potential multi processor bugs. -- Fixed a problem where certain utilities could not run at the same time. Changes since B: -- Upgraded the AccelePort RAS and DataFire RAS firmware from version K2 to version K3. This fixed the following bugs: -- With the AccelePort RAS adapter, RING would go away after opening a port for a second time. -- With the DataFire RAS adapter, an unusual frame caused a panic in the firmware. -- With the DataFire RAS adapter, some line code violations were occurring. Changes since A: -- Modified the CLOCAL behavior. CLOCAL is no longer used to ignore carrier on an open. To elicit this behavior use the cu type devices (e.g. /dev/cua/dgrasa01) or use ditty to make a port assert carrier on open (e.g. ditty forcedcd /dev/term/dgrasa01). Note: CLOCAL still ignores carrier, but cannot ignore carrier on open. -- Fixed a race condition that occurred during a hang-up and close. -- Fixed a bug in dpa where the "SET_SERIAL_STATUS FAILED" message displayed when scrolling through the ports. Changes since 1P: -- Fixed a bug that caused a kernel panic if DPA were used to inspect the ports on an adapter that no ports had been opened yet. KNOWN LIMITATIONS Only analog calls are supported. Officially this driver supports up to 4 boards in a system. Theoretically the driver can support up to 32 boards in a system. NOTES: DEVICE NODES Device nodes are found in "/dev", "/dev/DIGIras", "/dev/term", and "/dev/cua". The device nodes found in "/dev" have the format dgrasLNNs and dgrasLNNm. The letter L identifies the board. Each board is assigned a letter based on the board's instance number. Instance 0 is assigned 'a', instance 1 is assigned 'b', and so on. NN is a two digit base-10 number identifying the port. Devices ending with the letter "m" ("modem-control") block on DCD on open; those ending in "s" do not. The former are sometimes called dial-in nodes; the latter are dial-out nodes. Links to these device nodes are found in /dev/term ("m" nodes) and /dev/cua ("s") nodes. AccelePort XP adapters provide ports for transparent-print device nodes. These are in the format /dev/dgrasLNNlp. The utility "digiras_info" can determine the device name of a particular board. The user must be super-user to run this utility. The device nodes found in "/dev/DIGIras" have the format bMMpNNm and bMMpNNs. These devices maintain compatibility with the way devices were originally named in this driver. MM is a two digit base-10 number and is used to identify the board. Each board is assigned a number based on the board's instance number. Instance 0 is assigned '00', instance 1 is assigned '01', and so on. NN is a two digit base-10 number identifying the port. Devices ending with the letter "m" ("modem-control") block on DCD during open; those ending in "s" do not. The former are sometimes called dial-in nodes; the latter are dial-out nodes. AccelePort XP adapters provide ports for transparent-print device nodes. These are in the format /dev/DIGIras/bMMpNNlp. The names and locations of these devices can be customized. See the DIGIras.1 man page for details. NOTES: UTILITIES The following utilities are found in /opt/DIGIras/bin. There are links to most of these utilities in the /usr/sbin directory. Many of these utilities support man pages. * ditty - an stty(1)-like utility which gives easy command-line access to a number of the extended-functionality features of the Digi AccelePort adapters. * dm_gui - a graphical application which monitors and configures the adapter. * dm_admin - a command-line utility which configures and gathers info about the adapter. * ras_config - this utility has been replaced by dm_admin. It is included for users who are familiar with this utility. Note: this utility does not work for the AccelePort Xp line of adapters. * dpa - this utility is a curses based application to view and monitor port information. * dm_trace - this utility does data traces for the AccelePort RAS adapters. Note: this utility does not work for the AccelePort Xp line of adapters. * digiras_info - a command-line utility that prints the device name used with each adapter. * pamagent - this is an internet based monitoring utility that can be used in conjunction with Digi's PortAssist Manager. The PortAssist Manager application is supported on various Microsoft Windows and Unix platforms. PortAssist Manager is not included with this package. PortAssist Manager is found on the installation disk that came with the adapter or at Digi's internet site located at support.digi.com/support/utilities. * digiras_reset - this is a utility to hang-up modems, reset modems, and reset stuck serial ports. Enter "./digiras_reset -h" to display the list of options. NOTES: SETTING LESSER-USED AND ARBITRARY BAUD RATES Baud rates are set in the Solaris-standard way, stty, or from an application by struct termios, tcgetattr(), cfsetospeed(), and tcsetattr(). This provides ready access to the following baud rates: 50, 75, 110, 134, 150, 200, 300, 600, 1200, 1800, 2400, 4800, 9600, 19200, 38400, 57600, 76800, 115200, 153600, 230400, 307200 and 460800. Additional baud rates may be attained using the "fastbaud" feature provided by the ditty utility. Fastbaud turns on with the command ditty fastbaud and turns off with the command ditty -fastbaud When fastbaud is on, the following mappings are put into effect: Baud rate setting -> + fastbaud -> actual baud rate ---------------- --------------- 50 57,600 75 76,800 110 115,200 134 131,657 or arbitrary 150 153,600 200 230,400 300 460,800 600 921,600 All other baud rate settings are unaffected by the setting of fastbaud. Set the arbitrary baud rate above by using the command ditty cspeed [baud rate] The "cspeed" feature automatically sets fastbaud on *and* sets the baud rate setting to 134. Fastbaud is "sticky," meaning it retains its setting across opens and closes. NOTES: FEATURES FOR AccelePort Xp ADAPTERS Use the /kernel/drv/dgdxb.conf file to do the following: -- To turn on reduced-latency (i.e., interrupt-driven) mode, add one or more lines in the format: instanceN_use_interrupts=1; where N is replaced by the instance number of the adapter (which is printed at driver-load/boot time). In reduced-latency mode, data received at the port is delivered to the device node, and the application is faster. A side effect of this mode of behavior is elevated CPU usage. The latency/CPU usage tradeoff is fine-tuned by adding lines in the format instanceN_interrupt_period=X; where N is replaced by the instance number of the adapter, and X is the desired interrupt period in milliseconds. The default interrupt period is 10 milliseconds (1/100 second). -- To turn on ALTPIN behavior (swapping the DCD and DSR modem-control inputs) for all ports on an adapter, add one or more lines in the format instanceN_altpin=1; where N is replaced by the instance number of the adapter. ALTPIN makes DCD available when using an 8-pin RJ-45 connector. ALTPIN on any single port can be set using the ditty utility. HISTORY Version 1P of this driver package was released to Systems Assurance in February 2000 (i386) and March 2000 (SPARC). Version 2P of this driver package was released to Systems Assurance on April 20, 2000. Version 3P of this driver package was released to beta testers on April 27, 2000. Version A of this driver package was released for general availability on July 10, 2000. Version B of this driver package was released for general availability on October 24, 2000. Version C of this driver package was released for general availability on November 10, 2000. Version D of this driver package was released for general availability on December 22, 2000. Version E of this driver package was released for general availability on February 11, 2001. Copyright 1999-2002 Digi International