xref: /netbsd-src/share/man/man4/com.4 (revision da024534fc4e967d9c532b0e0d1d683df4f3cc39)
1.\"	$NetBSD: com.4,v 1.23 2017/05/21 09:12:19 wiz Exp $
2.\"
3.\" Copyright (c) 1990, 1991 The Regents of the University of California.
4.\" All rights reserved.
5.\"
6.\" This code is derived from software contributed to Berkeley by
7.\" the Systems Programming Group of the University of Utah Computer
8.\" Science Department.
9.\" Redistribution and use in source and binary forms, with or without
10.\" modification, are permitted provided that the following conditions
11.\" are met:
12.\" 1. Redistributions of source code must retain the above copyright
13.\"    notice, this list of conditions and the following disclaimer.
14.\" 2. Redistributions in binary form must reproduce the above copyright
15.\"    notice, this list of conditions and the following disclaimer in the
16.\"    documentation and/or other materials provided with the distribution.
17.\" 3. Neither the name of the University nor the names of its contributors
18.\"    may be used to endorse or promote products derived from this software
19.\"    without specific prior written permission.
20.\"
21.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
22.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
23.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
24.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
25.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
26.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
27.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
28.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
29.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
30.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
31.\" SUCH DAMAGE.
32.\"
33.\"     from: @(#)dca.4	5.2 (Berkeley) 3/27/91
34.\"
35.Dd March 4, 2017
36.Dt COM 4
37.Os
38.Sh NAME
39.Nm com
40.Nd serial communications interface for
41.Tn RS-232C
42.Sh SYNOPSIS
43.Cd "com0 at isa? port" \&"IO_COM1\&" irq 4
44.Cd "com1 at isa? port" \&"IO_COM2\&" irq 3
45.Cd "com* at acpi?"
46.Cd "com* at cardbus?"
47.Cd "com* at isapnp?"
48.Cd "com* at mca? slot ?"
49.Cd "com* at mhzc?"
50.Cd "com* at ofisa?"
51.Cd "com* at pcmcia?"
52.Cd "com* at pcmcom?"
53.Cd "com* at pnpbios? index ?"
54.Cd "com* at puc? port ?"
55.Cd "com* at xirc?"
56.Cd options COM_HAYESP
57.Cd options PPS_SYNC
58.Cd options PPS_TRAILING_EDGE
59.Cd options RND_COM
60.Ss Amiga
61.Cd "com* at clockport?"
62.Ss Arm32
63.Cd "com0 at mainbus? base 0x00210fe0"
64.Cd "com1 at mainbus? base 0x00210be0"
65.Cd "com0 at pxaip?"
66.Ss HP 9000/300 and 400 Series
67.Cd "com* at dio? scode ?"
68.Cd "com* at frodo? offset ?"
69.Ss HP 9000/700 and 800 Series
70.Cd "com* at dino?"
71.Cd "com* at gsc?"
72.Cd "com* at ssio?"
73.Ss IBM PowerPC 4xx
74.Cd "com* at opb?"
75.Ss SPARC
76.Cd "com* at ebus?"
77.Cd "com* at obio0"
78.Ss x68k
79.Cd "com0 at intio0 addr 0xefff00 intr 240"
80.Cd "com1 at intio0 addr 0xefff10 intr 241"
81.Sh DESCRIPTION
82The
83.Nm
84driver provides support for NS8250-, NS16450-, and NS16550-based
85.Tn EIA
86.Tn RS-232C
87.Pf ( Tn CCITT
88.Tn V.28 )
89communications interfaces.
90The NS8250 and NS16450 have single character
91buffers, and the NS16550 has a 16 character buffer.
92.Pp
93Input and output for each line may set to one of following baud rates;
9450, 75, 110, 134.5, 150, 300, 600, 1200, 1800, 2400, 4800, 9600,
9519200, 38400, 57600, or 115200, or any other baud rate which is a factor
96of 115200.
97.Pp
98The ttyXX devices are traditional dial-in devices; the dtyXX devices are
99used for dial-out.
100(See
101.Xr tty 4 . )
102.Pp
103.Cd options COM_HAYESP
104adds support for the Hayes ESP serial board.
105.Pp
106.Cd options PPS_SYNC
107enables code to use the Data Carrier Detect (DCD) signal line for attachment
108to an external precision clock source
109.Po
110e.g.,
111.Tn GPS ,
112.Tn CDMA
113.Pc
114which generates a Pulse Per Second (PPS) signal.
115This is used by
116.Xr ntpd 8
117to discipline the system clock, and more accurately count/measure time.
118See
119.Xr options 4
120for more discussion.
121.Pp
122With
123.Cd options RND_COM
124enabled, the
125.Nm
126driver can be used to collect entropy for the
127.Xr rnd 4
128entropy pool.
129The entropy is generated from interrupt randomness.
130.Ss Arm32 specific
131If
132.Dq flags 1
133is specified, the
134.Nm
135driver will not set the
136.Dv MCR_IENABLE
137bit on the UART.
138This is mainly for use on AST multiport boards, where the
139.Dv MCR_IENABLE
140bit is used to control whether or not the devices use a shared
141interrupt.
142.Sh FILES
143.Bl -tag -width Pa -compact
144.It Pa /dev/dty00
145.It Pa /dev/dty01
146.It Pa /dev/dty02
147.It Pa /dev/tty00
148.It Pa /dev/tty01
149.It Pa /dev/tty02
150.El
151.Sh DIAGNOSTICS
152.Bl -diag
153.It com%d: %d silo overflows
154The input
155.Dq silo
156has overflowed and incoming data has been lost.
157.It com%d: weird interrupt: iir=%x
158The device has generated an unexpected interrupt
159with the code listed.
160.El
161.Sh SEE ALSO
162.Xr acpi 4 ,
163.Xr ast 4 ,
164.Xr cardbus 4 ,
165.Xr i386/pnpbios 4 ,
166.Xr isa 4 ,
167.Xr isapnp 4 ,
168.Xr mca 4 ,
169.Xr mhzc 4 ,
170.Xr ofisa 4 ,
171.Xr options 4 ,
172.Xr pcmcia 4 ,
173.Xr pcmcom 4 ,
174.Xr puc 4 ,
175.Xr pxaip 4 ,
176.Xr rtfps 4 ,
177.Xr tty 4 ,
178.Xr xirc 4 ,
179.Xr ntpd 8
180.Sh HISTORY
181The
182.Nm
183driver was originally derived from the HP9000/300
184.Ic dca
185driver.
186.Sh BUGS
187Data loss is possible on busy systems with unbuffered UARTs at high speed.
188.Pp
189The name of this driver and the constants which define the locations
190of the various serial ports are holdovers from
191.Tn DOS .
192