Deleted Added
full compact
si.4 (79727) si.4 (84877)
1.\" $FreeBSD: head/share/man/man4/si.4 79727 2001-07-14 19:41:16Z schweikh $
1.\" $FreeBSD: head/share/man/man4/si.4 84877 2001-10-13 09:08:37Z yokota $
2.Dd September 16, 1995
3.Os
4.Dt SI 4
5.Sh NAME
6.Nm si
7.Nd "driver for Specialix International SI/XIO or SX intelligent serial card"
8.Sh SYNOPSIS
9.Cd "device si"
2.Dd September 16, 1995
3.Os
4.Dt SI 4
5.Sh NAME
6.Nm si
7.Nd "driver for Specialix International SI/XIO or SX intelligent serial card"
8.Sh SYNOPSIS
9.Cd "device si"
10.Cd "device si0 at isa? irq 12 iomem 0xd0000"
10.Pp
11For ISA host cards put the following lines in
12.Pa /boot/device.hints :
13.Cd hint.si.0.at="isa"
14.Cd hint.si.0.maddr="0xd0000"
15.Cd hint.si.0.irq="12"
11.Sh DESCRIPTION
12The Specialix SI/XIO and SX hardware makes up an 8 to 32 port RS-232 serial
13multiplexor.
14.Pp
16.Sh DESCRIPTION
17The Specialix SI/XIO and SX hardware makes up an 8 to 32 port RS-232 serial
18multiplexor.
19.Pp
15The first instance of the device lines above is for EISA and PCI host cards,
16the second is for ISA host cards.
17.Pp
18The system uses two components: A "Host adapter", which is plugged into
19an ISA, EISA or PCI slot and provides intelligence and buffering/processing
20capabilities, as well as an external bus in the form of a 37 pin cable.
21.Pp
22On this cable, "modules" are connected. The "SI" module comes in a 4 and 8
23port version. The "XIO" and "SX" modules come only in
248 port versions.
25.Pp
26The host adapter polls and transfers data between the modules and the rest
27of the machine.
28The Host adapter provides a 256 byte transmit and 256 byte
29receive FIFO for each of the 32 ports that it can maintain.
30.Pp
31The XIO modules can operate each of their 8 ports at 115,200 baud.
32The SI version can run at 57,600 baud.
33The SX modules can operate each of their
348 ports at up to 921,600 baud.
35.Pp
36SX modules are only supported when connected to an SX host card.
37SI or
38XIO modules are supported on any host card.
39.Pp
40The host adapter uses a shared memory block in the traditional ISA bus
41"hole" between 0xA0000 and 0xEFFFF. The adapter can be configured outside
42range, but requires the memory range to be explicitly non-cached. The
43driver does not yet support this mode of operation.
44.Pp
45SX ISA Host cards have an 8/16 bit mode switch or jumper on them.
46This switch
47or jumper MUST be set for 8 bit mode.
48.Pp
49The ISA adapters can use Irq's 11, 12 or 15 (and 9 and 10 in the case of
50SX host cards).
51.Pp
52The si device driver may have some of its configuration settings changed
53at run-time with the
54.Xr sicontrol 8
55utility.
56.Pp
57The si device driver also responds to the
58.Xr comcontrol 8
59utility for configuring drain-on-close timeouts.
60.Pp
61The driver also defines 3 sysctl variables that can be manipulated:
62machdep.si_debug sets the debug level for the whole driver.
63It depends
64on the driver being compiled with SI_DEBUG. machdep.si_pollrate
65sets how often per second the driver polls for lost interrupts.
66machdep.si_realpoll sets whether or not the card will treat the
67poll intervals as if they were interrupts.
68.Pp
69An open on a /dev device node controlled by the si driver obeys the same
70semantics as the
71.Xr sio 4
72driver. It fully supports the usual semantics of the cua ports, and the
73"initial termios" and "locked termios" settings. In summary, an open on a
74tty port will block until DCD is raised, unless O_NONBLOCK is specified.
75CLOCAL is honored. An open on a cua port will always succeed, but DCD
76transitions will be honored after DCD rises for the first time.
77.Pp
78Up to four SI/XIO host cards may be controlled by the si driver.
79Due to the lack of available interrupts, only 3 ISA SI/XIO host cards can be
80used at once.
81.Pp
82The lowest 5 bits of the minor device number are used to select the port
83number on the module cluster.
84The next 2 bits select which of 4 host adapter
85cards. This allows a maximum of 128 ports on this driver.
86.Pp
87Bit 7 is used to differentiate a tty/dialin port (bit 7=0) and a
88cua/callout port (bit 7=1).
89.Pp
90Bit 8 through 15 (on
91.Fx )
92are unavailable as they are a shadow of the
93major device number.
94.Pp
95If bit 16 is a 1, the device node is referring to the "initial state" device.
96This "initial state" is used to prime the
97.Xr termios 4
98settings of the device when it is initially opened.
99If bit 17 is a 1, the device node is referring to the "locked state" device.
100The "locked state" is used to prevent the
101.Xr termios 4
102settings from being changed.
103.Pp
104To manipulate the initial/locked settings, the
105.Xr stty 1
106command is useful. When setting the "locked" variables, enabling the mode
107on the lock device will lock the termios mode, while disabling the mode will
108unlock it.
109.Sh FILES
110.Bl -tag -width /dev/si_control -compact
111.It Pa /dev/si_control
112global driver control file for
113.Xr sicontrol 8
114.It Pa /dev/ttyA*
115terminal/dialin ports
116.It Pa /dev/cuaA*
117dialout ports
118.It Pa /dev/ttyiA*
119initial termios state devices
120.It Pa /dev/ttylA*
121locked termios state devices
122.It Pa /dev/cuaiA*
123initial termios state devices for dialout ports
124.It Pa /dev/cualA*
125locked termios state devices for dialout ports
126.El
127.Sh SEE ALSO
128.Xr stty 1 ,
129.Xr sio 4 ,
130.Xr termios 4 ,
131.Xr tty 4 ,
132.Xr comcontrol 8 ,
133.Xr sicontrol 8
134.Sh HISTORY
135This driver is loosely based on driver code originating at Specialix, which
136was ported to run on BSDI by
137.An Andy Rutter Aq andy@specialix.co.uk .
138The System V driver source is/was available by ftp from
139.Sy ftp.specialix.co.uk .
140.Pp
141This driver is not supported by Specialix International.
142.Sh AUTHORS
143.An -nosplit
144.An Peter Wemm Aq peter@netplex.com.au
145obtained the code from
146.An Andy Rutter
147and ported it to
148.Fx
149and threw the man page together.
150.An Bruce Evans Aq bde@zeta.org.au
151provided a large amount of assistance during porting.
152.An Nick Sayer Aq nick@specialix.com
153wrote the EISA, PCI and SX portions.
154.Sh BUGS
155The interrupt tuning rate is not believed to be optimal at this time for
156maximum efficiency.
157.Pp
158Polled mode (a feature of standard Specialix drivers) is not implemented,
159but it can be approximated by turning on machdep.si_realpoll. The poll
160frequency is set by machdep.si_pollrate (in units of 1/100th of a second).
161.Pp
162The driver does not yet support baud rates higher than 115,200 on SX
163modules.
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.
167.Pp
168Multiple host cards are supported although combinations of hosts on
169different bus types have not been tested - device numbering is known to
170be a problem and may lead to unexpected results.
20The system uses two components: A "Host adapter", which is plugged into
21an ISA, EISA or PCI slot and provides intelligence and buffering/processing
22capabilities, as well as an external bus in the form of a 37 pin cable.
23.Pp
24On this cable, "modules" are connected. The "SI" module comes in a 4 and 8
25port version. The "XIO" and "SX" modules come only in
268 port versions.
27.Pp
28The host adapter polls and transfers data between the modules and the rest
29of the machine.
30The Host adapter provides a 256 byte transmit and 256 byte
31receive FIFO for each of the 32 ports that it can maintain.
32.Pp
33The XIO modules can operate each of their 8 ports at 115,200 baud.
34The SI version can run at 57,600 baud.
35The SX modules can operate each of their
368 ports at up to 921,600 baud.
37.Pp
38SX modules are only supported when connected to an SX host card.
39SI or
40XIO modules are supported on any host card.
41.Pp
42The host adapter uses a shared memory block in the traditional ISA bus
43"hole" between 0xA0000 and 0xEFFFF. The adapter can be configured outside
44range, but requires the memory range to be explicitly non-cached. The
45driver does not yet support this mode of operation.
46.Pp
47SX ISA Host cards have an 8/16 bit mode switch or jumper on them.
48This switch
49or jumper MUST be set for 8 bit mode.
50.Pp
51The ISA adapters can use Irq's 11, 12 or 15 (and 9 and 10 in the case of
52SX host cards).
53.Pp
54The si device driver may have some of its configuration settings changed
55at run-time with the
56.Xr sicontrol 8
57utility.
58.Pp
59The si device driver also responds to the
60.Xr comcontrol 8
61utility for configuring drain-on-close timeouts.
62.Pp
63The driver also defines 3 sysctl variables that can be manipulated:
64machdep.si_debug sets the debug level for the whole driver.
65It depends
66on the driver being compiled with SI_DEBUG. machdep.si_pollrate
67sets how often per second the driver polls for lost interrupts.
68machdep.si_realpoll sets whether or not the card will treat the
69poll intervals as if they were interrupts.
70.Pp
71An open on a /dev device node controlled by the si driver obeys the same
72semantics as the
73.Xr sio 4
74driver. It fully supports the usual semantics of the cua ports, and the
75"initial termios" and "locked termios" settings. In summary, an open on a
76tty port will block until DCD is raised, unless O_NONBLOCK is specified.
77CLOCAL is honored. An open on a cua port will always succeed, but DCD
78transitions will be honored after DCD rises for the first time.
79.Pp
80Up to four SI/XIO host cards may be controlled by the si driver.
81Due to the lack of available interrupts, only 3 ISA SI/XIO host cards can be
82used at once.
83.Pp
84The lowest 5 bits of the minor device number are used to select the port
85number on the module cluster.
86The next 2 bits select which of 4 host adapter
87cards. This allows a maximum of 128 ports on this driver.
88.Pp
89Bit 7 is used to differentiate a tty/dialin port (bit 7=0) and a
90cua/callout port (bit 7=1).
91.Pp
92Bit 8 through 15 (on
93.Fx )
94are unavailable as they are a shadow of the
95major device number.
96.Pp
97If bit 16 is a 1, the device node is referring to the "initial state" device.
98This "initial state" is used to prime the
99.Xr termios 4
100settings of the device when it is initially opened.
101If bit 17 is a 1, the device node is referring to the "locked state" device.
102The "locked state" is used to prevent the
103.Xr termios 4
104settings from being changed.
105.Pp
106To manipulate the initial/locked settings, the
107.Xr stty 1
108command is useful. When setting the "locked" variables, enabling the mode
109on the lock device will lock the termios mode, while disabling the mode will
110unlock it.
111.Sh FILES
112.Bl -tag -width /dev/si_control -compact
113.It Pa /dev/si_control
114global driver control file for
115.Xr sicontrol 8
116.It Pa /dev/ttyA*
117terminal/dialin ports
118.It Pa /dev/cuaA*
119dialout ports
120.It Pa /dev/ttyiA*
121initial termios state devices
122.It Pa /dev/ttylA*
123locked termios state devices
124.It Pa /dev/cuaiA*
125initial termios state devices for dialout ports
126.It Pa /dev/cualA*
127locked termios state devices for dialout ports
128.El
129.Sh SEE ALSO
130.Xr stty 1 ,
131.Xr sio 4 ,
132.Xr termios 4 ,
133.Xr tty 4 ,
134.Xr comcontrol 8 ,
135.Xr sicontrol 8
136.Sh HISTORY
137This driver is loosely based on driver code originating at Specialix, which
138was ported to run on BSDI by
139.An Andy Rutter Aq andy@specialix.co.uk .
140The System V driver source is/was available by ftp from
141.Sy ftp.specialix.co.uk .
142.Pp
143This driver is not supported by Specialix International.
144.Sh AUTHORS
145.An -nosplit
146.An Peter Wemm Aq peter@netplex.com.au
147obtained the code from
148.An Andy Rutter
149and ported it to
150.Fx
151and threw the man page together.
152.An Bruce Evans Aq bde@zeta.org.au
153provided a large amount of assistance during porting.
154.An Nick Sayer Aq nick@specialix.com
155wrote the EISA, PCI and SX portions.
156.Sh BUGS
157The interrupt tuning rate is not believed to be optimal at this time for
158maximum efficiency.
159.Pp
160Polled mode (a feature of standard Specialix drivers) is not implemented,
161but it can be approximated by turning on machdep.si_realpoll. The poll
162frequency is set by machdep.si_pollrate (in units of 1/100th of a second).
163.Pp
164The driver does not yet support baud rates higher than 115,200 on SX
165modules.
166.Pp
167Operation outside the traditional ISA "hole" is not yet supported, although it
168should work if the test is removed from the probe routine.
169.Pp
170Multiple host cards are supported although combinations of hosts on
171different bus types have not been tested - device numbering is known to
172be a problem and may lead to unexpected results.