Deleted Added
full compact
si.4 (24090) si.4 (34504)
1.\" $Id: si.4,v 1.9 1997/02/22 13:25:41 peter Exp $
1.\" $Id: si.4,v 1.10 1997/03/21 20:04:21 mpp Exp $
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
143.Sy Andy Rutter <andy@specialix.co.uk> .
143.An Andy Rutter Aq andy@specialix.co.uk .
144The System V driver source is/was available by ftp from
145.Sy ftp.specialix.co.uk .
146.Pp
147This driver is not supported by Specialix International.
148.Sh AUTHORS
144The System V driver source is/was available by ftp from
145.Sy ftp.specialix.co.uk .
146.Pp
147This driver is not supported by Specialix International.
148.Sh AUTHORS
149.Sy Peter Wemm <peter@freebsd.org>
149.An Peter Wemm Aq peter@FreeBSD.org
150obtained the code from Andy Rutter and ported it to
150obtained the code from Andy Rutter and ported it to
151.Tn FreeBSD ,
151.Bx Free ,
152with a large
153amount of invaluable assistance from
152with a large
153amount of invaluable assistance from
154.Sy Bruce Evans <bde@zeta.org.au>
154.An Bruce Evans Aq bde@zeta.org.au
155.Pp
155.Pp
156Man page by Peter Wemm.
156Man page by
157.An Peter Wemm .
157.Sh BUGS
158The EISA support is untested.
159.Pp
160The interrupt tuning rate is not believed to be optimal at this time for
161maximum efficiency.
162.Pp
163POLL mode is not implemented yet.
164.Pp
165Operation outside the traditional ISA "hole" is not yet supported, although it
166should work if the test is removed from the probe routine.
158.Sh BUGS
159The EISA support is untested.
160.Pp
161The interrupt tuning rate is not believed to be optimal at this time for
162maximum efficiency.
163.Pp
164POLL mode is not implemented yet.
165.Pp
166Operation outside the traditional ISA "hole" is not yet supported, although it
167should work if the test is removed from the probe routine.