xref: /netbsd-src/share/man/man4/zstty.4 (revision 0b69da803e940a6ee79b6b67d38506547b85a2f5)
1.\"	$NetBSD: zstty.4,v 1.16 2017/09/12 14:48:11 wiz Exp $
2.\"
3.\" Copyright (c) 1997 The NetBSD Foundation, Inc.
4.\" All rights reserved.
5.\"
6.\" This code is derived from software contributed to The NetBSD Foundation
7.\" by Gordon W. Ross.
8.\"
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.\"
18.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
19.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
20.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
21.\" PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
22.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
23.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
24.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
25.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
26.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
27.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
28.\" POSSIBILITY OF SUCH DAMAGE.
29.\"
30.Dd September 12, 2017
31.Dt ZSTTY 4
32.Os
33.Sh NAME
34.Nm zstty ,
35.Nm zsc ,
36.Nm zs
37.Nd Zilog 8530 Serial Communications Controller (SCC) for RS-232C, RS-422, and RS-423
38.Sh SYNOPSIS
39.Cd options PPS_SYNC
40.Cd options PPS_TRAILING_EDGE
41.Ss alpha ( DEC 3000 )
42.Cd "zsc0	at ioasic? offset 0x100000"
43.Cd "zsc1	at ioasic? offset 0x180000"
44.Cd "zstty0	at zsc0 channel ?	# serial ports on B channels"
45.Cd "zstty2	at zsc1 channel ?	# serial ports on B channels"
46.Cd "lkkbd0	at zsc1 channel ?	# keyboard port on A channels"
47.Cd "vsms0	at zsc0 channel ?	# mouse port on A channels"
48.Ss cesfic
49.Cd "zsc*	at mainbus0"
50.Cd "zstty*	at zsc? channel ?"
51.Ss cobalt
52.Cd "zsc0	at mainbus? addr 0x1c800000 irq 4"
53.Cd "zstty0	at zsc0 channel 0"
54.Cd "zstty1	at zsc0 channel 1"
55.Ss ews4800mips
56.Cd "zsc0	at sbdio?"
57.Cd "zstty0	at zsc? channel 0	# SIO ch-A"
58.Cd "zstty1	at zsc? channel 1	# SIO ch-B"
59.Ss mac68k and macppc
60.Cd "zsc0	at obio?"
61.Cd "zstty*	at zsc? channel ?"
62.Cd options ZS_TXDMA
63.Ss mipsco
64.Cd "zsc0	at obio0 addr 0xbb000000"
65.Cd "zstty0	at zsc0 channel 0"
66.Cd "zstty1	at zsc0 channel 1"
67.Ss mvme68k
68.Cd "zsc*	at pcc? ipl 4"
69.Cd "zsc*	at pcctwo? ipl 4"
70.Cd "zstty*	at zsc? channel ?"
71.Ss news68k
72.Cd "zsc0	at hb0 addr 0xe0d40000 ipl 5 vect 64 flags 0x0	# news1700"
73.Cd "zsc0	at hb1 addr 0xe1780000 ipl 5 vect 64 flags 0x1	# news1200"
74.Cd "zstty0	at zsc0 channel 0"
75.Cd "zstty1	at zsc0 channel 1"
76.Ss newsmips
77.Cd "zsc0	at hb0 addr 0xbfec0000 level 1 flags 0x0	# on-board"
78.Cd "zsc1	at hb0 addr 0xb8c40100 level 1 flags 0x1	# expansion board"
79.Cd "zsc2	at hb0 addr 0xb8c40104 level 1 flags 0x1"
80.Cd "zsc0	at ap?"
81.Cd "zstty0	at zsc0 channel 0"
82.Cd "zstty1	at zsc0 channel 1"
83.Cd "zstty2	at zsc1 channel 0"
84.Cd "zstty3	at zsc1 channel 1"
85.Cd "zstty4	at zsc2 channel 0"
86.Cd "zstty5	at zsc2 channel 1"
87.Ss next68k
88.Cd "zsc0	at intio? ipl 5"
89.Cd "#zsc1	at intio? ipl 5"
90.Cd "zstty0	at zsc0 channel 0	# Serial Port A"
91.Cd "zstty1	at zsc0 channel 1	# Serial Port B"
92.Ss pmax
93.Cd "zsc0	at	ioasic? offset 0x100000 # Z85C30"
94.Cd "zsc1	at	ioasic? offset 0x180000 # Z85C30"
95.Cd "zstty*	at	zsc? channel ?		# serial ports on B/A channels"
96.Cd "lkkbd*	at	zsc1 channel ?		# keyboard port on A channels"
97.Cd "vsms*	at	zsc0 channel ?		# mouse port on A channels"
98.Ss sgimips
99.Cd "zsc* 	at hpc0 offset ?"
100.Cd "zstty*	at zsc? channel ?"
101.Ss sparc
102.Cd "zs0	at mainbus0				# sun4c"
103.Cd "zs0	at obio0				# sun4m"
104.Cd "zs0	at obio0 addr 0xf1000000 level 12	# sun4/200 and sun4/300"
105.Cd "zs0	at obio0 addr 0x01000000 level 12	# sun4/100"
106.Cd "zstty0	at zs0 channel 0			# ttya"
107.Cd "zstty1	at zs0 channel 1			# ttyb"
108.Cd "zs1	at mainbus0				# sun4c"
109.Cd "zs1	at obio0				# sun4m"
110.Cd "zs1	at obio0 addr 0xf0000000 level 12	# sun4/200 and sun4/300"
111.Cd "zs1	at obio0 addr 0x00000000 level 12	# sun4/100"
112.Cd "kbd0	at zs1 channel 0			# keyboard"
113.Cd "ms0	at zs1 channel 1			# mouse"
114.Cd "zs2	at obio0 addr 0xe0000000 level 12	# sun4/300"
115.Cd "zstty2	at zs2 channel 0			# ttyc"
116.Cd "zstty3	at zs2 channel 1			# ttyd"
117.Ss sparc64
118.Cd "zs*	at sbus? slot ? offset ?"
119.Cd "zs*	at fhc?"
120.Cd "zstty*	at zs? channel ?			# ttys"
121.Cd "kbd0	at zstty?"
122.Cd "ms0	at zstty?"
123.Ss sun2
124.Cd "zs0	at obio0 addr 0x002000	# 2/120, 2/170"
125.Cd "zs1	at obmem0 addr 0x780000	# 2/120, 2/170"
126.Cd "zs0	at obio0 addr 0x7f2000	# 2/50"
127.Cd "zs1	at obio0 addr 0x7f1800	# 2/50"
128.Cd "zs2	at mbmem0 addr 0x080800	# 2/120, 2/170 (first sc SCSI)"
129.Cd "zs3	at mbmem0 addr 0x081000	# 2/120, 2/170 (first sc SCSI)"
130.Cd "zs4	at mbmem0 addr 0x084800	# 2/120, 2/170 (second sc SCSI)"
131.Cd "zs5	at mbmem0 addr 0x085000	# 2/120, 2/170 (second sc SCSI)"
132.Cd "zstty*	at zs? channel ?	# ttya"
133.Cd "kbd0	at zstty?		# keyboard"
134.Cd "ms0	at zstty?		# mouse"
135.Ss sun3
136.Cd "zstty0	at zsc1 channel 0	# ttya"
137.Cd "zstty1	at zsc1 channel 1	# ttyb"
138.Cd "kbd0	at zsc0 channel 0	# keyboard"
139.Cd "ms0	at zsc0 channel 1	# mouse"
140.Ss x68k
141.Cd "zsc0	at intio0 addr 0xe98000 intr 112"
142.Cd "zstty0	at zsc0 channel 0		# built-in RS-232C"
143.Cd "ms0	at zsc0 channel 1		# standard mouse"
144.Cd "#zsc1	at intio0 addr 0xeafc00 intr 113"
145.Cd "#zstty2	at zsc1 channel 0"
146.Cd "#zstty3	at zsc1 channel 1"
147.Cd "#zsc2	at intio0 addr 0xeafc10 intr 114"
148.Cd "#zstty4	at zsc2 channel 0"
149.Cd "#zstty5	at zsc2 channel 1"
150.Sh DESCRIPTION
151The
152.Nm
153driver provides TTY support for Zilog 8530 Dual UART chips.
154.Pp
155Input and output for each line may set to any baud rate in the
156range 50 to 38400 (and higher on some machines).
157.Pp
158The
159.Em PPS_SYNC
160option enables code to use the Data Carrier Detect (DCD) signal line for attachment
161to an external precision clock source (e.g., GPS, CDMA)
162which generates a Pulse Per Second (PPS) signal.
163This is used by
164.Xr ntpd 8
165to discipline the system clock, and more accurately count/measure time.
166See
167.Xr options 4
168for more discussion.
169.Sh FILES
170.Ss alpha
171.Bl -tag -width Pa
172.It Pa /dev/ttyB0
173.It Pa /dev/ttyB1
174.El
175.Ss pmax
176.Bl -tag -width Pa
177.It Pa /dev/ttya
178.It Pa /dev/ttyb
179.It Pa /dev/ttyc
180.It Pa /dev/ttyd
181.El
182.Ss sparc
183.Bl -tag -width Pa
184.It Pa /dev/ttya
185.It Pa /dev/ttyb
186.It Pa /dev/ttyc
187.It Pa /dev/ttyd
188.El
189.Ss sparc64, sun2, sun3
190.Bl -tag -width Pa
191.It Pa /dev/ttya
192.It Pa /dev/ttyb
193.El
194.Ss others
195.Bl -tag -width Pa
196.It Pa /dev/ttyZ0
197.It Pa /dev/ttyZ1
198.El
199.Sh DIAGNOSTICS
200.Bl -tag -width indent
201.It zs0*: fifo overflow
202.br
203The on-chip
204.Dq FIFO
205has overflowed and incoming data has been lost.
206This generally means the machine is not responding to
207interrupts from the ZS chip fast enough, which can be
208remedied only by using a lower baud rate.
209.It zs0*: ring overflow
210.br
211The software input
212.Qq ring
213has overflowed.
214This usually means input flow-control is not configured correctly
215.Pq i.e. incorrect cable wiring .
216.El
217.Sh SEE ALSO
218.Xr kbd 4 ,
219.Xr ms 4 ,
220.Xr options 4 ,
221.Xr tty 4 ,
222.Xr ntpd 8
223.Sh HISTORY
224The
225.Nm
226driver was derived from the
227.Nm sparc
228.Nm zs
229driver supplied with
230.Bx 4.4
231.Ux .
232.Sh CAVEATS
233.Pa /dev/ttyB1
234on alpha is created by
235.Xr MAKEDEV 8
236with minor number 2, so the corresponding device should be zstty2, not zstty1.
237.Sh BUGS
238The old Zilog 8530 chip has a very small FIFO (3 bytes?) and
239therefore has very strict latency requirements for the
240interrupt service routine.
241This limits the usable baud rates on many machines.
242