Release Notes PN 93000127M1P for Digi Asynchronous Driver Package for QNX 4.X Version 2.1.0q. Quantum Software Systems QNX version 4.22 - 4.25 Software Package P/N 75000127M1P Diskette (3.5") P/N 40000754M1P Software Manual P/N 92000127D May 31, 2002 Digi Xi, Xe, Xr, Xem, C/X, COM/Xi INTRODUCTION This Digi software package includes device drivers for the Acceleport Xe, Acceleport Xr, Acceleport Xem Acceleport C/X, Xi and COM/Xi families of adapters. It is currently supported on QNX 4.23-4.25. Note : This package includes two separate device drivers named Dq.ser16 (for 16 bit environments) and Dq.ser32 (for 32 bit environments). Please consult the manual for proper installation instructions. SUPPORTED PRODUCTS ISA Bus ------- Acceleport Xe 2e, 4e, 8e (EIA232 & EIA422) Acceleport Xr 4r & 8r (EIA232 & EIA422) Acceleport Xem 4-64ports (EIA232 & EIA422) Acceleport C/X 8-128ports (EIA232) PCI/Xi, COM/Xi PCI Bus ------- Acceleport Xem 4-64ports (EIA232 & EIA422) Acceleport Xr 4r & 8r (EIA232) Acceleport C/X 8-128ports (EIA232) Acceleport Xr/422 4r/422, 8r/422 (EIA422) Acceleport 2r/920 2r/920 (EIA232) Acceleport 4r/920 4r/920 (EIA232) Acceleport 8r/920 8r/920 (EIA232) Microchannel Bus ---------------- MC/Xi ENHANCEMENTS * Added support for the 2 port PCI XR 920 * Added support for the PCI XR-422 * Added -P command line option for setting FEP polling interval (FEPPOLL) for improved latency response. * Update to latest on-board operating system (BIOS and FEP) files. * Added "-x" option for setting default runtime priority of the driver. * Added ability to specify outgoing BREAK duration by implementing IOCTL_STARTBREAK and IOCTL_STOPBREAK ioctls. * Added ability to determine and report length of incoming BREAKs. This consists of two parts: 1. Getting bitmap values to qnx_ioctl(). Dev.ser implements a status bitmap that is user-accessible via qnx_ioctl() and is described in /usr/local/system/qioctl.h. Previously, the BREAK bit was neither set nor reset. Now, the BREAK bit is set on receipt of an incoming BREAK and reset on receipt of the next non-BREAK event. Ideally, this bit would be reset on the termination of the BREAK sequence, but in practice, there is no way to determine a BREAK other than by the receipt of another event. 2. Faking the incoming BREAK end time. The FEP/OS can detect and generate an event at the start of a BREAK sequence however, the UARTs give no indication of the end of these sequences so no events are generated. The best solution to fake the incoming BREAK end time was to set the BREAK bit in the qnx_ioctl() bitmap when an incoming BREAK sequence starts, and cleared on receipt of the next non-BREAK event, for example on the receipt of a character or detection of a modem line status change. However, users who require precise indication of BREAK end time may use the following trick suggested by Gene Olson: connnect pin 3 on the Digi adapter side of the cable to some unused modem control line, say RI. Then, when an incoming BREAK starts or ends, a modem event (in this case an RI event) will be perceived and the qnx_ioctl() bitmap will be refreshed. * Added support for setting the software flow control characters at the Digi adapter level and developed a workaround for communicating these to the driver (because QNX normally expects to handle this at the higher DEV level and only calls the driver to communicate changes it cannot handle). As in previous versions, the start/stop characters are set with "stty" (e.g: "stty start=02 stop=03..."), but stty command changes (alone) to the start and stop characters are not communicated to the driver. However, since certain "stty" changes (including changes to: baudrate, clocal, hupcl, cread) always result in calls to the driver, the information is transferred by contriving to always include at least one change to one of these other settings when modifying the start or stop characters. For example: to set board-level software flow control to use Ctl/B and Ctl/C, use a temporary change to: the "clocal" setting. Assuming that the device is currently set for -clocal, set the start and stop characters with: stty clocal start=02 stop=03 +osflow +isflow