a756a065cc
Describe some additional features of sio.
165 lines
5.9 KiB
Groff
165 lines
5.9 KiB
Groff
.\" Copyright (c) 1990, 1991 The Regents of the University of California.
|
|
.\" All rights reserved.
|
|
.\"
|
|
.\" This code is derived from software contributed to Berkeley by
|
|
.\" the Systems Programming Group of the University of Utah Computer
|
|
.\" Science Department.
|
|
.\" Redistribution and use in source and binary forms, with or without
|
|
.\" modification, are permitted provided that the following conditions
|
|
.\" are met:
|
|
.\" 1. Redistributions of source code must retain the above copyright
|
|
.\" notice, this list of conditions and the following disclaimer.
|
|
.\" 2. Redistributions in binary form must reproduce the above copyright
|
|
.\" notice, this list of conditions and the following disclaimer in the
|
|
.\" documentation and/or other materials provided with the distribution.
|
|
.\" 3. All advertising materials mentioning features or use of this software
|
|
.\" must display the following acknowledgement:
|
|
.\" This product includes software developed by the University of
|
|
.\" California, Berkeley and its contributors.
|
|
.\" 4. Neither the name of the University nor the names of its contributors
|
|
.\" may be used to endorse or promote products derived from this software
|
|
.\" without specific prior written permission.
|
|
.\"
|
|
.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
|
|
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
|
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
|
.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
|
|
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
|
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
|
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
|
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
|
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
|
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
|
.\" SUCH DAMAGE.
|
|
.\"
|
|
.\" from: @(#)dca.4 5.2 (Berkeley) 3/27/91
|
|
.\" from: com.4,v 1.1 1993/08/06 11:19:07 cgd Exp
|
|
.\" $Id: sio.4,v 1.1 1993/08/28 12:41:23 rgrimes Exp $
|
|
.\"
|
|
.Dd February 9, 1994
|
|
.Dt SIO 4 i386
|
|
.Os FreeBSD
|
|
.Sh NAME
|
|
.Nm sio
|
|
.Nd
|
|
fast interrupt driven asynchronous serial communications interface
|
|
.Sh SYNOPSIS
|
|
For standard ports:
|
|
.Cd "device sio0 at isa? port" \&"IO_COM1\&" tty irq 4 vector siointr
|
|
.Cd "device sio1 at isa? port" \&"IO_COM2\&" tty irq 3 vector siointr
|
|
.Cd "device sio2 at isa? port" \&"IO_COM3\&" tty irq 5 vector siointr
|
|
.Cd "device sio3 at isa? port" \&"IO_COM4\&" tty irq 9 vector siointr
|
|
.sp
|
|
For multiport cards:
|
|
.Cd "options" \&"COM_MULTIPORT\&"
|
|
.Cd "device sio4 at isa? port 0x2a0 tty irq 12 vector siointr flags 0x401"
|
|
.Cd "device sio5 at isa? port 0x2a8 tty vector siointr flags 0x401"
|
|
.Cd "device sio6 at isa? port 0x2b0 tty vector siointr flags 0x401"
|
|
.Cd "device sio7 at isa? port 0x2b8 tty vector siointr flags 0x401"
|
|
.sp
|
|
For bidirectional use of ports:
|
|
.Cd "options" \&"COM_BIDIR\&"
|
|
.sp
|
|
For control FIFO trigger:
|
|
.Cd "options" \&"FIFO_TRIGGER=FIFO_TRIGGER_14\&"
|
|
.sp
|
|
Use 0x02 bit in flags field to disable FIFO on specified port.
|
|
.Sh DESCRIPTION
|
|
The
|
|
.Nm sio
|
|
driver provides support for NS8250-, NS16450-, NS16550 and NS16550A-based
|
|
.Tn EIA
|
|
.Tn RS-232C
|
|
.Pf ( Tn CCITT
|
|
.Tn V.24 )
|
|
communications interfaces. The NS8250 and NS16450 have single character
|
|
buffers, the NS16550A has a 16 character FIFO buffer.
|
|
.Pp
|
|
Input and output for each line may set to one of following baud rates;
|
|
50, 75, 110, 134.5, 150, 300, 600, 1200, 1800, 2400, 4800, 9600,
|
|
19200, 38400, 57600, or 115200. Your hardware may limit your baud
|
|
rate choices.
|
|
.Pp
|
|
For multiport cards the
|
|
.Nm flags
|
|
keyword in the kernel configuration file determines which port of
|
|
your multiport card is the master device, and whether the
|
|
port is part of a multiport card. The master device is the port with
|
|
the shared interrupt register.
|
|
All ports of a multiport card report
|
|
pending interrupts using this single register.
|
|
.Pp
|
|
In the synopsis the
|
|
.Nm flags 0x401
|
|
means that the 4th port (sio4) is the master
|
|
device (so the MSB of the flags), and that the ports are part of a
|
|
multiport card (the LSB of the flags, actually only the LS
|
|
.Nm bit
|
|
).
|
|
F.e. if you have only two standard ports in addition to multiport
|
|
card, this
|
|
.Nm flags
|
|
will be
|
|
.Nm 0x201 .
|
|
.Pp
|
|
Which port is the master device depends on the card type. Consult
|
|
the hardware documentation of your card.
|
|
If you are shure, that your master device fully compatible with
|
|
standard port, you can ommit
|
|
.Nm flags
|
|
field from master device description line.
|
|
.Pp
|
|
Serial ports controlled by the
|
|
.Nm sio
|
|
driver can be used for both dialin and dialout. Use
|
|
.Xr comcontrol 8
|
|
to enable/disable bidirectional use of the
|
|
.Nm sio
|
|
ports. The minor number of the dialout
|
|
port is 128 higher than that of the corresponding dialin port. Use
|
|
.Xr stty 1
|
|
to enable or disable modem control as required by your setup.
|
|
.Sh FILES
|
|
.Bl -tag -width Pa
|
|
.It Pa /dev/tty0? for dialin
|
|
.It Pa /dev/cua0? for dialout
|
|
.El
|
|
.Sh DIAGNOSTICS
|
|
.Bl -diag
|
|
.It sio%d: silo overflow.
|
|
The single-character input
|
|
.Dq silo
|
|
has overflowed and incoming data has been lost.
|
|
.\".It com%d: weird interrupt: %x.
|
|
.\"The device has generated an unexpected interrupt
|
|
.\"with the code listed.
|
|
.El
|
|
.Sh SEE ALSO
|
|
.Xr tty 4 ,
|
|
.Xr comcontrol 8 ,
|
|
.Xr stty 1 .
|
|
.Sh HISTORY
|
|
The
|
|
.Nm
|
|
driver is derived from the
|
|
.Nm HP9000/300
|
|
.Nm dca
|
|
driver and is
|
|
.Ud
|
|
.Sh BUGS
|
|
Data loss is not near as likely on busy systems
|
|
but they still can occur at very high baud rates on slow systems. The
|
|
use of NS16550A's helps lot to handle high baud rates.
|
|
.Pp
|
|
The constants which define the locations
|
|
of the various serial ports are holdovers from
|
|
.Nm DOS .
|
|
As shown, hex addresses can be used instead.
|
|
.Pp
|
|
As usual, you get what you pay for; cheap NS16550 clones generally don't work.
|
|
.Pp
|
|
The multiport example has been successfully tested with an AST/4 card, your
|
|
mileage may vary however.
|
|
.Pp
|
|
This man page can not replace the Ultimate Doc(tm): the source.
|