2.\" The following requests are required for all man pages. 3.Dd September 16, 1995 4.Os FreeBSD 5.Dt SI 4 i386 6.Sh NAME 7.Nm si 8.Nd Driver for Specialix International SI/XIO 8-32 port intelligent serial card. 9.Sh SYNOPSIS 10.Cd "device si0 at isa? tty irq 12 iomem 0xd0000 vector siintr" 11.Sh DESCRIPTION 12The Specialix SI and XIO hardware makes up an 8 to 32 port RS-232 serial 13multiplexor. 14.Pp 15This driver was ported and tested on an ISA bus machine, and has rudimentary 16support for operation on an EISA bus system as well, but as of this time the 17EISA version has not been tested by the Author - it may or may not work. It 18has yet to be updated to the 'new style' EISA configuration system. 19.Pp 20The system uses two components.. A "Host adapter", which is plugged into 21an ISA/EISA slot and provides intelligence and buffering/processing 22capabilities, as well as an external bus in the form of a 50 pin cable. 23.Pp 24On this cable, "modules" are connected. The "SI" module comes in a 4 and 8 25port version, and has simple UARTS. The "XIO" module comes only in an 8 port 26version, and has two powerful RISC-like UARTS as well. 27.Pp 28The host adapter polls and transfers data between the modules and the main 29Operating system. The Host adapter provides a 256 byte transmit and 256 byte 30receive FIFO for each of the 32 ports that it can maintain. 31.Pp 32The XIO module panels can operate each of their 8 ports at 115,200 baud, while 33the SI version can run at 57,600 baud. 34.Pp 35The host adapter uses a shared memory block in the traditional ISA bus 36"hole" between 0xA0000 and 0xEFFFF. The adapter can be configured outside 37range, but requires the memory range to be explicitly non-cached. The 38driver does not yet support this mode of operation. 39.Pp 40The adapter can use Irq's 11, 12 or 15. It is rumored that the ISA adapter 41cards provide their own tri-state drivers and pullups, and may be able to 42share an IRQ between all SI/XIO host cards. This has not been tested, and 43the driver does not support this mode of operation. The actual IRQ used is 44soft-configured onto the host card at boot time, but automatic selection 45of a free IRQ is not yet implemented in the 46.Tn FreeBSD 47version. 48.Pp 49The si device driver may have some of it's configuration settings changed 50at run-time with the 51.Xr sicontrol 8 52utility. 53.Pp 54The si device driver also responds to the 55.Xr comcontrol 8 56utility for configuring drain-on-close timeouts. 57.Pp 58An open on a /dev device node controlled by the si driver obeys the same 59semantics as the 60.Xr sio 4 61driver. It fully supports the usual semantics of the cua ports, and the 62"initial termios" and "locked termios" settings. In summary, an open on a 63tty port will block until DCD is raised, unless O_NONBLOCK is specified. 64CLOCAL is honored. An open on a cua port will always succeed, but DCD 65transitions will be honored after DCD rises for the first time. 66.Pp 67Normally, up to four SI/XIO host cards may be controlled by the si driver, 68but due to the lack of available interrupts that the card can be configured 69to use, only three may be presently used. Polling operation is not currently 70implemented, although it is a standard mode of operation for Specialix shipped 71drivers. Once this is implemented, all four cards may be used. 72.Pp 73The lowest 5 bits of the minor device number are used to select the port 74number on the module cluster. 75si driver, 76but due to the lack of available interrupts that the card can be configured 77to use, only three may be presently used. Polling operation is not currently 78implemented, although it is a standard mode of operation for Specialix shipped 79drivers. Once this is implemented, all four cards may be used. 80.Pp 81The lowest 5 bits of the minor device number are used to select the port 82number on the module cluster. The next 2 bits select which of 4 host adapter 83cards. This allows a maximum of 128 ports on this driver. 84.Pp 85Bit 7 is used to differentiate a tty/dialin port (bit 7=0) and a 86cua/callout port (bit 7=1). 87.Pp 88Bit 8 through 15 (on 89.Tn FreeBSD ) 90are unavailable as they are a shadow of the 91major device number. 92.Pp 93If bit 16 is a 1, the device node is referring to the "initial state" device. 94This "initial state" is used to prime the 95.Xr termios 4 96settings of the device when it is initially opened. 97If bit 17 is a 1, the device node is referring to the "locked state" device. 98The "locked state" is used to prevent the 99.Xr termios 4 100settings from being changed. 101.Pp 102To manipulate the initial/locked settings, the 103.Xr stty 1 104command is useful. When setting the "locked" variables, enabling the mode 105on the lock device will lock the termios mode, while disabling the mode will 106unlock it. 107.\" The following requests should be uncommented and used where appropriate. 108.\" This next request is for sections 2 and 3 function return values only. 109.\" .Sh RETURN VALUES 110.\" This next request is for sections 1, 6, 7 & 8 only 111.\" .Sh ENVIRONMENT 112.Sh FILES 113.Bl -tag -width /dev/si_control -compact 114.It Pa /dev/si_control 115global driver control file for 116.Xr sicontrol 8 117.It Pa /dev/ttyA* 118terminal/dialin ports 119.It Pa /dev/cuaA* 120dialout ports 121.It Pa /dev/ttyiA* 122initial termios state devices 123.It Pa /dev/ttylA* 124locked termios state devices 125.El 126.\" .Sh EXAMPLES 127.\" This next request is for sections 1, 6, 7 & 8 only 128.\" (command return values (to shell) and fprintf/stderr type diagnostics) 129.\" .Sh DIAGNOSTICS 130.\" The next request is for sections 2 and 3 error and signal handling only. 131.\" .Sh ERRORS 132.Sh SEE ALSO 133.Xr stty 1 , 134.Xr sio 4 , 135.Xr termios 4 , 136.Xr tty 4 , 137.Xr comcontrol 8 , 138.Xr sicontrol 8 139.\" .Sh STANDARDS 140.Sh HISTORY 141This driver is loosely based on driver code originating at Specialix, which 142was ported to run on BSDI by
| 2.\" The following requests are required for all man pages. 3.Dd September 16, 1995 4.Os FreeBSD 5.Dt SI 4 i386 6.Sh NAME 7.Nm si 8.Nd Driver for Specialix International SI/XIO 8-32 port intelligent serial card. 9.Sh SYNOPSIS 10.Cd "device si0 at isa? tty irq 12 iomem 0xd0000 vector siintr" 11.Sh DESCRIPTION 12The Specialix SI and XIO hardware makes up an 8 to 32 port RS-232 serial 13multiplexor. 14.Pp 15This driver was ported and tested on an ISA bus machine, and has rudimentary 16support for operation on an EISA bus system as well, but as of this time the 17EISA version has not been tested by the Author - it may or may not work. It 18has yet to be updated to the 'new style' EISA configuration system. 19.Pp 20The system uses two components.. A "Host adapter", which is plugged into 21an ISA/EISA slot and provides intelligence and buffering/processing 22capabilities, as well as an external bus in the form of a 50 pin cable. 23.Pp 24On this cable, "modules" are connected. The "SI" module comes in a 4 and 8 25port version, and has simple UARTS. The "XIO" module comes only in an 8 port 26version, and has two powerful RISC-like UARTS as well. 27.Pp 28The host adapter polls and transfers data between the modules and the main 29Operating system. The Host adapter provides a 256 byte transmit and 256 byte 30receive FIFO for each of the 32 ports that it can maintain. 31.Pp 32The XIO module panels can operate each of their 8 ports at 115,200 baud, while 33the SI version can run at 57,600 baud. 34.Pp 35The host adapter uses a shared memory block in the traditional ISA bus 36"hole" between 0xA0000 and 0xEFFFF. The adapter can be configured outside 37range, but requires the memory range to be explicitly non-cached. The 38driver does not yet support this mode of operation. 39.Pp 40The adapter can use Irq's 11, 12 or 15. It is rumored that the ISA adapter 41cards provide their own tri-state drivers and pullups, and may be able to 42share an IRQ between all SI/XIO host cards. This has not been tested, and 43the driver does not support this mode of operation. The actual IRQ used is 44soft-configured onto the host card at boot time, but automatic selection 45of a free IRQ is not yet implemented in the 46.Tn FreeBSD 47version. 48.Pp 49The si device driver may have some of it's configuration settings changed 50at run-time with the 51.Xr sicontrol 8 52utility. 53.Pp 54The si device driver also responds to the 55.Xr comcontrol 8 56utility for configuring drain-on-close timeouts. 57.Pp 58An open on a /dev device node controlled by the si driver obeys the same 59semantics as the 60.Xr sio 4 61driver. It fully supports the usual semantics of the cua ports, and the 62"initial termios" and "locked termios" settings. In summary, an open on a 63tty port will block until DCD is raised, unless O_NONBLOCK is specified. 64CLOCAL is honored. An open on a cua port will always succeed, but DCD 65transitions will be honored after DCD rises for the first time. 66.Pp 67Normally, up to four SI/XIO host cards may be controlled by the si driver, 68but due to the lack of available interrupts that the card can be configured 69to use, only three may be presently used. Polling operation is not currently 70implemented, although it is a standard mode of operation for Specialix shipped 71drivers. Once this is implemented, all four cards may be used. 72.Pp 73The lowest 5 bits of the minor device number are used to select the port 74number on the module cluster. 75si driver, 76but due to the lack of available interrupts that the card can be configured 77to use, only three may be presently used. Polling operation is not currently 78implemented, although it is a standard mode of operation for Specialix shipped 79drivers. Once this is implemented, all four cards may be used. 80.Pp 81The lowest 5 bits of the minor device number are used to select the port 82number on the module cluster. The next 2 bits select which of 4 host adapter 83cards. This allows a maximum of 128 ports on this driver. 84.Pp 85Bit 7 is used to differentiate a tty/dialin port (bit 7=0) and a 86cua/callout port (bit 7=1). 87.Pp 88Bit 8 through 15 (on 89.Tn FreeBSD ) 90are unavailable as they are a shadow of the 91major device number. 92.Pp 93If bit 16 is a 1, the device node is referring to the "initial state" device. 94This "initial state" is used to prime the 95.Xr termios 4 96settings of the device when it is initially opened. 97If bit 17 is a 1, the device node is referring to the "locked state" device. 98The "locked state" is used to prevent the 99.Xr termios 4 100settings from being changed. 101.Pp 102To manipulate the initial/locked settings, the 103.Xr stty 1 104command is useful. When setting the "locked" variables, enabling the mode 105on the lock device will lock the termios mode, while disabling the mode will 106unlock it. 107.\" The following requests should be uncommented and used where appropriate. 108.\" This next request is for sections 2 and 3 function return values only. 109.\" .Sh RETURN VALUES 110.\" This next request is for sections 1, 6, 7 & 8 only 111.\" .Sh ENVIRONMENT 112.Sh FILES 113.Bl -tag -width /dev/si_control -compact 114.It Pa /dev/si_control 115global driver control file for 116.Xr sicontrol 8 117.It Pa /dev/ttyA* 118terminal/dialin ports 119.It Pa /dev/cuaA* 120dialout ports 121.It Pa /dev/ttyiA* 122initial termios state devices 123.It Pa /dev/ttylA* 124locked termios state devices 125.El 126.\" .Sh EXAMPLES 127.\" This next request is for sections 1, 6, 7 & 8 only 128.\" (command return values (to shell) and fprintf/stderr type diagnostics) 129.\" .Sh DIAGNOSTICS 130.\" The next request is for sections 2 and 3 error and signal handling only. 131.\" .Sh ERRORS 132.Sh SEE ALSO 133.Xr stty 1 , 134.Xr sio 4 , 135.Xr termios 4 , 136.Xr tty 4 , 137.Xr comcontrol 8 , 138.Xr sicontrol 8 139.\" .Sh STANDARDS 140.Sh HISTORY 141This driver is loosely based on driver code originating at Specialix, which 142was ported to run on BSDI by
|