1.\" $NetBSD: zstty.4,v 1.14 2011/06/07 20:22:56 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 June 7, 2011 31.Dt ZSTTY 4 32.Os 33.Sh NAME 34.Nm zstty , 35.Nm zsc , 36.Nm zs 37.Nd 38.Tn Zilog 398530 Serial Communications Controller (SCC) for 40.Tn RS-232C , 41.Tn RS-422 , 42and 43.Tn RS-423 44.Sh SYNOPSIS 45.Cd options PPS_SYNC 46.Cd options PPS_TRAILING_EDGE 47.Ss alpha ( DEC 3000 ) 48.Cd "zsc0 at ioasic? offset 0x100000" 49.Cd "zsc1 at ioasic? offset 0x180000" 50.Cd "zstty0 at zsc0 channel ? # serial ports on B channels" 51.Cd "zstty2 at zsc1 channel ? # serial ports on B channels" 52.Cd "lkkbd0 at zsc1 channel ? # keyboard port on A channels" 53.Cd "vsms0 at zsc0 channel ? # mouse port on A channels" 54.Ss cesfic 55.Cd "zsc* at mainbus0" 56.Cd "zstty* at zsc? channel ?" 57.Ss mac68k and macppc 58.Cd "zsc0 at obio?" 59.Cd "zstty* at zsc? channel ?" 60.Cd options ZS_TXDMA 61.Ss mipsco 62.Cd "zsc0 at obio0 addr 0xbb000000" 63.Cd "zstty0 at zsc0 channel 0" 64.Cd "zstty1 at zsc0 channel 1" 65.Ss mvme68k 66.Cd "zsc* at pcc? ipl 4" 67.Cd "zsc* at pcctwo? ipl 4" 68.Cd "zstty* at zsc? channel ?" 69.Ss news68k 70.Cd "zsc0 at hb0 addr 0xe0d40000 ipl 5 vect 64 flags 0x0 # news1700" 71.Cd "zsc0 at hb1 addr 0xe1780000 ipl 5 vect 64 flags 0x1 # news1200" 72.Cd "zstty0 at zsc0 channel 0" 73.Cd "zstty1 at zsc0 channel 1" 74.Ss newsmips 75.Cd "zsc0 at hb0 addr 0xbfec0000 level 1 flags 0x0 # on-board" 76.Cd "zsc1 at hb0 addr 0xb8c40100 level 1 flags 0x1 # expansion board" 77.Cd "zsc2 at hb0 addr 0xb8c40104 level 1 flags 0x1" 78.Cd "zsc0 at ap?" 79.Cd "zstty0 at zsc0 channel 0" 80.Cd "zstty1 at zsc0 channel 1" 81.Cd "zstty2 at zsc1 channel 0" 82.Cd "zstty3 at zsc1 channel 1" 83.Cd "zstty4 at zsc2 channel 0" 84.Cd "zstty5 at zsc2 channel 1" 85.Ss next68k 86.Cd "zsc0 at intio? ipl 5" 87.Cd "#zsc1 at intio? ipl 5" 88.Cd "zstty0 at zsc0 channel 0 # ttya" 89.Cd "zstty1 at zsc0 channel 1 # ttyb" 90.Ss sgimips 91.Cd "zsc* at hpc0 offset ?" 92.Cd "zstty* at zsc? channel ?" 93.Ss sparc 94.Cd "zs0 at mainbus0 # sun4c" 95.Cd "zs0 at obio0 # sun4m" 96.Cd "zs0 at obio0 addr 0xf1000000 level 12 # sun4/200 and sun4/300" 97.Cd "zs0 at obio0 addr 0x01000000 level 12 # sun4/100" 98.Cd "zstty0 at zs0 channel 0 # ttya" 99.Cd "zstty1 at zs0 channel 1 # ttyb" 100.Cd "zs1 at mainbus0 # sun4c" 101.Cd "zs1 at obio0 # sun4m" 102.Cd "zs1 at obio0 addr 0xf0000000 level 12 # sun4/200 and sun4/300" 103.Cd "zs1 at obio0 addr 0x00000000 level 12 # sun4/100" 104.Cd "kbd0 at zs1 channel 0 # keyboard" 105.Cd "ms0 at zs1 channel 1 # mouse" 106.Cd "zs2 at obio0 addr 0xe0000000 level 12 # sun4/300" 107.Cd "zstty2 at zs2 channel 0 # ttyc" 108.Cd "zstty3 at zs2 channel 1 # ttyd" 109.Ss sun2 110.Cd "zs0 at obio0 addr 0x002000 # 2/120, 2/170" 111.Cd "zs1 at obmem0 addr 0x780000 # 2/120, 2/170" 112.Cd "zs0 at obio0 addr 0x7f2000 # 2/50" 113.Cd "zs1 at obio0 addr 0x7f1800 # 2/50" 114.Cd "zs2 at mbmem0 addr 0x080800 # 2/120, 2/170 (first sc SCSI)" 115.Cd "zs3 at mbmem0 addr 0x081000 # 2/120, 2/170 (first sc SCSI)" 116.Cd "zs4 at mbmem0 addr 0x084800 # 2/120, 2/170 (second sc SCSI)" 117.Cd "zs5 at mbmem0 addr 0x085000 # 2/120, 2/170 (second sc SCSI)" 118.Cd "zstty* at zs? channel ? # ttya" 119.Cd "kbd0 at zstty? # keyboard" 120.Cd "ms0 at zstty? # mouse" 121.Ss sun3 122.Cd "zstty0 at zsc1 channel 0 # ttya" 123.Cd "zstty1 at zsc1 channel 1 # ttyb" 124.Cd "kbd0 at zsc0 channel 0 # keyboard" 125.Cd "ms0 at zsc0 channel 1 # mouse" 126.Ss x68k 127.Cd "zsc0 at intio0 addr 0xe98000 intr 112" 128.Cd "zstty0 at zsc0 channel 0 # built-in RS-232C" 129.Cd "ms0 at zsc0 channel 1 # standard mouse" 130.Cd "#zsc1 at intio0 addr 0xeafc00 intr 113" 131.Cd "#zstty2 at zsc1 channel 0" 132.Cd "#zstty3 at zsc1 channel 1" 133.Cd "#zsc2 at intio0 addr 0xeafc10 intr 114" 134.Cd "#zstty4 at zsc2 channel 0" 135.Cd "#zstty5 at zsc2 channel 1" 136.Sh DESCRIPTION 137The 138.Nm 139driver provides 140.Tn TTY 141support for 142.Tn Zilog 1438530 Dual 144.Tn UART 145chips. 146.Pp 147Input and output for each line may set to any baud rate in the 148range 50 to 38400 (and higher on some machines). 149.Pp 150The 151.Em PPS_SYNC 152option enables code to use the Data Carrier Detect (DCD) signal line for attachment 153to an external precision clock source 154.Po 155e.g., 156.Tn GPS , 157.Tn CDMA 158.Pc 159which generates a Pulse Per Second (PPS) signal. 160This is used by 161.Xr ntpd 8 162to discipline the system clock, and more accurately count/measure time. 163See 164.Xr options 4 165for more discussion. 166.Sh FILES 167.Ss alpha 168.Bl -tag -width Pa 169.It Pa /dev/ttyB0 170.It Pa /dev/ttyB1 171.El 172.Ss others 173.Bl -tag -width Pa 174.It Pa /dev/ttya 175.It Pa /dev/ttyb 176.El 177.Sh DIAGNOSTICS 178.Bl -tag -width indent 179.It zs0*: fifo overflow 180.br 181The on-chip 182.Dq FIFO 183has overflowed and incoming data has been lost. 184This generally means the machine is not responding to 185interrupts from the ZS chip fast enough, which can be 186remedied only by using a lower baud rate. 187.It zs0*: ring overflow 188.br 189The software input 190.Qq ring 191has overflowed. 192This usually means input flow-control is not configured correctly 193.Pq i.e. incorrect cable wiring . 194.El 195.Sh SEE ALSO 196.Xr kbd 4 , 197.Xr ms 4 , 198.Xr options 4 , 199.Xr scc 4 , 200.Xr tty 4 , 201.Xr ntpd 8 202.Sh HISTORY 203The 204.Nm 205driver was derived from the 206.Nm sparc 207.Nm zs 208driver supplied with 209.Bx 4.4 210.Ux . 211.Sh CAVEATS 212.Pa /dev/ttyB1 213on alpha is created by 214.Xr MAKEDEV 8 215with minor number 2, so the corresponding device should be zstty2, not zstty1. 216.Sh BUGS 217The old 218.Tn Zilog 2198530 chip has a very small FIFO (3 bytes?) and 220therefore has very strict latency requirements for the 221interrupt service routine. 222This limits the usable baud rates on many machines. 223