From 9903e56630d84dbd79863b9df960a71951dda6b6 Mon Sep 17 00:00:00 2001 From: "Cynthia A. E. Livingston" Date: Thu, 28 Mar 1991 08:46:18 -0800 Subject: [PATCH] macro and text revision (-mdoc version 3) SCCS-vsn: share/man/man4/man4.hp300/autoconf.4 5.2 SCCS-vsn: share/man/man4/man4.hp300/cons.4 5.2 SCCS-vsn: share/man/man4/man4.hp300/ct.4 5.2 SCCS-vsn: share/man/man4/man4.hp300/dca.4 5.2 SCCS-vsn: share/man/man4/man4.hp300/dcl.4 5.2 SCCS-vsn: share/man/man4/man4.hp300/dcm.4 5.2 SCCS-vsn: share/man/man4/man4.hp300/dv.4 5.2 SCCS-vsn: share/man/man4/man4.hp300/gb.4 5.2 SCCS-vsn: share/man/man4/man4.hp300/grf.4 5.2 SCCS-vsn: share/man/man4/man4.hp300/hil.4 5.2 SCCS-vsn: share/man/man4/man4.hp300/intro.4 5.2 SCCS-vsn: share/man/man4/man4.hp300/ite.4 5.2 SCCS-vsn: share/man/man4/man4.hp300/le.4 5.2 SCCS-vsn: share/man/man4/man4.hp300/mem.4 5.2 SCCS-vsn: share/man/man4/man4.hp300/ppi.4 5.2 SCCS-vsn: share/man/man4/man4.hp300/rb.4 5.2 SCCS-vsn: share/man/man4/man4.hp300/rd.4 5.2 SCCS-vsn: share/man/man4/man4.hp300/st.4 5.2 SCCS-vsn: share/man/man4/man4.hp300/tc.4 5.2 SCCS-vsn: share/man/man4/man4.tahoe/ace.4 6.5 SCCS-vsn: share/man/man4/man4.tahoe/autoconf.4 6.3 SCCS-vsn: share/man/man4/man4.tahoe/cons.4 6.3 SCCS-vsn: share/man/man4/man4.tahoe/cy.4 6.4 SCCS-vsn: share/man/man4/man4.tahoe/dr.4 6.3 SCCS-vsn: share/man/man4/man4.tahoe/enp.4 5.4 SCCS-vsn: share/man/man4/man4.tahoe/ik.4 6.3 SCCS-vsn: share/man/man4/man4.tahoe/intro.4 6.5 SCCS-vsn: share/man/man4/man4.tahoe/lp.4 6.2 SCCS-vsn: share/man/man4/man4.tahoe/mem.4 6.3 SCCS-vsn: share/man/man4/man4.tahoe/mtio.4 6.4 SCCS-vsn: share/man/man4/man4.tahoe/vd.4 6.4 SCCS-vsn: share/man/man4/man4.tahoe/vx.4 6.3 SCCS-vsn: share/man/man4/man4.vax/acc.4 6.4 SCCS-vsn: share/man/man4/man4.vax/ad.4 6.2 SCCS-vsn: share/man/man4/man4.vax/autoconf.4 6.3 SCCS-vsn: share/man/man4/man4.vax/cons.4 6.3 SCCS-vsn: share/man/man4/man4.vax/crl.4 6.3 SCCS-vsn: share/man/man4/man4.vax/css.4 6.2 SCCS-vsn: share/man/man4/man4.vax/ct.4 6.3 SCCS-vsn: share/man/man4/man4.vax/ddn.4 6.5 SCCS-vsn: share/man/man4/man4.vax/de.4 6.5 SCCS-vsn: share/man/man4/man4.vax/dh.4 6.3 SCCS-vsn: share/man/man4/man4.vax/dhu.4 6.3 SCCS-vsn: share/man/man4/man4.vax/dmc.4 6.5 SCCS-vsn: share/man/man4/man4.vax/dmf.4 6.5 SCCS-vsn: share/man/man4/man4.vax/dmv.4 6.2 SCCS-vsn: share/man/man4/man4.vax/dmz.4 6.4 SCCS-vsn: share/man/man4/man4.vax/dn.4 6.2 SCCS-vsn: share/man/man4/man4.vax/dz.4 6.3 SCCS-vsn: share/man/man4/man4.vax/ec.4 6.7 SCCS-vsn: share/man/man4/man4.vax/en.4 6.5 SCCS-vsn: share/man/man4/man4.vax/ex.4 6.6 SCCS-vsn: share/man/man4/man4.vax/fl.4 6.3 SCCS-vsn: share/man/man4/man4.vax/hdh.4 6.4 SCCS-vsn: share/man/man4/man4.vax/hk.4 6.4 SCCS-vsn: share/man/man4/man4.vax/hp.4 6.5 SCCS-vsn: share/man/man4/man4.vax/ht.4 6.3 SCCS-vsn: share/man/man4/man4.vax/hy.4 6.4 SCCS-vsn: share/man/man4/man4.vax/ik.4 6.2 SCCS-vsn: share/man/man4/man4.vax/il.4 6.7 SCCS-vsn: share/man/man4/man4.vax/intro.4 6.6 SCCS-vsn: share/man/man4/man4.vax/ix.4 6.5 SCCS-vsn: share/man/man4/man4.vax/kg.4 6.2 SCCS-vsn: share/man/man4/man4.vax/lp.4 6.2 SCCS-vsn: share/man/man4/man4.vax/mem.4 6.3 SCCS-vsn: share/man/man4/man4.vax/mt.4 6.4 SCCS-vsn: share/man/man4/man4.vax/mtio.4 6.5 SCCS-vsn: share/man/man4/man4.vax/np.4 6.6 SCCS-vsn: share/man/man4/man4.vax/pcl.4 6.3 SCCS-vsn: share/man/man4/man4.vax/ps.4 6.4 SCCS-vsn: share/man/man4/man4.vax/qe.4 6.4 SCCS-vsn: share/man/man4/man4.vax/rx.4 6.2 SCCS-vsn: share/man/man4/man4.vax/tb.4 6.4 SCCS-vsn: share/man/man4/man4.vax/tm.4 6.3 SCCS-vsn: share/man/man4/man4.vax/tmscp.4 6.2 SCCS-vsn: share/man/man4/man4.vax/ts.4 6.2 SCCS-vsn: share/man/man4/man4.vax/tu.4 6.2 SCCS-vsn: share/man/man4/man4.vax/uda.4 6.6 SCCS-vsn: share/man/man4/man4.vax/up.4 6.4 SCCS-vsn: share/man/man4/man4.vax/ut.4 6.2 SCCS-vsn: share/man/man4/man4.vax/uu.4 6.2 SCCS-vsn: share/man/man4/man4.vax/va.4 6.3 SCCS-vsn: share/man/man4/man4.vax/vp.4 6.3 SCCS-vsn: share/man/man4/man4.vax/vv.4 6.5 SCCS-vsn: share/man/man4/clnp.4 6.2 SCCS-vsn: share/man/man4/cltp.4 6.2 SCCS-vsn: share/man/man4/drum.4 6.2 SCCS-vsn: share/man/man4/esis.4 6.2 SCCS-vsn: share/man/man4/fd.4 5.2 SCCS-vsn: share/man/man4/icmp.4 6.6 SCCS-vsn: share/man/man4/idp.4 1.4 SCCS-vsn: share/man/man4/inet.4 6.6 SCCS-vsn: share/man/man4/ip.4 6.5 SCCS-vsn: share/man/man4/iso.4 6.2 SCCS-vsn: share/man/man4/lo.4 6.6 SCCS-vsn: share/man/man4/netintro.4 6.10 SCCS-vsn: share/man/man4/ns.4 1.6 SCCS-vsn: share/man/man4/nsip.4 1.4 SCCS-vsn: share/man/man4/null.4 6.2 SCCS-vsn: share/man/man4/pty.4 6.3 SCCS-vsn: share/man/man4/route.4 6.3 SCCS-vsn: share/man/man4/spp.4 1.5 SCCS-vsn: share/man/man4/tcp.4 6.5 SCCS-vsn: share/man/man4/tp.4 6.4 SCCS-vsn: share/man/man4/udp.4 6.5 SCCS-vsn: share/man/man4/unix.4 6.3 --- usr/src/share/man/man4/clnp.4 | 182 ++-- usr/src/share/man/man4/cltp.4 | 122 ++- usr/src/share/man/man4/drum.4 | 37 +- usr/src/share/man/man4/esis.4 | 221 +++-- usr/src/share/man/man4/fd.4 | 87 +- usr/src/share/man/man4/icmp.4 | 102 ++- usr/src/share/man/man4/idp.4 | 173 ++-- usr/src/share/man/man4/inet.4 | 173 ++-- usr/src/share/man/man4/ip.4 | 157 ++-- usr/src/share/man/man4/iso.4 | 199 +++-- usr/src/share/man/man4/lo.4 | 51 +- usr/src/share/man/man4/man4.hp300/autoconf.4 | 145 ++-- usr/src/share/man/man4/man4.hp300/cons.4 | 59 +- usr/src/share/man/man4/man4.hp300/ct.4 | 98 ++- usr/src/share/man/man4/man4.hp300/dca.4 | 74 +- usr/src/share/man/man4/man4.hp300/dcl.4 | 110 ++- usr/src/share/man/man4/man4.hp300/dcm.4 | 88 +- usr/src/share/man/man4/man4.hp300/dv.4 | 175 ++-- usr/src/share/man/man4/man4.hp300/gb.4 | 177 ++-- usr/src/share/man/man4/man4.hp300/grf.4 | 217 +++-- usr/src/share/man/man4/man4.hp300/hil.4 | 382 +++++---- usr/src/share/man/man4/man4.hp300/intro.4 | 108 ++- usr/src/share/man/man4/man4.hp300/ite.4 | 149 +++- usr/src/share/man/man4/man4.hp300/le.4 | 87 +- usr/src/share/man/man4/man4.hp300/mem.4 | 93 +- usr/src/share/man/man4/man4.hp300/ppi.4 | 57 +- usr/src/share/man/man4/man4.hp300/rb.4 | 177 ++-- usr/src/share/man/man4/man4.hp300/rd.4 | 277 +++--- usr/src/share/man/man4/man4.hp300/st.4 | 247 +++--- usr/src/share/man/man4/man4.hp300/tc.4 | 181 ++-- usr/src/share/man/man4/man4.tahoe/ace.4 | 93 +- usr/src/share/man/man4/man4.tahoe/autoconf.4 | 154 ++-- usr/src/share/man/man4/man4.tahoe/cons.4 | 91 +- usr/src/share/man/man4/man4.tahoe/cy.4 | 174 ++-- usr/src/share/man/man4/man4.tahoe/dr.4 | 166 ++-- usr/src/share/man/man4/man4.tahoe/enp.4 | 100 ++- usr/src/share/man/man4/man4.tahoe/ik.4 | 200 +++-- usr/src/share/man/man4/man4.tahoe/intro.4 | 93 +- usr/src/share/man/man4/man4.tahoe/lp.4 | 48 +- usr/src/share/man/man4/man4.tahoe/mem.4 | 133 +-- usr/src/share/man/man4/man4.tahoe/mtio.4 | 2 +- usr/src/share/man/man4/man4.tahoe/vd.4 | 225 +++-- usr/src/share/man/man4/man4.tahoe/vx.4 | 129 +-- usr/src/share/man/man4/man4.vax/acc.4 | 92 +- usr/src/share/man/man4/man4.vax/ad.4 | 76 +- usr/src/share/man/man4/man4.vax/autoconf.4 | 304 +++++-- usr/src/share/man/man4/man4.vax/cons.4 | 154 +++- usr/src/share/man/man4/man4.vax/crl.4 | 69 +- usr/src/share/man/man4/man4.vax/css.4 | 97 ++- usr/src/share/man/man4/man4.vax/ct.4 | 66 +- usr/src/share/man/man4/man4.vax/ddn.4 | 140 +-- usr/src/share/man/man4/man4.vax/de.4 | 119 ++- usr/src/share/man/man4/man4.vax/dh.4 | 140 ++- usr/src/share/man/man4/man4.vax/dhu.4 | 155 +++- usr/src/share/man/man4/man4.vax/dmc.4 | 173 ++-- usr/src/share/man/man4/man4.vax/dmf.4 | 175 ++-- usr/src/share/man/man4/man4.vax/dmv.4 | 129 +-- usr/src/share/man/man4/man4.vax/dmz.4 | 138 +-- usr/src/share/man/man4/man4.vax/dn.4 | 107 ++- usr/src/share/man/man4/man4.vax/dz.4 | 118 ++- usr/src/share/man/man4/man4.vax/ec.4 | 111 ++- usr/src/share/man/man4/man4.vax/en.4 | 127 ++- usr/src/share/man/man4/man4.vax/ex.4 | 90 +- usr/src/share/man/man4/man4.vax/fl.4 | 58 +- usr/src/share/man/man4/man4.vax/hdh.4 | 138 +-- usr/src/share/man/man4/man4.vax/hk.4 | 216 +++-- usr/src/share/man/man4/man4.vax/hp.4 | 355 ++++---- usr/src/share/man/man4/man4.vax/ht.4 | 111 ++- usr/src/share/man/man4/man4.vax/hy.4 | 105 ++- usr/src/share/man/man4/man4.vax/ik.4 | 66 +- usr/src/share/man/man4/man4.vax/il.4 | 99 ++- usr/src/share/man/man4/man4.vax/intro.4 | 114 ++- usr/src/share/man/man4/man4.vax/ix.4 | 116 ++- usr/src/share/man/man4/man4.vax/kg.4 | 49 +- usr/src/share/man/man4/man4.vax/lp.4 | 114 ++- usr/src/share/man/man4/man4.vax/mem.4 | 119 ++- usr/src/share/man/man4/man4.vax/mt.4 | 116 ++- usr/src/share/man/man4/man4.vax/mtio.4 | 251 +++--- usr/src/share/man/man4/man4.vax/np.4 | 133 +-- usr/src/share/man/man4/man4.vax/pcl.4 | 122 ++- usr/src/share/man/man4/man4.vax/ps.4 | 132 +-- usr/src/share/man/man4/man4.vax/qe.4 | 69 +- usr/src/share/man/man4/man4.vax/rx.4 | 258 +++--- usr/src/share/man/man4/man4.vax/tb.4 | 92 +- usr/src/share/man/man4/man4.vax/tm.4 | 104 ++- usr/src/share/man/man4/man4.vax/tmscp.4 | 142 +-- usr/src/share/man/man4/man4.vax/ts.4 | 114 ++- usr/src/share/man/man4/man4.vax/tu.4 | 155 ++-- usr/src/share/man/man4/man4.vax/uda.4 | 583 +++++++------ usr/src/share/man/man4/man4.vax/up.4 | 241 +++--- usr/src/share/man/man4/man4.vax/ut.4 | 90 +- usr/src/share/man/man4/man4.vax/uu.4 | 163 ++-- usr/src/share/man/man4/man4.vax/va.4 | 178 ++-- usr/src/share/man/man4/man4.vax/vp.4 | 111 +-- usr/src/share/man/man4/man4.vax/vv.4 | 130 ++- usr/src/share/man/man4/netintro.4 | 339 ++++---- usr/src/share/man/man4/ns.4 | 165 ++-- usr/src/share/man/man4/nsip.4 | 113 ++- usr/src/share/man/man4/null.4 | 40 +- usr/src/share/man/man4/pty.4 | 200 +++-- usr/src/share/man/man4/route.4 | 276 +++--- usr/src/share/man/man4/spp.4 | 162 ++-- usr/src/share/man/man4/tcp.4 | 157 ++-- usr/src/share/man/man4/tp.4 | 857 ++++++++++--------- usr/src/share/man/man4/udp.4 | 126 ++- usr/src/share/man/man4/unix.4 | 2 +- 106 files changed, 9650 insertions(+), 6224 deletions(-) diff --git a/usr/src/share/man/man4/clnp.4 b/usr/src/share/man/man4/clnp.4 index db30e4c2ae..8c0e3f1260 100644 --- a/usr/src/share/man/man4/clnp.4 +++ b/usr/src/share/man/man4/clnp.4 @@ -1,114 +1,146 @@ -.\" Copyright (c) 1990 The Regents of the University of California. +.\" Copyright (c) 1990, 1991 The Regents of the University of California. .\" All rights reserved. .\" .\" %sccs.include.redist.man% .\" -.\" @(#)clnp.4 6.1 (Berkeley) %G% +.\" @(#)clnp.4 6.2 (Berkeley) %G% .\" -.TH CLNP 4 "" -.UC 4 -.SH NAME -clnp \- Connectionless-Mode Network Protocol -.SH SYNOPSIS -.B #include -.br -.B #include -.br -.B #include -.PP -.B s = socket(AF_ISO, SOCK_RAW, 0); -.SH DESCRIPTION -CLNP is the connectionless-mode network protocol used by the +.Dd +.Dt CLNP 4 +.Os +.Sh NAME +.Nm clnp +.Nd Connectionless-Mode Network Protocol +.Sh SYNOPSIS +.Fd #include +.Fd #include +.Fd #include +.Ft int +.Fn socket AF_ISO SOCK_RAW 0 +.Sh DESCRIPTION +.Tn CLNP +is the connectionless-mode network protocol used by the connectionless-mode network service. This protocol is specified in -ISO 8473. +.Tn ISO +8473. It may be accessed -through a \*(lqraw socket\*(rq for debugging purposes only. -CLNP sockets are connectionless, +through a +.Dq raw socket +for debugging purposes only. +.Tn CLNP +sockets are connectionless, and are normally used with the -.I sendto +.Xr sendto and -.I recvfrom +.Xr recvfrom calls, though the -.IR connect (2) +.Xr connect 2 call may also be used to fix the destination for future packets (in which case the -.IR read (2) +.Xr read 2 or -.IR recv (2) +.Xr recv 2 and -.IR write (2) +.Xr write 2 or -.IR send (2) +.Xr send 2 system calls may be used). -.PP -Outgoing packets automatically have a CLNP header prepended to -them. Incoming packets received by the user contain the full CLNP header. -The following \fIsetsockopt\fR options apply to CLNP: -.TP -CLNPOPT_FLAGS +.Pp +Outgoing packets automatically have a +.Tn CLNP +header prepended to +them. Incoming packets received by the user contain the full +.Tn CLNP +header. +The following +.Xr setsockopt +options apply to +.Tn CLNP : +.Bl -tag -width CLNPOPT_FLAGS +.It Dv CLNPOPT_FLAGS Sets the flags which are passed to clnp when sending a datagram. Valid flags are: -.nf -.br -CLNP_NO_SEG-Do not allow segmentation -CLNP_NO_ER-Suppress ER pdus -CLNP_NO_CKSUM-Do not generate the CLNP checksum -.br -.fi -.TP -CLNPOPT_OPTS -Sets CLNP options. The options must be formatted exactly as specified by -ISO 8473, section 7.5 "Options Part." Once an option has been set, it will +.Pp +.Bl -tag -width CLNP_NO_CKSUM -compact -offset Ds +.It Dv CLNP_NO_SEG +Do not allow segmentation +.It Dv CLNP_NO_ER +Suppress ER pdus +.It Dv CLNP_NO_CKSUM +Do not generate the +.Tn CLNP +checksum +.El +.Pp +.It Dv CLNPOPT_OPTS +Sets +.Tn CLNP +options. The options must be formatted exactly as specified by +.Tn ISO +8473, section 7.5 +.Dq Options Part. +Once an option has been set, it will be sent on all packets until a different option is set. -.SH "CONGESTION EXPERIENCE BIT" +.El +.Sh CONGESTION EXPERIENCE BIT Whenever a packet is transmitted, the globally unique quality of service option is added to the packet. The sequencing preferred bit and the low transit delay bit are set in this option. -.PP +.Pp If a packet is forwarded containing the globally unique quality of service option, and the interface through which the packet will be -transmitted has a queue length greater than \fIcongest_threshold\fR, +transmitted has a queue length greater than +.Em congest_threshold , then the congestion experienced bit is set in the quality of service option. -.PP -The threshold value stored in \fIcongest_threshold\fR may be changed -with the \fIclnlutil\fR utility. -.PP +.Pp +The threshold value stored in +.Em congest_threshold +may be tuned. +.Pp When a packet is received with the globally unique quality of service option present, and the congestion experienced bit is set, then the transport congestion control function is called. -.SH DIAGNOSTICS +.Sh DIAGNOSTICS A socket operation may fail with one of the following errors returned: -.TP 15 -[EISCONN] -when trying to establish a connection on a socket which +.Bl -tag -width [EADDRNOTAVAIL] +.It Bq Er EISCONN +When trying to establish a connection on a socket which already has one, or when trying to send a datagram with the destination address specified and the socket is already connected; -.TP 15 -[ENOTCONN] -when trying to send a datagram, but +.It Bq Er ENOTCONN +When trying to send a datagram, but no destination address is specified, and the socket hasn't been connected; -.TP 15 -[ENOBUFS] -when the system runs out of memory for +.It Bq Er ENOBUFS +When the system runs out of memory for an internal data structure; -.TP 15 -[EADDRNOTAVAIL] -when an attempt is made to create a +.It Bq Er EADDRNOTAVAIL +When an attempt is made to create a socket with a network address for which no network interface exists; -.TP 15 -[EHOSTUNREACH] -when trying to send a datagram, but no route to the destination +.It Bq Er EHOSTUNREACH +When trying to send a datagram, but no route to the destination address exists. -.TP 15 -[EINVAL] -when specifying unsupported options. -.SH SEE ALSO -send(2), recv(2), intro(4), iso(4) -.SH BUGS +.It Bq Er EINVAL +When specifying unsupported options. +.El +.Sh SEE ALSO +.Xr send 2 , +.Xr recv 2 , +.Xr intro 4 , +.Xr iso 4 +.Sh HISTORY +The +.Nm +protocol implementation +.Ud +.Sh BUGS Packets are sent with the type code of 0x1d (technically an invalid -packet type) for lack of a better way to identify raw CLNP packets. -.PP -No more than MLEN bytes of options can be specified. +packet type) for lack of a better way to identify raw +.Tn CLNP +packets. +.Pp +No more than +.Dv MLEN +bytes of options can be specified. diff --git a/usr/src/share/man/man4/cltp.4 b/usr/src/share/man/man4/cltp.4 index f53126782e..01886aecb7 100644 --- a/usr/src/share/man/man4/cltp.4 +++ b/usr/src/share/man/man4/cltp.4 @@ -1,74 +1,106 @@ -.\" Copyright (c) 1990 The Regents of the University of California. +.\" Copyright (c) 1990, 1991 The Regents of the University of California. .\" All rights reserved. .\" .\" %sccs.include.redist.man% .\" -.\" @(#)cltp.4 6.1 (Berkeley) %G% +.\" @(#)cltp.4 6.2 (Berkeley) %G% .\" -.TH CLTP 4 "" -.UC 5 -.SH NAME -cltp \- ISO Connectionless Transport Protocol -.SH SYNOPSIS -.B #include -.br -.B #include -.PP -.B s = socket(AF_ISO, SOCK_DGRAM, 0); -.SH DESCRIPTION -CLTP is a simple, unreliable datagram protocol which is accessed -via the SOCK_DGRAM abstraction for the ISO -protocol family. CLTP sockets are connectionless, and are +.Dd +.Dt CLTP 4 +.Os +.Sh NAME +.Nm cltp +.Nd +.Tn ISO +Connectionless Transport Protocol +.Sh SYNOPSIS +.Fd #include +.Fd #include +.Ft int +.Fn socket AF_ISO SOCK_DGRAM 0 +.Sh DESCRIPTION +.Tn CLTP +is a simple, unreliable datagram protocol which is accessed +via the +.Dv SOCK_DGRAM +abstraction for the +.Tn ISO +protocol family. +.Tn CLTP +sockets are connectionless, and are normally used with the -.I sendto +.Xr sendto and -.IR recvfrom +.Xr recvfrom calls, though the -.IR connect (2) +.Xr connect 2 call may also be used to fix the destination for future packets (in which case the -.IR recv (2) +.Xr recv 2 or -.IR read (2) +.Xr read 2 and -.IR send (2) +.Xr send 2 or -.IR write(2) +.Xr write 2 system calls may be used). -.PP -CLTP address formats are identical to those used by TP. -In particular CLTP provides a service selector in addition -to the normal ISO NSAP. Note that the CLTP selector -space is separate from the TP selector space (i.e. a CLTP selector -may not be \*(lqconnected\*(rq to a TP selector). -.PP -Options at the CLNP network level may be used with CLTP; see -.IR clnp (4). -.SH DIAGNOSTICS +.Pp +.Tn CLTP +address formats are identical to those used by TP. +In particular +.Tn CLTP +provides a service selector in addition +to the normal +.Tn ISO NSAP . +Note that the +.Tn CLTP +selector +space is separate from the TP selector space (i.e. a +.Tn CLTP +selector +may not be +.Dq connected +to a TP selector). +.Pp +Options at the +.Tn CLNP +network level may be used with +.Tn CLTP ; +see +.Xr clnp 4 . +.Sh DIAGNOSTICS A socket operation may fail with one of the following errors returned: -.TP 15 -[EISCONN] +.Bl -tag -width [EADDRNOTAVAIL] +.It Bq Er EISCONN when trying to establish a connection on a socket which already has one, or when trying to send a datagram with the destination address specified and the socket is already connected; -.TP 15 -[ENOTCONN] +.It Bq Er ENOTCONN when trying to send a datagram, but no destination address is specified, and the socket hasn't been connected; -.TP 15 -[ENOBUFS] +.It Bq Er ENOBUFS when the system runs out of memory for an internal data structure; -.TP 15 -[EADDRINUSE] +.It Bq Er EADDRINUSE when an attempt is made to create a socket with a selector which has already been allocated; -.TP 15 -[EADDRNOTAVAIL] +.It Bq Er EADDRNOTAVAIL when an attempt is made to create a socket with a network address for which no network interface exists. -.SH SEE ALSO -getsockopt(2), recv(2), send(2), socket(2), intro(4), iso(4), clnp(4) +.El +.Sh SEE ALSO +.Xr getsockopt 2 , +.Xr recv 2 , +.Xr send 2 , +.Xr socket 2 , +.Xr intro 4 , +.Xr iso 4 , +.Xr clnp 4 +.Sh HISTORY +The +.Nm +protocol implementation +.Ud diff --git a/usr/src/share/man/man4/drum.4 b/usr/src/share/man/man4/drum.4 index c9dcd04dca..3ef55b6bcc 100644 --- a/usr/src/share/man/man4/drum.4 +++ b/usr/src/share/man/man4/drum.4 @@ -1,24 +1,33 @@ -.\" Copyright (c) 1980 Regents of the University of California. -.\" All rights reserved. The Berkeley software License Agreement -.\" specifies the terms and conditions for redistribution. +.\" Copyright (c) 1980, 1991 Regents of the University of California. +.\" All rights reserved. .\" -.\" @(#)drum.4 6.1 (Berkeley) %G% +.\" %sccs.include.redist.man% .\" -.TH DRUM 4 "" -.UC 4 -.SH NAME -drum \- paging device -.SH DESCRIPTION +.\" @(#)drum.4 6.2 (Berkeley) %G% +.\" +.Dd +.Dt DRUM 4 +.Os BSD 4 +.Sh NAME +.Nm drum +.Nd paging device +.Sh DESCRIPTION This file refers to the paging device in use by the system. This may actually be a subdevice of one of the disk drivers, but in a system with paging interleaved across multiple disk drives it provides an indirect driver for the multiple drives. -.SH FILES -/dev/drum -.SH BUGS +.Sh FILES +.Bl -tag -width /dev/drum +.It Pa /dev/drum +.El +.Sh HISTORY +The +.Nm +special file appeared in +.Bx 3.0 . +.Sh BUGS Reads from the drum are not allowed across the interleaving boundaries. -Since these only occur every -.BR . 5Mbytes +Since these only occur every .5Mbytes or so, and since the system never allocates blocks across the boundary, this is usually not a problem. diff --git a/usr/src/share/man/man4/esis.4 b/usr/src/share/man/man4/esis.4 index 39dd97d0b4..2195b03ca9 100644 --- a/usr/src/share/man/man4/esis.4 +++ b/usr/src/share/man/man4/esis.4 @@ -1,101 +1,194 @@ -.\" Copyright (c) 1990 The Regents of the University of California. +.\" Copyright (c) 1990, 1991 The Regents of the University of California. .\" All rights reserved. .\" .\" %sccs.include.redist.man% .\" -.\" @(#)esis.4 6.1 (Berkeley) %G% +.\" @(#)esis.4 6.2 (Berkeley) %G% .\" -.TH TP 4 "" -.UC 5 -.SH NAME -es-is \- End System to Intermediate System Routing Protocol -.SH SYNOPSIS -.B "pseudo-device ether" -.SH DESCRIPTION -The ES-IS routing protocol is used to dynamically map between ISO NSAP -addresses and ISO SNPA addresses; to permit End and Intermediate Systems +.Dd +.Dt ESIS 4 +.Os +.Sh NAME +.Nm es-is +.Nd End System to Intermediate System Routing Protocol +.Sh SYNOPSIS +.Sy pseudo-device +.Nm ether +.Sh DESCRIPTION +The +.Nm ES-IS +routing protocol is used to dynamically map between +.Tn ISO NSAP +addresses and +.Tn ISO SNPA +addresses; to permit End and Intermediate Systems to learn of each other's existence; and to allow Intermediate Systems to inform End Systems of (potentially) better routes to use when -forwarding NPDUs to a particular destination. -.PP -The mapping between NSAP addresses and SNPA addresses is accomplished by -transmitting hello PDUs between the cooperating Systems. These PDUs -are transmitted whenever the \fIconfiguration\fR timer expires. -When a hello PDU is received, the SNPA +forwarding +.Tn NPDU Ns s +to a particular destination. +.Pp +The mapping between +.Tn NSAP +addresses and +.Tn SNPA +addresses is accomplished by +transmitting hello +.Tn PDU Ns s +between the cooperating Systems. These +.Tn PDU Ns s +are transmitted whenever the +.Em configuration +timer expires. +When a hello +.Tn PDU +is received, the +.Tn SNPA address that it conveys is stored in the routing table for as long as the -\fIholding time\fR in the PDU suggests. The default \fIholding time\fR -(120 seconds) placed in the hello PDU, the configuration timer value, +.Em holding time +in the +.Tn PDU +suggests. The default +.Em holding time +(120 seconds) placed in the hello +.Tn PDU , +the configuration timer value, and the system type (End System or Intermediate System) may be changed by -issuing an SIOCSSTYPE ioctl(), which is defined in /sys/netiso/iso_snpac.h. -.PP +issuing an +.Dv SIOCSSTYPE +.Xr ioctl 2 , +which is defined in +.Pa /sys/netiso/iso_snpac.h. +.Pp The protocol behaves differently depending on whether the System is configured as an End System or an Intermediate System. -.SH "END SYSTEM OPERATION" +.Sh END SYSTEM OPERATION When an interface requests a mapping for an address not in the cache, -the SNPA of any known Intermediate System is returned. If an Intermediate -System is not known, then the \fIall end systems\fR multicast address +the +.Tn SNPA +of any known Intermediate System is returned. If an Intermediate +System is not known, then the +.Em all end systems +multicast address is returned. It is assumed that the intended recipient of the NPDU will -immediately transmit a hello PDU back to the originator of the NPDU. -.PP -If an NPDU is forwarded by the End System, a redirect PDU will not be +immediately transmit a hello +.Tn PDU +back to the originator of the +.Tn NPDU . +.Pp +If an +.Tn NPDU +is forwarded by the End System, a redirect +.Tn PDU +will not be generated. -However, redirect PDUs received will be processed. This processing +However, redirect +.Tn PDU Ns s +received will be processed. This processing consists of adding an entry in the routing table. If the redirect is towards an Intermediate System, then an entry is made in the routing table as well. The entry in the routing table will may mark the -NSAP address contained in the redirect PDU as the gateway for the destination +.Tn NSAP +address contained in the redirect +.Tn PDU +as the gateway for the destination system (if an NET is supplied), or will create a route with the NSAP address as the -destination and the SNPA address (embodied as a link-level sockaddr) as the +destination and the +.Tn SNPA +address (embodied as a link-level sockaddr) as the gateway. -.PP +.Pp If the System is configured as an End System, it will report all the -NSAPs that have been configured using the ifconfig command, and no others. -It is possible to have more than one NSAP assigned to a given interface, -and it is also possible to have the same NSAP assigned to multiple +.Tn NSAP Ns s +that have been configured using the ifconfig command, and no others. +It is possible to have more than one +.Tn NSAP +assigned to a given interface, +and it is also possible to have the same +.Tn NSAP +assigned to multiple interfaces. -However, any NSAP containing an NSEL that is consistent with the +However, any +.Tn NSAP +containing an NSEL that is consistent with the nsellength option (default one) of any interface will be accepted as -an NSAP for this System. -.SH "INTERMEDIATE SYSTEM OPERATION" +an +.Tn NSAP +for this System. +.Sh INTERMEDIATE SYSTEM OPERATION When an interface requests a mapping for an address not in the routing table, an error is returned. -.PP -When an NPDU is forwarded out on the same interface that the NPDU arrived upon, -a redirect PDU is generated. -.SH "MANUAL ROUTING TABLE MODIFICATION" -.PP -To facilitate communications with systems which do not use ES-IS, +.Pp +When an +.Tn NPDU +is forwarded out on the same interface that the +.Tn NPDU +arrived upon, +a redirect +.Tn PDU +is generated. +.Sh MANUAL ROUTING TABLE MODIFICATION +.Pp +To facilitate communications with systems which do not use +.Nm ES-IS, one may add a route whose destination is a sockaddr_iso containing -the NSAP in question, and the gateway being a link-level sockaddr, +the +.Tn NSAP +in question, and the gateway being a link-level sockaddr, either by writing a special purpose program, or using the -.IR route (8) +.Xr route 8 command e.g.: -.nf - - route add -iface -osi 49.0.4.8.0.2b.b.83.bf -link qe0:8.0.2b.b.83.bf -.fi -.PP +.Bd -literal +route add -iface -osi 49.0.4.8.0.2b.b.83.bf \ + -link qe0:8.0.2b.b.83.bf +.Ed +.Pp If the System is configured as an End System and has a single network interface which does not support multicast reception, -it is necessary to manually configure the location of an IS, +it is necessary to manually configure the location of an +.Tn IS , using the route command in a similar way. -There, the destination address should be ``default'' (spelled -out literally as 7 ascii characters), and the gateway should be -once again be a link-level sockaddr specifying the SNPA of the IS. -.SH SEE ALSO -un(4), iso(4F), route(8), ifconfig(8C) -.br -``End system to Intermediate system routing exchange protocol -for use in conjunction with the Protocol for providing the -connectionless-mode network service'' (ISO 9542). -.SH BUGS -Redirect PDUs do not contain options from the forwarded NPDU which generated +There, the destination address should be +.Dq default +(spelled +out literally as 7 +.Tn ASCII +characters), and the gateway should be +once again be a link-level sockaddr specifying the +.Tn SNPA +of the +.Tn IS . +.Sh SEE ALSO +.Xr un 4 , +.Xr iso 4 , +.Xr route 8 , +.Xr ifconfig 8 +.Rs +.%T "End system to Intermediate system routing exchange protocol for use in conjunction with the Protocol for providing the connectionless-mode network service" +.%R ISO +.%N 9542 +.Re +.Sh HISTORY +The +.Nm +protocol implementation +.Ud +.Sh BUGS +Redirect +.Tn PDU Ns s +do not contain options from the forwarded +.Tn NPDU +which generated the redirect. The multicast address used on the 802.3 network is taken from -the NBS December 1987 agreements. This multicast address is not compatible +the +.Tn NBS +December 1987 agreements. This multicast address is not compatible with the 802.5 (Token Ring) multicast addresses format. Therefore, broadcast addresses are used on the 802.5 subnetwork. Researchers at the University of Wisconsin are constructing an implementation -of the IS-IS routing protocol. +of the +.Tn IS-IS +routing protocol. diff --git a/usr/src/share/man/man4/fd.4 b/usr/src/share/man/man4/fd.4 index 4d5187ae40..44cc575ced 100644 --- a/usr/src/share/man/man4/fd.4 +++ b/usr/src/share/man/man4/fd.4 @@ -1,61 +1,70 @@ -.\" Copyright (c) 1990 The Regents of the University of California. +.\" Copyright (c) 1990, 1991 The Regents of the University of California. .\" All rights reserved. .\" .\" %sccs.include.redist.man% .\" -.\" @(#)fd.4 5.1 (Berkeley) %G% +.\" @(#)fd.4 5.2 (Berkeley) %G% .\" -.TH FD 4 "" -.UC 7 -.SH NAME -fd, stdin, stdout, stderr \- file descriptor files -.SH DESCRIPTION +.Dd +.Dt FD 4 +.Os +.Sh NAME +.Nm fd , +.Nm stdin , +.Nm stdout , +.Nm stderr +.Nd file descriptor files +.Sh DESCRIPTION The files -.I /dev/fd/0 +.Pa /dev/fd/0 through -.I /dev/fd/# +.Pa /dev/fd/# refer to file descriptors which can be accessed through the file system. If the file descriptor is open and the mode the file is being opened with is a subset of the mode of the existing descriptor, the call: -.sp -.RS +.Bd -literal -offset indent fd = open("/dev/fd/0", mode); -.RE -.sp +.Ed +.Pp and the call: -.sp -.RS +.Bd -literal -offset indent fd = fcntl(0, F_DUPFD, 0); -.RE -.sp +.Ed +.Pp are equivalent. -.PP +.Pp Opening the files -.IR /dev/stdin , -.I /dev/stdout +.Pa /dev/stdin , +.Pa /dev/stdout and -.I /dev/stderr +.Pa /dev/stderr is equivalent to the following calls: -.sp -.RS +.Bd -literal -offset indent fd = fcntl(STDIN_FILENO, F_DUPFD, 0); -.br fd = fcntl(STDOUT_FILENO, F_DUPFD, 0); -.br fd = fcntl(STDERR_FILENO, F_DUPFD, 0); -.RE -.PP +.Ed +.Pp Flags to the -.IR open (2) -call other than O_RDONLY, O_WRONLY and O_RDWR are ignored. -.SH FILES -/dev/fd/# -.br -/dev/stdin -.br -/dev/stdout -.br -/dev/stderr -.SH SEE ALSO -tty(4) +.Xr open 2 +call other than +.Dv O_RDONLY , +.Dv O_WRONLY +and +.Dv O_RDWR +are ignored. +.Sh FILES +.Bl -tag -width /dev/stderr -compact +.It Pa /dev/fd/# +.It Pa /dev/stdin +.It Pa /dev/stdout +.It Pa /dev/stderr +.El +.Sh SEE ALSO +.Xr tty 4 +.Sh HISTORY +The +.Nm +descriptor implementation +.Ud diff --git a/usr/src/share/man/man4/icmp.4 b/usr/src/share/man/man4/icmp.4 index 445f125a4b..dae3cc5a4a 100644 --- a/usr/src/share/man/man4/icmp.4 +++ b/usr/src/share/man/man4/icmp.4 @@ -1,71 +1,91 @@ -.\" Copyright (c) 1986 Regents of the University of California. +.\" Copyright (c) 1986, 1991 Regents of the University of California. .\" All rights reserved. .\" .\" %sccs.include.redist.man% .\" -.\" @(#)icmp.4 6.5 (Berkeley) %G% +.\" @(#)icmp.4 6.6 (Berkeley) %G% .\" -.TH ICMP 4 "" -.UC 6 -.SH NAME -icmp \- Internet Control Message Protocol -.SH SYNOPSIS -.B #include -.br -.B #include -.PP -.B s = socket(AF_INET, SOCK_RAW, proto); -.SH DESCRIPTION -ICMP is the error and control message protocol used -by IP and the Internet protocol family. It may be accessed -through a \*(lqraw socket\*(rq for network monitoring +.Dd +.Dt ICMP 4 +.Os BSD 4.3 +.Sh NAME +.Nm icmp +.Nd Internet Control Message Protocol +.Sh SYNOPSIS +.Fd #include +.Fd #include +.Ft int +.Fn socket AF_INET SOCK_RAW proto +.Sh DESCRIPTION +.Tn ICMP +is the error and control message protocol used +by +.Tn IP +and the Internet protocol family. It may be accessed +through a +.Dq raw socket +for network monitoring and diagnostic functions. The -.I proto -parameter to the socket call to create an ICMP socket +.Fa proto +parameter to the socket call to create an +.Tn ICMP +socket is obtained from -.IR getprotobyname (3). -ICMP sockets are connectionless, +.Xr getprotobyname 3 . +.Tn ICMP +sockets are connectionless, and are normally used with the -.I sendto +.Xr sendto and -.I recvfrom +.Xr recvfrom calls, though the -.IR connect (2) +.Xr connect 2 call may also be used to fix the destination for future packets (in which case the -.IR read (2) +.Xr read 2 or -.IR recv (2) +.Xr recv 2 and -.IR write (2) +.Xr write 2 or -.IR send (2) +.Xr send 2 system calls may be used). -.PP -Outgoing packets automatically have an IP header prepended to +.Pp +Outgoing packets automatically have an +.Tn IP +header prepended to them (based on the destination address). -Incoming packets are received with the IP header and options intact. -.SH DIAGNOSTICS +Incoming packets are received with the +.Tn IP +header and options intact. +.Sh DIAGNOSTICS A socket operation may fail with one of the following errors returned: -.TP 15 -[EISCONN] +.Bl -tag -width [EADDRNOTAVAIL] +.It Bq Er EISCONN when trying to establish a connection on a socket which already has one, or when trying to send a datagram with the destination address specified and the socket is already connected; -.TP 15 -[ENOTCONN] +.It Bq Er ENOTCONN when trying to send a datagram, but no destination address is specified, and the socket hasn't been connected; -.TP 15 -[ENOBUFS] +.It Bq Er ENOBUFS when the system runs out of memory for an internal data structure; -.TP 15 -[EADDRNOTAVAIL] +.It Bq Er EADDRNOTAVAIL when an attempt is made to create a socket with a network address for which no network interface exists. -.SH SEE ALSO -send(2), recv(2), intro(4), inet(4), ip(4) +.El +.Sh SEE ALSO +.Xr send 2 , +.Xr recv 2 , +.Xr intro 4 , +.Xr inet 4 , +.Xr ip 4 +.Sh HISTORY +The +.Nm +protocol appeared in +.Bx 4.3 . diff --git a/usr/src/share/man/man4/idp.4 b/usr/src/share/man/man4/idp.4 index 19319e5c7f..450ddaa01f 100644 --- a/usr/src/share/man/man4/idp.4 +++ b/usr/src/share/man/man4/idp.4 @@ -1,87 +1,119 @@ -.\" Copyright (c) 1985 The Regents of the University of California. +.\" Copyright (c) 1985, 1991 The Regents of the University of California. .\" All rights reserved. .\" .\" %sccs.include.redist.man% .\" -.\" @(#)idp.4 1.3 (Berkeley) %G% +.\" @(#)idp.4 1.4 (Berkeley) %G% .\" -.TH IDP 4 "July 30, 1985" -.UC 6 -.SH NAME -idp \- Xerox Internet Datagram Protocol -.SH SYNOPSIS -.B #include -.br -.B #include -.br -.B #include -.PP -.B s = socket(AF_NS, SOCK_DGRAM, 0); -.SH DESCRIPTION -IDP is a simple, unreliable datagram protocol which is used -to support the SOCK_DGRAM abstraction for the Internet -protocol family. IDP sockets are connectionless, and are +.Dd +.Dt IDP 4 +.Os BSD 4.3 +.Sh NAME +.Nm idp +.Nd Xerox Internet Datagram Protocol +.Sh SYNOPSIS +.Fd #include +.Fd #include +.Fd #include +.Ft int +.Fn socket AF_NS SOCK_DGRAM 0 +.Sh DESCRIPTION +.Tn IDP +is a simple, unreliable datagram protocol which is used +to support the +.Dv SOCK_DGRAM +abstraction for the Internet +protocol family. +.Tn IDP +sockets are connectionless, and are normally used with the -.I sendto +.Xr sendto and -.IR recvfrom +.Xr recvfrom calls, though the -.IR connect (2) +.Xr connect 2 call may also be used to fix the destination for future packets (in which case the -.IR recv (2) +.Xr recv 2 or -.IR read (2) +.Xr read 2 and -.IR send (2) +.Xr send 2 or -.IR write(2) +.Xr write 2 system calls may be used). -.PP -Xerox protocols are built vertically on top of IDP. -Thus, IDP address formats are identical to those used by -SPP. -Note that the IDP port -space is the same as the SPP port space (i.e. a IDP port -may be \*(lqconnected\*(rq to a SPP port, with certain +.Pp +Xerox protocols are built vertically on top of +.Tn IDP . +Thus, +.Tn IDP +address formats are identical to those used by +.Tn SPP . +Note that the +.Tn IDP +port +space is the same as the +.Tn SPP +port space (i.e. a +.Tn IDP +port +may be +.Dq connected +to a +.Tn SPP +port, with certain options enabled below). In addition broadcast packets may be sent (assuming the underlying network supports -this) by using a reserved \*(lqbroadcast address\*(rq; this address +this) by using a reserved +.Dq broadcast address ; +this address is network interface dependent. -.SH DIAGNOSTICS +.Sh DIAGNOSTICS A socket operation may fail with one of the following errors returned: -.TP 15 -[EISCONN] +.Bl -tag -width [EADDRNOTAVAIL] +.It Bq Er EISCONN when trying to establish a connection on a socket which already has one, or when trying to send a datagram with the destination address specified and the socket is already connected; -.TP 15 -[ENOTCONN] +.It Bq Er ENOTCONN when trying to send a datagram, but no destination address is specified, and the socket hasn't been connected; -.TP 15 -[ENOBUFS] +.It Bq Er ENOBUFS when the system runs out of memory for an internal data structure; -.TP 15 -[EADDRINUSE] +.It Bq Er EADDRINUSE when an attempt is made to create a socket with a port which has already been allocated; -.TP 15 -[EADDRNOTAVAIL] +.It Bq Er EADDRNOTAVAIL when an attempt is made to create a socket with a network address for which no network interface exists. -.SH SOCKET OPTIONS -.TP 15 -[SO_HEADERS_ON_INPUT] +.El +.Sh SOCKET OPTIONS +.Bl -tag -width [SO_HEADERS_ON_OUTPUT] +.It Bq Dv SO_ALL_PACKETS +When set, this option defeats automatic processing of Error packets, +and Sequence Protocol packets. +.It Bq Dv SO_DEFAULT_HEADERS +The user provides the kernel an +.Tn IDP +header, from which +it gleans the Packet Type. +When requested, the kernel will provide an +.Tn IDP +header, showing +the default packet type, and local and foreign addresses, if +connected. +.It Bq Dv SO_HEADERS_ON_INPUT When set, the first 30 bytes of any data returned from a read -or recv from will be the initial 30 bytes of the IDP packet, +or recv from will be the initial 30 bytes of the +.Tn IDP +packet, as described by -.nf +.Bd -literal -offset indent struct idp { u_short idp_sum; u_short idp_len; @@ -90,37 +122,38 @@ struct idp { struct ns_addr idp_dna; struct ns_addr idp_sna; }; -.fi +.Ed +.Pp This allows the user to determine the packet type, and whether the packet was a multi-cast packet or directed specifically at the local host. When requested, gives the current state of the option, -(NSP_RAWIN or 0). -.TP 15 -[SO_HEADERS_ON_OUTPUT] +.Pf ( Dv NSP_RAWIN +or 0). +.It Bq Dv SO_HEADERS_ON_OUTPUT When set, the first 30 bytes of any data sent -will be the initial 30 bytes of the IDP packet. +will be the initial 30 bytes of the +.Tn IDP +packet. This allows the user to determine the packet type, and whether the packet should be multi-cast packet or directed specifically at the local host. You can also misrepresent the sender of the packet. When requested, gives the current state of the option. -(NSP_RAWOUT or 0). -.TP 15 -[SO_DEFAULT_HEADERS] -The user provides the kernel an IDP header, from which -it gleans the Packet Type. -When requested, the kernel will provide an IDP header, showing -the default packet type, and local and foreign addresses, if -connected. -.TP 15 -[SO_ALL_PACKETS] -When set, this option defeats automatic processing of Error packets, -and Sequence Protocol packets. -.TP 15 -[SO_SEQNO] +.Pf ( Dv NSP_RAWOUT +or 0). +.It Bq Dv SO_SEQNO When requested, this returns a sequence number which is not likely to be repeated until the machine crashes or a very long time has passed. It is useful in constructing Packet Exchange Protocol packets. -.SH SEE ALSO -send(2), recv(2), intro(4), ns(4) +.El +.Sh SEE ALSO +.Xr send 2 , +.Xr recv 2 , +.Xr intro 4 , +.Xr ns 4 +.Sh HISTORY +The +.Nm +protocol appeared in +.Bx 4.3 . diff --git a/usr/src/share/man/man4/inet.4 b/usr/src/share/man/man4/inet.4 index af35656a8a..d6e7a096a9 100644 --- a/usr/src/share/man/man4/inet.4 +++ b/usr/src/share/man/man4/inet.4 @@ -1,85 +1,108 @@ -.\" Copyright (c) 1983 The Regents of the University of California. +.\" Copyright (c) 1983, 1991 The Regents of the University of California. .\" All rights reserved. .\" .\" %sccs.include.redist.man% .\" -.\" @(#)inet.4 6.5 (Berkeley) %G% +.\" @(#)inet.4 6.6 (Berkeley) %G% .\" -.TH INET 4 "" -.UC 5 -.SH NAME -inet \- Internet protocol family -.SH SYNOPSIS -.B #include -.br -.B #include -.SH DESCRIPTION -.de _d -.if t .ta .6i 2.1i 2.6i -.\" 2.94 went to 2.6, 3.64 to 3.30 -.if n .ta .84i 2.6i 3.30i -.. -.de _f -.if t .ta .5i 1.25i 2.5i -.\" 3.5i went to 3.8i -.if n .ta .7i 1.75i 3.8i -.. +.Dd +.Dt INET 4 +.Os BSD 4.2 +.Sh NAME +.Nm inet +.Nd Internet protocol family +.Sh SYNOPSIS +.Fd #include +.Fd #include +.Sh DESCRIPTION The Internet protocol family is a collection of protocols layered atop the -.I Internet Protocol -(IP) transport layer, and utilizing the Internet address format. +.Em Internet Protocol +.Pq Tn IP +transport layer, and utilizing the Internet address format. The Internet family provides protocol support for the -SOCK_STREAM, SOCK_DGRAM, and SOCK_RAW socket types; the -SOCK_RAW interface provides access to the IP protocol. -.SH ADDRESSING +.Dv SOCK_STREAM , SOCK_DGRAM , +and +.Dv SOCK_RAW +socket types; the +.Dv SOCK_RAW +interface provides access to the +.Tn IP +protocol. +.Sh ADDRESSING Internet addresses are four byte quantities, stored in -network standard format (on the VAX these are word and byte +network standard format (on the +.Tn VAX +these are word and byte reversed). The include file -.RI < netinet/in.h > +.Aq Pa netinet/in.h defines this address as a discriminated union. -.PP +.Pp Sockets bound to the Internet protocol family utilize the following addressing structure, -.sp 1 -.nf -._f +.Bd -literal -offset indent struct sockaddr_in { short sin_family; u_short sin_port; struct in_addr sin_addr; char sin_zero[8]; }; -.sp 1 -.fi -Sockets may be created with the local address INADDR_ANY -to effect \*(lqwildcard\*(rq matching on incoming messages. +.Ed +.Pp +Sockets may be created with the local address +.Dv INADDR_ANY +to effect +.Dq wildcard +matching on incoming messages. The address in a -.IR connect (2) +.Xr connect 2 or -.IR sendto (2) -call may be given as INADDR_ANY to mean ``this host.'' -The distinguished address INADDR_BROADCAST +.Xr sendto 2 +call may be given as +.Dv INADDR_ANY +to mean +.Dq this host . +The distinguished address +.Dv INADDR_BROADCAST is allowed as a shorthand for the broadcast address on the primary network if the first network configured supports broadcast. -.SH PROTOCOLS +.Sh PROTOCOLS The Internet protocol family is comprised of -the IP transport protocol, Internet Control -Message Protocol (ICMP), Transmission Control -Protocol (TCP), and User Datagram Protocol (UDP). -TCP is used to support the SOCK_STREAM -abstraction while UDP is used to support the SOCK_DGRAM -abstraction. A raw interface to IP is available -by creating an Internet socket of type SOCK_RAW. -The ICMP message protocol is accessible from a raw socket. -.PP +the +.Tn IP +transport protocol, Internet Control +Message Protocol +.Pq Tn ICMP , +Transmission Control +Protocol +.Pq Tn TCP , +and User Datagram Protocol +.Pq Tn UDP . +.Tn TCP +is used to support the +.Dv SOCK_STREAM +abstraction while +.Tn UDP +is used to support the +.Dv SOCK_DGRAM +abstraction. A raw interface to +.Tn IP +is available +by creating an Internet socket of type +.Dv SOCK_RAW . +The +.Tn ICMP +message protocol is accessible from a raw socket. +.Pp The 32-bit Internet address contains both network and host parts. It is frequency-encoded; the most-significant bit is clear in Class A addresses, in which the high-order 8 bits are the network number. Class B addresses use the high-order 16 bits as the network field, and Class C addresses have a 24-bit network part. -Sites with a cluster of local networks and a connection to the DARPA +Sites with a cluster of local networks and a connection to the +.Tn DARPA Internet may chose to use a single network number for the cluster; this is done by using subnet addressing. The local (host) portion of the address is further subdivided @@ -88,29 +111,47 @@ Within a subnet, each subnet appears to be an individual network; externally, the entire cluster appears to be a single, uniform network requiring only a single routing entry. Subnet addressing is enabled and examined by the following -.IR ioctl (2) +.Xr ioctl 2 commands on a datagram socket in the Internet domain; they have the same form as the -SIOCIFADDR command (see -.IR intro (4)). -.PP -.TP 20 -SIOCSIFNETMASK +.Dv SIOCIFADDR +command (see +.Xr intro 4 ) . +.Pp +.Bl -tag -width SIOCSIFNETMASK +.It Dv SIOCSIFNETMASK Set interface network mask. The network mask defines the network part of the address; if it contains more of the address than the address type would indicate, then subnets are in use. -.TP 20 -SIOCGIFNETMASK +.It Dv SIOCGIFNETMASK Get interface network mask. -.SH SEE ALSO -ioctl(2), socket(2), intro(4), tcp(4), udp(4), ip(4), icmp(4) -.PP -An Introductory 4.3BSD Interprocess Communication Tutorial (PS1:7). -.PP -An Advanced 4.3BSD Interprocess Communication Tutorial (PS1:8). -.SH CAVEAT +.El +.Sh SEE ALSO +.Xr ioctl 2 , +.Xr socket 2 , +.Xr intro 4 , +.Xr tcp 4 , +.Xr udp 4 , +.Xr ip 4 , +.Xr icmp 4 +.Rs +.%T "An Introductory 4.3 BSD Interprocess Communication Tutorial" +.%B PS1 +.%N 7 +.Re +.Rs +.%T "An Advanced 4.3 BSD Interprocess Communication Tutorial" +.%B PS1 +.%N 8 +.Re +.Sh CAVEAT The Internet protocol support is subject to change as the Internet protocols develop. Users should not depend on details of the current implementation, but rather the services exported. +.Sh HISTORY +The +.Nm +protocol interface appeared in +.Bx 4.2 . diff --git a/usr/src/share/man/man4/ip.4 b/usr/src/share/man/man4/ip.4 index 5cb6e6505b..f94d5e62e7 100644 --- a/usr/src/share/man/man4/ip.4 +++ b/usr/src/share/man/man4/ip.4 @@ -1,108 +1,147 @@ -.\" Copyright (c) 1983 The Regents of the University of California. +.\" Copyright (c) 1983, 1991 The Regents of the University of California. .\" All rights reserved. .\" .\" %sccs.include.redist.man% .\" -.\" @(#)ip.4 6.4 (Berkeley) %G% +.\" @(#)ip.4 6.5 (Berkeley) %G% .\" -.TH IP 4 "" -.UC 5 -.SH NAME -ip \- Internet Protocol -.SH SYNOPSIS -.B #include -.br -.B #include -.PP -.B s = socket(AF_INET, SOCK_RAW, proto); -.SH DESCRIPTION -IP is the transport layer protocol used +.Dd +.Dt IP 4 +.Os BSD 4.2 +.Sh NAME +.Nm ip +.Nd Internet Protocol +.Sh SYNOPSIS +.Fd #include +.Fd #include +.Ft int +.Fn socket AF_INET SOCK_RAW proto +.Sh DESCRIPTION +.Tn IP +is the transport layer protocol used by the Internet protocol family. -Options may be set at the IP level -when using higher-level protocols that are based on IP -(such as TCP and UDP). +Options may be set at the +.Tn IP +level +when using higher-level protocols that are based on +.Tn IP +(such as +.Tn TCP +and +.Tn UDP ) . It may also be accessed -through a \*(lqraw socket\*(rq when developing new protocols, or +through a +.Dq raw socket +when developing new protocols, or special purpose applications. -.PP -A single generic option is supported at the IP level, IP_OPTIONS, -that may be used to provide IP options to be transmitted in the IP +.Pp +A single generic option is supported at the +.Tn IP +level, +.Dv IP_OPTIONS , +that may be used to provide +.Tn IP +options to be transmitted in the +.Tn IP header of each outgoing packet. Options are set with -.IR setsockopt (2) +.Xr setsockopt 2 and examined with -.IR getsockopt (2). -The format of IP options to be sent is that specified by the IP protocol +.Xr getsockopt 2 . +The format of +.Tn IP +options to be sent is that specified by the +.Tn IP protocol specification, with one exception: the list of addresses for Source Route options must include the first-hop gateway at the beginning of the list of gateways. The first-hop gateway address will be extracted from the option list and the size adjusted accordingly before use. -IP options may be used with any socket type in the Internet family. -.PP -Raw IP sockets are connectionless, +.Tn IP +options may be used with any socket type in the Internet family. +.Pp +Raw +.Tn IP +sockets are connectionless, and are normally used with the -.I sendto +.Xr sendto and -.I recvfrom +.Xr recvfrom calls, though the -.IR connect (2) +.Xr connect 2 call may also be used to fix the destination for future packets (in which case the -.IR read (2) +.Xr read 2 or -.IR recv (2) +.Xr recv 2 and -.IR write (2) +.Xr write 2 or -.IR send (2) +.Xr send 2 system calls may be used). -.PP +.Pp If -.I proto -is 0, the default protocol IPPROTO_RAW is used for outgoing +.Fa proto +is 0, the default protocol +.Dv IPPROTO_RAW +is used for outgoing packets, and only incoming packets destined for that protocol are received. If -.I proto +.Fa proto is non-zero, that protocol number will be used on outgoing packets and to filter incoming packets. -.PP -Outgoing packets automatically have an IP header prepended to +.Pp +Outgoing packets automatically have an +.Tn IP +header prepended to them (based on the destination address and the protocol number the socket is created with). -Incoming packets are received with IP header and options intact. -.SH DIAGNOSTICS +Incoming packets are received with +.Tn IP +header and options intact. +.Sh DIAGNOSTICS A socket operation may fail with one of the following errors returned: -.TP 15 -[EISCONN] +.Bl -tag -width [EADDRNOTAVAIL] +.It Bq Er EISCONN when trying to establish a connection on a socket which already has one, or when trying to send a datagram with the destination address specified and the socket is already connected; -.TP 15 -[ENOTCONN] +.It Bq Er ENOTCONN when trying to send a datagram, but no destination address is specified, and the socket hasn't been connected; -.TP 15 -[ENOBUFS] +.It Bq Er ENOBUFS when the system runs out of memory for an internal data structure; -.TP 15 -[EADDRNOTAVAIL] +.It Bq Er EADDRNOTAVAIL when an attempt is made to create a socket with a network address for which no network interface exists. -.PP -The following errors specific to IP -may occur when setting or getting IP options: -.TP 15 -[EINVAL] +.El +.Pp +The following errors specific to +.Tn IP +may occur when setting or getting +.Tn IP +options: +.Bl -tag -width EADDRNOTAVAILxx +.It Bq Er EINVAL An unknown socket option name was given. -.TP 15 -[EINVAL] +.It Bq Er EINVAL The IP option field was improperly formed; an option field was shorter than the minimum value or longer than the option buffer provided. -.SH SEE ALSO -getsockopt(2), send(2), recv(2), intro(4), icmp(4), inet(4) +.El +.Sh SEE ALSO +.Xr getsockopt 2 , +.Xr send 2 , +.Xr recv 2 , +.Xr intro 4 , +.Xr icmp 4 , +.Xr inet 4 +.Sh HISTORY +The +.Nm +protocol appeared in +.Bx 4.2 . diff --git a/usr/src/share/man/man4/iso.4 b/usr/src/share/man/man4/iso.4 index f64f83082f..f0604f6579 100644 --- a/usr/src/share/man/man4/iso.4 +++ b/usr/src/share/man/man4/iso.4 @@ -1,92 +1,118 @@ -.\" Copyright (c) 1990 The Regents of the University of California. +.\" Copyright (c) 1990, 1991 The Regents of the University of California. .\" All rights reserved. .\" .\" %sccs.include.redist.man% .\" -.\" @(#)iso.4 6.1 (Berkeley) %G% +.\" @(#)iso.4 6.2 (Berkeley) %G% .\" -.TH ISO 4F "" -.UC 4 -.SH NAME -iso \- ISO protocol family -.SH SYNOPSIS -.B #include -.br -.B #include -.SH DESCRIPTION -The ISO protocol family is a collection of protocols -that uses the ISO address format. -The ISO family provides protocol support for the -SOCK_SEQPACKET abstraction through the TP protocol (ISO 8073), -for the SOCK_DGRAM abstraction through the connectionless transport -protocol (ISO 8602), -and for the SOCK_RAW abstraction +.Dd +.Dt ISO 4 +.Os +.Sh NAME +.Nm iso +.Nd +.Tn ISO +protocol family +.Sh SYNOPSIS +.Fd #include +.Fd #include +.Sh DESCRIPTION +The +.Tn ISO +protocol family is a collection of protocols +that uses the +.Tn ISO +address format. +The +.Tn ISO +family provides protocol support for the +.Dv SOCK_SEQPACKET +abstraction through the +.Tn TP +protocol +.Pf ( Tn ISO +8073), +for the +.Dv SOCK_DGRAM +abstraction through the connectionless transport +protocol +.Pf ( Tn ISO +8602), +and for the +.Dv SOCK_RAW +abstraction by providing direct access (for debugging) to the -CLNP (ISO 8473) network layer protocol. -.SH ADDRESSING -ISO addresses are based upon ISO 8348/AD2, -"Addendum to the Network Service Definition Covering Network Layer Addressing." -.PP +.Tn CLNP +.Pf ( Tn ISO +8473) network layer protocol. +.Sh ADDRESSING +.Tn ISO +addresses are based upon +.Tn ISO +8348/AD2, +.%T "Addendum to the Network Service Definition Covering Network Layer Addressing." +.Pp Sockets bound to the OSI protocol family use the following address structure: -.sp 1 -.nf -._f +.Bd -literal struct iso_addr { - u_char isoa_len; /* length, not including this byte */ - char isoa_genaddr[20]; /* general opaque address */ + u_char isoa_len; /* length, not including this byte */ + char isoa_genaddr[20]; /* general opaque address */ }; struct sockaddr_iso { - u_char siso_len; /* size of this sockaddr */ - u_char siso_family; /* addressing domain, AF_ISO */ - u_char siso_plen; /* presentation selector length */ - u_char siso_slen; /* session selector length */ - u_char siso_tlen; /* transport selector length */ - struct iso_addr siso_addr; /* network address */ - u_char siso_pad[6]; /* space for gosip v2 SELs */ + u_char siso_len; /* size of this sockaddr */ + u_char siso_family; /* addressing domain, AF_ISO */ + u_char siso_plen; /* presentation selector length */ + u_char siso_slen; /* session selector length */ + u_char siso_tlen; /* transport selector length */ + struct iso_addr siso_addr; /* network address */ + u_char siso_pad[6]; /* space for gosip v2 SELs */ }; #define siso_nlen siso_addr.isoa_len #define siso_data siso_addr.isoa_genaddr -.sp 1 -.fi -.PP +.Ed +.Pp The fields of this structure are: -.TP 10 -\fIsiso_len:\fR +.Bl -tag -width Ds +.It Ar siso_len: Length of the entire address structure, in bytes, which may grow to be longer than the 32 bytes show above. -.TP 10 -\fIsiso_family:\fR -Identifies the domain: AF_ISO. -.TP 10 -\fIsiso_tlen:\fR +.It Ar siso_family: +Identifies the domain: +.Dv AF_ISO . +.It Ar siso_tlen: Length of the transport selector. -.TP 10 -\fIsiso_slen:\fR +.It Ar siso_slen: Length of the session selector. This is not currently supported by the kernel and is provided as a convenience for user level programs. -.TP 10 -\fIsiso_plen:\fR +.It Ar siso_plen: Length of the presentation selector. This is not currently supported by the kernel and is provided as a convenience for user level programs. -.TP 10 -\fIsiso_addr:\fR +.It Ar siso_addr: The network part of the address, described below. -.SS TRANSPORT ADDRESSING -.PP -An ISO transport address is similar to an Internet address in that +.El +.Sh TRANSPORT ADDRESSING +.Pp +An +.Tn ISO +transport address is similar to an Internet address in that it contains a network-address portion and a portion that the transport layer uses to multiplex its services among clients. -In the Internet domain, this portion of the address is called a \fIport\fR. -In the ISO domain, this is called a \fItransport selector\fR -(also known at one time as a \fItransport suffix\fR). +In the Internet domain, this portion of the address is called a +.Em port . +In the +.Tn ISO +domain, this is called a +.Em transport selector +(also known at one time as a +.Em transport suffix ) . While ports are always 16 bits, transport selectors may be of (almost) arbitrary size. -.PP +.Pp Since the C language does not provide conveninent variable length structures, we have separated the selector lengths from the data themselves. @@ -95,20 +121,45 @@ with the network address first, then the transport selector, and so on. Thus, if you had a nework address of less then 20 bytes, the transport selector would encroach on space normally reserved for the network address. -.PP -.SS NETWORK ADDRESSING. -ISO network addresses are limited to 20 bytes in length. -ISO network addresses can take any format. -.SH PROTOCOLS -The ARGO 1.0 implementation of the -ISO protocol family comprises -the Connectionless-Mode Network Protocol (CLNP), -and the Transport Protocol (TP), classes 4 and 0, -and X.25. -TP is used to support the SOCK_SEQPACKET +.Pp +.Sh NETWORK ADDRESSING. +.Tn ISO +network addresses are limited to 20 bytes in length. +.Tn ISO +network addresses can take any format. +.Sh PROTOCOLS +The +.Tn ARGO +1.0 implementation of the +.Tn ISO +protocol family comprises +the Connectionless-Mode Network Protocol +.Pq Tn CLNP , +and the Transport Protocol +.Pq Tn TP , +classes 4 and 0, +and +.Tn X.25 . +.Tn TP +is used to support the +.Dv SOCK_SEQPACKET abstraction. -A raw interface to CLNP is available -by creating an ISO socket of type SOCK_RAW. -This is used for CLNP debugging only. -.SH SEE ALSO -tp(4), clnp(4), cltp(4) +A raw interface to +.Tn CLNP +is available +by creating an +.Tn ISO +socket of type +.Dv SOCK_RAW . +This is used for +.Tn CLNP +debugging only. +.Sh SEE ALSO +.Xr tp 4 , +.Xr clnp 4 , +.Xr cltp 4 +.Sh HISTORY +The +.Nm +protocol family implementation +.Ud diff --git a/usr/src/share/man/man4/lo.4 b/usr/src/share/man/man4/lo.4 index 87858c54aa..98c0c90778 100644 --- a/usr/src/share/man/man4/lo.4 +++ b/usr/src/share/man/man4/lo.4 @@ -1,37 +1,54 @@ -.\" Copyright (c) 1983 The Regents of the University of California. +.\" Copyright (c) 1983, 1991 The Regents of the University of California. .\" All rights reserved. .\" .\" %sccs.include.redist.man% .\" -.\" @(#)lo.4 6.5 (Berkeley) %G% +.\" @(#)lo.4 6.6 (Berkeley) %G% .\" -.TH LO 4 "" -.UC 5 -.SH NAME -lo \- software loopback network interface -.SH SYNOPSIS -.B pseudo-device loop -.SH DESCRIPTION +.Dd +.Dt LO 4 +.Os BSD 4.2 +.Sh NAME +.Nm lo +.Nd software loopback network interface +.Sh SYNOPSIS +.Sy pseudo-device +.Nm loop +.Sh DESCRIPTION The -.I loop +.Nm loop interface is a software loopback mechanism which may be used for performance analysis, software testing, and/or local communication. As with other network interfaces, the loopback interface must have network addresses assigned for each address family with which it is to be used. These addresses -may be set or changed with the SIOCSIFADDR ioctl. +may be set or changed with the +.Dv SIOCSIFADDR +.Xr ioctl 2 . The loopback interface should be the last interface configured, as protocols may use the order of configuration as an indication of priority. -The loopback should \fBnever\fP be configured first unless no hardware +The loopback should +.Em never +be configured first unless no hardware interfaces exist. -.SH DIAGNOSTICS -\fBlo%d: can't handle af%d\fP. The interface was handed +.Sh DIAGNOSTICS +.Bl -diag +.It lo%d: can't handle af%d. +The interface was handed a message with addresses formatted in an unsuitable address family; the packet was dropped. -.SH SEE ALSO -intro(4), inet(4), ns(4) -.SH BUGS +.El +.Sh SEE ALSO +.Xr intro 4 , +.Xr inet 4 , +.Xr ns 4 +.Sh HISTORY +The +.Nm +device appeared in +.Bx 4.2 . +.Sh BUGS Previous versions of the system enabled the loopback interface automatically, using a nonstandard Internet address (127.1). Use of that address is now discouraged; a reserved host address diff --git a/usr/src/share/man/man4/man4.hp300/autoconf.4 b/usr/src/share/man/man4/man4.hp300/autoconf.4 index 1c8471b7c5..476348db5f 100644 --- a/usr/src/share/man/man4/man4.hp300/autoconf.4 +++ b/usr/src/share/man/man4/man4.hp300/autoconf.4 @@ -1,76 +1,115 @@ -.\" Copyright (c) 1990 Regents of the University of California. -.\" All rights reserved. The Berkeley software License Agreement -.\" specifies the terms and conditions for redistribution. +.\" Copyright (c) 1990, 1991 Regents of the University of California. +.\" All rights reserved. .\" -.\" @(#)autoconf.4 5.1 (Berkeley) %G% +.\" %sccs.include.redist.man% .\" -.TH AUTOCONF 4 "" -.UC 7 -.SH NAME -autoconf \- diagnostics from the autoconfiguration code -.SH DESCRIPTION -When UNIX bootstraps it probes the innards of the machine +.\" @(#)autoconf.4 5.2 (Berkeley) %G% +.\" +.Dd +.Dt AUTOCONF 4 hp300 +.Os +.Sh NAME +.Nm autoconf +.Nd diagnostics from the autoconfiguration code +.Sh DESCRIPTION +When +.Tn UNIX +bootstraps it probes the innards of the machine on which it is running and locates controllers, drives, and other devices, printing out what it finds on the console. This procedure is driven by a system configuration table which is processed by -.IR config (8) +.Xr config 8 and compiled into each kernel. -.PP -Autoconfiguration on the HP300s is similar to that on the VAX, +.Pp +Autoconfiguration on the +.Tn HP300 Ns s +is similar to that on the +.Tn VAX , the primary difference is in the naming conventions. -On the HP300, +On the +.Tn HP300 , if devices exist which are not configured they will be ignored; if devices exist of unsupported type they will be ignored. -.PP +.Pp Normally, the system uses the disk from which it was loaded as the root filesystem. If that is not possible, -a generic system will use ``rd0'' if it exists. -If such a system is booted with the RB_ASKNAME option (see -.IR reboot (2)), +a generic system will use +.Sq Li rd0 +if it exists. +If such a system is booted with the +.Dv RB_ASKNAME +option (see +.Xr reboot 2 ) , then the name of the root device is read from the console terminal at boot time, and any available device may be used. -.SH SEE ALSO -intro(4), boot(8), config(8) -.br -\fI4.3BSD for the HP300\fR in the distribution documentation package. -.SH DIAGNOSTICS -\fBCPU type not configured\fR -.br -You tried to boot UNIX on a cpu type which it doesn't -(or at least this compiled version of UNIX doesn't) understand. -.PP -\fBhpib%d at sc%d, ipl %d\fR -.br -An HP-IB was found at sc%d (the select code) +.Sh DIAGNOSTICS +.Bl -diag +.It CPU type not configured. +You tried to boot +.Tn UNIX +on a +.Tn CPU +type which it doesn't +(or at least this compiled version of +.Tn UNIX +doesn't) understand. +.Pp +.It hpib%d at sc%d, ipl %d. +An +.Tn HP-IB +was found at sc%d (the select code) with ipl%d (interrupt priority level). -UNIX will call it hpib%d. -.PP -\fB%s%d: %s\fR -.br -\fB%s%d at hpib%d, slave %d\fR -.br -An HP-IB disk or tape controller was found. -For disks %s%d will look like ``rd0'', -for tapes like ``ct0''. -The %s in the first line will be a product type like ``7945A'' or ``9144''. +.Tn UNIX +will call it hpib%d. +.Pp +.It %s%d: %s. +.It %s%d at hpib%d, slave %d. +An +.Tn HP-IB +disk or tape controller was found. +For disks +.Ql %s%d +will look like +.Sq Li rd0 , +for tapes like +.Sq Li ct0 . +The +.Ql %s +in the first line will be a product type like ``7945A'' or ``9144''. The slave number comes from the address select switches on the drive. -.PP -\fBgrf0 csr 0x560000\fR -.br -\fBgrf%d at sc%d\fR -.br +.Pp +.It grf0 csr 0x560000 +.It grf%d at sc%d A bit mapped display was found either at the ``internal'' address (first case) or at some ``external'' select code (second case). If it exists, the internal display will always be unit 0. -.PP -\fB%s%d at sc%d, ipl %d flags %d\fR -.br +.Pp +.It %s%d at sc%d, ipl %d flags %d Another peripheral controller was found at the indicated select code and with indicated interrupt priority level. -%s will be one of -``dca'' (single-port serial interfaces), -``dcm'' (four-port serial interfaces), or -``le'' (LAN cards). +.Ql %s +will be one of +.Xr dca 4 +(single-port serial interfaces), +.Xr dcm 4 +(four-port serial interfaces), or +.Xr le 4 +.Pf ( Tn LAN +cards). The slave number comes from the address select switches on the interface card. +.El +.Sh SEE ALSO +.Xr intro 4 , +.Xr boot 8 , +.Xr config 8 +.Rs +.%T 4.3BSD for the HP300 +.%O in the distribution documentation package +.Re +.Sh HISTORY +The +.Nm autoconf +feature +.Ud -beta diff --git a/usr/src/share/man/man4/man4.hp300/cons.4 b/usr/src/share/man/man4/man4.hp300/cons.4 index d4ab518f2c..5d735276a4 100644 --- a/usr/src/share/man/man4/man4.hp300/cons.4 +++ b/usr/src/share/man/man4/man4.hp300/cons.4 @@ -1,35 +1,52 @@ -.\" Copyright (c) 1990 The Regents of the University of California. +.\" 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. -.\" .\" %sccs.include.redist.man% .\" -.\" @(#)cons.4 5.1 (Berkeley) %G% +.\" @(#)cons.4 5.2 (Berkeley) %G% .\" -.TH CONS 4 "" -.UC 7 -.SH NAME -cons \- HP300 console interface -.SH DESCRIPTION -This release supports a ``virtual'' console device used for kernel -.I printf -messages and accessed in user mode via /dev/console. +.Dd +.Dt CONS 4 hp300 +.Os +.Sh NAME +.Nm cons +.Nd +.Tn HP300 +console interface +.Sh DESCRIPTION +This release supports a +.Dq virtual +console device used for +.Em kernel printf +messages and accessed in user mode via +.Pa /dev/console . It is virtual in the sense that it is attached to a hardware interface at boot time. Currently the choices are limited to: a bit-mapped display acting as an -.I "internal terminal emulator" -(ITE), -the builtin serial interface (dca), -or a ``null'' console in that order. -.SH FILES -/dev/console -.SH "SEE ALSO" -tty(4), reboot(8) -.SH BUGS +.Em internal terminal emulator +.Dq Tn ITE , +the builtin serial interface +.Xr dca 4 , +or a +.Xr null 4 +console in that order. +.Sh FILES +.Bl -tag -width /dev/console +.It Pa /dev/console +.El +.Sh SEE ALSO +.Xr tty 4 , +.Xr reboot 8 +.Sh HISTORY +The +.Nm +device +.Ud +.Sh BUGS You should be able to specify potential console devices at -.I config +.Xr config 8 time. diff --git a/usr/src/share/man/man4/man4.hp300/ct.4 b/usr/src/share/man/man4/man4.hp300/ct.4 index 7a7b57d043..b26cd1c976 100644 --- a/usr/src/share/man/man4/man4.hp300/ct.4 +++ b/usr/src/share/man/man4/man4.hp300/ct.4 @@ -1,69 +1,83 @@ -.\" Copyright (c) 1990 The Regents of the University of California. +.\" 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. -.\" .\" %sccs.include.redist.man% .\" -.\" @(#)ct.4 5.1 (Berkeley) %G% +.\" @(#)ct.4 5.2 (Berkeley) %G% .\" -.TH CT 4 "" -.UC 7 -.SH NAME -ct \- CS/80 cartridge tape interface -.SH SYNOPSIS -.B "tape ct0 at hpib? slave ?" -.SH DESCRIPTION +.Dd +.Dt CT 4 hp300 +.Os +.Sh NAME +.Nm \&ct +.Nd +.Tn CS/80 +cartridge tape interface +.Sh SYNOPSIS +.Cd "tape ct0 at hpib? slave ?" +.Sh DESCRIPTION The cartridge tape interface as found in the 7946 and 9144 products provides a standard tape drive interface as described in -.IR mtio (4) +.Xr mtio 4 with the following exceptions: -.TP 3 -1. +.Bl -enum +.It There is only one density. -.TP 3 -2. -Only the ``raw'' interface is supported. -.TP 3 -3. -The MTIOCTOP -.I ioctl +.It +Only the +.Dq raw +interface is supported. +.It +The +.Dv MTIOCTOP +.Xr ioctl 2 is limited. -In particular, the command, MTFSR is not supported. -.TP 3 -4. -The MTIOCGET -.I ioctl +In particular, the command, +.Dv MTFSR +is not supported. +.It +The +.Dv MTIOCGET +.Xr ioctl is not supported. -.TP 3 -5. +.It The record size for read and write operations must be between 1K and 64K inclusive. -.PP +.El +.Pp Special files -.I rct0 +.Pa rct0 through -.I rct3 +.Pa rct3 refer to rewind on close interfaces to drives 0 to 3. -.I Rct4 +Files +.Pa rct4 through -.I rct7 +.Pa rct7 refer to no-rewind interfaces. -.I Rct8 +Files +.Pa rct8 through -.I rct11 +.Pa rct11 refer to streaming rewind on close interfaces. (Only 9144 type devices can stream.) -.I Rct12 +Lastly, +.Pa rct12 through -.I rct15 +.Pa rct15 refer to streaming no-rewind interfaces. -.SH BUGS +.Sh SEE ALSO +.Xr mt 1 , +.Xr tar 1 , +.Xr tp 1 , +.Xr mtio 4 . +.Sh HISTORY +The +.Nm \&ct +driver +.Ud +.Sh BUGS Read and writes of less than 1024 bytes will not behave as expected. -.SH "SEE ALSO" -mt(1), -tar(1), -tp(1), -mtio(4). diff --git a/usr/src/share/man/man4/man4.hp300/dca.4 b/usr/src/share/man/man4/man4.hp300/dca.4 index 8806179548..bcdb59fda8 100644 --- a/usr/src/share/man/man4/man4.hp300/dca.4 +++ b/usr/src/share/man/man4/man4.hp300/dca.4 @@ -1,45 +1,63 @@ -.\" Copyright (c) 1990 The Regents of the University of California. +.\" 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. -.\" .\" %sccs.include.redist.man% .\" -.\" @(#)dca.4 5.1 (Berkeley) %G% +.\" @(#)dca.4 5.2 (Berkeley) %G% .\" -.TH DCA 4 "" -.UC 7 -.SH NAME -dca \- HP 98644A communications interface -.SH SYNOPSIS -.B "device dca0 at scode9 flags 0x1" -.SH DESCRIPTION -The 98644A is a single port EIA RS-232C (CCITT V.28) +.Dd +.Dt DCA 4 hp300 +.Os +.Sh NAME +.Nm dca +.Nd +.Tn HP 98644A +communications interface +.Sh SYNOPSIS +.Cd "device dca0 at scode9 flags 0x1" +.Sh DESCRIPTION +The +.Tn 98644A +is a single port +.Tn EIA +.Tn RS-232C +.Pf ( Tn CCITT +.Tn V.28 ) communications interface with a single character buffer. Such an interface is built-in to all series 300 machines. -.PP -Each 98644A line behaves as described in -.IR tty (4). +.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. See -.IR tty (4) -for the encoding. -.PP -Flags should be set to 1 if the line should be treated as hard-wired +50, 75, 110, 134.5, 150, 300, 600, 1200, 1800, 2400, 4800, 9600 or +19200. +.Pp +An optional argument +.Ar flags +may be set to 1 if the line should be treated as hard-wired with carrier always present or 0 if modem control is desired. -.SH FILES -/dev/tty0 -.SH "SEE ALSO" -tty(4) -.SH DIAGNOSTICS -\fBdca%d: silo overflow\fR. The single-character input ``silo'' +.Sh FILES +.Bl -tag -width Pa +.It Pa /dev/tty0 +.El +.Sh DIAGNOSTICS +.Bl -diag +.It dca%d: silo overflow. +The single-character input +.Dq silo has overflowed and incoming data has been lost. -.SH BUGS +.El +.Sh SEE ALSO +.Xr tty 4 +.Sh HISTORY +The +.Nm +driver +.Ud +.Sh BUGS Data loss is possible on busy systems with baud rates greater than 300. The -.I dca +.Nm dca has never been tested with modem control enabled or on anything but the built-in interface. diff --git a/usr/src/share/man/man4/man4.hp300/dcl.4 b/usr/src/share/man/man4/man4.hp300/dcl.4 index 51401e508b..656e2b888f 100644 --- a/usr/src/share/man/man4/man4.hp300/dcl.4 +++ b/usr/src/share/man/man4/man4.hp300/dcl.4 @@ -1,56 +1,75 @@ -.\" Copyright (c) 1990 The Regents of the University of California. +.\" 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. -.\" .\" %sccs.include.redist.man% .\" -.\" @(#)dcl.4 5.1 (Berkeley) %G% +.\" @(#)dcl.4 5.2 (Berkeley) %G% .\" -.TH DCL 4 "" -.UC 7 -.SH NAME -dcl \- HP 98628A communications link -.SH SYNOPSIS -.B "device dcl0 at scode? flags 0x1" -.SH DESCRIPTION -The 98628A is a buffered EIA RS-232C (CCITT V.28) communications interface. +.Dd +.Dt DCL 4 hp300 +.Os +.Sh NAME +.Nm dcl +.Nd +.Tn HP +98628A communications link +.Sh SYNOPSIS +.Cd "device dcl0 at scode? flags 0x1" +.Sh DESCRIPTION +The 98628A is a buffered +.Tn EIA +.Tn RS-232C +.Pf ( Tn CCITT +.Tn V.28 ) +communications interface. It has one port with full modem control. -.PP -Each line attached to the 98628A behaves as described in -.IR tty (4). +.Pp Input and output for each line may set to one of following baud rates; 0, 50, 75, 110, 134.5, 150, 200, 300, 600, 1200, 1800, 2400, 4800, -9600, 19200. See -.IR tty (4) -for the encoding. -.PP -.I Flags -should be set to 1 if the line should be treated as hard-wired with +9600, 19200. +.Pp +An optional argument +.Ar flags +may be set to 1 if the line should be treated as hard-wired with carrier always present, or to 0 if modem control is desired. -.PP -Use HP cable "98626 & 98628 opts.002, RS232-C DCE CABLE, 5061-4216" to attach non-modem devices. -Use HP cable "98626 & 98628 opts.001, RS232-C DTE CABLE, 5061-4215" to attach modems. -.PP +.Pp +Use +.Tn HP +cable "98626 & 98628 opts.002, +.Tn RS232-C +.Tn DCE CABLE , +5061-4216" to attach non-modem devices. +Use +.Tn HP +cable "98626 & 98628 opts.001, +.Tn RS232-C +.Tn DTE CABLE , +5061-4215" to attach modems. +.Pp The 98628A has a 256 byte input silo and a 256 output silo. Input interrupts happen on a per character basis. -.PP -The high water and low water marks in the kernel tty routines are totally +.Pp +The high water and low water marks in the kernel tty routines are completely inappropriate for a device like this with a large input buffer. Don't use tandem mode if possible. A fast system can handle input at 19.2K baud without receive overflow. - -For output to devices that make heavy use of XON/XOFF a write size of less +.Pp +For output to devices that make heavy use of +.Tn XON/XOFF +a write size of less then 256 will improve performance marginally. -.SH FILES -/dev/ttyl[0-9] -.SH "SEE ALSO" -tty(4) -.SH DIAGNOSTICS -\fBdcl%d: error 0x%x RESET CARD\fR Where the errors are in coded as -.DS +.Sh FILES +.Bl -tag -width /dev/ttyl[0-9] -compact +.It Pa /dev/ttyl[0-9] +.El +.Sh DIAGNOSTICS +.Bl -diag +.It dcl%d: error 0x%x RESET CARD. +Where the errors are encoded: +.Bd -unfilled -offset indent 0x06 card failure 0x0d uart receive overflow 0x0e receive overflow @@ -63,11 +82,22 @@ tty(4) 0x1a register address out of range 0x1b register value out of range 0x-- unknown error -.DE -.SH BUGS +.Ed +.El +.Sh SEE ALSO +.Xr tty 4 +.Sh HISTORY +The +.Nm +driver +.Ud +.Sh BUGS Breaks received at a faster rate then 1 break every second will be recognized as a single break. - +.Pp Console use is not supported. - -The RS-422/423/499, MTS-DSN/DL modes of the card are not supported. +.Pp +The +.Tn RS-422/423/499 , +.Tn MTS-DSN/DL +modes of the card are not supported. diff --git a/usr/src/share/man/man4/man4.hp300/dcm.4 b/usr/src/share/man/man4/man4.hp300/dcm.4 index 22b965adec..d39ffc4ffb 100644 --- a/usr/src/share/man/man4/man4.hp300/dcm.4 +++ b/usr/src/share/man/man4/man4.hp300/dcm.4 @@ -1,54 +1,76 @@ -.\" Copyright (c) 1990 The Regents of the University of California. +.\" 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. -.\" .\" %sccs.include.redist.man% .\" -.\" @(#)dcm.4 5.1 (Berkeley) %G% +.\" @(#)dcm.4 5.2 (Berkeley) %G% .\" -.TH DCM 4 "" -.UC 7 -.SH NAME -dcm \- HP 98642A communications multiplexer -.SH SYNOPSIS -.B "device dcm0 at scode? flags 0xe" -.SH DESCRIPTION -The 98642A is a four port EIA RS-232C (CCITT V.28) communications -multiplexer. The 98642A has three direct-connect ports and one port with +.Dd +.Dt DCM 4 hp300 +.Os +.Sh NAME +.Nm dcm +.Nd +.Tn HP +98642A communications multiplexer +.Sh SYNOPSIS +.Cd "device dcm0 at scode? flags 0xe" +.Sh DESCRIPTION +The +.Tn 98642A +is a four port +.Tn EIA +.Tn RS-232C +.Pf ( Tn CCITT +.Tn V.28 ) +communications +multiplexer. The +.Tn 98642A +has three direct-connect ports and one port with full modem control. -.PP -Each line attached to the 98642A behaves as described in -.IR tty (4). +.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. See -.IR tty (4) -for the encoding. -.PP -Flags is usually specified as 0xe since 3 of the 4 ports (1-3) do not support +9600, 19200, 38400. +.Pp +.Ar Flags +is usually specified as 0xe since 3 of the 4 ports (1-3) do not support modem control and should be treated as hard-wired with carrier always present. If port 0 does not have the need for modem control then flags can be specified -as 0xf. -.PP -Each port on the 98642A has a 128 byte input silo and a 16 byte output silo. +as +.Ql 0xf . +.Pp +Each port on the +.Tn 98642A +has a 128 byte input silo and a 16 byte output silo. Interrupts happen on a per character basis unless the interrupt rate for the card reaches 70 interrupts per second at which time the driver changes to a 16.7ms (60 interrupts per second) polling scheme until the interrupt rate drops. -.SH FILES -/dev/tty0[0-9a-f] -.SH "SEE ALSO" -tty(4) -.SH DIAGNOSTICS -\fBdcm%d port%d: silo overflow\fR Input Silo has overflowed and incoming data +.Sh FILES +.Bl -tag -width /dev/tty0[0-9a-f] -compact +.It Pa /dev/tty0[0-9a-f] +.El +.Sh DIAGNOSTICS +.Bl -diag +.It dcm%d port%d: silo overflow +Input Silo has overflowed and incoming data has been lost. -.PP -\fBdcm%d port%d: uart overflow\fR The 3 character buffer in the uart has +.Pp +.It dcm%d port%d: uart overflow +The 3 character buffer in the uart has overflowed. -.SH BUGS +.El +.Sh SEE ALSO +.Xr tty 4 +.Sh HISTORY +The +.Nm +driver +.Ud +.Sh BUGS Total throughput per card, all ports together, is limited to 76800 bits per second continuous input rate. - diff --git a/usr/src/share/man/man4/man4.hp300/dv.4 b/usr/src/share/man/man4/man4.hp300/dv.4 index c54fb2554a..fcc7cf53a2 100644 --- a/usr/src/share/man/man4/man4.hp300/dv.4 +++ b/usr/src/share/man/man4/man4.hp300/dv.4 @@ -1,4 +1,4 @@ -.\" Copyright (c) 1990 The Regents of the University of California. +.\" Copyright (c) 1990, 1991 The Regents of the University of California. .\" All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by @@ -7,110 +7,141 @@ .\" .\" %sccs.include.redist.man% .\" -.\" @(#)dv.4 5.1 (Berkeley) %G% +.\" @(#)dv.4 5.2 (Berkeley) %G% .\" -.TH DV 4 "" -.UC 7 -.SH NAME -dv \- HP98730 ``DaVinci'' device interface -.SH DESCRIPTION -This driver is for the HP98730 and 98731 graphics device, also known as +.Dd +.Dt DV 4 hp300 +.Os +.Sh NAME +.Nm dv +.Nd +.Tn HP98730 +``DaVinci'' device interface +.Sh DESCRIPTION +This driver is for the +.Tn HP98730 +and 98731 graphics device, also known as the DaVinci. This driver has not been tested with all possible combinations of frame buffer boards and scan boards installed in the device. The driver merely checks for the existence of the device and does minimal set up. -.PP +.Pp The DaVinci can be configured at either the ``internal'' address (frame buffer address 0x200000, control register space address 0x560000) or at an external select code less than 32. At the internal address it will be the ``preferred'' console device (see -.IR cons (4)). +.Xr cons 4 ) . The hardware installation manual describes the procedure for setting these values. -.PP +.Pp A user process communicates to the device initially by means of -.IR ioctl (2) -calls. For the HP-UX ioctl calls supported, refer to HP-UX manuals. -The BSD calls supported are: -.TP -GRFIOCGINFO +.Xr ioctl 2 +calls. For the +.Tn HP-UX +.Xr ioctl +calls supported, refer to +.Tn HP-UX +manuals. +The +.Bx +calls supported are: +.Bl -tag -width indent +.It Dv GRFIOCGINFO Get Graphics Info -.sp +.Pp Get info about device, setting the entries in the -.I grfinfo -structure, as defined in . +.Ar grfinfo +structure, as defined in +.Aq Pa hpdev/grfioctl.h . For the standard 98730, the number of planes should be 4. The number of colors would therefore be 15, excluding black. If one 98732A frame buffer board is installed, there will still be 4 planes, with the 4 planes on the colormap board becoming overlay planes. With each additional 98732 frame buffer board 4 planes will be added up to a maximum of 32 planes total. -.TP -GRFIOCON +.It Dv GRFIOCON Graphics On -.sp -Turn graphics on by enabling CRT output. The screen will come on, displaying +.Pp +Turn graphics on by enabling +.Tn CRT +output. The screen will come on, displaying whatever is in the frame buffer, using whatever colormap is in place. -.TP -GRFIOCOFF +.It Dv GRFIOCOFF Graphics Off -.sp -Turn graphics off by disabling output to the CRT. The frame buffer contents +.Pp +Turn graphics off by disabling output to the +.Tn CRT . +The frame buffer contents are not affected. -.TP -GRFIOCMAP +.It Dv GRFIOCMAP Map Device to user space -.sp -Map in control registers and framebuffer space. Once the device file is +.Pp +Map in control registers and frame buffer space. Once the device file is mapped, the frame buffer structure is accessible. The structure describing -the 98730 is defined in . -.SH EXAMPLE +the 98730 is defined in +.Aq Pa hpdev/grf_dvreg.h . +.El +.Sh EXAMPLE This is a short segment of code showing how the device is opened and mapped -into user process address space assuming that it is grf0: -.DS -{ - struct dvboxfb *dvbox; - u_char *Addr, frame_buffer; - struct grfinfo gi; - int disp_fd; +into user process address space assuming that it is +.Ql grf0 : +.Bd -literal -offset indent +struct dvboxfb *dvbox; +u_char *Addr, frame_buffer; +struct grfinfo gi; +int disp_fd; - disp_fd = open("/dev/grf0",1); +disp_fd = open("/dev/grf0",1); - if (ioctl (disp_fd, GRFIOCGINFO, &gi) < 0) return -1; +if (ioctl (disp_fd, GRFIOCGINFO, &gi) < 0) return -1; - (void) ioctl (disp_fd, GRFIOCON, 0); +(void) ioctl (disp_fd, GRFIOCON, 0); - Addr = (u_char *) 0; - if (ioctl (disp_fd, GRFIOCMAP, &Addr) < 0) { - (void) ioctl (disp_fd, GRFIOCOFF, 0); - return -1; - } - dvbox = (dvboxfb *) Addr; /* Control Registers */ - frame_buffer = (u_char *) Addr + gi.gd_regsize; /* Frame buffer memory */ +Addr = (u_char *) 0; +if (ioctl (disp_fd, GRFIOCMAP, &Addr) < 0) { +(void) ioctl (disp_fd, GRFIOCOFF, 0); +return -1; } -.DE -.SH SEE ALSO -ioctl(2), grf(4). -.SH FILES -.ta \w'/dev/crt98730, /dev/ocrt98730 'u -/dev/grf? BSD special file -.br -/dev/crt98730, /dev/ocrt98730 HP-UX \fIstarbase\fP special files -.br -/dev/MAKEDEV.hpux script for creating HP-UX special files -.SH ERRORS -.TP 15 -[ENODEV] +dvbox = (dvboxfb *) Addr; /* Control Registers */ +frame_buffer=(u_char *)Addr+gi.gd_regsize; /* Frame buffer memory */ +.Ed +.Sh FILES +.Bl -tag -width /dev/MAKEDEV.hpux -compact +.It Pa /dev/grf? +.Bx +special file +.It Pa /dev/crt98730 +.It Pa /dev/ocrt98730 +.Tn HP-UX +.Em starbase +special files +.It Pa /dev/MAKEDEV.hpux +script for creating +.Tn HP-UX +special files +.El +.Sh DIAGNOSTICS +None under +.Bx . +.Tn HP-UX +.Tn CE.utilities +must be used. +.Sh ERRORS +.Bl -tag -width [EINVAL] +.It Bq Er ENODEV no such device. -.TP 15 -[EBUSY] +.It Bq Er EBUSY Another process has the device open. -.TP 15 -[EINVAL] +.It Bq Er EINVAL Invalid ioctl specification. -.SH BUGS +.El +.Sh SEE ALSO +.Xr ioctl 2 , +.Xr grf 4 . +.Sh HISTORY +The +.Nm +driver +.Ud +.Sh BUGS Not tested for all configurations of scan board and frame buffer memory boards. -.SH DIAGNOSTICS -None under BSD. -.br -HP-UX CE.utilities must be used. diff --git a/usr/src/share/man/man4/man4.hp300/gb.4 b/usr/src/share/man/man4/man4.hp300/gb.4 index 22ae0ac21a..9e06676722 100644 --- a/usr/src/share/man/man4/man4.hp300/gb.4 +++ b/usr/src/share/man/man4/man4.hp300/gb.4 @@ -1,131 +1,158 @@ -.\" Copyright (c) 1990 The Regents of the University of California. +.\" 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. -.\" .\" %sccs.include.redist.man% .\" -.\" @(#)gb.4 5.1 (Berkeley) %G% +.\" @(#)gb.4 5.2 (Berkeley) %G% .\" -.TH GB 4 "" -.UC 7 -.SH NAME -gb \- HP98700 ``Gatorbox'' device interface -.SH DESCRIPTION -This driver is for the HP98700 and 98710 graphics devices, also known as +.Dd +.Dt GB 4 hp300 +.Os +.Sh NAME +.Nm gb +.Nd +.Tn HP98700 +``Gatorbox'' device interface +.Sh DESCRIPTION +This driver is for the +.Tn HP98700 +and 98710 graphics devices, also known as the Gatorbox. The term ``Gator'' will often be used, and it is not to be -confused with ``Gator'' used in reference to an HP 9837 or 200/237 machine. +confused with ``Gator'' used in reference to an +.Tn HP +9837 or 200/237 machine. Also, the term Gatorbox is used for the 98700 alone, with the 98701 frame buffer memory or with the 98710 accelerator installed. This driver merely checks for the existence of the device and does minimal set up, as it is expected the applications will initialize the device to their requirements. -.PP +.Pp The 98700 can be used as the only graphics device on a system, in which case it will be used as the system console. It can also be installed as a secondary -display device. For the first case, the HP 98287A M.A.D. interface card +display device. For the first case, the +.Tn HP +.Tn 98287A M.A.D. +interface card should be set to internal control space. This will put the frame buffer at the DIO address 0x200000 and the control registers at 0x560000. At this address it will be the ``preferred'' console device (see -.IR cons (4)). +.Xr cons 4 ) . For use as a secondary device, the 98287A should be set to frame buffer address 0x300000, and to an external select code. -.PP +.Pp It should be noted that this configuration will conflict with the 98547 display card which has a 2 megabyte frame buffer starting at address 0x200000. The 98700 should only be installed as a secondary device in a machine with a 1 bit 98544 display card or 4 bit 98545 card. The -.I "98700H Installation Guide" +.%T 98700H Installation Guide contains further configuration information. -.PP +.Pp The -.IR ioctl (2) -calls supported by the BSD system for the Gatorbox are: -.TP -GRFIOCGINFO +.Xr ioctl 2 +calls supported by the +.Bx +system for the Gatorbox are: +.Bl -tag -width indent +.It Dv GRFIOCGINFO Get Graphics Info -.sp +.Pp Get info about device, setting the entries in the -.I grfinfo -structure, as defined in . +.Em grfinfo +structure, as defined in +.Aq Pa hpdev/grfioctl.h . For the standard 98700, the number of planes should be 4. The number of colors would therefore be 15, excluding black. With the 98701 option installed there will be another 4 planes for a total of 8, giving 255 colors. -.TP -GRFIOCON +.It Dv GRFIOCON Graphics On -.sp -Turn graphics on by enabling CRT output. The screen will come on, displaying +.Pp +Turn graphics on by enabling +.Tn CRT +output. The screen will come on, displaying whatever is in the frame buffer, using whatever colormap is in place. -.TP -GRFIOCOFF +.It Dv GRFIOCOFF Graphics Off -.sp -Turn graphics off by disabling output to the CRT. The frame buffer contents +.Pp +Turn graphics off by disabling output to the +.Tn CRT . +The frame buffer contents are not affected. -.TP -GRFIOCMAP +.It Dv GRFIOCMAP Map Device to user space -.sp +.Pp Map in control registers and framebuffer space. Once the device file is mapped, the frame buffer structure is accessible. The frame buffer structure describing the 98700 -is given in . -.TP -GRFIOCUNMAP +is given in +.Aq Pa hpdev/grf_gbreg.h . +.It Dv GRFIOCUNMAP Unmap Device -.sp +.Pp Unmap control registers and framebuffer space. -.PP +.Pp For further information about the use of ioctl see the man page. -.SH EXAMPLE +.El +.Sh EXAMPLE A small example of opening, mapping and using the device is given below. For more examples of the details on the behavior of the device, see the device dependent source files for the X Window System, in the -.I /usr/src/new/X/libhp.fb +.Pa /usr/src/new/X/libhp.fb directory. -.DS -{ - struct gboxfb *gbox; - u_char *Addr, frame_buffer; - struct grfinfo gi; - int disp_fd; +.Bd -literal -offset indent +struct gboxfb *gbox; +u_char *Addr, frame_buffer; +struct grfinfo gi; +int disp_fd; - disp_fd = open("/dev/grf0",1); +disp_fd = open("/dev/grf0",1); - if (ioctl (disp_fd, GRFIOCGINFO, &gi) < 0) return -1; +if (ioctl (disp_fd, GRFIOCGINFO, &gi) < 0) return -1; - (void) ioctl (disp_fd, GRFIOCON, 0); +(void) ioctl (disp_fd, GRFIOCON, 0); - Addr = (u_char *) 0; - if (ioctl (disp_fd, GRFIOCMAP, &Addr) < 0) { - (void) ioctl (disp_fd, GRFIOCOFF, 0); - return -1; - } - gbox = (gboxfb *) Addr; /* Control Registers */ - frame_buffer = (u_char *) Addr + gi.gd_regsize; /* Frame buffer memory */ +Addr = (u_char *) 0; +if (ioctl (disp_fd, GRFIOCMAP, &Addr) < 0) { +(void) ioctl (disp_fd, GRFIOCOFF, 0); +return -1; } -.DE -.SH SEE ALSO -ioctl(2), grf(4) -.SH FILES -/dev/grf? BSD special file -.br -/dev/crt98700 HP-UX \fIstarbase\fP special file -.SH ERRORS -.TP 15 -[ENODEV] +gbox = (gboxfb *) Addr; /* Control Registers */ +frame_buffer = (u_char *) Addr + gi.gd_regsize; /* Frame buffer memory */ +.Ed +.Sh FILES +.Bl -tag -width /dev/crt98700 -compact +.It Pa /dev/grf? +.Bx +special file +.It Pa /dev/crt98700 +.Tn HP-UX +.Em starbase +special file +.El +.Sh DIAGNOSTICS +None under +.Bx . +.Tn HP-UX +The +.Tn CE.utilities/Crtadjust +programs must be used. +.Sh ERRORS +.Bl -tag -width [EINVAL] +.It Bq Er ENODEV no such device. -.TP 15 -[EBUSY] +.It Bq Er EBUSY Another process has the device open. -.TP 15 -[EINVAL] +.It Bq Er EINVAL Invalid ioctl specification. -.SH DIAGNOSTICS -None under BSD. -.br -HP-UX CE.utilities/Crtadjust programs must be used. +.El +.Sh SEE ALSO +.Xr ioctl 2 , +.Xr grf 4 +.Sh HISTORY +The +.Nm +driver +.Ud diff --git a/usr/src/share/man/man4/man4.hp300/grf.4 b/usr/src/share/man/man4/man4.hp300/grf.4 index af51a7e587..0b7b9be32c 100644 --- a/usr/src/share/man/man4/man4.hp300/grf.4 +++ b/usr/src/share/man/man4/man4.hp300/grf.4 @@ -1,22 +1,27 @@ -.\" Copyright (c) 1990 The Regents of the University of California. +.\" 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. -.\" .\" %sccs.include.redist.man% .\" -.\" @(#)grf.4 5.1 (Berkeley) %G% +.\" @(#)grf.4 5.2 (Berkeley) %G% .\" -.TH GRF 4 "" -.UC 7 -.SH NAME -grf \- HP graphics frame buffer device interface -.SH DESCRIPTION +.Dd +.Dt GRF 4 hp300 +.Os +.Sh NAME +.Nm grf +.Nd +.Tn HP +graphics frame buffer device interface +.Sh DESCRIPTION This is a generic description of the frame buffer device interface. The devices to which this applies are the 98544, 98545 and 98547 -Topcat display cards (also known as HP300H devices), +Topcat display cards (also known as +.Tn HP300H +devices), the 98548, 98549 and 98550 Catseye display cards, the 98700 @@ -25,128 +30,158 @@ the 98720 Renaissance graphics box, and the 98730 DaVinci graphics box. -.PP +.Pp Use of the devices can be effectively approached from two directions. -The first is through HP-UX -.I Starbase -routines, the second is by direct control in the BSD environment. +The first is through +.Tn HP-UX +.Em Starbase +routines, the second is by direct control in the +.Bx +environment. In order to use the Starbase libraries, -code must be compiled in an HP-UX environment, either by doing so on an HP-UX -machine and transferring the binaries to the BSD machine, or by compilation +code must be compiled in an +.Tn HP-UX +environment, either by doing so on an +.Tn HP-UX +machine and transferring the binaries to the +.Bx +machine, or by compilation with the use of the -.IR hpux (1) +.Xr hpux 1 command. Applications using Starbase libraries have been run successfully -on BSD machines using both of these compilation techniques. -.PP +on +.Bx +machines using both of these compilation techniques. +.Pp Direct compilation, such as that used for the X Window System servers, has also been successful. Examples of some frame buffer operations can be found in the device dependent X Window system sources, for example the -.I /usr/src/new/X/libhp.fb +.Pa /usr/src/new/X/libhp.fb directory. These files contain examples of device dependent color map initialization, frame buffer operations, bit moving routines etc. -.PP +.Pp The basic programming of the -.IR grf \? +.Nm grf Ns Em \? devices involves opening the device file, mapping the control registers and frame buffer addresses into user space, and then manipulating the device as the application requires. The address mapping is controlled by an -.IR ioctl (2) +.Xr ioctl 2 call to map the device into user space, and an unmap call when finished. -The ioctls supported by BSD are: -.TP -GRFIOCGINFO +The ioctls supported by +.Bx +are: +.Bl -tag -width indent +.It Dv GRFIOCGINFO Get Graphics Info -.sp +.Pp Get info about device, setting the entries in the -.I grfinfo +.Em grfinfo structure, as defined in : -.DS +.Bd -literal struct grfinfo { - int gd_id; /* HPUX identifier */ - caddr_t gd_regaddr; /* control registers physaddr */ - int gd_regsize; /* control registers size */ - caddr_t gd_fbaddr; /* frame buffer physaddr */ - int gd_fbsize; /* frame buffer size */ - short gd_colors; /* number of colors */ - short gd_planes; /* number of planes */ + int gd_id; /* HPUX identifier */ + caddr_t gd_regaddr; /* control registers physaddr */ + int gd_regsize; /* control registers size */ + caddr_t gd_fbaddr; /* frame buffer physaddr */ + int gd_fbsize; /* frame buffer size */ + short gd_colors; /* number of colors */ + short gd_planes; /* number of planes */ /* new stuff */ - int gd_fbwidth; /* frame buffer width */ - int gd_fbheight; /* frame buffer height */ - int gd_dwidth; /* displayed part width */ - int gd_dheight; /* displayed part height */ - int gd_pad[6]; /* for future expansion */ + int gd_fbwidth; /* frame buffer width */ + int gd_fbheight; /* frame buffer height */ + int gd_dwidth; /* displayed part width */ + int gd_dheight; /* displayed part height */ + int gd_pad[6]; /* for future expansion */ }; -.DE -.TP -GRFIOCON +.Ed +.It Dv GRFIOCON Graphics On -.sp -Turn graphics on by enabling CRT output. The screen will come on, displaying +.Pp +Turn graphics on by enabling +.Tn CRT +output. The screen will come on, displaying whatever is in the frame buffer, using whatever colormap is in place. -.TP -GRFIOCOFF +.It Dv GRFIOCOFF Graphics Off -.sp -Turn graphics off by disabling output to the CRT. The frame buffer contents +.Pp +Turn graphics off by disabling output to the +.Tn CRT . +The frame buffer contents are not affected. -.TP -GRFIOCMAP +.It Dv GRFIOCMAP Map Device to user space -.sp +.Pp Map in control registers and framebuffer space. Once the device file is mapped, the frame buffer structure is accessible. -.TP -GRFIOCUNMAP +.It Dv GRFIOCUNMAP Unmap Device -.sp +.Pp Unmap control registers and framebuffer space. -.PP +.El +.Pp For further information about the use of ioctl see the man page. -.SH EXAMPLE +.Sh EXAMPLE This short code fragment is an example of opening some graphics device and mapping in the control and frame buffer space: -.DS +.Bd -literal #define GRF_DEV /* /dev/grfN */ { - struct fbstruct *regs; /* fbstruct = gboxfb, rboxfb, etc. */ - u_char *Addr, frame_buffer; - struct grfinfo gi; - int disp_fd; + struct fbstruct *regs; /* fbstruct = gboxfb, rboxfb, etc. */ + u_char *Addr, frame_buffer; + struct grfinfo gi; + int disp_fd; - disp_fd = open(GRF_DEV,1); - if (ioctl (disp_fd, GRFIOCGINFO, &gi) < 0) return -1; - (void) ioctl (disp_fd, GRFIOCON, 0); + disp_fd = open(GRF_DEV,1); + if (ioctl (disp_fd, GRFIOCGINFO, &gi) < 0) return -1; + (void) ioctl (disp_fd, GRFIOCON, 0); - Addr = (u_char *) 0; - if (ioctl (disp_fd, GRFIOCMAP, &Addr) < 0) { - (void) ioctl (disp_fd, GRFIOCOFF, 0); - return -1; - } - regs = (fbstruct *) Addr; /* Control Registers */ - frame_buffer = (u_char *) Addr + gi.gd_regsize; /* Frame buffer memory */ + Addr = (u_char *) 0; + if (ioctl (disp_fd, GRFIOCMAP, &Addr) < 0) { + (void) ioctl (disp_fd, GRFIOCOFF, 0); + return -1; + } + regs = (fbstruct *) Addr; /* Control Registers */ + frame_buffer = (u_char *) Addr + gi.gd_regsize; /* Frame buffer mem */ } -.DE -.SH SEE ALSO -ioctl(2), dv(4), gb(4), rb(4), tc(4), hil(4) -.SH FILES -.ta \w'/dev/*crt* 'u -/dev/grf? BSD interface special files -.br -/dev/*crt* HP-UX \fIstarbase\fP interface special files -.SH ERRORS -.TP 15 -[ENODEV] +.Ed +.Sh FILES +.Bl -tag -width /dev/*crt*? -compact +.It Pa /dev/grf? +.Bx +interface special files +.It Pa /dev/*crt* +.Tn HP-UX +.Em starbase +interface special files +.El +.Sh DIAGNOSTICS +None under +.Bx . +.Tn HP-UX +The +.Tn CE.utilities/Crtadjust +programs must be used for each specific device. +.Sh ERRORS +.Bl -tag -width [EINVAL] +.It Bq Er ENODEV no such device. -.TP 15 -[EBUSY] +.It Bq Er EBUSY Another process has the device open. -.TP 15 -[EINVAL] +.It Bq Er EINVAL Invalid ioctl specification. -.SH DIAGNOSTICS -None under BSD. -.br -HP-UX CE.utilities/Crtadjust programs must be used for each specific device. +.El +.Sh SEE ALSO +.Xr ioctl 2 , +.Xr dv 4 , +.Xr gb 4 , +.Xr rb 4 , +.Xr tc 4 , +.Xr hil 4 +.Sh HISTORY +The +.Nm +driver +.Ud diff --git a/usr/src/share/man/man4/man4.hp300/hil.4 b/usr/src/share/man/man4/man4.hp300/hil.4 index 4d5ba08653..065afbb48c 100644 --- a/usr/src/share/man/man4/man4.hp300/hil.4 +++ b/usr/src/share/man/man4/man4.hp300/hil.4 @@ -1,4 +1,4 @@ -.\" Copyright (c) 1990 The Regents of the University of California. +.\" Copyright (c) 1990, 1991 The Regents of the University of California. .\" All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by @@ -7,47 +7,76 @@ .\" .\" %sccs.include.redist.man% .\" -.\" @(#)hil.4 5.1 (Berkeley) %G% +.\" @(#)hil.4 5.2 (Berkeley) %G% .\" -.TH HIL 4 "" -.UC 7 -.SH NAME -hil \- Human Interface Link device driver -.SH DESCRIPTION -The Human Interface Link (HIL) is the interface used by the Series +.Dd +.Dt HIL 4 hp300 +.Os +.Sh NAME +.Nm hil +.Nd Human Interface Link device driver +.Sh DESCRIPTION +The Human Interface Link +.Pq Tn HIL +is the interface used by the Series 300 computers to connect devices such as keyboards, mice, control knobs, -and ID modules to the machine. -.PP -Special files /dev/hil[1-7] refer to physical HIL devices 1 through 7. -/dev/hil0 refers to the ``loop'' pseudo-device and is used for the queue +and +.Tn ID +modules to the machine. +.Pp +Special files +.Pa /dev/hil[1-7] +refer to physical +.Tn HIL +devices 1 through 7. +.Pa /dev/hil0 +refers to the ``loop'' pseudo-device and is used for the queue allocation commands described below. In the current implementation, -there can only be one keyboard and it must be the first device (hil1). -.PP -The device file that corresponds to a particular HIL device is determined -by the order of the devices on the loop. For instance, if the ID module -is the second physical device on the loop, then /dev/hil2 is the special +there can only be one keyboard and it must be the first device +.Pq Li hil1 . +.Pp +The device file that corresponds to a particular +.Tn HIL +device is determined +by the order of the devices on the loop. For instance, if the +.Tn ID +module +is the second physical device on the loop, then +.Pa /dev/hil2 +is the special file that should be used for communication with the module. -.PP -Communication with an HIL device is begun with an -.I open +.Pp +Communication with an +.Tn HIL +device is begun with an +.Em open system call. A process may open a device already opened by another process unless -the process is operating in HP-UX compatibility mode +the process is operating in +.Tn HP-UX +compatibility mode in which case it requires exclusive use of the device, or -another process has the device open and is using HP-UX style +another process has the device open and is using +.Tn HP-UX +style device access (see -.SM HILIOCHPUX +.Dv HILIOCHPUX below). -.PP +.Pp Input data from a device are obtained in one of two ways. -Processes may use an HP-UX style interface in which the \fIread\fP(2) +Processes may use an +.Tn HP-UX +style interface in which the +.Xr read 2 system call is used to get fixed-size input packets, or they can use a -.I "shared-queue" +.Em shared-queue interface. The shared-queue interface avoids the system call overhead associated with -the HP-UX read interface by sharing a region of memory between the system +the +.Tn HP-UX +read interface by sharing a region of memory between the system and a user process. This region consists of a circular list of 255 event packets, and a header containing the size of the queue, and its head and tail indices. @@ -59,215 +88,266 @@ It is up to the process to ensure that packets are removed from the queue quickly enough to prevent the queue from filling. The system, when it determines that the queue is full, will ignore future packets from the device. -Devices are \fImapped\fP to queues via an ioctl. +Devices are +.Em mapped +to queues via an +.Xr ioctl 2. More than one device can be mapped to a single queue and one device can be mapped to several queues. -Queues are implicitly unmapped by a \fIfork\fP(2) and thus, +Queues are implicitly unmapped by a +.Xr fork 2 +and thus, cannot be shared between processes. -.PP +.Pp Choosing the type of interface is done on a per device basis using -an ioctl, but each device can only have one interface at any given time. -.PP -.I Select +an +.Xr ioctl , +but each device can only have one interface at any given time. +.Pp +.Em Select may be used with either interface to detect when input data are present. With the read interface, selecting indicates when there is input for a given device. -With the shared-queue interface, selecting on the loop pseudo-device (hil0) +With the shared-queue interface, selecting on the loop pseudo-device +.Pq Li hil0 indicates when data are present from any device on any queue while selecting on an individual device indicates when data are present for that device on any queue. -.PP -.I Close -shuts down the file descriptor associated with the HIL device. +.Pp +.Em Close +shuts down the file descriptor associated with the +.Tn HIL +device. The last close (system-wide) of any device removes that device from all queues it was mapped to while the last close of the loop pseudo-device unmaps all devices and deallocates all queues. -.PP -.IR Ioctl (2) -is used to control the HIL device. -The ioctl commands (see ) +.Pp +.Xr Ioctl 2 +is used to control the +.Tn HIL +device. +The ioctl commands (see +.Aq Pa hpdev/hilioctl.h ) listed below are separated into two groups. -The first are those which provide functions identical to HP-UX. -Refer to \fIhil\fP(7) in the HP-UX documentation for more +The first are those which provide functions identical to +.Tn HP-UX . +Refer to +.Xr hil 7 +in the +.Tn HP-UX +documentation for more complete descriptions of these ioctls. The second set of ioctls are specific to this implementation and are primarily related to the shared-queue interface. -.TP 10 -HILIOCID +.Bl -tag -width HILIOCARO +.It Dv HILIOCID Identify and Describe -.sp +.Pp The device will return up to 11 bytes of information describing the type and characteristics of the device. At the very least, 2 bytes of information, -the device ID, and the Describe Record Header will be returned. -Identical to the HP-UX -.SM HILID +the device +.Tn ID , +and the Describe Record Header will be returned. +Identical to the +.Tn HP-UX +.Dv HILID ioctl. -.TP -HILIOCSC +.It Dv HILIOCSC Report Security Code -.sp +.Pp Request the security code record from a device. The security code can -vary from 1 byte to 15, and is only supported by some HIL devices. -Identical to the HP-UX -.SM HILSC +vary from 1 byte to 15, and is only supported by some +.Tn HIL +devices. +Identical to the +.Tn HP-UX +.Dv HILSC ioctl. -.TP -HILIOCRN +.It Dv HILIOCRN Report Name -.sp +.Pp An ascii string of up to 15 bytes in length that describes the device is returned. -Identical to the HP-UX -.SM HILRN +Identical to the +.Tn HP-UX +.Dv HILRN ioctl. -.TP -HILIOCRS +.It Dv HILIOCRS Report Status -.sp +.Pp An ascii string of up to 15 bytes in length that describes the current status of the device is returned. -Identical to the HP-UX -.SM HILRS +Identical to the +.Tn HP-UX +.Dv HILRS ioctl. -.TP -HILIOCED +.It Dv HILIOCED Extended Describe -.sp +.Pp Additional information of up to 15 bytes is returned describing the device. -This ioctl is similar to HILIOCID, which must be used first +This ioctl is similar to +.Tn HILIOCID , +which must be used first to determine if the device supports extended describe. -Identical to the HP-UX -.SM HILED +Identical to the +.Tn HP-UX +.Dv HILED ioctl. -.TP -HILIOCAROFF +.It Dv HILIOCAROFF Disable Auto Repeat -.sp +.Pp Turn off auto repeat on the keyboard while it is cooked mode. -Identical to the HP-UX -.SM HILDKR +Identical to the +.Tn HP-UX +.Dv HILDKR ioctl. -.TP -HILIOCAR1 +.It Dv HILIOCAR1 Enable Auto Repeat -.sp +.Pp Turn on auto repeat on the keyboard while it is in raw mode. The repeat rate is set to 1/30th of a second. -Identical to the HP-UX -.SM HILER1 +Identical to the +.Tn HP-UX +.Dv HILER1 ioctl. -.TP -HILIOCAR2 +.It Dv HILIOCAR2 Enable Auto Repeat -.sp +.Pp Turn on auto repeat on the keyboard while it is in raw mode. The repeat rate is set to 1/60th of a second. -Identical to the HP-UX -.SM HILER2 +Identical to the +.Tn HP-UX +.Dv HILER2 ioctl. -.PP +.Pp The following ioctls are specific to this implementation: -.TP 13 -HILIOCBEEP +.It Dv HILIOCBEEP Beep -.sp +.Pp Generate a keyboard beep as defined by -.IR arg . -.I Arg +.Ar arg . +.Ar Arg is a pointer to two bytes of information, the first is the duration of the beep (microseconds), the second is the frequency of the beep. -.TP 13 -HILIOCALLOCQ +.It Dv HILIOCALLOCQ Allocate Queue -.sp +.Pp Allocate and map into user space, -an HILQ structure as defined in . -.I Arg +an +.Tn HILQ +structure as defined in +.Aq Pa hpdev/hilioctl.h . +.Ar Arg is a pointer to a -.I hilqinfo -structure (also described in ) +.Ar hilqinfo +structure (also described in +.Aq Pa hpdev/hilioctl.h ) consisting of a -.I qid +.Pa qid and an -.I addr . +.Pa addr . If -.I addr +.Pa addr is non-zero it specifies where in the address space to map the queue. If zero, the system will select a convenient location and fill in -.IR addr . -.I Qid +.Pa addr . +.Pa Qid is filled in by the system and is a small integer used to uniquely identify this queue. This ioctl can only be issued to the loop pseudo-device. -.TP 14 -HILIOCFREEQ +.It Dv HILIOCFREEQ Free Queue -.sp -Release a previously allocated HIL event queue, +.Pp +Release a previously allocated +.Tn HIL +event queue, unmapping it from the user's address space. -.I Arg +.Ar Arg should point to a -.I hilqinfo +.Ar hilqinfo structure which contains the -.I qid +.Ar qid of the queue to be released. All devices that are currently mapped to the queue are unmapped. This ioctl can only be issued to the loop pseudo-device. -.TP 14 -HILIOCMAPQ +.It Dv HILIOCMAPQ Map Device to Queue -.sp -Maps this device to a previously allocated HIL event queue. -.I Arg +.Pp +Maps this device to a previously allocated +.Tn HIL +event queue. +.Ar Arg is a pointer to an integer containing the -.I qid +.Ar qid of the queue. Once a device is mapped to a queue, all event information generated by the device will be placed into the event queue at the tail. -.TP 14 -HILIOCUNMAPQ +.It Dv HILIOCUNMAPQ Unmap Device from Queue -.sp -Unmap this device from a previously allocated HIL event queue. -.I Arg +.Pp +Unmap this device from a previously allocated +.Tn HIL +event queue. +.Ar Arg is a pointer to an integer containing the -.I qid +.Ar qid for the queue. Future events from the device are no longer placed on the event queue. -.TP 14 -HILIOCHPUX +.It Dv HILIOCHPUX Use HP-UX Read Interface -.sp -Use HP-UX semantics for gathering data from this device. +.Pp +Use +.Tn HP-UX +semantics for gathering data from this device. Instead of placing input events for the device on a queue, -they are placed, in HP-UX format, into a buffer from which they -can be obtained via \fIread\fP(2). +they are placed, in +.Tn HP-UX +format, into a buffer from which they +can be obtained via +.Xr read 2 . This interface is provided for backwards compatibility. -Refer to the HP-UX documentation for a description of the event packet. -.SH ERRORS -.TP 15 -[ENODEV] +Refer to the +.Tn HP-UX +documentation for a description of the event packet. +.El +.Sh FILES +.Bl -tag -width /dev/hil[2-7] -compact +.It Pa /dev/hil0 +.Tn HIL +loop pseudo device. +.It Pa /dev/hil1 +.Tn HIL +keyboard device. +.It Pa /dev/hil[2-7] +Individual +.Tn HIL +loop devices. +.El +.Sh ERRORS +.Bl -tag -width [EINVAL] +.It Bq Er ENODEV no such HIL loop device. -.TP 15 -[ENXIO] +.It Bq Er ENXIO HIL loop is inoperative. -.TP 15 -[EBUSY] -Another HP-UX process has the device open, or another BSD process has the -device open, and is using it in HP-UX mode. -.TP 15 -[EINVAL] -Invalid ioctl specification. -.TP 15 -[EMFILE] +.It Bq Er EBUSY +Another HP-UX process has the device open, or another +.Bx +process has the +device open, and is using it in +.Tn HP-UX +mode. +.It Bq Er EINVAL +Invalid +.Xr ioctl +specification. +.It Bq Er EMFILE No more shared queues available. -.SH FILES -.ta \w'/dev/hil[1-7] 'u -/dev/hil0 HIL loop pseudo device. -.br -/dev/hil1 HIL keyboard device. -.br -/dev/hil[2-7] Individual HIL loop devices. +.El +.Sh HISTORY +The +.Nm +interface +.Ud diff --git a/usr/src/share/man/man4/man4.hp300/intro.4 b/usr/src/share/man/man4/man4.hp300/intro.4 index 753de110ab..39d252530e 100644 --- a/usr/src/share/man/man4/man4.hp300/intro.4 +++ b/usr/src/share/man/man4/man4.hp300/intro.4 @@ -1,50 +1,58 @@ -.\" Copyright (c) 1990 Regents of the University of California. -.\" All rights reserved. The Berkeley software License Agreement -.\" specifies the terms and conditions for redistribution. +.\" Copyright (c) 1990, 1991 Regents of the University of California. +.\" All rights reserved. .\" -.\" @(#)intro.4 5.1 (Berkeley) %G% +.\" %sccs.include.redist.man% .\" -.TH INTRO 4 "" -.UC 7 -.SH NAME -intro \- introduction to special files and hardware support -.SH DESCRIPTION +.\" @(#)intro.4 5.2 (Berkeley) %G% +.\" +.Dd +.Dt INTRO 4 hp300 +.Os +.Sh NAME +.Nm intro +.Nd introduction to special files and hardware support +.Sh DESCRIPTION This section describes the special files, related driver functions, and networking support available in the system. -In this part of the manual, the SYNOPSIS section of +In this part of the manual, the +.Tn SYNOPSIS +section of each configurable device gives a sample specification for use in constructing a system description for the -.IR config (8) +.Xr config 8 program. -The DIAGNOSTICS section lists messages which may appear on the console +The +.Tn DIAGNOSTICS +section lists messages which may appear on the console and/or in the system error log -.I /usr/adm/messages +.Pa /usr/adm/messages due to errors in device operation; see -.IR syslogd (8) +.Xr syslogd 8 for more information. -.PP +.Pp This section contains both devices -which may be configured into the system, ``4'' entries, -and network related information, -``4N'', ``4P'', and ``4F'' entries; +which may be configured into the system +and network related information. The networking support is introduced in -.IR intro (4N). -.SH "HP DEVICE SUPPORT" -This section describes the hardware supported on the HP 9000/300 series. +.Xr netintro 4 . +.Sh HP DEVICE SUPPORT +This section describes the hardware supported on the +.Tn HP +9000/300 series. Software support for these devices comes in two forms. A hardware device may be supported with a character or block -.IR "device driver" , +.Em device driver , or it may be used within the networking subsystem and have a -.IR "network interface driver" . +.Em network interface driver . Block and character devices are accessed through files in the file -system of a special type; c.f. -.IR mknod (8). +system of a special type; see +.Xr mknod 8 . Network interfaces are indirectly accessed through the interprocess communication facilities provided by the system; see -.IR socket (2). -.PP +.Xr socket 2 . +.Pp A hardware device is identified to the system at configuration time and the appropriate device or network interface driver is then compiled into the system. When the resultant system is booted, the @@ -54,33 +62,51 @@ If a device does not respond at autoconfiguration time it is not accessible at any time afterwards. To enable a device which did not autoconfigure, the system will have to be rebooted. -.PP +.Pp The autoconfiguration system is described in -.IR autoconf (4). +.Xr autoconf 4 . A list of the supported devices is given below. -.SH SEE ALSO -intro(4), -intro(4N), -autoconf(4), -config(8). -.PP -Building 4.3BSD UNIX Systems with \fIConfig\fP (SMM:2) -.SH "LIST OF DEVICES" +.Sh SEE ALSO +.Xr intro 4 , +.Xr intro 4 , +.Xr autoconf 4 , +.Xr config 8 . +.Rs +.%T "Building 4.3 BSD UNIX Systems with Config (SMM:2)" +.Re +.Sh LIST OF DEVICES The devices listed below are supported in this incarnation of the system. Pseudo-devices are not listed. Devices are indicated by their functional interface. Occasionally, new devices of a similar type may be added simply by creating appropriate table entries in the driver; -e.g. new CS/80 drives. -.sp -.ta 1.0i -.nf +for example, new +.Tn CS/80 +drives. +.Bl -column grf/ite -offset indent ct 7946/9144 CS/80 cartridge tape dca 98644 built-in serial interface +dcl HP 98628A communications link +dcm HP 98642A communications multiplexer dma 98620B DMA controller +dv HP98730 ``DaVinci'' device interface +gb HP98700 ``Gatorbox'' device interface grf/ite Topcat/Gatorbox/Renaissance frame buffer hil HIL interface hpib Built-in and 98625 HP-IB interface +ite HP Internal Terminal Emulator le 98643 Lance-based ethernet interface +mem main memory ppi HP-IB printer/plotter interface +rb HP98720 ``Renaissance'' device interface rd CS/80 disk interface +rmp HP Remote Maintenance Protocol family +st CCS SCSI tape drive +tc HP98544-98550 ``Topcat'' and ``Catseye'' device interface +.El +.Sh HISTORY +The +.Tn HP300 +.Nm intro +appeared in +.Bx 4.3 Reno . diff --git a/usr/src/share/man/man4/man4.hp300/ite.4 b/usr/src/share/man/man4/man4.hp300/ite.4 index 94cadc25c7..2c1dd780a9 100644 --- a/usr/src/share/man/man4/man4.hp300/ite.4 +++ b/usr/src/share/man/man4/man4.hp300/ite.4 @@ -1,4 +1,4 @@ -.\" Copyright (c) 1990 The Regents of the University of California. +.\" Copyright (c) 1990, 1991 The Regents of the University of California. .\" All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by @@ -7,73 +7,138 @@ .\" .\" %sccs.include.redist.man% .\" -.\" @(#)ite.4 5.1 (Berkeley) %G% +.\" @(#)ite.4 5.2 (Berkeley) %G% .\" -.TH ITE 4 "" -.UC 7 -.SH NAME -ite \- HP Internal Terminal Emulator -.SH DESCRIPTION -TTY special files of the form ``ttye?'' -are interfaces to the HP ITE for bit-mapped displays as implemented under BSD. -An ITE is the main system console on most HP300 workstations and +.Dd +.Dt ITE 4 hp300 +.Os +.Sh NAME +.Nm ite +.Nd +.Tn HP +Internal Terminal Emulator +.Sh DESCRIPTION +.Tn TTY +special files of the form ``ttye?'' +are interfaces to the +.Tn HP ITE +for bit-mapped displays as implemented under +.Bx . +An +.Tn ITE +is the main system console on most +.Tn HP300 +workstations and is the mechanism through which a user communicates with the machine. If more than one display exists on a system, -any or all can be used as ITEs with the limitation that only the first +any or all can be used as +.Tn ITE Ns s +with the limitation that only the first one opened will have a keyboard (since only one keyboard is supported). -.PP -ITE devices use the HP-UX ``300h'' -.IR termcap (5) +.Pp +.Tn ITE +devices use the +.Tn HP-UX +.Sq Li 300h +.Xr termcap 5 or -.I terminfo +.Xr terminfo 5 entries. However, as currently implemented, -the ITE does not support the full range of HP-UX capabilities for this device. +the +.Tn ITE +does not support the full range of +.Tn HP-UX +capabilities for this device. Missing are multiple colors, underlining, blinking, softkeys, programmable tabs, scrolling memory and keyboard arrow keys. The keyboard does not have any of the international character -support of HP's NLS system. +support of +.Tn HP Ns 's +.Tn NLS +system. It does use the left and right -.I "extend char" +.Em extend char keys as meta keys, in that it will set the eighth bit of the character code. -.PP -Upon booting, the kernel will first look for an ITE device -to use as the system console (/dev/console). +.Pp +Upon booting, the kernel will first look for an +.Tn ITE +device +to use as the system console +.Pq Pa /dev/console . If a display exists at any hardware address, it will be the console. The kernel looks for, in order: a 98544, 98545, or 98547 Topcat display, a 98700 Gatorbox at a supported address (see -.IR gb (4)), +.Xr gb 4 ) , or a 98720 Renaissance at a supported address (see -.IR rb (4)). -Currently there is no ITE support for the +.Xr rb 4 ) . +Currently there is no +.Tn ITE +support for the 98548, 98549, 98550 and 98556 boards. -.PP -When activated as an ITE (special file opened), +.Pp +When activated as an +.Tn ITE +(special file opened), all displays go through a standard initialization sequence. The frame buffer is cleared, -the ROM fonts are unpacked and loaded into off-screen storage and +the +.Tn ROM +fonts are unpacked and loaded into off-screen storage and a cursor appears. -The ITE initialization routine also sets the colormap entry used to white. +The +.Tn ITE +initialization routine also sets the colormap entry used to white. Variable colors are not used, mainly for reasons of simplicity. The font pixels are all set to 0xff and the colormap entry corresponding to all planes is set to R=255, G=255 and B=255. The actual number of planes used to display the characters depends on the hardware installed. -Finally, if the keyboard HIL device is not already assigned to another -ITE device, it is placed in ``cooked'' mode and assigned to this ITE. -.PP +Finally, if the keyboard +.Tn HIL +device is not already assigned to another +.Tn ITE +device, it is placed in ``cooked'' mode and assigned to this +.Tn ITE . +.Pp On most systems, -a display is used both as an ITE (/dev/ttye? aka /dev/console) -and as a graphics device (/dev/grf?). +a display is used both as an +.Tn ITE +.Pf ( Pa /dev/ttye? +aka +.Pa /dev/console ) +and as a graphics device +.Pq /dev/grf? . In this environment, there is some interaction between the two uses that should be noted. -For example, opening /dev/grf0 will deactivate the ITE, -that is, write over whatever may be on the ITE display. -When the graphics application is finished and /dev/grf0 closed, -the ITE will be reinitialized with the frame buffer cleared -and the ITE colormap installed. -.SH SEE ALSO -grf(4), hil(4), gb(4), rb(4), tc(4) -.SH DIAGNOSTICS -None under BSD. +For example, opening +.Pa /dev/grf0 +will deactivate the +.Tn ITE , +that is, write over whatever may be on the +.Tn ITE +display. +When the graphics application is finished and +.Pa /dev/grf0 +closed, +the +.Tn ITE +will be reinitialized with the frame buffer cleared +and the +.Tn ITE +colormap installed. +.Sh DIAGNOSTICS +None under +.Bx . +.Sh SEE ALSO +.Xr grf 4 , +.Xr hil 4 , +.Xr gb 4 , +.Xr rb 4 , +.Xr tc 4 +.Sh HISTORY +The +.Nm +driver +.Ud diff --git a/usr/src/share/man/man4/man4.hp300/le.4 b/usr/src/share/man/man4/man4.hp300/le.4 index f87fdbf9e6..e957fc64e1 100644 --- a/usr/src/share/man/man4/man4.hp300/le.4 +++ b/usr/src/share/man/man4/man4.hp300/le.4 @@ -1,4 +1,4 @@ -.\" Copyright (c) 1990 The Regents of the University of California. +.\" Copyright (c) 1990, 1991 The Regents of the University of California. .\" All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by @@ -7,50 +7,77 @@ .\" .\" %sccs.include.redist.man% .\" -.\" @(#)le.4 5.1 (Berkeley) %G% +.\" @(#)le.4 5.2 (Berkeley) %G% .\" -.TH LE 4 "" -.UC 7 -.SH NAME -de \- HP AMD 7990 LANCE Ethernet interface -.SH SYNOPSIS -.B "device le0 at scode?" -.SH DESCRIPTION +.Dd +.Dt LE 4 hp300 +.Os +.Sh NAME +.Nm le +.Nd +.Tn HP AMD +7990 +.Tn LANCE +Ethernet interface +.Sh SYNOPSIS +.Cd "device le0 at scode?" +.Sh DESCRIPTION The -.I le +.Nm le interface provides access to a 10 Mb/s Ethernet network via the -AMD 7990 LANCE Ethernet chip set. -.PP +.Tn AMD +7990 +.Tn LANCE +Ethernet chip set. +.Pp Each of the host's network addresses -is specified at boot time with an SIOCSIFADDR -ioctl. The -.I de +is specified at boot time with an +.Dv SIOCSIFADDR +.Xr ioctl . +The +.Xr le interface employs the address resolution protocol described in -.IR arp (4P) +.Xr arp 4 to dynamically map between Internet and Ethernet addresses on the local network. -.PP +.Pp The use of ``trailer'' encapsulation to minimize copying data on input and output is supported by the interface but offers no advantage -due to the large HP page size. -The use of trailers is negotiated with ARP. +due to the large +.Tn HP +page size. +The use of trailers is negotiated with +.Tn ARP . This negotiation may be disabled, on a per-interface basis, -by setting the IFF_NOTRAILERS -flag with an SIOCSIFFLAGS ioctl. -.SH DIAGNOSTICS -\fBle%d: hardware address %s\fP. +by setting the +.Dv IFF_NOTRAILERS +flag with an +.Dv SIOCSIFFLAGS +.Xr ioctl . +.Sh DIAGNOSTICS +.Bl -diag +.It le%d: hardware address %s. This is a normal autoconfiguration message noting the 6 byte physical ethernet address of the adapter. -.PP -\fBde%d: can't handle af%d\fP. The interface was handed +.Pp +.It de%d: can't handle af%d. +The interface was handed a message with addresses formatted in an unsuitable address family; the packet was dropped. -.PP +.Pp The following message indicate a possible hardware error performing the indicated operation during autoconfiguration or initialization. -.PP -\fBle%d: init timeout, stat = 0x%x\fP. +.Pp +.It le%d: init timeout, stat = 0x%x. The hardware did not respond to an initialize command during reset. The reset procedure continues anyway. -.SH SEE ALSO -intro(4N), inet(4F), arp(4P) +.El +.Sh SEE ALSO +.Xr intro 4 , +.Xr inet 4 , +.Xr arp 4 +.Sh HISTORY +The +.Nm le +driver +.Ud diff --git a/usr/src/share/man/man4/man4.hp300/mem.4 b/usr/src/share/man/man4/man4.hp300/mem.4 index 5cefbcdcd1..84cc5ed05f 100644 --- a/usr/src/share/man/man4/man4.hp300/mem.4 +++ b/usr/src/share/man/man4/man4.hp300/mem.4 @@ -1,39 +1,60 @@ -.\" Copyright (c) 1990 Regents of the University of California. -.\" All rights reserved. The Berkeley software License Agreement -.\" specifies the terms and conditions for redistribution. +.\" Copyright (c) 1990, 1991 Regents of the University of California. +.\" All rights reserved. .\" -.\" @(#)mem.4 5.1 (Berkeley) %G% +.\" %sccs.include.redist.man% .\" -.TH MEM 4 "" -.UC 7 -.SH NAME -mem, kmem \- main memory -.SH DESCRIPTION -.lg -.I Mem -is a special file that is an image of the main memory -of the computer. -It may be used, for example, to examine -(and even to patch) the system. -.PP -Byte addresses in -.I mem -are interpreted as physical memory addresses. -References to non-existent locations cause errors to be returned. -On the HP300, the last byte of physical memory is always -0xFFFFFFFF. -Hence, on an HP300 with 8Mb of memory, physical memory would -start at 0xFF800000. -.PP +.\" @(#)mem.4 5.2 (Berkeley) %G% +.\" +.Dd +.Dt MEM 4 hp300 +.Os +.Sh NAME +.Nm mem , +.Nm kmem +.Nd main memory +.Sh DESCRIPTION The file -.I kmem -is the same as -.I mem -except that kernel virtual memory -rather than physical memory is accessed. -Only kernel virtual addresses that are mapped to memory are allowed. -On the HP300, kernel virtual memory runs from 0 to about 0x2400000. -.SH FILES -/dev/mem -.br -/dev/kmem +.Nm /dev/mem +is an interface to the physical memory of the +computer. +Byte offsets in this file are interpreted as physical memory addresses. +Reading and writing this file is equivalent to reading and writing +memory itself. +An error will be returned if an attempt is made to reference +an offset outside of +.Nm /dev/mem . +.Pp +Kernel virtual memory is accessed via the file +.Nm /dev/kmem +in the same manner as +.Nm /dev/mem . +Only kernel virtual addresses that are currently mapped to memory are allowed. +.Sh HP300 +On the +.Tn HP300 , +the last byte of physical memory is always +.Li 0xFFFFFFFF . +Therefore, on an +.Tn HP300 +with +8Mb of memory, physical memory would start +at +.Li 0xFF800000 . +On the +.Tn HP300 , +kernel virtual memory runs from +.Li 0 +to about +.Li 0x2400000 . +.Sh FILES +.Bl -tag -width /dev/kmem -compact +.It Pa /dev/mem +.It Pa /dev/kmem +.El +.Sh HISTORY +The files +.Nm mem +and +.Nm kmem +appeared in +.At v6 . diff --git a/usr/src/share/man/man4/man4.hp300/ppi.4 b/usr/src/share/man/man4/man4.hp300/ppi.4 index f41b53e795..22c5481c9a 100644 --- a/usr/src/share/man/man4/man4.hp300/ppi.4 +++ b/usr/src/share/man/man4/man4.hp300/ppi.4 @@ -1,4 +1,4 @@ -.\" Copyright (c) 1990 The Regents of the University of California. +.\" Copyright (c) 1990, 1991 The Regents of the University of California. .\" All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by @@ -7,33 +7,50 @@ .\" .\" %sccs.include.redist.man% .\" -.\" @(#)ppi.4 5.1 (Berkeley) %G% +.\" @(#)ppi.4 5.2 (Berkeley) %G% .\" -.TH PPI 4 "" -.UC 7 -.SH NAME -ppi \- HPIB printer/plotter interface -.SH SYNOPSIS -.B "device ppi0 at hpib0 slave 5" -.PP -.B "crw-rw-rw- 1 root 11, 0 Dec 21 11:22 /dev/ppi" -.SH DESCRIPTION -The ppi interface provides a means of communication with HP-IB +.Dd +.Dt PPI 4 hp300 +.Os +.Sh NAME +.Nm ppi +.Nd +.Tn HP-IB +printer/plotter interface +.Sh SYNOPSIS +.Cd "device ppi0 at hpib0 slave 5" +.Sh DESCRIPTION +The +.Nm ppi +interface provides a means of communication with +.Tn HP-IB printers and plotters. -.PP +.Pp Special files -.I ppi0 +.Pa ppi0 through -.I ppi7 +.Pa ppi7 are used to access the devices, with the digit at the end of the filename referring to the bus address of the device. Current versions of the autoconf code can not probe for these devices, so the device entry in the configuration file must be fully qualified. -.SH DIAGNOSTICS +.Pp +The device files appear as follows: +.Bd -literal -offset indent +"crw-rw-rw- 1 root 11, 0 Dec 21 11:22 /dev/ppi" +.Ed +.Sh DIAGNOSTICS None. -.SH BUGS +.Sh SEE ALSO +.Xr hpib 4 . +.Sh HISTORY +The +.Nm +interface +.Ud +.Sh BUGS This driver is very primitive, it handshakes data out byte by byte. -It should use DMA if possible. -.SH "SEE ALSO" -hpib(4). +It should use +.Tn DMA +if possible. diff --git a/usr/src/share/man/man4/man4.hp300/rb.4 b/usr/src/share/man/man4/man4.hp300/rb.4 index 3a81e297d1..00076ae32b 100644 --- a/usr/src/share/man/man4/man4.hp300/rb.4 +++ b/usr/src/share/man/man4/man4.hp300/rb.4 @@ -1,4 +1,4 @@ -.\" Copyright (c) 1990 The Regents of the University of California. +.\" Copyright (c) 1990, 1991 The Regents of the University of California. .\" All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by @@ -7,113 +7,144 @@ .\" .\" %sccs.include.redist.man% .\" -.\" @(#)rb.4 5.1 (Berkeley) %G% +.\" @(#)rb.4 5.2 (Berkeley) %G% .\" -.TH RB 4 "" -.UC 7 -.SH NAME -rb \- HP98720 ``Renaissance'' device interface -.SH DESCRIPTION -This driver is for the HP98720 and 98721 graphics device, also known as +.Dd +.Dt RB 4 hp300 +.Os +.Sh NAME +.Nm rb +.Nd +.Tn HP98720 +``Renaissance'' device interface +.Sh DESCRIPTION +This driver is for the +.Tn HP98720 +and 98721 graphics device, also known as the Renaissance. This driver has not been tested with all possible combinations of frame buffer boards and scan boards installed in the device. The driver merely checks for the existence of the device and does minimal set up. -.PP +.Pp The Renaissance can be configured at either the ``internal'' address (frame buffer address 0x200000, control register space address 0x560000) or at an external select code less than 32. At the internal address it will be the ``preferred'' console device (see -.IR cons (4)). +.Xr cons 4 ) . The hardware installation manual describes the procedure for setting these values. -.PP +.Pp A user process communicates to the device initially by means of -.IR ioctl (2) -calls. For the HP-UX ioctl calls supported, refer to HP-UX manuals. -The BSD calls supported are: -.TP -GRFIOCGINFO +.Xr ioctl 2 +calls. For the +.Tn HP-UX +.Xr ioctl 2 +calls supported, refer to +.Tn HP-UX +manuals. +The +.Tn BSD +calls supported are: +.Bl -tag -width indent +.It Dv GRFIOCGINFO Get Graphics Info -.sp +.Pp Get info about device, setting the entries in the -.I grfinfo -structure, as defined in . +.Ar grfinfo +structure, as defined in +.Aq Pa hpdev/grfioctl.h . For the standard 98720, the number of planes should be 4. The number of colors would therefore be 15, excluding black. If one 98722A frame buffer board is installed, there will still be 4 planes, with the 4 planes on the colormap board becoming overlay planes. With each additional 98722 frame buffer board 4 planes will be added up to a maximum of 32 planes total. -.TP -GRFIOCON +.It Dv GRFIOCON Graphics On -.sp -Turn graphics on by enabling CRT output. The screen will come on, displaying +.Pp +Turn graphics on by enabling +.Tn CRT +output. The screen will come on, displaying whatever is in the frame buffer, using whatever colormap is in place. -.TP -GRFIOCOFF +.It Dv GRFIOCOFF Graphics Off -.sp -Turn graphics off by disabling output to the CRT. The frame buffer contents +.Pp +Turn graphics off by disabling output to the +.Tn CRT . +The frame buffer contents are not affected. -.TP -GRFIOCMAP +.It Dv GRFIOCMAP Map Device to user space -.sp +.Pp Map in control registers and framebuffer space. Once the device file is mapped, the frame buffer structure is accessible. The structure describing -the 98720 is defined in . -.SH EXAMPLE +the 98720 is defined in +.Pa hpdev/grf_rbreg.h . +.El +.Sh EXAMPLE This is a short segment of code showing how the device is opened and mapped into user process address space assuming that it is grf0: -.DS -{ - struct rboxfb *rbox; - u_char *Addr, frame_buffer; - struct grfinfo gi; - int disp_fd; +.Bd -literal +struct rboxfb *rbox; +u_char *Addr, frame_buffer; +struct grfinfo gi; +int disp_fd; - disp_fd = open("/dev/grf0",1); +disp_fd = open("/dev/grf0",1); - if (ioctl (disp_fd, GRFIOCGINFO, &gi) < 0) return -1; +if (ioctl (disp_fd, GRFIOCGINFO, &gi) < 0) return -1; - (void) ioctl (disp_fd, GRFIOCON, 0); +(void) ioctl (disp_fd, GRFIOCON, 0); - Addr = (u_char *) 0; - if (ioctl (disp_fd, GRFIOCMAP, &Addr) < 0) { - (void) ioctl (disp_fd, GRFIOCOFF, 0); - return -1; - } - rbox = (rboxfb *) Addr; /* Control Registers */ - frame_buffer = (u_char *) Addr + gi.gd_regsize; /* Frame buffer memory */ +Addr = (u_char *) 0; +if (ioctl (disp_fd, GRFIOCMAP, &Addr) < 0) { + (void) ioctl (disp_fd, GRFIOCOFF, 0); + return -1; } -.DE -.SH SEE ALSO -ioctl(2), grf(4). -.br -For extensive code examples using the -Renaissance, see the X device dependent source. -.SH FILES -.ta \w'/dev/crt98720, /dev/ocrt98720 'u -/dev/grf? BSD special file -.br -/dev/crt98720, /dev/ocrt98720 HP-UX \fIstarbase\fP special files -.br -/dev/MAKEDEV.hpux script for creating HP-UX special files -.SH ERRORS -.TP 15 -[ENODEV] +rbox = (rboxfb *) Addr; /* Control Registers */ +frame_buffer = (u_char *) Addr + gi.gd_regsize; /* Frame buffer memory */ +.Ed +.Sh FILES +.Bl -tag -width /dev/MAKEDEV.hpux -compact +.It Pa /dev/grf? +.Bx +special file +.It Pa /dev/crt98720 +.It Pa /dev/ocrt98720 +.Tn HP-UX +.Em starbase +special files +.It Pa /dev/MAKEDEV.hpux +script for creating +.Tn HP-UX +special files +.El +.Sh DIAGNOSTICS +None under +.Bx . +The +.Tn HP-UX +.Tn CE.utilities +must be used. +.Sh ERRORS +.Bl -tag -width [EINVAL] +.It Bq Er ENODEV no such device. -.TP 15 -[EBUSY] +.It Bq Er EBUSY Another process has the device open. -.TP 15 -[EINVAL] +.It Bq Er EINVAL Invalid ioctl specification. -.SH BUGS +.El +.Sh SEE ALSO +.Xr ioctl 2 , +.Xr grf 4 . +.Pp +For extensive code examples using the +Renaissance, see the X device dependent source. +.Sh HISTORY +The +.Nm +interface +.Ud +.Sh BUGS Not tested for all configurations of scan board and frame buffer memory boards. -.SH DIAGNOSTICS -None under BSD. -.br -HP-UX CE.utilities must be used. diff --git a/usr/src/share/man/man4/man4.hp300/rd.4 b/usr/src/share/man/man4/man4.hp300/rd.4 index 43dc662545..8b179b0fec 100644 --- a/usr/src/share/man/man4/man4.hp300/rd.4 +++ b/usr/src/share/man/man4/man4.hp300/rd.4 @@ -1,62 +1,77 @@ -.\" Copyright (c) 1990 The Regents of the University of California. +.\" 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. -.\" .\" %sccs.include.redist.man% .\" -.\" @(#)rd.4 5.1 (Berkeley) %G% +.\" @(#)rd.4 5.2 (Berkeley) %G% .\" -.TH RD 4 "" -.UC 7 -.SH NAME -rd \- CS/80 disk interface -.SH SYNOPSIS -.B "master hpib? at scode?" -.br -.B "disk rd? at hpib? slave?" -.SH DESCRIPTION -This is a generic CS/80 disk driver. -Only a small number of possible CS/80 drives are supported, +.Dd +.Dt RD 4 hp300 +.Os +.Sh NAME +.Nm rd +.Nd +.Tn CS/80 +disk interface +.Sh SYNOPSIS +.Cd "master hpib? at scode?" +.Cd "disk rd? at hpib? slave?" +.Sh DESCRIPTION +This is a generic +.Tn CS/80 +disk driver. +Only a small number of possible +.Tn CS/80 +drives are supported, but others can easily be added by adding tables to the driver. -.PP -Files with minor device numbers 0 through 7 refer to various portions -of drive 0; -minor devices 8 through 15 refer to drive 1, etc. -The standard device names begin with ``rd'' followed by -the drive number and then a letter a-h for partitions 0-7 respectively. -The character ? stands here for a drive number in the range 0-7. -.PP -The block files access the disk via the system's normal -buffering mechanism and may be read and written without regard to -physical disk records. There is also a `raw' interface -which provides for direct transmission between the disk -and the user's read or write buffer. -A single read or write call results in exactly one I/O operation -and therefore raw I/O is considerably more efficient when -many words are transmitted. The names of the raw files -conventionally begin with an extra `r.' -.PP -In raw I/O counts should be a multiple of 512 bytes (a disk sector). -Likewise -.I seek -calls should specify a multiple of 512 bytes. -.SH "DISK SUPPORT" +It is a typical block-device driver; see +.Xr physio 4 . +.Pp +The script +.Xr MAKEDEV 8 +should be used to create the +.Nm rd +special files; consult +.Xr mknod 8 +if a special file needs to be made manually. +.Sh DISK SUPPORT The driver interrogates the controller to determine the type of drive attached. The driver recognizes the following drives: -7912, 7914, 7933, 7936, 7937, 7945, 7957A/B, 7958A/B, -7959B, 7962, 7963, 9122, 9134, 7912, 7936, and 9122, +7912, 7914, 7933, 7936, 7937, 7945, +.Tn 757A/B , +.Tn 7958A/B , +.Tn 7959B, +7962, 7963, 9122, 9134, 7912, 7936, +and 9122, not all of which have been tested. -The origin and size of the pseudo-disks on each drive are -as follows: -.PP -.nf -.ta .5i +\w'000000 'u +\w'000000 'u +\w'000000 'u -7945/7946 partitions: - disk start length cyls +Special file names begin with +.Sq Li rd +and +.Sq Li rrd +for the block and character files respectively. The second +component of the name, a drive unit number in the range of zero to +seven, is represented by a +.Sq Li ? +in the disk layouts below. The last component of the name is the +file system partition +and is designated +by a letter from +.Sq Li a +to +.Sq Li h +which also corresponds to a minor device number sets: zero to seven, +eight to 15, 16 to 23 and so forth for drive zero, drive two and drive +three respectively +(see physio 4 ) . +The location and size (in sectors) of the +partitions for these drives: +.Bl -column header diskx undefined length +.Tn 7945/7946 No partitions: +.Sy disk start length cyls rd?a 112 15904 1-142 rd?b 16016 20160 143-322 rd?c 0 108416 0-967 @@ -65,9 +80,9 @@ as follows: rd?f undefined rd?g 36176 72240 323-967 rd?h 56336 52080 503-967 -.PP -9134D partitions: - disk start length cyls + +.Tn 9134D No partitions: +.Sy disk start length cyls rd?a 96 15936 1-166 rd?b 16032 13056 167-302 rd?c 0 29088 0-302 @@ -76,9 +91,9 @@ as follows: rd?f undefined rd?g undefined rd?h undefined -.PP -9122S partitions: - disk start length cyls + +.Tn 9122S No partitions: +.Sy disk start length cyls rd?a undefined rd?b undefined rd?c 0 1232 0-76 @@ -87,9 +102,9 @@ as follows: rd?f undefined rd?g undefined rd?h undefined -.PP -7912P partitions: - disk start length cyls + +.Tn 7912P No partitions: +.Sy disk start length cyls rd?a 0 15904 0-70 rd?b 16128 22400 72-171 rd?c 0 128128 0-571 @@ -98,9 +113,9 @@ as follows: rd?f undefined rd?g 38528 89600 172-571 rd?h 58688 69440 262-571 -.PP -7914CT/P partitions: - disk start length cyls + +.Tn 7914CT/P No partitions: +.Sy disk start length cyls rd?a 224 15904 1-71 rd?b 16128 40320 72-251 rd?c 0 258048 0-1151 @@ -109,9 +124,9 @@ as follows: rd?f 179648 78400 802-1151 rd?g 56448 201600 252-1151 rd?h 81088 176960 362-1151 -.PP -7958A partitions: - disk start length cyls + +.Tn 7958A No partitions: +.Sy disk start length cyls rd?a 252 16128 1-64 rd?b 16380 32256 65-192 rd?c 0 255276 0-1012 @@ -120,9 +135,9 @@ as follows: rd?f 165564 89712 657-1012 rd?g 48636 206640 193-1012 rd?h 64764 190512 257-1012 -.PP -7957A partitions: - disk start length cyls + +.Tn 7957A No partitions: +.Sy disk start length cyls rd?a 154 16016 1-104 rd?b 16170 24640 105-264 rd?c 0 159544 0-1035 @@ -131,9 +146,9 @@ as follows: rd?f 113344 46200 736-1035 rd?g 40810 118734 265-1035 rd?h 58520 101024 380-1035 -.PP -7933H partitions: - disk start length cyls + +.Tn 7933H No partitions: +.Sy disk start length cyls rd?a 598 16146 1-27 rd?b 16744 66976 28-139 rd?c 0 789958 0-1320 @@ -142,9 +157,9 @@ as follows: rd?f 265512 165646 444-720 rd?g 83720 706238 140-1320 rd?h 431158 358800 721-1320 -.PP -9134L partitions: - disk start length cyls + +.Tn 9134L No partitions: +.Sy disk start length cyls rd?a 80 15920 1-199 rd?b 16000 20000 200-449 rd?c 0 77840 0-972 @@ -153,9 +168,9 @@ as follows: rd?f undefined rd?g 36000 41840 450-972 rd?h 48000 29840 600-972 -.PP -7936H partitions: - disk start length cyls + +.Tn 7936H No partitions: +.Sy disk start length cyls rd?a 861 16359 1-19 rd?b 17220 67158 20-97 rd?c 0 600978 0-697 @@ -164,9 +179,9 @@ as follows: rd?f 220416 120540 256-395 rd?g 84378 516600 98-697 rd?h 341817 259161 397-697 -.PP -7937H partitions: - disk start length cyls + +.Tn 7937H No partitions: +.Sy disk start length cyls rd?a 1599 15990 1-10 rd?b 17589 67158 11-52 rd?c 0 1116102 0-697 @@ -175,9 +190,9 @@ as follows: rd?f 346983 246246 217-370 rd?g 84747 1031355 53-697 rd?h 593229 522873 371-697 -.PP -7957B/7961B partitions: - disk start length cyls + +.Tn 7957B/7961B No partitions: +.Sy disk start length cyls rd?a 126 16002 1-127 rd?b 16128 32760 128-387 rd?c 0 159894 0-1268 @@ -186,9 +201,9 @@ as follows: rd?f 115668 44226 918-1268 rd?g 48888 111006 388-1268 rd?h 65268 94626 518-1268 -.PP -7958B/7962B partitions: - disk start length cyls + +.Tn 7958B/7962B No partitions: +.Sy disk start length cyls rd?a 378 16254 1-43 rd?b 16632 32886 44-130 rd?c 0 297108 0-785 @@ -197,9 +212,9 @@ as follows: rd?f 187488 109620 496-785 rd?g 49518 247590 131-785 rd?h 65772 231336 174-785 -.PP -7959B/7963B partitions: - disk start length cyls + +.Tn 7959B/7963B No partitions: +.Sy disk start length cyls rd?a 378 16254 1-43 rd?b 16632 49140 44-173 rd?c 0 594216 0-1571 @@ -208,68 +223,72 @@ as follows: rd?f 386316 207900 1022-1571 rd?g 65772 528444 174-1571 rd?h 82404 511812 218-1571 -.PP -.DT -.fi -.PP -It is unwise for all of these files to be present in one installation, -since there is overlap in addresses and protection becomes -a sticky matter. +.El +.Pp The eight partitions as given support four basic, non-overlapping layouts, though not all partitions exist on all drive types. -.PP +.Pp In the first layout there are three partitions and a ``bootblock'' area. The bootblock area is at the beginning of the disk and holds the standalone disk boot program. -The rd?a partition is for the root file system, -rd?b is a paging/swapping area, and -rd?g is for everything else. -.PP +The +.Pa rd?a +partition is for the root file system, +.Pa rd?b +is a paging/swapping area, and +.Pa rd?g +is for everything else. +.Pp The second layout is the same idea, -but has a larger paging/swapping partition (rd?d) and -a smaller ``everything else'' partition (rd?h). +but has a larger paging/swapping partition +.Pq Pa rd?d +and +a smaller ``everything else'' partition +.Pq Pa rd?h . This layout is better for environments which run many large processes. -.PP +.Pp The third layout is a variation of the second, -but breaks the rd?h partition into two partitions, rd?e and rd?f. -.PP +but breaks the +.Pa rd?h +partition into two partitions, +.Pa rd?e +and +.Pa rd?f . +.Pp The final layout is intended for a large, single file system second disk. It is also used when writing out the boot program since it is the only partition mapping the bootblock area. -.SH FILES -/dev/rd[0-7][a-h] block files -.br -/dev/rrd[0-7][a-h] raw files -.SH DIAGNOSTICS -\fBrd%d err: v%d u%d, R0x%x F0x%x A0x%x I0x%x, block %d\fR -.br +.Sh FILES +.Bl -tag -width /dev/rrd[0-7][a-h] -compact +.It Pa /dev/rd[0-7][a-h] +block files +.It Pa /dev/rrd[0-7][a-h] +raw files +.El +.Sh DIAGNOSTICS +.Bl -diag +.It "rd%d err: v%d u%d, R0x%x F0x%x A0x%x I0x%x, block %d" An unrecoverable data error occurred during transfer of the specified block on the specified disk. -.SH BUGS +.El +.Sh HISTORY +The +.Nm +driver +.Ud +.Sh BUGS The current disk partitioning is totally bogus. -CS/80 drives have 256 byte sectors which are mapped to 512 byte +.Tn CS/80 +drives have 256 byte sectors which are mapped to 512 byte ``sectors'' by the driver. -Since some CS/80 drives have an odd number of sectors per cylinder, +Since some +.Tn CS/80 +drives have an odd number of sectors per cylinder, the disk geometry used is not always accurate. -.PP +.Pp The partition tables for the file systems should be read off of each pack, as they are never quite what any single installation would prefer, and this would make packs more portable. -.PP -In raw I/O -.I read -and -.IR write (2) -truncate file offsets to 512-byte block boundaries, -and -.I write -scribbles on the tail of incomplete blocks. -Thus, -in programs that are likely to access raw devices, -.I read, write -and -.IR lseek (2) -should always deal in 512-byte multiples. -.PP +.Pp A program to analyze the logged error information (even in its present reduced form) is needed. diff --git a/usr/src/share/man/man4/man4.hp300/st.4 b/usr/src/share/man/man4/man4.hp300/st.4 index 1d8d1c1127..5f9a07bd2b 100644 --- a/usr/src/share/man/man4/man4.hp300/st.4 +++ b/usr/src/share/man/man4/man4.hp300/st.4 @@ -1,4 +1,4 @@ -.\" Copyright (c) 1990 The Regents of the University of California. +.\" Copyright (c) 1990, 1991 The Regents of the University of California. .\" All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by @@ -7,152 +7,201 @@ .\" .\" %sccs.include.redist.man% .\" -.\" @(#)st.4 5.1 (Berkeley) %G% +.\" @(#)st.4 5.2 (Berkeley) %G% .\" -.TH ST 4 "" -.UC 7 -.SH NAME -st \- CCS SCSI tape driver -.SH SYNOPSIS -.B "tape st0 at scsi? slave ?" -.SH DESCRIPTION +.Dd +.Dt ST 4 hp300 +.Os +.Sh NAME +.Nm \&st +.Nd +.Tn CCS SCSI +tape driver +.Sh SYNOPSIS +.Cd "tape st0 at scsi? slave ?" +.Sh DESCRIPTION The -.I st -driver was written especially to support the Exabyte EXB-8200 8MM Cartridge +.Nm \&st +driver was written especially to support the Exabyte +.Tn EXB-8200 8MM +Cartridge Tape Subsystem. It has several extensions specific to the Exabyte, but should support other tape drives as long has they follow -the ANSI SCSI-I specification. Besides extensive use with +the +.Tn ANSI SCSI-I +specification. Besides extensive use with an Exabyte, the driver has been tested with an -Archive QIC-24 tape drive. +Archive +.Tn QIC-24 +tape drive. The -.I st +.Nm \&st tape interface provides a standard tape drive interface as described in -.IR mtio (4) +.Xr mtio 4 with the following exceptions: -.TP 3 -1. +.Bl -enum +.It Density is dependent on device type. Current Exabyte hardware has -only one density. The EXB-8500 drive, when released, will have a high -density format of 5.6GB. -On an Archive QIC-24 drive the driver reads both QIC-11 and QIC-24 formats -but writes only QIC-24. -.TP 3 -2. +only one density. The +.Tn EXB-8500 +drive, when released, will have a high +density format of +.Tn 5.6GB . +On an Archive +.Tn QIC-24 +drive the driver reads both +.Tn QIC-11 +and +.Tn QIC-24 +formats +but writes only +.Tn QIC-24 . +.It Only the ``raw'' interface is supported. -.PP +.El +.Pp Special Exabyte Support: - -The MTIOCGET ioctl call on an Exabyte returns this structure: - -.nf +.Pp +The +.Dv MTIOCGET +.Xr ioctl 2 +call on an Exabyte returns this structure: +.Bd -literal struct mtget { - short mt_type; /* type of magtape device */ - short mt_dsreg; /* sc_flags */ - short mt_erreg; /* high 8 bytes error status */ - /* low 8 bytes percentage of Rewrites - if writing, ECC errors if reading */ - short mt_resid; /* Mbyte until end of tape */ + short mt_type; /* type of magtape device */ + short mt_dsreg; /* sc_flags */ + short mt_erreg; /* high 8 bytes error status */ + /* low 8 bytes percentage of Rewrites + if writing, ECC errors if reading */ + short mt_resid; /* Mbyte until end of tape */ }; -.fi - +.Ed +.Pp Bit 4 in the minor device number is used to select long filemarks or short filemarks. A long filemark occupies 2.12 MBytes of space on the tape, while a short filemark occupies 488 KBytes. A long filemark includes an erase gap while the short filemark does not. -The tape can be positioned on the BOT side of a long filemark allowing +The tape can be positioned on the +.Tn BOT +side of a long filemark allowing data to be appended with a write operation. Since the short filemark does not contain an erase gap which would allow writing it is considered to be non-erasable. If either type of filemark is followed by blank tape, -data may be appended on its EOT side. - +data may be appended on its +.Tn EOT +side. +.Pp Bit 5 in the minor device number selects fixed block mode with a block size of 1K. Variable length records are the default if bit 5 is not set. - +.Pp For unit 0 here are the effects of minor device bits 2,3,4,5. For other units add the -.I unit# +.Em unit# to each of the device names. - -.(b M -.nf - norewind high density short filemarks fixed block mode -rst0 -nrst0 X -rst8 X -nrst8 X X -rst16 X -nrst16 X X -rst24 X X -nrst24 X X X -rst32 X -nrst32 X X -rst40 X X -nrst40 X X X -rst48 X X -nrst48 X X X -rst56 X X X -nrst56 X X X X - -.fi -.)b -.SH BUGS - -The HP 98268 SCSI controller hardware can not do odd length DMA -transfers. If odd length DMA I/O is requested the driver will use the -"Program Transfer Mode" of the Fujitsu MB87030 chip. Read requests are -normally even length for which a DMA transfer is used. If, however, the +.Bl -column norewind density filemarks -offset indent +.Em norewind high short fixed +.Em density filemarks block mode +rst0 +nrst0 X +rst8 X +nrst8 X X +rst16 X +nrst16 X X +rst24 X X +nrst24 X X X +rst32 X +nrst32 X X +rst40 X X +nrst40 X X X +rst48 X X +nrst48 X X X +rst56 X X X +nrst56 X X X X +.El +.Sh SEE ALSO +.Xr mt 1 , +.Xr tar 1 , +.Xr mtio 4 , +.Rs +.%T EXB-8200 8MM Cartridge Tape Subsystem Interface User Manual. +.Re +.Sh HISTORY +The +.Nm \&st +driver +.Ud +.Sh BUGS +The +.Tn HP +98268 +.Tn SCSI +controller hardware can not do odd length +.Tn DMA +transfers. If odd length +.Tn DMA I/O +is requested the driver will use the +"Program Transfer Mode" of the Fujitsu +.Tn MB87030 +chip. Read requests are +normally even length for which a +.Tn DMA +transfer is used. If, however, the driver detects that a odd length read has happened (when a even length -was requested) it will issue the EIO error and the last byte of the read +was requested) it will issue the +.Dv EIO +error and the last byte of the read data will be 0x00. Odd length read requests must match the size of the requested data block on tape. - +.Pp The following only applies when using long filemarks. Short filemarks can not be overwritten. - -.(q -.in +4 +.Bd -filled -offset 4n Due to the helical scan and the erase mechanism, there is a writing -limitation on Exabyte drives. "tar r" or "tar u" will not work ("tar c" +limitation on Exabyte drives. +.Dq Li tar r +or +.Dq Li tar u +will not work +.Pf ( Dq Li tar c is ok). One can only start writing at 1) beginning of tape, 2) on the end of what was last written, 3) "front" side of a regular (long) filemark. Say you have a tape with 3 tar files on it, want to save the first file, and want to begin writing over the 2nd file. - +.Pp On a normal 1/4" or 1/2" drive you would do: - -"mt fsf 1; tar cf /dev/nrst0 ..." - +.Pp +.Li "mt fsf 1; tar cf /dev/nrst0 ..." +.Pp but for an Exabyte you need to do: - -"mt fsf 1; mt bsf 1; mt weof 1; tar cf /dev/nrst0 ..." - +.Pp +.Li "mt fsf 1; mt bsf 1; mt weof 1; tar cf /dev/nrst0 ..." +.Pp The regular long filemark consists of an erased zone 3.8" long (needed to begin a write). In this case, the first filemark is -rewritten in place, which creates an erased zone AFTER it, clearing the +rewritten in place, which creates an erased zone +.Em after +it, clearing the way to write more on the tape. The erase head is not helical. - +.Pp One can position a tape to the end of what was last written by reading -until a "BLANK CHECK" error is returned. Writing can be started at this +until a +.Tn \*(qBLANK CHECK\*(q +error is returned. Writing can be started at this point. (This applies to both long and short filemarks.) The tape does not become positioned somewhere down the "erased" area as does a -conventional magtape. One can issue multiple reads at the "BLANK -CHECK" error, but the Exabyte stays positioned at the beginning of the +conventional magtape. One can issue multiple reads at the +.Tn \*(qBLANK CHECK\*(q +error, but the Exabyte stays positioned at the beginning of the blank area, ready to accept write commands. File skip operations do not stop at blank tape and will run into old data or run to the end of -the tape, so you have to be careful not to "mt fsf too_many". -.in -4 -.q) - +the tape, so you have to be careful not to +.Dq Li mt fsf too_many . +.Ed +.Pp Archive support gets confused if asked to moved more filemarks than there are on the tape. - +.Pp This man page needs some work. Some of these are not really bugs, just unavoidable consequences of the hardware. -.SH "SEE ALSO" -mt(1), -tar(1), -mtio(4), - -.I "EXB-8200 8MM Cartridge Tape Subsystem Interface User Manual." diff --git a/usr/src/share/man/man4/man4.hp300/tc.4 b/usr/src/share/man/man4/man4.hp300/tc.4 index 1d6698556c..eb5da251b2 100644 --- a/usr/src/share/man/man4/man4.hp300/tc.4 +++ b/usr/src/share/man/man4/man4.hp300/tc.4 @@ -1,4 +1,4 @@ -.\" Copyright (c) 1990 The Regents of the University of California. +.\" Copyright (c) 1990, 1991 The Regents of the University of California. .\" All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by @@ -7,37 +7,52 @@ .\" .\" %sccs.include.redist.man% .\" -.\" @(#)tc.4 5.1 (Berkeley) %G% +.\" @(#)tc.4 5.2 (Berkeley) %G% .\" -.TH TC 4 "" -.UC 7 -.SH NAME -tc \- HP98544-98550 ``Topcat'' and ``Catseye'' device interface -.SH DESCRIPTION -This driver is for the HP98544, 98545 and 98547 ``Topcat'' -and HP98548, 98549, and 98550 ``Catseye'' display cards. +.Dd +.Dt TC 4 hp300 +.Os +.Sh NAME +.Nm \&tc +.Nd +.Tn HP98544 +98550 ``Topcat'' and ``Catseye'' device interface +.Sh DESCRIPTION +This driver is for the +.Tn HP98544 , +98545 and 98547 ``Topcat'' +and +.Tn HP98548 , +98549, and 98550 ``Catseye'' display cards. This driver merely checks for the existence of the device and does minimal set up, as it is expected the applications will initialize the device to their requirements. The Topcat and Catseye are nearly identical in common usage and only the Topcat will be referred to from now on. -.PP +.Pp The Topcat display cards are not user configurable. If one is present on a system, it will always have a frame buffer address of 0x200000 and a control -register address of 0x560000. These are the HP series 300 ITE (Internal +register address of 0x560000. These are the +.Tn HP +series 300 +.Tn ITE +(Internal Terminal Emulator) defaults. The device can also be used as a graphics output device. -.PP +.Pp The -.IR ioctl (2) -calls supported by the BSD system for the Topcat are: -.TP -GRFIOCGINFO +.Xr ioctl 2 +calls supported by the +.Bx +system for the Topcat are: +.Bl -tag -width GRFIOCGINFO +.It Dv GRFIOCGINFO Get Graphics Info -.sp +.Pp Get info about device, setting the entries in the -.I grfinfo -structure, as defined in . +.Ar grfinfo +structure, as defined in +.Aq Pa hpdev/grfioctl.h . For the 98544 or 98549, the number of planes should be 1, as they are monochrome devices. The number of planes for a 98545 is 4, translating to 15 colors, @@ -46,75 +61,95 @@ The 98547 and 98548 cards have 6 planes, yielding 63 colors and black. The 98550 has 8 planes, yielding 255 colors and black. The displayed frame buffer size for the 98549 and 98550 is 2048 x 1024, for the others it is 1024 x 768. -.TP -GRFIOCON +.It Dv GRFIOCON Graphics On -.sp -Turn graphics on by enabling CRT output. The screen will come on, displaying +.Pp +Turn graphics on by enabling +.Tn CRT +output. The screen will come on, displaying whatever is in the frame buffer, using whatever colormap is in place. -.TP -GRFIOCOFF +.It Dv GRFIOCOFF Graphics Off -.sp -Turn graphics off by disabling output to the CRT. The frame buffer contents +.Pp +Turn graphics off by disabling output to the +.Tn CRT . +The frame buffer contents are not affected. -.TP -GRFIOCMAP +.It Dv GRFIOCMAP Map Device to user space -.sp +.Pp Map in control registers and framebuffer space. Once the device file is mapped, the frame buffer structure is accessible. The frame buffer structure -describing Topcat/Catseye devices is defined in . -.PP -For further information about the use of ioctl see the man page. -.SH EXAMPLE +describing Topcat/Catseye devices is defined in +.Aq Pa hpdev/grf_tcreg.h . +.El +.Pp +For further information about the use of +.Xr ioctl +see the man page. +.Sh EXAMPLE A small example of opening, mapping and using the device is given below. For more examples of the details on the behavior of the device, see the device dependent source files for the X Window System, in the -.I /usr/src/new/X/libhp +.Pa /usr/src/new/X/libhp directory. -.DS -{ - struct tcboxfb *tc; - u_char *Addr, frame_buffer; - struct grfinfo gi; - int disp_fd; +.Bd -literal +struct tcboxfb *tc; +u_char *Addr, frame_buffer; +struct grfinfo gi; +int disp_fd; - disp_fd = open("/dev/grf0",1); +disp_fd = open("/dev/grf0",1); - if (ioctl (disp_fd, GRFIOCGINFO, &gi) < 0) return -1; +if (ioctl (disp_fd, GRFIOCGINFO, &gi) < 0) return -1; - (void) ioctl (disp_fd, GRFIOCON, 0); +(void) ioctl (disp_fd, GRFIOCON, 0); - Addr = (u_char *) 0; - if (ioctl (disp_fd, GRFIOCMAP, &Addr) < 0) { - (void) ioctl (disp_fd, GRFIOCOFF, 0); - return -1; - } - tc = (tcboxfb *) Addr; /* Control Registers */ - frame_buffer = (u_char *) Addr + gi.gd_regsize; /* Frame buffer memory */ +Addr = (u_char *) 0; +if (ioctl (disp_fd, GRFIOCMAP, &Addr) < 0) { + (void) ioctl (disp_fd, GRFIOCOFF, 0); + return -1; } -.DE -.SH "SEE ALSO" -ioctl(2), grf(4) -.SH FILES -.ta \w'/dev/crt9837, /dev/crt98550 'u -/dev/grf? BSD special file -.br -/dev/crt9837, /dev/crt98550 HP-UX \fIstarbase\fP special files -.br -/dev/MAKEDEV.hpux script for creating HP-UX special files -.SH ERRORS -.TP 15 -[ENODEV] +tc = (tcboxfb *) Addr; /* Control Registers */ +frame_buffer = (u_char *) Addr + gi.gd_regsize; /* Frame buffer memory */ +.Ed +.Sh FILES +.Bl -tag -width /dev/MAKEDEV.hpux -compact +.It Pa /dev/grf? +.Bx +special file +.It Pa /dev/crt9837 +.It Pa /dev/crt98550 +.Tn HP-UX +.Em starbase +special files +.It Pa /dev/MAKEDEV.hpux +script for creating +.Tn HP-UX +special files +.El +.Sh DIAGNOSTICS +None under +.Bx . +.Tn HP-UX +.Tn /usr/CE.utilities/Crtadjust +programs must be used. +.Sh ERRORS +.Bl -tag -width [EINVAL] +.It Bq Er ENODEV no such device. -.TP 15 -[EBUSY] +.It Bq Er EBUSY Another process has the device open. -.TP 15 -[EINVAL] -Invalid ioctl specification. -.SH DIAGNOSTICS -None under BSD. -.br -HP-UX /usr/CE.utilities/Crtadjust programs must be used. +.It Bq Er EINVAL +Invalid +.Xr ioctl +specification. +.El +.Sh SEE ALSO +.Xr ioctl 2 , +.Xr grf 4 +.Sh HISTORY +The +.Nm +driver +.Ud diff --git a/usr/src/share/man/man4/man4.tahoe/ace.4 b/usr/src/share/man/man4/man4.tahoe/ace.4 index f342d9553a..181aae1a52 100644 --- a/usr/src/share/man/man4/man4.tahoe/ace.4 +++ b/usr/src/share/man/man4/man4.tahoe/ace.4 @@ -1,63 +1,90 @@ -.\" Copyright (c) 1986 The Regents of the University of California. +.\" Copyright (c) 1986, 1991 The Regents of the University of California. .\" All rights reserved. .\" .\" %sccs.include.redist.man% .\" -.\" @(#)ace.4 6.4 (Berkeley) %G% +.\" @(#)ace.4 6.5 (Berkeley) %G% .\" -.TH ACE 4 "" -.UC 5 -.SH NAME -ace \- ACC 10 Mb/s Ethernet interface -.SH SYNOPSIS -.B "device ace0 at vba? csr 0xffff0000 flags 0xfff80000 vector acecint acerint" -.SH DESCRIPTION +.Dd +.Dt ACE 4 tahoe +.Os BSD 4.2 +.Sh NAME +.Nm ace +.Nd +.Tn ACC +10 Mb/s Ethernet interface +.Sh SYNOPSIS +.Cd "device ace0 at vba? csr 0xffff0000 flags 0xfff80000 vector acecint acerint" +.Sh DESCRIPTION The -.I ace +.Nm ace interface provides access to a 10 Mb/s Ethernet network through -an ACC controller. -.PP -The hardware has 32 kilobytes of dual-ported memory on the VERSAbus. +an +.Tn ACC +controller. +.Pp +The hardware has 32 kilobytes of dual-ported memory on the +.Tn VERSAbus . This memory is used for internal buffering by the board, and the interface code reads -the buffer contents directly through the VERSAbus. -The address of this memory is given in the \fIflags\fP field +the buffer contents directly through the +.Tn VERSAbus . +The address of this memory is given in the +.Ar flags +field in the configuration file. -.PP +.Pp Each of the host's network addresses -is specified at boot time with an SIOCSIFADDR -ioctl. The -.I ace +is specified at boot time with an +.Dv SIOCSIFADDR +.Xr ioctl 2 . +The +.Nm ace interface employs the address resolution protocol described in -.IR arp (4) +.Xr arp 4 to dynamically map between Internet and Ethernet addresses on the local network. -.PP -The interface normally tries to use a ``trailer'' encapsulation +.Pp +The interface normally tries to use a +.Dq trailer +encapsulation to minimize copying data on input and output. -The use of trailers is negotiated with ARP. +The use of trailers is negotiated with +.Tn ARP . This negotiation may be disabled, on a per-interface basis, -by setting the IFF_NOTRAILERS -flag with an SIOCSIFFLAGS ioctl. -.PP +by setting the +.Dv IFF_NOTRAILERS +flag with an +.Dv SIOCSIFFLAGS +.Xr ioctl . +.Pp The device implements an exponential backoff algorithm when notified of a collision on the cable. This algorithm utilizes a table of random numbers setup by the system at boot time. The delay is done in the controller. -.SH DIAGNOSTICS -.BR "ace%d: stray xmit interrupt, xnct %d" . +.Sh DIAGNOSTICS +.Bl -diag +.It "ace%d: stray xmit interrupt, xnct %d." An unexpected transmission complete interrupt was received; the interrupt is ignored. -.BR "ace%d: can't handle af%d" . +.It "ace%d: can't handle af%d." The interface was handed a message with addresses formatted in an unsuitable address family; the packet was dropped. -.SH SEE ALSO -intro(4), inet(4), arp(4) -.SH BUGS +.El +.Sh SEE ALSO +.Xr intro 4 , +.Xr inet 4 , +.Xr arp 4 +.Sh HISTORY +The +.Nm +driver appeared in +.Bx 4.3 tahoe . +.Sh BUGS The hardware is not capable of talking to itself. The software implements local sending and broadcast by sending such packets to the loop interface. This is a kludge. -.PP +.Pp The device doesn't autoconfigure its interrupt vector; it is set at 0x90 + eight times the unit number. diff --git a/usr/src/share/man/man4/man4.tahoe/autoconf.4 b/usr/src/share/man/man4/man4.tahoe/autoconf.4 index f7221ca843..b12b3c6f7d 100644 --- a/usr/src/share/man/man4/man4.tahoe/autoconf.4 +++ b/usr/src/share/man/man4/man4.tahoe/autoconf.4 @@ -1,69 +1,127 @@ -.\" Copyright (c) 1986 Regents of the University of California. -.\" All rights reserved. The Berkeley software License Agreement -.\" specifies the terms and conditions for redistribution. +.\" Copyright (c) 1986, 1991 Regents of the University of California. +.\" All rights reserved. .\" -.\" @(#)autoconf.4 6.2 (Berkeley) %G% +.\" %sccs.include.redist.man% .\" -.TH AUTOCONF 4 "" -.UC 7 -.SH NAME -autoconf \- diagnostics from autoconfiguration code -.SH DESCRIPTION -When UNIX bootstraps it probes the innards of the machine it is running +.\" @(#)autoconf.4 6.3 (Berkeley) %G% +.\" +.Dd +.Dt AUTOCONF 4 tahoe +.Os BSD 4.3t +.Sh NAME +.Nm autoconf +.Nd diagnostics from autoconfiguration code +.Sh DESCRIPTION +When +.Tn UNIX +bootstraps it probes the innards of the machine it is running on and locates controllers, drives, and other devices, printing out what it finds on the console. This procedure is driven by a system configuration table which is processed by -.IR config (8) +.Xr config 8 and compiled into each kernel. -.PP -VERSAbus devices are located by probing to see if their control-status +.Pp +.Tn VERSAbus +devices are located by probing to see if their control-status registers respond. If not, they are silently ignored. If the control status register responds but the device cannot be made to interrupt, a diagnostic warning will be printed on the console and the device will not be available to the system. -.PP +.Pp A generic system may be built which picks its root device at boot time -as the ``best'' available device. -If such a system is booted with the RB_ASKNAME option of (see -.IR reboot (2v)), +as the +.Dq best +available device. +If such a system is booted with the +.Dv RB_ASKNAME +option of (see +.Xr reboot 2 ) , then the name of the root device is read from the console terminal at boot time, and any available device may be used. -.SH SEE ALSO -config(8) -.SH DIAGNOSTICS -\fBvba%d at %x\fR. A VERSAbus adapter was found and mapped into the -address space of the operating system starting at virtual address %x. -UNIX will call it vba%d. -.PP -\fB%s%d at vba%d drive %d\fR. A tape formatter or a disk was found -on the VERSAbus; for disks %s%d will look like ``dk0'', for tape formatters -like ``yc1''. The drive number comes from the unit plug on the drive -or in the tape formatter (\fBnot\fR on the tape drive; see below). -.PP -\fB%s%d at %s%d slave %d\fR. -Which would look like ``yc0 at cy0 slave 0'', -where \fByc0\fR is the name for the tape device and \fBcy0\fR is the name +.Sh DIAGNOSTICS +.Bl -diag +.It vba%d at %x. +A +.Tn VERSAbus +adapter was found and mapped into the +address space of the operating system starting at virtual address +.Sq Li %x . +.Tn UNIX +will call it +.Sq Li vba%d . +.It %s%d at vba%d drive %d. +A tape formatter or a disk was found +on the +.Tn VERSAbus ; +for disks +.Sq Li %s%d +will look like +.Sq Li dk0 , +for tape formatters +like +.Sq Li yc1 . +The drive number comes from the unit plug on the drive +or in the tape formatter +.Pf ( Em not +on the tape drive; see below). +.It %s%d at %s%d slave %d. +Which would look like +.Sq Li yc0 at cy0 slave 0% , +where +.Em yc0 +is the name for the tape device and +.Em cy0 +is the name for the formatter. A tape slave was found on the tape formatter at the indicated drive number (on the front of the tape drive). -UNIX will call the device, e.g., \fBcy0\fR. -.PP -\fB%s%d at vba%d csr %x vec %x ipl %x\fR. The device %s%d, e.g. vd0 -was found on vba%d at control-status register address %x and with -device vector %x. The device interrupted at priority level %x. -.PP -\fB%s%d at vba%d csr %x no interrupts\fR. The device was found -on vba%d at control-status register address %x; no +.Tn UNIX +will call the device, e.g., +.Li cy0. +.It %s%d at vba%d csr %x vec %x ipl %x. +The device +.Sq Li %s%d , +e.g. +.Sq Li vd0 +was found on +.Sq Li vba%d +at control-status register address +.Sq Li %x +and with +device vector +.Sq Li %x . +The device interrupted at priority level +.Sq Li %x . +.It %s%d at vba%d csr %x no interrupts. +The device was found +on +.Sq Li vba%d +at control-status register address +.Sq Li %x ; +no interrupts were configured for the device. -.PP -\fB%s%d at vba%d csr %x didn't interrupt\fR. The device did not interrupt, +.It %s%d at vba%d csr %x didn't interrupt. +The device did not interrupt, likely because it is broken, hung, or not the kind of device it is advertised to be. The csr address is interpreted as described above. -.PP -\fB%s%d at %s%d slave %d\fR. -Which would look like ``dk0 at vd0 slave 0'', -where \fBdk0\fR is the name of a disk drive and \fBvd0\fR is the name +.It %s%d at %s%d slave %d. +Which would look like +.Sq Li dk0 at vd0 slave 0 , +where +.Em dk0 +is the name of a disk drive and +.Em vd0 +is the name of the controller. -.SH BUGS +.El +.Sh SEE ALSO +.Xr config 8 +.Sh HISTORY +The +.Nm +special file appeared in +.Bx 4.3 tahoe . +.Sh BUGS Very few devices actually figure out their interrupt vector by forcing the device to interrupt. Only the upper megabyte of the -VERSAbus address space is mapped into the system's virtual address space. +.Tn VERSAbus +address space is mapped into the system's virtual address space. diff --git a/usr/src/share/man/man4/man4.tahoe/cons.4 b/usr/src/share/man/man4/man4.tahoe/cons.4 index 04953d2348..e5ff844d72 100644 --- a/usr/src/share/man/man4/man4.tahoe/cons.4 +++ b/usr/src/share/man/man4/man4.tahoe/cons.4 @@ -1,41 +1,74 @@ -.\" Copyright (c) 1986 Regents of the University of California. -.\" All rights reserved. The Berkeley software License Agreement -.\" specifies the terms and conditions for redistribution. +.\" Copyright (c) 1986, 1991 Regents of the University of California. +.\" All rights reserved. .\" -.\" @(#)cons.4 6.2 (Berkeley) %G% +.\" %sccs.include.redist.man% .\" -.TH CONS 4 "" -.UC 7 -.SH NAME -cons, CP, remote \- Tahoe console interface -.SH DESCRIPTION +.\" @(#)cons.4 6.3 (Berkeley) %G% +.\" +.Dd +.Dt CONS 4 tahoe +.Os BSD 4.3t +.Sh NAME +.Nm cons , +.Nm CP , +.Nm remote +.Nd Tahoe console interface +.Sh DESCRIPTION The console is available to the processor through the console registers. -It acts like a normal terminal, except that a ``~'' is used to transfer +It acts like a normal terminal, except that a +.Dq Ic ~ +is used to transfer commands to the console processor when the front panel key switch is -in the ``foo'' or ``bar'' position. -.PP -Useful commands to the console processor include ``~h'' to halt -the machine and ``~b'' to force a reboot. When the console processor -is in control, a ``#>'' prompt is displayed. To continue execution -after halting the machine with ``~h'', use ``r.''. +in the +.Dq foo +or +.Dq bar +position. +When the console processor +is in control, a +.Ql #> +prompt is displayed. To continue execution +after halting the machine with +.Ql ~h , +use +.Ql r . +.Bl -tag -width Ds +.It Ic \&~h +Halt the machine. +.It Ic \&~b +Force a reboot. +.It Ic \&~r +Continue execution after a +.Ic \&~h . +.El +.Pp Refer to the Tahoe console processor handbook for the complete list of facilities available through the console processor. -.PP +.Pp The -.I CP +.Nm CP device provides direct access to the console processor. The -.I remote +.Nm remote device is a secondary console terminal used for remote diagnosis; it is normally connected to a modem. -.SH FILES -.nf -/dev/console, -/dev/CP, -/dev/remote -.SH "SEE ALSO" -kdb(4), tty(4), reboot(8) -.br -Console processor handbook -.SH DIAGNOSTICS +.Sh FILES +.Bl -tag -width /dev/consolexx -compact +.It Pa /dev/console +.It Pa /dev/CP +.It Pa /dev/remote +.El +.Sh DIAGNOSTICS None. +.Sh SEE ALSO +.Xr kdb 4 , +.Xr tty 4 , +.Xr reboot 8 +.Rs +.%T Console Processor Handbook +.Re +.Sh HISTORY +The +.Nm +interface appeared in +.Bx 4.3 tahoe . diff --git a/usr/src/share/man/man4/man4.tahoe/cy.4 b/usr/src/share/man/man4/man4.tahoe/cy.4 index fe94e00ffd..d9bd7ccbdd 100644 --- a/usr/src/share/man/man4/man4.tahoe/cy.4 +++ b/usr/src/share/man/man4/man4.tahoe/cy.4 @@ -1,128 +1,148 @@ -.\" Copyright (c) 1986 Regents of the University of California. -.\" All rights reserved. The Berkeley software License Agreement -.\" specifies the terms and conditions for redistribution. +.\" Copyright (c) 1986, 1991 Regents of the University of California. +.\" All rights reserved. .\" -.\" @(#)cy.4 6.3 (Berkeley) %G% +.\" %sccs.include.redist.man% .\" -.TH CY 4 "" -.UC 7 -.SH NAME -cy \- Cipher/tapemaster magtape interface -.SH SYNOPSIS -.B "controller cy0 at vba? csr 0xffff4000 vector cyintr" -.br -.B "device yc0 at cy0 drive 0" -.SH DESCRIPTION -The Cipher F880, M990/Tapemaster combination provides a standard tape drive +.\" @(#)cy.4 6.4 (Berkeley) %G% +.\" +.Dd +.Dt CY 4 tahoe +.Os BSD 4.3t +.Sh NAME +.Nm cy +.Nd Cipher/tapemaster magtape interface +.Sh SYNOPSIS +.Cd "controller cy0 at vba? csr 0xffff4000 vector cyintr" +.Cd "device yc0 at cy0 drive 0" +.Sh DESCRIPTION +The Cipher +.Tn F880 , +.Tn M990 Ns / Tapemaster +combination provides a standard tape drive interface as described in -.IR mt (4). -The Cipher F880 tape drive operates at 1600 or 3200 bpi \- +.Xr mt 4 . +The Cipher +.Tn F880 +tape drive operates at 1600 or 3200 +.Tn BPI \- controlled by a switch on the drive. -The Cipher M990 operates at 1600, 3200 or 6250 bpi \- +The Cipher +.Tn M990 +operates at 1600, 3200 or 6250 +.Tn BPI \- controlled by switches on the front of the drive. -.PP +.Pp The Tapemaster controller board is actually a Multibus controller -accessed through a Halversa Multibus to VERSAbus converter card. -.SH "SEE ALSO" -mt(1), tar(1), mtio(4) -.SH DIAGNOSTICS -\fBcy%d: %dkb buffer\fP. The formatter was found to have a -%d kilobyte buffer during autoconfiguration. -.PP -\fBcy%d: timeout or err during init, status=%b\fP. The controller +accessed through a Halversa Multibus to +.Tn VERSAbus +converter card. +.Sh DIAGNOSTICS +.Bl -diag +.It cy%d: %dkb buffer. +The formatter was found to have a +.Ql %d +kilobyte buffer during autoconfiguration. +.It cy%d: timeout or err during init, status=%b. +The controller timed out or an error occurred on a nop command during autoconfiguration; the controller may be hung. -.PP -\fBcy%d: configuration failure, status=%b\fP. The controller +.It cy%d: configuration failure, status=%b. +The controller timed out or an error occurred on a configure command during autoconfiguration; the controller may be hung. -.PP -\fByc%d: no write ring\fR. An attempt was made to write on the tape drive +.It yc%d: no write ring. +An attempt was made to write on the tape drive when no write ring was present; this message is written on the terminal of the user who tried to access the tape. -.PP -\fByc%d: not online\fR. An attempt was made to access the tape while it +.It yc%d: not online. +An attempt was made to access the tape while it was offline; this message is written on the terminal of the user who tried to access the tape. -.PP -\fBcy%d: i/o size too large\fP. A read or a write request exceeded the +.It cy%d: i/o size too large. +A read or a write request exceeded the maximum transfer size for the controller \- 32 kilobytes; this message is written on the terminal of the user who made the read or write request. -.PP -\fByc%d: hard error bn%d status=%b\fR. A tape error occurred -at block \fIbn\fR; the cy error register is +.It yc%d: hard error bn%d status=%b. +A tape error occurred +at block +.Em bn ; +the cy error register is printed in hexadecimal with the bits symbolically decoded. Any error is fatal on non-raw tape; when possible the driver will have retried the operation which failed several times before reporting the error. -For known errors, the trailing %s is one of the following: -.RS -\fBtimeout\fP, \fBtimeout1\fP, \fBtimeout2\fP, \fBtimeout3\fP, \fBtimeout4\fP. +For known errors, the trailing +.Ql %s +is one of the following: +.Pp +.Bl -diag -offset indent -compact +.It timeout, timeout1, timeout2, timeout3, timeout4. Time out errors; this may be due to trying to read a blank tape or the controller failing to interrupt or the drive dropping off-line. -.PP -\fBnon-existent memory\fP. A controller transfer to memory timed out. -.PP -\fBblank tape\fP. The controller detected a blank tape when +.It non-existent memory. +A controller transfer to memory timed out. +.It blank tape. +The controller detected a blank tape when data was expected. -.PP -\fBmicro-diagnostic\fP, \fBmissing diagnostic jumper\fP. +.It micro-diagnostic, missing diagnostic jumper. An error occurred in the micro-diagnostics or the diagnostic mode jumper was not installed while attempting to execute a diagnostics command. -.PP -\fBeot/bot detected\fP. The controller unexpectedly encountered +.It eot/bot detected. +The controller unexpectedly encountered end-of-tape or beginning-of-tape during an operation. -.PP -\fBretry unsuccessful\fP. +.It retry unsuccessful. An error occurred which could not be recovered by repeated retries. -.PP -\fBfifo over/under-flow\fP. +.It fifo over/under-flow. The controller was unable to transfer data to the drive fast enough. This usually occurs because a transfer was performed without using the controller's internal buffer. -.PP -\fBdrive to controller parity error\fP. +.It drive to controller parity error. A parity error was detected by the controller in data transferred between the drive and the controller's internal buffer. -.PP -\fBprom checksum\fP. -The controller thinks its PROM is corrupted. -.PP -\fBtime out tape strobe (record length error)\fP. +.It prom checksum. +The controller thinks its +.Tn PROM +is corrupted. +.It time out tape strobe (record length error). The controller timed out while looking for an inter-record gap. This usually occurs because the records on the tape are larger than expected (or can be handled). -.PP -\fBtape not ready\fP. +.It tape not ready. The drive does not respond; usually the power has been turned off or a cable has come off. -.PP -\fBwrite protected\fP. +.It write protected. A write ring was present in the tape when a write was attempted. -.PP -\fBinvalid link pointer\fP. +.It invalid link pointer. An invalid pointer was encountered in a tape parameter block. -.PP -\fBunexpected file mark\fP. +.It unexpected file mark. A tape file mark was encountered while trying to read or space. -.PP -\fBinvalid byte count\fP. +.It invalid byte count. An invalid byte count parameter was encountered in a tape parameter block. -.PP -\fBunidentified hardware error\fP, \fBstreaming terminated\fP. +.It unidentified hardware error. +.It streaming terminated. These should not happen. -.RE -.PP -\fByc%d: lost interrupt\fP. +.El +.Pp +.It yc%d: lost interrupt. The controller failed to respond with an interrupt signifying completion of the current command. The system will attempt to abort the outstanding command and reset the controller. -.PP -\fBcy%d: reset failed\fP. +.Pp +.It cy%d: reset failed. The system was unable to reset the controller. This is normally preceded by another message from the driver. -.SH BUGS +.El +.Sh SEE ALSO +.Xr mt 1 , +.Xr tar 1 , +.Xr mtio 4 +.Sh HISTORY +The +.Nm +driver appeared in +.Bx 4.3 tahoe . +.Sh BUGS The controller supports only 20-bit addresses. The only way the system can insure the controller will be able to address data to be transferred diff --git a/usr/src/share/man/man4/man4.tahoe/dr.4 b/usr/src/share/man/man4/man4.tahoe/dr.4 index 4c993edd79..24ba5a4a4c 100644 --- a/usr/src/share/man/man4/man4.tahoe/dr.4 +++ b/usr/src/share/man/man4/man4.tahoe/dr.4 @@ -1,131 +1,137 @@ -.\" Copyright (c) 1983 Regents of the University of California. -.\" All rights reserved. The Berkeley software License Agreement -.\" specifies the terms and conditions for redistribution. +.\" Copyright (c) 1983, 1991 Regents of the University of California. +.\" All rights reserved. .\" -.\" @(#)dr.4 6.2 (Berkeley) %G% +.\" %sccs.include.redist.man% .\" -.TH DR 4 "November 21, 1986" -.UC 5 -.SH NAME -dr \- Ikon DR-11W interface -.SH SYNOPSIS -.B "device dr0 at vba? csr 0xffff8000 vector drintr" -.SH DESCRIPTION +.\" @(#)dr.4 6.3 (Berkeley) %G% +.\" +.Dd +.Dt DR 4 tahoe +.Os BSD 4.2 +.Sh NAME +.Nm dr +.Nd Ikon +.Tn DR-11W +interface +.Sh SYNOPSIS +.Cd "device dr0 at vba? csr 0xffff8000 vector drintr" +.Sh DESCRIPTION The -.I dr +.Nm dr driver provides access -to an Ikon DR-11W DMA controller. +to an Ikon +.Tn DR-11W +.Tn DMA +controller. Each minor device is a different controller. -.PP +.Pp In addition to reading and writing, the following -.I ioctl +.Xr ioctl 2 requests are available: -.TP 10 -DRWAIT +.Bl -tag -width DRSETNORSTALL +.It Dv DRWAIT Wait for an attention interrupt from the associated device. -.TP -DRPIOW -Write to the programmed i/o register. -.TP -DRPACL +.It Dv DRPIOW +Write to the programmed +.Tn I/O +register. +.It Dv DRPACL Write to the pulse register. -.TP -DRDACL -Set the ``ac-low'' bit in the next command sent to the DR-11W. -.TP -DRPCYL -Set the ``cycle'' bit in the next command sent to the DR-11W. -.TP -DRDFCN +.It Dv DRDACL +Set the ``ac-low'' bit in the next command sent to the +.Tn DR-11W . +.It Dv DRPCYL +Set the ``cycle'' bit in the next command sent to the +.Tn DR-11W . +.It Dv DRDFCN Hold the function bits until the next command is issused. -.TP -DRRATN +.It Dv DRRATN Reset the attention flag. -.TP -DRRDMA -Reset the DMA complete flag. -.TP -DRSFCN +.It Dv DRRDMA +Reset the +.Tn DMA +complete flag. +.It Dv DRSFCN Set the function bits in the control status register and, as a side effect, clear the interrupt enable flag. -.TP -DRRPER +.It Dv DRRPER Reset the parity error flag. -.TP -DRSETRSTALL +.It Dv DRSETRSTALL Set ``no stall'' mode for all subsequent reads. In no stall mode the driver will abort read requests that fail to complete before a user specified timeout expires. -.TP -DRSETNORSTALL +.It Dv DRSETNORSTALL Disable no stall mode for reads. -.TP -DRGETRSTALL +.It Dv DRGETRSTALL Return true if in no stall mode for reads. -.TP -DRSETRTIMEOUT +.It Dv DRSETRTIMEOUT Set the value of the timeout used in no stall mode for reads. The time is specified in tenths of seconds. -.TP -DRGETRTIMEOUT +.It Dv DRGETRTIMEOUT Return the time until (in tenths of seconds) before a read is timed out when in no stall mode. -.TP -DRSETWSTALL +.It Dv DRSETWSTALL Set ``no stall'' mode for all subsequent writes. In no stall mode the driver will abort write requests that fail to complete before a user specified timeout expires. -.TP -DRSETNOWSTALL +.It Dv DRSETNOWSTALL Disable no stall mode for writes. -.TP -DRGETWSTALL +.It Dv DRGETWSTALL Return true if in no stall mode for writes. -.TP -DRSETWTIMEOUT +.It Dv DRSETWTIMEOUT Set the value of the timeout used in no stall mode for writes. The time is specified in tenths of seconds. -.TP -DRGETRTIMEOUT +.It Dv DRGETRTIMEOUT Return the time until (in tenths of seconds) before a write is timed out when in no stall mode. -.TP -DRWRITEREADY +.It Dv DRWRITEREADY Return 1 if the device can accept data, 0 otherwise -(this is areally the DR-11W A status bit). -.TP -DRREADREADY +(this is really the +.Tn DR-11W A +status bit). +.It Dv DRREADREADY Return 1 if the device has data for the host to read, -0 otherwise (this is really the DR-11W B status bit). -.TP -DRBUSY +0 otherwise (this is really the +.Tn DR-11W B +status bit). +.It Dv DRBUSY Return 1 if the device is busy, 0 otherwise. -.TP -DRRESET +.It Dv DRRESET Reset the DR-11W. -.TP -DR11STAT +.It Dv DR11STAT Return the driver status and the contents of the -DR-11W i/o registers. The +.Tn DR-11W +.Tn I/O registers. The eight words returned are, in order, the driver status flags, the contents of the control status register, the contents of the status register at the time of the last interrupt from the device, -the contents of the programmed i/o data register, +the contents of the programmed +.Tn I/O data register, a combination of the address modifier used by the -device in performing VERSAbus transfers and the +device in performing +.Tn VERSAbus +transfers and the interrupt vector used by the device, the contents of the range register, the contents of the rahi register, and the contents of the ralo register. -.TP -DR11LOOP +.It Dv DR11LOOP Perform loopback testing (the loopback cable must be in place for this to work). -.SH FILES -/dev/dr[0-7] standard devices -.SH DIAGNOSTICS +.El +.Sh FILES +.Bl -tag -width /dev/dr[0-7]xx -compact +.It Pa /dev/dr[0-7] +standard devices +.El +.Sh DIAGNOSTICS Lots of them, none of them meaningful. -.SH BUGS +.Sh HISTORY +The +.Nm +driver appeared in +.Bx 4.3 tahoe . +.Sh BUGS This driver needs to be rewritten. diff --git a/usr/src/share/man/man4/man4.tahoe/enp.4 b/usr/src/share/man/man4/man4.tahoe/enp.4 index c028e04a9c..b016cb6622 100644 --- a/usr/src/share/man/man4/man4.tahoe/enp.4 +++ b/usr/src/share/man/man4/man4.tahoe/enp.4 @@ -1,63 +1,95 @@ -.\" Copyright (c) 1986 The Regents of the University of California. +.\" Copyright (c) 1986, 1991 The Regents of the University of California. .\" All rights reserved. .\" .\" %sccs.include.redist.man% .\" -.\" @(#)enp.4 5.3 (Berkeley) %G% +.\" @(#)enp.4 5.4 (Berkeley) %G% .\" -.TH ENP 4 "" -.UC 5 -.SH NAME -enp \- CMC 10 Mb/s Ethernet interface -.SH SYNOPSIS -.B "device enp0 at vba? csr 0xfff40000 vector enpintr" -.SH DESCRIPTION +.Dd +.Dt ENP 4 tahoe +.Os BSD 4.3t +.Sh NAME +.Nm enp +.Nd +.Tn CMC +10 Mb/s Ethernet interface +.Sh SYNOPSIS +.Cd "device enp0 at vba? csr 0xfff40000 vector enpintr" +.Sh DESCRIPTION The -.I enp +.Nm enp interface provides access to a 10 Mb/s Ethernet network through -a CMC ENP-20 controller. -.PP -The hardware has 128 kilobytes of dual-ported memory on the VERSAbus. +a +.Tn CMC ENP-20 +controller. +.Pp +The hardware has 128 kilobytes of dual-ported memory on the +.Tn VERSAbus . This memory is used for internal buffering by the board, and the interface code reads -the buffer contents directly through the VERSAbus. +the buffer contents directly through the +.Tn VERSAbus . The address of this memory is derived from the address specified in the configuration file. -.PP +.Pp Each of the host's network addresses -is specified at boot time with an SIOCSIFADDR -ioctl. The -.I ace +is specified at boot time with an +.Dv SIOCSIFADDR +.Xr ioctl 2 . +The +.Nm enp interface employs the address resolution protocol described in -.IR arp (4) +.Xr arp 4 to dynamically map between Internet and Ethernet addresses on the local network. -.PP -The interface normally tries to use a ``trailer'' encapsulation +.Pp +The interface normally tries to use a +.Dq trailer +encapsulation to minimize copying data on input and output. -The use of trailers is negotiated with ARP. +The use of trailers is negotiated with +.Tn ARP . This negotiation may be disabled, on a per-interface basis, -by setting the IFF_NOTRAILERS -flag with an SIOCSIFFLAGS ioctl. -.PP +by setting the +.Dv IFF_NOTRAILERS +flag with an +.Dv SIOCSIFFLAGS +.Xr ioctl . +.Pp Associated with each interface is a character device which is used to dowload, start, and reset the firmware in the controller. -Reading or writing the ``ram device'' reads or writes the writable +Reading or writing the +.Dq ram device +reads or writes the writable control store in the controller. Two -.IR ioctl (2) -calls, ENPIOGO and ENPIORESET, are used to start and reset the +.Xr ioctl 2 +calls, +.Dv ENPIOGO +and +.Dv ENPIORESET , +are used to start and reset the firmware. -.SH DIAGNOSTICS -.BR "enp%d: can't handle af%d" . +.Sh DIAGNOSTICS +.Bl -diag +.It enp%d: can't handle af%d. The interface was handed a message with addresses formatted in an unsuitable address family; the packet was dropped. -.SH SEE ALSO -intro(4), inet(4), arp(4), enpload(8) -.SH BUGS +.El +.Sh SEE ALSO +.Xr intro 4 , +.Xr inet 4 , +.Xr arp 4 , +.Xr enpload 8 +.Sh HISTORY +The +.Nm +driver appeared in +.Bx 4.3 tahoe . +.Sh BUGS The hardware is not capable of talking to itself. The software implements local sending and broadcast by sending such packets to the loop interface. This is a kludge. -.PP +.Pp The link level firmware does not support setting the board's Ethernet address. diff --git a/usr/src/share/man/man4/man4.tahoe/ik.4 b/usr/src/share/man/man4/man4.tahoe/ik.4 index ad82e5cd9a..a9edc0725c 100644 --- a/usr/src/share/man/man4/man4.tahoe/ik.4 +++ b/usr/src/share/man/man4/man4.tahoe/ik.4 @@ -1,102 +1,164 @@ -.\" Copyright (c) 1983 Regents of the University of California. -.\" All rights reserved. The Berkeley software License Agreement -.\" specifies the terms and conditions for redistribution. +.\" Copyright (c) 1983, 1991 Regents of the University of California. +.\" All rights reserved. .\" -.\" @(#)ik.4 6.2 (Berkeley) %G% +.\" %sccs.include.redist.man% .\" -.TH IK 4 "November 21, 1986" -.UC 5 -.SH NAME -ik \- Evans and Sutherland Picture System 300 graphics device interface -.SH SYNOPSIS -.B "device ik0 at vba? csr 0xfffb100 vector ikintr" -.SH DESCRIPTION +.\" @(#)ik.4 6.3 (Berkeley) %G% +.\" +.Dd +.Dt IK 4 +.Os BSD 4.2 +.Sh NAME +.Nm ik +.Nd Evans and Sutherland Picture System 300 graphics device interface +.Sh SYNOPSIS +.Cd "device ik0 at vba? csr 0xfffb100 vector ikintr" +.Sh DESCRIPTION The -.I ik +.Nm ik driver provides access to an Evans and -Sutherland Picture System 300 through an Ikon DR-11W +Sutherland Picture System 300 through an Ikon +.Tn DR-11W interface card. -Each two minor device numbers are a different PS300; +Each two minor device numbers are a different +.Tn PS300 ; within a pair of device numbers the odd valued device is used for ``diagnostic'' purposes. That is, for even numbered minor devices, opening the device results -in a PS300 ``attach'' request being performed while for +in a +.Tn PS300 +``attach'' request being performed while for odd numbered minor devices the attach request is not performed. -.PP -All operations between the host and the PS300 utilize DMA. -The driver currently supports only ``physical i/o'' operations +.Pp +All operations between the host and the +.Tn PS300 +utilize +.Tn DMA . +The driver currently supports only physical +.Tn I/O operations when reading and writing; this makes the device useless with standard Evans and Sutherland software. -.PP -The interface provided by the interface is as UNIX-like as possible. -When a device is opened a PS300 attach request is automatically +.Pp +The interface provided by the interface is as +.Ux Ns -like +as possible. +When a device is opened a +.Tn PS300 +attach request is automatically performed. When a device is closed a detach is performed. Reads -and writes result in physical i/o requests, but hide all the details -of the physical i/o protocol. This is programming style is completely -different from the VMS-oriented qio-style interface supplied by Evans +and writes result in physical +.Tn I/O +requests, but hide all the details +of the physical +.Tn I/O +protocol. This is programming style is completely +different from the +.Tn VMS Ns -oriented +qio-style interface supplied by Evans and Sutherland. -.PP -Reads and writes to the device result in a physical i/o request -to the PS300. If a -.IR readv (2) +.Pp +Reads and writes to the device result in a physical +.Tn I/O +request +to the +.Tn PS300 . +If a +.Xr readv 2 or -.IR writev (2) -call is used, each i/o request results in a single physical i/o +.Xr writev 2 +call is used, each +.Tn I/O +request results in a single physical +.Tn I/O request (i.e. the scatter-gather facilities are not supported). -In normal operation, the address used in a physical i/o request +In normal operation, the address used in a physical +.Tn I/O +request is the current file offset as specified explicitly with -.IR lseek (2) +.Xr lseek 2 or implictly as a result of reading or writing the device. -To specify an address to be used with each physical i/o request, +To specify an address to be used with each physical +.Tn I/O +request, the -.I ik +.Nm ik driver interprets the -.I iov +.Ar iov entries in a non-standard way. If -.I iov_len +.Ar iov_len is zero, then -.I iov_base -is interpreted as an address to be used in the physical i/o -request. If the address has the PSIO_SYNC flag or-d into it, -the physical i/o request is made as a ``write with sync''. +.Ar iov_base +is interpreted as an address to be used in the physical +.Tn I/O +request. If the address has the +.Dv PSIO_SYNC +flag or-d into it, +the physical +.Tn I/O +request is made as a ``write with sync''. All addresses and data presented to the driver should be in the byte order of the host; any byte swapping required to converse -with the PS300 is performed in the driver/controller. -.PP +with the +.Tn PS300 +is performed in the driver/controller. +.Pp In addition to reading and writing, the following -.I ioctl +.Xr ioctl requests are available: -.TP -PSIOLOOKUP -.br +.Bl -tag -width PSIOGETERROR +.It Dv PSIOLOOKUP Perform a ``name lookup'' request. The -.I pslookup +.Ar pslookup structure passed indicates the symbol name to be looked up -and contains the address returned by the PS300. A zero +and contains the address returned by the +.Tn PS300 . +A zero address return indicates the symbol was undefined. -.TP -PSIOGETERROR -.br +.It Dv PSIOGETERROR In the event of an error, this request may be made to -return a more detailed and, sometimes PS300-specific, +return a more detailed and, sometimes +.Tn PS300 Ns -specific , error code. -.SH FILES -/dev/ik[0-7] auto-attach devices -.br -/dev/ik[0-7]d diagnostic interfaces to devices -.SH DIAGNOSTICS -\fBik%d: bad cmd %x\fP. +.Sh FILES +.Bl -tag -width /dec/ik[0-7]xx -compact +.It Pa /dev/ik[0-7] +auto-attach devices +.It Pa /dev/ik[0-7]d +diagnostic interfaces to devices +.El +.Sh DIAGNOSTICS +.Bl -diag +.It ik%d: bad cmd %x. An unknown or unsupported command was received by the host. -.PP -\fBik%d: spurious interrupt, code %x\fP. -An unexpected interrupt was received from the PS300; the -attention code from the PS300 is printed. -.PP -\fBik%d: timeout\fP. +.It ik%d: spurious interrupt, code %x. +An unexpected interrupt was received from the +.Tn PS300 ; +the +attention code from the +.Tn PS300 +is printed. +.It ik%d: timeout. A command failed to elicit a response within a reasonable -time; the PS300 probably crashed. -.SH BUGS -An invalid access (e.g. illegal address) to the PS300 can -cause the PS300 to crash. It is not always possible to unwedge -the PS300 interface hardware hung by an i/o request. +time; the +.Tn PS300 +probably crashed. +.El +.Sh HISTORY +The +Tahoe Version +.Nm +driver appeared in +.Bx 4.2 . +.Sh BUGS +An invalid access (e.g. illegal address) to the +.Tn PS300 +can +cause the +.Tn PS300 +to crash. It is not always possible to unwedge +the +.Tn PS300 +interface hardware hung by an +.Tn I/O +request. diff --git a/usr/src/share/man/man4/man4.tahoe/intro.4 b/usr/src/share/man/man4/man4.tahoe/intro.4 index 17227b0a71..c302633c3c 100644 --- a/usr/src/share/man/man4/man4.tahoe/intro.4 +++ b/usr/src/share/man/man4/man4.tahoe/intro.4 @@ -1,56 +1,93 @@ -.\" Copyright (c) 1986 Regents of the University of California. -.\" All rights reserved. The Berkeley software License Agreement -.\" specifies the terms and conditions for redistribution. +.\" Copyright (c) 1986, 1991 Regents of the University of California. +.\" All rights reserved. .\" -.\" @(#)intro.4 6.4 (Berkeley) %G% +.\" %sccs.include.redist.man% .\" -.TH INTRO 4 "" -.UC 7 -.SH NAME -intro \- introduction to special files and hardware support -.SH DESCRIPTION +.\" @(#)intro.4 6.5 (Berkeley) %G% +.\" +.Dd +.Dt INTRO 4 tahoe +.Os +.Sh NAME +.Nm intro +.Nd introduction to special files and hardware support +.Sh DESCRIPTION This section describes the special files, related driver functions, and networking support available in the system. -In this part of the manual, the SYNOPSIS section of +In this part of the manual, the +.Tn SYNOPSIS +section of each configurable device gives a sample specification for use in constructing a system description for the -.IR config (8) +.Xr config 8 program. -The DIAGNOSTICS section lists messages which may appear on the console +The +.Tn DIAGNOSTICS +section lists messages which may appear on the console and in the system error log -.I /var/log/messages +.Pa /var/log/messages due to errors in device operation. -.PP +.Sh CCI DEVICE SUPPORT +Software support for these devices comes in two forms. A hardware +device may be supported with a character or block +.Em device driver , +or it may be used within the networking subsystem and have a +.Em network interface driver . +Block and character devices are accessed through files in the file +system of a special type; see +.Xr physio 4 +and +.Xr mknod 8 . +Network interfaces are indirectly accessed through the interprocess +communication facilities provided by the system; see +.Xr socket 2 . +.Pp A hardware device is identified to the system at configuration time and the appropriate device or network interface driver is then compiled into the system. When the resultant system is booted, the autoconfiguration facilities in the system probe for the device -on the VERSAbus and, if found, enable the software -support for it. If a VERSAbus device does not respond at autoconfiguration +on the +.Tn VERSAbus +and, if found, enable the software +support for it. If a +.Tn VERSAbus +device does not respond at autoconfiguration time it is not accessible at any time afterwards. To -enable a VERSAbus device which did not autoconfigure, the system will have to +enable a +.Tn VERSAbus +device which did not autoconfigure, the system will have to be rebooted. -.PP +.Pp The autoconfiguration system is described in -.IR autoconf (4). -.SH SEE ALSO -autoconf(4), netintro(4), config(8) -.SH "LIST OF DEVICES" +.Xr autoconf 4 . +.Sh SEE ALSO +.Xr autoconf 4 , +.Xr netintro 4 , +.Xr config 8 +.Sh LIST OF DEVICES The devices listed below are supported in this incarnation of the system. Devices are indicated by their functional interface. If second vendor products provide functionally identical interfaces they should be usable with the supplied software. -(\fBBeware however that we promise the software works -ONLY with the hardware indicated on the appropriate manual page.\fP) -.sp -.ta 1.0i -.nf +.Bf Sy +(Beware however that we promise the software works +ONLY with the hardware indicated on the appropriate manual page.) +.Ef +.Pp +.Bl -column cons ace ACC 10 Mb/s Ethernet controller cons Tahoe console interface cy Cypher tape drive interface dr Ikon DR-11W controller enp 3Com 10 Mb/s Ethernet controller -ik Evans and Sutherland PS300 interface through an Ikon DR-11W controller +ik Evans and Sutherland PS300 interface through an Ikon DR-11W + controller vd CCI vd mass storage disk controller vx CCI vioc terminal multiplexor +.El +.Sh HISTORY +The section 4 +.Nm +appeared in +.Bx 4.2 . diff --git a/usr/src/share/man/man4/man4.tahoe/lp.4 b/usr/src/share/man/man4/man4.tahoe/lp.4 index 507a7c0e5a..0b2b2d3500 100644 --- a/usr/src/share/man/man4/man4.tahoe/lp.4 +++ b/usr/src/share/man/man4/man4.tahoe/lp.4 @@ -1,21 +1,33 @@ -.\" Copyright (c) 1986 Regents of the University of California. -.\" All rights reserved. The Berkeley software License Agreement -.\" specifies the terms and conditions for redistribution. +.\" Copyright (c) 1986, 1991 Regents of the University of California. +.\" All rights reserved. .\" -.\" @(#)lp.4 6.1 (Berkeley) %G% +.\" %sccs.include.redist.man% .\" -.TH LP 4 "" -.UC 7 -.SH NAME -lp \- line printer -.SH SYNOPSIS -device lp on the VIOC-P -.SH DESCRIPTION -.I Lp -provides the interface to 4 serial +.\" @(#)lp.4 6.2 (Berkeley) %G% +.\" +.Dd +.Dt LP 4 tahoe +.Os 4.3t +.Sh NAME +.Nm lp +.Nd line printer +.Sh SYNOPSIS +device lp on the +.Tn VIOC-P +.Sh DESCRIPTION +The +.Nm lp +driver provides an interface to 4 serial printer lines. -.SH FILES -/dev/lp -.SH "SEE ALSO" -lpr(1), -vioc(4) +.Sh FILES +.Bl -tag -width /dev/lpxx +.It Pa /dev/lp +.El +.Sh SEE ALSO +.Xr lpr 1 , +.Xr vioc 4 +.Sh HISTORY +The +.Nm +driver appeared in +.Bx 4.3 tahoe . diff --git a/usr/src/share/man/man4/man4.tahoe/mem.4 b/usr/src/share/man/man4/man4.tahoe/mem.4 index d67ff54ed1..54d811f439 100644 --- a/usr/src/share/man/man4/man4.tahoe/mem.4 +++ b/usr/src/share/man/man4/man4.tahoe/mem.4 @@ -1,70 +1,101 @@ -.\" Copyright (c) 1986 Regents of the University of California. -.\" All rights reserved. The Berkeley software License Agreement -.\" specifies the terms and conditions for redistribution. +.\" Copyright (c) 1986, 1991 Regents of the University of California. +.\" All rights reserved. .\" -.\" @(#)mem.4 6.2 (Berkeley) %G% +.\" %sccs.include.redist.man% .\" -.TH MEM 4 "" -.UC 7 -.SH NAME -mem, kmem, vmem \- main memory -.SH DESCRIPTION -.lg -.I Mem -is a special file that is an image of the main memory -of the computer. -It may be used, for example, to examine -(and even to patch) the system. -.PP -Byte addresses in -.I mem -are interpreted as physical memory addresses. -References to non-existent locations cause errors to be returned. -.PP -Examining and patching device registers is likely -to lead to unexpected results when read-only or write-only -bits are present. -.PP -The file -.I kmem -is the same as -.I mem -except that kernel virtual memory -rather than physical memory is accessed. -.PP +.\" @(#)mem.4 6.3 (Berkeley) %G% +.\" +.Dd +.Dt MEM 4 tahoe +.Os +.Sh NAME +.Nm mem , +.Nm kmem , +.Nm vmem +.Nd main memory +.Sh DESCRIPTION +The special file +.Nm /dev/mem +is an interface to the physical memory of the computer. +Byte offsets in this file are interpreted as physical memory addresses. +Reading and writing this file is equivalent to reading and writing +memory itself. +Only offsets within the bounds of +.Nm /dev/mem +are allowed. +.Pp +Kernel virtual memory is accessed through the interface +.Nm /dev/kmem +in the same manner as +.Nm /dev/mem . +Only kernel virtual addresses that are currently mapped to memory are allowed. +.Pp The file -.I vmem -allows access to the mapped portion of the VERSAbus -i/o space. On the Tahoe the upper megabyte +.Nm /dev/vmem +allows access to the mapped portion of the +.Tn VERSAbus +.Tn I/O +space. On the Tahoe the upper megabyte of the physical address space is accessible through this file (0xfff00000 through 0xffffffff). Accesses to the upper 64 kilobytes of -the i/o space result in VERSAbus transfers with a +the +.Tn I/O +space result in +.Tn VERSAbus +transfers with a 16-bit address (the offset in this region) and a -``non-privileged short i/o'' VERSAbus address modifier. +.Dq No non-privileged short Tn I/O +.Tn VERSAbus +address modifier. Accesses to the remainder of the mapped region, -result in VERSAbus transfers with a 24-bit address -and a ``non-privileged standard'' VERSAbus address +result in +.Tn VERSAbus +transfers with a 24-bit address +and a ``non-privileged standard'' +.Tn VERSAbus +address modifier. This region is actually part of the region between 0xfeff0000 and 0xffff0000 -which generates VERSAbus transfers with a 24-bit address. -Accesses to the remainder of the one gigabyte i/o space +which generates +.Tn VERSAbus +transfers with a 24-bit address. +Accesses to the remainder of the one gigabyte +.Tn I/O +space generate transfers that utilize a 32-bit address with a ``non-privileged extended'' address modifier. Any 32-bit address generated by a cpu access to this part -of the i/o space have the upper two bits zero; thus, +of the +.Tn I/O +space have the upper two bits zero; thus, for example, an access to physical address 0xfe000000 causes the address 0x3e000000 to be supplied in the -resultant VERSAbus read/write cycle. -.PP +resultant +.Tn VERSAbus +read/write cycle. +.Pp On the Tahoe, the -per-process data for the current process -begins at virtual address 0xbffff000. -.SH FILES -/dev/mem, -/dev/kmem, -/dev/vmm -.SH BUGS +base address for the +per-process data of the current process +is virtual address 0xbffff000. +.Sh FILES +.Bl -tag -width Pa -compact +.It Pa /dev/mem +.It Pa /dev/kmem +.It Pa /dev/vmm +.El +.Sh HISTORY +The +.Nm mem , +.Nm kmem +files appeared in +.At v6 . +The file +.Nm vmem +appeared in +.Bx 4.3 tahoe . +.Sh BUGS Memory files are accessed one byte at a time, an inappropiate method for some device registers. diff --git a/usr/src/share/man/man4/man4.tahoe/mtio.4 b/usr/src/share/man/man4/man4.tahoe/mtio.4 index e8540ebd6a..d543714ce5 100644 --- a/usr/src/share/man/man4/man4.tahoe/mtio.4 +++ b/usr/src/share/man/man4/man4.tahoe/mtio.4 @@ -3,7 +3,7 @@ .\" .\" %sccs.include.redist.man% .\" -.\" @(#)mtio.4 6.3 (Berkeley) %G% +.\" @(#)mtio.4 6.4 (Berkeley) %G% .\" .TH MT 4 "" .UC 7 diff --git a/usr/src/share/man/man4/man4.tahoe/vd.4 b/usr/src/share/man/man4/man4.tahoe/vd.4 index a084126604..001dac125a 100644 --- a/usr/src/share/man/man4/man4.tahoe/vd.4 +++ b/usr/src/share/man/man4/man4.tahoe/vd.4 @@ -1,53 +1,56 @@ -.\" Copyright (c) 1986 Regents of the University of California. -.\" All rights reserved. The Berkeley software License Agreement -.\" specifies the terms and conditions for redistribution. +.\" Copyright (c) 1986, 1991 Regents of the University of California. +.\" All rights reserved. .\" -.\" @(#)vd.4 6.3 (Berkeley) %G% +.\" %sccs.include.redist.man% .\" -.TH VD 4 "" -.UC 7 -.SH NAME -vd \- VERSAbus storage module controller/drives -.SH SYNOPSIS -.B "controller vd0 at vba? csr 0xffff2000 vector vdintr" -.br -.B "disk dk0 at vd0 drive 0" -.SH DESCRIPTION -This is a generic VERSAbus storage module disk driver for the -Computer Consoles SMD (VDDC) and SMD-E disk controllers. -.PP -Files with minor device numbers 0 through 7 refer to various portions -of drive 0; -minor devices 8 through 15 refer to drive 1, etc. -The standard device names begin with ``dk'' followed by -the drive number and then a letter a-h for partitions 0-7 respectively. -The character ? stands here for a drive number in the range 0-7. -.PP -The block files access the disk via the system's normal -buffering mechanism and may be read and written without regard to -physical disk records. There is also a `raw' interface -which provides for direct transmission between the disk -and the user's read or write buffer. -A single read or write call results in exactly one I/O operation, -and therefore raw I/O is considerably more efficient when -many words are transmitted. The names of the raw files -conventionally begin with an extra `r.' -.PP -In raw I/O counts should be a multiple of 1024 bytes, +.\" @(#)vd.4 6.4 (Berkeley) %G% +.\" +.Dd +.Dt VD 4 tahoe +.Os +.Sh NAME +.Nm vd +.Nd +.Tn VERSAbus +storage module controller/drives +.Sh SYNOPSIS +.Cd "controller vd0 at vba? csr 0xffff2000 vector vdintr" +.Cd "disk dk0 at vd0 drive 0" +.Sh DESCRIPTION +This is a generic +.Tn VERSAbus +storage module disk driver for the +Computer Consoles +.Tn SMD +.Pq Tn VDDC +and +.Tn SMD-E +disk controllers. +.Pp +The +.Nm vd +driver is a fairly typical block +.Tn I/O +device, except +raw block +.Tn I/O +counts must be a multiple of 1024 bytes, whether the actual sector size is 512 or 1024 bytes. Likewise, -.I seek +.Xr seek calls should specify a multiple of 1024 bytes. -.PP +See +.Xr physio 4 . +.Pp The first sector of each disk contains a disk label containing geometry information and partition layouts (see -.IR disklabel (5). +.Xr disklabel 5 ) . This sector is normally write-protected, and disk-to-disk copies should avoid copying this sector. The label may be updated with -.IR disklabel (8), +.Xr disklabel 8 , which can also be used to write-enable and write-disable the sector. -.SH "DISK SUPPORT" +.Sh DISK SUPPORT During autoconfiguration, as well as when a drive is opened after all partitions are closed, the first sector of the drive is examined for a disk label. @@ -60,16 +63,36 @@ If no label is found, the driver tries to access the last track on each drive to determine the type of drive attached. The driver has default partition tables for -seven different drives: CDC FSD (160 MB), CDC 9766 (300 MB), -CDC XFSD (340 MB), CDC 515MB, Fujitsu 360 MB, Fujitsu Eagle (440 MB), -and Maxtor 340Mb. +seven different drives: +.Tn CDC FSD +(160 +.Tn MB ) , +.Tn CDC +9766 (300 +.Tn MB ) , +.Tn CDC XFSD +(340 +.Tn MB ) , +.Tn CDC +515 +.Tn MB , +Fujitsu 360 +.Tn MB , +Fujitsu Eagle (440 +.Tn MB ) , +and Maxtor 340 +.Tn MB . If the drive is not recognized, a single small partition is created to allow a label to be written. -.PP +.Pp The partition tables in the disk label and the -.I disktab +.Pa disktab file specify partition offsets and sizes in sectors, which are 512 bytes -on SMD drives and 1024 bytes on 5 1/4" ESDI drives. +on +.Tn SMD +drives and 1024 bytes on 5 1/4" +.Tn ESDI +drives. By convention, the ?a partition is normally used for the root file system or other small file system, @@ -77,66 +100,70 @@ and the ?b partition is used as a paging area. The ?c partition maps the rest of the pack, except the last 5 cylinders which are reserved for bad sector forwarding, and diagnostic use. -.SH FILES -/dev/dk[0-7][a-f] dk block files -.br -/dev/rdk[0-7][a-f] dk raw files -.SH SEE ALSO -disklabel(5), disklabel(8) -.SH DIAGNOSTICS -\fBvd%d: %s controller\fP. +.Sh FILES +.Bl -tag -width /dev/dk[0-7][a-f]xx -compact +.It Pa /dev/dk[0-7][a-f] +dk block files +.It Pa /dev/rdk[0-7][a-f] +dk raw files +.El +.Sh DIAGNOSTICS +.Bl -diag +.It vd%d: %s controller. This message is printed during autoconfiguration to identify -the type of controller, either ``VDDC'' or ``SMDE''. -.PP -\fBvd%d: init error\fP. +the type of controller, either +.Tn VDDC +or +.Tn SMDE . +.Pp +.It vd%d: init error. During autoconfiguration the controller failed to respond to an initialize command. -.PP -\fBvd%d: diagnostic error\fP. +.Pp +.It vd%d: diagnostic error. During autoconfiguration the controller failed to respond to a diagnostic command. -.PP -\fBdk%d: unknown drive type\fP. +.Pp +.It dk%d: unknown drive type. The system was unable to identify the specified drive as one of the drives described above; the drive will not be configured. -.PP -\fBvd%d: drive %d: config error\fP. +.Pp +.It vd%d: drive %d: config error. The system encountered a hard error when it tried to configure a drive during autoconfiguration. -.PP -\fBvd%d: starting drives, wait ... \fP. +.Pp +.It vd%d: starting drives, wait ... . This message indicates the system is about to tell the controller to ``start'' the drives attached to it. -.PP -\fBdk%d: %s \fP. +.Pp +.It dk%d: %s . For each drive recognized during autoconfiguration the system prints a message of this form. The drive type is displayed as well as the geometry: tracks/cylinder, cylinders, and sectors/track. -.PP -\fBvd%d: lost interrupt\fP. +.Pp +.It vd%d: lost interrupt. The system failed to receive an interrupt from the controller after submitting a request. The system attempts to abort the current request and simulate an interrupt to unwedge the controller. During processing of the simulated interrupt, a controller error will be reported as described below. -.PP -\fBvd%d: stray interrupt\fP. +.Pp +.It vd%d: stray interrupt. The system received an unexpected interrupt; it is ignored. -.PP -\fBdk%d%c: write locked\fP. +.Pp +.It dk%d%c: write locked. An attempt was made to write to a drive that is physically write-protected. -.PP -\fBdk%d%c: controller err %sing fsbn %d [of %d-%d] (dk%d bn %d cn %d tn %d sn %d) status %b ecode %x; resetting controller... retrying\fP. +.Pp +.It "dk%d%c: controller err %sing fsbn %d [of %d-%d] (dk%d bn %d cn %d tn %d sn %d) status %b ecode %x; resetting controller... retrying." .br -\fBdk%d%c: drive err %sing fsbn %d [of %d-%d] (dk%d bn %d cn %d tn %d sn %d) status %b ecode %x; resetting drive... retrying\fP. +.It "dk%d%c: drive err %sing fsbn %d [of %d-%d] (dk%d bn %d cn %d tn %d sn %d) status %b ecode %x; resetting drive... retrying." An attempted transfer resulted in a controller or drive error. The controller or drive is reset, and the transfer is attempted a second time. -.PP -\fBdk%d%c: hard error %sing fsbn %d [of %d-%d] (dk%d bn %d cn %d tn %d sn %d) -status %b ecode %x\fP. +.Pp +.It "dk%d%c: hard error %sing fsbn %d [of %d-%d] (dk%d bn %d cn %d tn %d sn %d) status %b ecode %x." An unrecoverable error was encountered. The filesystem block number reported is a logical sector number on the indicated partition; it is expressed using 1024-byte sectors. @@ -147,30 +174,44 @@ relative to the beginning of the drive as well as the cylinder, track and sector number of the block. The error status field of the device control block is printed in hexadecimal followed by a symbolic description. -If this is an SMDE controller, the error code is also displayed. -.PP -\fBdk%d%c: soft error %sing fsbn %d [of %d-%d] (dk%d bn %d cn %d tn %d sn %d) -status %b ecode %x\fP. +If this is an +.Tn SMDE +controller, the error code is also displayed. +.Pp +.It "dk%d%c: soft error %sing fsbn %d [of %d-%d] (dk%d bn %d cn %d tn %d sn %d) status %b ecode %x." A recoverable error was detected by the controller. The fields are interpreted in the same way as those for hard errors. -.PP -\fBdk%d%c: soft ecc %sing fsbn %d [of %d-%d] (dk%d bn %d cn %d tn %d sn %d)\fP. -A recoverable ECC error was detected and corrected by the controller +.Pp +.It "dk%d%c: soft ecc %sing fsbn %d [of %d-%d] (dk%d bn %d cn %d tn %d sn %d)." +A recoverable +.Tn ECC +error was detected and corrected by the controller during the indicated transfer. -.PP -\fBvd%d: drive %d: couldn't reset\fP. +.Pp +.It vd%d: drive %d: couldn't reset. The system was unable to reconfigure a drive during a controller reset. -.PP -\fBvd%d: controller timeout\fP. +.Pp +.It vd%d: controller timeout. The controller failed to complete an operation within a reasonable time. This message is usually followed by another message indicating what operation timed out; e.g. ``during config'' for a configuration command. -.SH BUGS +.El +.Sh SEE ALSO +.Xr disklabel 5 , +.Xr disklabel 8 +.Sh HISTORY +The +.Nm +driver appeared in +.Bx 4.3 tahoe . +.Sh BUGS Writes scribble on the tail of incomplete blocks. -.PP +.Pp The system should use real disk sector numbers internally, instead of assuming 1024-byte sectors; errors should report filesystem block numbers using the actual sector size. -Raw I/O should be permitted on any sector boundary. +Raw +.Tn I/O +should be permitted on any sector boundary. diff --git a/usr/src/share/man/man4/man4.tahoe/vx.4 b/usr/src/share/man/man4/man4.tahoe/vx.4 index faf583344a..0e63d220ad 100644 --- a/usr/src/share/man/man4/man4.tahoe/vx.4 +++ b/usr/src/share/man/man4/man4.tahoe/vx.4 @@ -1,91 +1,98 @@ -.\" Copyright (c) 1986 Regents of the University of California. -.\" All rights reserved. The Berkeley software License Agreement -.\" specifies the terms and conditions for redistribution. +.\" Copyright (c) 1986, 1991 Regents of the University of California. +.\" All rights reserved. .\" -.\" @(#)vx.4 6.2 (Berkeley) %G% +.\" %sccs.include.redist.man% .\" -.TH VX 4 "" -.UC 7 -.SH NAME -vx \- VIOC-X communications multiplexor -.SH SYNOPSIS -.B "device vx0 at vba? csr 0xfffe0000 vector vackint vcmdrsp vunsol" -.SH DESCRIPTION -A VIOC-X provides 16 communication lines with partial modem control, -adequate for UNIX dialup use. -Each line attached to the VIOC-X communications multiplexor -behaves as described in -.IR tty (4) +.\" @(#)vx.4 6.3 (Berkeley) %G% +.\" +.Dd +.Dt VX 4 tahoe +.Os +.Sh NAME +.Nm vx +.Nd +.TN VIOC-X +communications multiplexor +.Sh SYNOPSIS +.Cd "device vx0 at vba? csr 0xfffe0000 vector vackint vcmdrsp vunsol" +.Sh DESCRIPTION +A +.Tn VIOC-X +provides 16 communication lines with partial modem control, +adequate for +.Tn UNIX +dialup use. and may be set to run at any of 16 speeds; see -.IR tty (4) -for the encoding. -.SH FILES -/dev/tty[0-9][0-9] -.br -/dev/ttyd[0-9a-f] dialups -.SH "SEE ALSO" -tty(4) -.SH DIAGNOSTICS -\fBvx%d: vc proc err, ustat %x\fP. -.PP -\fBvx%d: vc uqual err, uqual %x\fP. -.PP -\fBvx%d: %d exceeds silo size\fP. -.PP -\fBvx%d: receiver overrun\fP. -.PP -\fBVIOC-BOP no. %d at %x\fP. +.Xr tty 4 . +.Sh FILES +.Bl -tag -width /dev/tty[0-9][0-9]xx -compact +.It Pa /dev/tty[0-9][0-9] +.It Pa /dev/ttyd[0-9a-f] +dialups +.El +.Sh DIAGNOSTICS +.Bl -diag +.It vx%d: vc proc err, ustat %x. +.Pp +.It vx%d: vc uqual err, uqual %x. +.Pp +.It vx%d: %d exceeds silo size. +.Pp +.It vx%d: receiver overrun. +.Pp +.It VIOC-BOP no. %d at %x. The system identified a vioc supporting the bit oriented protocol. -The number \fB%d\fP is the board number assigned by the system -while the address \fB%x\fP is the address of the command control +The number +.Em %d +is the board number assigned by the system +while the address +.Em %x +is the address of the command control block for the vioc. -.PP -\fBvx%d: unknown type %x\fP. +.It vx%d: unknown type %x. The system encountered a vioc of unknown type during autoconfiguration. -.PP -\fBvx%d: didn't respond to LIDENT\fP. +.It vx%d: didn't respond to LIDENT. The device did not respond to the configuration command that sets the interrupt vectors and port configuration. -.PP -\fBvx%d: %s%s, ports %d-%d\fP. +.It vx%d: %s%s, ports %d-%d. This is informatory message printed during autoconfiguration indicating the type of hardware present the port configuration. -.PP -\fBvx%d: no buffers\fP. +.It vx%d: no buffers. All the command buffers were in use; this indicates the device is constipated for some reason. -.PP -\fBvx%d: setq overflow\fP. +.It vx%d: setq overflow. An attempt to append a command to an existing command buffer failed because the buffer was full or the hardware doesn't support this facility. -.PP -\fBvx%d: cmd q overflow\fP. +.It vx%d: cmd q overflow. An attempt to place a new command on the command queue failed because it was full. The device is either overloaded or hung up for some reason. If this happens, the system tries to reset the device to unwedge it. -.PP -\fBvx%d INTR ERR type %x v_dcd %x\fP. +.It vx%d INTR ERR type %x v_dcd %x. An error was returned by the device in response to some command. The command identifier and data carrier detect mask are printed followed by the contents of the command buffer in error. -.PP -\fBvx%d: vcmdrsp interrupt\fP. +.It vx%d: vcmdrsp interrupt. A command response interrupt was received from a bop (bit oriented protocol) vioc. This should not happen. -.PP -\fBvx%d: cmdresp debug\fP. -.PP -\fBvx%d: vunsol from BOP\fP. +.It vx%d: cmdresp debug. +.Pp +.It vx%d: vunsol from +.Tn BOP . An unsolicited interrupt was received from a bop vioc. This should not happen. -.PP -\fBvx%d: interrupt q overflow\fP. +.It vx%d: interrupt q overflow. The queue of pending interrupts to be delivered to the vioc is full. This is probably due to the vioc being wedged. The system resets the vioc if this occurs. -.PP -\fBvx%d: reset...\fP. +.It vx%d: reset.... The system attempted to reset the vioc. -.SH BUGS +.El +.Sh SEE ALSO +.Xr tty 4 +.Sh HISTORY +The +.Nm +special file appeared in +.Bx 4.3 tahoe . diff --git a/usr/src/share/man/man4/man4.vax/acc.4 b/usr/src/share/man/man4/man4.vax/acc.4 index d54d1f8091..8f0d839307 100644 --- a/usr/src/share/man/man4/man4.vax/acc.4 +++ b/usr/src/share/man/man4/man4.vax/acc.4 @@ -1,60 +1,78 @@ -.\" Copyright (c) 1983 The Regents of the University of California. +.\" Copyright (c) 1983, 1991 The Regents of the University of California. .\" All rights reserved. .\" .\" %sccs.include.redist.man% .\" -.\" @(#)acc.4 6.3 (Berkeley) %G% +.\" @(#)acc.4 6.4 (Berkeley) %G% .\" -.TH ACC 4 "" -.UC 5 -.SH NAME -acc \- ACC LH/DH IMP interface -.SH SYNOPSIS -.B "pseudo-device imp" -.br -.B "device acc0 at uba0 csr 167600 vector accrint accxint" -.SH DESCRIPTION +.Dd +.Dt ACC 4 vax +.Os BSD 4.2 +.Sh NAME +.Nm acc +.Nd +.Tn ACC LH/DH IMP +interface +.Sh SYNOPSIS +.Cd pseudo-device imp "device acc0 at uba0 csr 167600 vector accrint accxint" +.Sh DESCRIPTION The -.I acc +.Nm acc device provides a Local Host/Distant Host -interface to an IMP. It is normally used when participating -in the DARPA Internet. The controller itself is not accessible -to users, but instead provides the hardware support to the IMP +interface to an +.Tn IMP . +It is normally used when participating +in the +.Tn DARPA +Internet. The controller itself is not accessible +to users, but instead provides the hardware support to the +.Tn IMP interface described in -.IR imp (4). -When configuring, the -.I imp -pseudo-device must also be included. -.SH DIAGNOSTICS -.BR "acc%d: not alive" . +.Xr imp 4 . +The configuration entry for the +.Xr imp +must also include the +.Em pseudo-device +as shown above. +.Sh DIAGNOSTICS +.Bl -diag +.It acc%d: not alive. The initialization routine was entered even though the device did not autoconfigure. This indicates a system problem. -.PP -.BR "acc%d: can't initialize" . +.Pp +.It acc%d: can't initialize. Insufficient UNIBUS resources existed to initialize the device. This is likely to occur when the device is run on a buffered data path on an 11/750 and other network interfaces are also configured to use buffered data paths, or when it is configured to use buffered data paths on an 11/730 (which has none). -.PP -.BR "acc%d: imp doesn't respond, icsr=%b" . -The driver attempted to initialize the device, but the IMP +.Pp +.It acc%d: imp doesn't respond, icsr=%b. +The driver attempted to initialize the device, but the +.Tn IMP failed to respond after 500 tries. Check the cabling. -.PP -.BR "acc%d: stray xmit interrupt, csr=%b" . +.Pp +.It acc%d: stray xmit interrupt, csr=%b. An interrupt occurred when no output had previously been started. -.PP -.BR "acc%d: output error, ocsr=%b, icsr=%b" . +.Pp +.It acc%d: output error, ocsr=%b, icsr=%b. The device indicated a problem sending data on output. -.PP -.BR "acc%d: input error, csr=%b" . +.Pp +.It acc%d: input error, csr=%b. The device indicated a problem receiving data on input. -.PP -.BR "acc%d: bad length=%d" . +.Pp +.It acc%d: bad length=%d. An input operation resulted in a data transfer of less than 0 or more than 1008 bytes of data into memory (according to the word count register). -This should never happen as the maximum size of a host-IMP +This should never happen as the maximum size of a +.Pf host- Tn IMP message is 1008 bytes. -.SH "SEE ALSO" -netintro(4) +.El +.Sh SEE ALSO +.Xr netintro 4 +.Sh HISTORY +The +.Nm +interface appeared in +.Bx 4.2 . diff --git a/usr/src/share/man/man4/man4.vax/ad.4 b/usr/src/share/man/man4/man4.vax/ad.4 index de59626a87..8f6a691372 100644 --- a/usr/src/share/man/man4/man4.vax/ad.4 +++ b/usr/src/share/man/man4/man4.vax/ad.4 @@ -1,41 +1,61 @@ -.\" Copyright (c) 1983 Regents of the University of California. -.\" All rights reserved. The Berkeley software License Agreement -.\" specifies the terms and conditions for redistribution. +.\" Copyright (c) 1983, 1991 Regents of the University of California. +.\" All rights reserved. .\" -.\" @(#)ad.4 6.1 (Berkeley) %G% +.\" %sccs.include.redist.man% .\" -.TH AD 4 "" -.UC 5 -.SH NAME -ad \- Data Translation A/D converter -.SH SYNOPSIS -.B "device ad0 at uba0 csr 0170400 vector adintr" -.SH DESCRIPTION -.I Ad -provides the interface to the Data Translation A/D converter. +.\" @(#)ad.4 6.2 (Berkeley) %G% +.\" +.Dd +.Dt AD 4 vax +.Os BSD 4.2 +.Sh NAME +.Nm ad +.Nd Data Translation A/D converter +.Sh SYNOPSIS +.Cd "device ad0 at uba0 csr 0170400 vector adintr" +.Sh DESCRIPTION +The +.Nm \&ad +driver +provides an interface to the Data Translation A/D converter. This is -.B not +.Em not a real-time driver, but merely allows the user process to sample the board's channels one at a time. -Each minor device selects a different A/D board. -.PP -The driver communicates to a user process by means of ioctls. -The AD_CHAN ioctl selects which channel of the board to read. +Each minor device selects a different +.Tn A/D +board. +.Pp +The driver communicates to a user process by means of +.Xr ioctl 2 Ns s. +The +.Dv AD_CHAN +.Xr ioctl +selects which channel of the board to read. For example, -.br -.in +.5i +.Bd -literal -offset indent chan = 5; ioctl(fd, AD_CHAN, &chan); -.in -.5i +.Ed +.Pp selects channel 5. -The AD_READ ioctl actually reads the data and returns it to the user +The +.Dv AD_READ +.Xr ioctl 2 +actually reads the data and returns it to the user process. An example is -.br -.in +.5i +.Bd -literal -offset indent ioctl(fd, AD_READ, &data); -.in -.5i -.SH FILES -/dev/ad -.SH DIAGNOSTICS +.Ed +.Sh FILES +.Bl -tag -width /dev/adx -compact +.It Pa /dev/ad +.El +.Sh DIAGNOSTICS None. +.Sh HISTORY +The +.Nm +driver appeared in +.Bx 4.1 . diff --git a/usr/src/share/man/man4/man4.vax/autoconf.4 b/usr/src/share/man/man4/man4.vax/autoconf.4 index a045012d6e..a4f06a8527 100644 --- a/usr/src/share/man/man4/man4.vax/autoconf.4 +++ b/usr/src/share/man/man4/man4.vax/autoconf.4 @@ -1,107 +1,247 @@ -.\" Copyright (c) 1980 Regents of the University of California. -.\" All rights reserved. The Berkeley software License Agreement -.\" specifies the terms and conditions for redistribution. +.\" Copyright (c) 1980, 1991 Regents of the University of California. +.\" All rights reserved. .\" -.\" @(#)autoconf.4 6.2 (Berkeley) %G% +.\" %sccs.include.redist.man% .\" -.TH AUTOCONF 4 "" -.UC 4 -.SH NAME -autoconf \- diagnostics from the autoconfiguration code -.SH DESCRIPTION -When UNIX bootstraps it probes the innards of the machine -on which it is running -and locates controllers, drives, and other devices, printing out -what it finds on the console. This procedure is driven by a system +.\" @(#)autoconf.4 6.3 (Berkeley) %G% +.\" +.Dd +.Dt AUTOCONF 4 +.Os BSD 4 +.Sh NAME +.Nm autoconf +.Nd "diagnostics from the autoconfiguration code" +.Sh DESCRIPTION +When +.Tn UNIX +bootstraps it probes the innards of the machine +on which it is running and +locates controllers, drives, and other devices. +Each item found is recorded on the console. +This procedure is driven by a system configuration table which is processed by -.IR config (8) +.Xr config 8 and compiled into each kernel. -.PP -On the VAX, -devices in NEXUS slots are normally noted, thus memory controllers, -UNIBUS and MASSBUS adaptors. Devices which are not supported which -are found in NEXUS slots are noted also. -The Q-bus on the MICROVAX is configured in the same way as the UNIBUS. -.PP -MASSBUS devices are located by a very deterministic procedure since -MASSBUS space is completely probe-able. If devices exist which +.Pp +On the +.Tn VAX , +devices in +.Tn NEXUS +slots are normally noted, thus memory controllers, +.Tn UNIBUS +and +.Tn MASSBUS +adaptors. Devices which are not supported which +are found in +.Tn NEXUS +slots are noted also. +The Q-bus on the +.Tn MICROVAX +is configured in the same way as the +.Tn UNIBUS. +.Pp +.Tn MASSBUS +devices are located by a very deterministic procedure since +.Tn MASSBUS +space is completely probe-able. If devices exist which are not configured they will be silently ignored; if devices exist of unsupported type they will be noted. -.PP -UNIBUS devices are located by probing to see if their control-status +.Pp +.Tn UNIBUS +devices are located by probing to see if their control-status registers respond. If not, they are silently ignored. If the control status register responds but the device cannot be made to interrupt, a diagnostic warning will be printed on the console and the device will not be available to the system. -.PP +.Pp Normally, the system uses the disk from which it was loaded as the root filesystem. If that is not possible, a generic system will pick its root device -as the ``best'' available device (MASSBUS disks are better than -SMD UNIBUS disks are better than RK07's; the device must be drive 0 +as the +.Dq best +available device +.Pf ( Tn MASSBUS +disks are better than +.Tn SMD UNIBUS +disks are better than +.Tn RK07 Ns s ; +the device must be drive 0 to be considered). -If such a system is booted with the RB_ASKNAME option (see -.IR reboot (2)), +If such a system is booted with the +.Dv RB_ASKNAME +option (see +.Xr reboot 2 ) , then the name of the root device is read from the console terminal at boot time, and any available device may be used. -.SH SEE ALSO -intro(4), boot(8), config(8) -.SH DIAGNOSTICS -\fBcpu type %d not configured\fR. You tried to boot UNIX on a cpu -type which it doesn't (or at least this compiled version of UNIX doesn't) +.Sh DIAGNOSTICS +.Bl -diag +.It cpu type %d not configured. +You tried to boot +.Tn UNIX +on a +.Tn CPU +type which it doesn't (or at least this compiled version of +.Tn UNIX +doesn't) understand. -.PP -\fBmba%d at tr%d\fR. A MASSBUS adapter was found in tr%d (the NEXUS -slot number). UNIX will call it mba%d. -.PP -\fB%d mba's not configured\fR. More MASSBUS adapters were found on +.Pp +.It mba%d at tr%d. +A +.Tn MASSBUS +adapter was found in +.Ql tr%d +(the +.Tn NEXUS +slot number). +.Tn UNIX +will call it +.Ql mba%d . +.Pp +.It %d mba's not configured. +More +.Tn MASSBUS +adapters were found on the machine than were declared in the machine configuration; the excess -MASSBUS adapters will not be accessible. -.PP -\fBuba%d at tr%d\fR. A UNIBUS adapter was found in tr%d (the NEXUS -slot number). UNIX will call it uba%d. -.PP -\fBdr32 unsupported (at tr %d)\fR. A DR32 interface was found in -a NEXUS, for which UNIX does not have a driver. -.PP -\fBci unsupported (at tr %d)\fR. A CI interface was found in -a NEXUS, for which UNIX does not have a driver. -.PP -\fBmcr%d at tr%d\fR. A memory controller was found in tr%d (the NEXUS -slot number). UNIX will call it mcr%d. -.PP -\fB5 mcr's unsupported\fR. UNIX supports only 4 memory controllers -per cpu. -.PP -\fBmpm unsupported (at tr%d)\fR. Multi-port memory is unsupported -in the sense that UNIX does not know how to poll it for ECC errors. -.PP -\fB%s%d at mba%d drive %d\fR. A tape formatter or a disk was found -on the MASSBUS; for disks %s%d will look like ``hp0'', for tape formatters -like ``ht1''. The drive number comes from the unit plug on the drive -or in the TM formatter (\fBnot\fR on the tape drive; see below). -.PP -\fB%s%d at %s%d slave %d\fR. (For MASSBUS devices). -Which would look like ``tu0 at ht0 slave 0'', -where \fBtu0\fR is the name for the tape device and \fBht0\fR is the name +.Tn MASSBUS +adapters will not be accessible. +.Pp +.It uba%d at tr%d. +A +.Tn UNIBUS +adapter was found in +.Ql tr%d +(the +.Tn NEXUS +slot number). +.Tn UNIX +will call it +.Ql uba%d . +.Pp +.It dr32 unsupported (at tr %d). +A +.Tn DR Ns 32 +interface was found in +a +.Tn NEXUS , +for which +.Tn UNIX +does not have a driver. +.Pp +.It ci unsupported (at tr %d). +A +.Tn CI +interface was found in +a +.Tn NEXUS , +for which +.Tn UNIX +does not have a driver. +.Pp +.It mcr%d at tr%d. +A memory controller was found in +.Ql tr%d +(the +.Tn NEXUS +slot number). +.Tn UNIX +will call it +.Ql mcr%d . +.Pp +.It 5 mcr's unsupported. +.Tn UNIX +supports only 4 memory controllers +per +.Tn CPU . +.Pp +.It mpm unsupported (at tr%d). +Multi-port memory is unsupported +in the sense that +.Tn UNIX +does not know how to poll it for +.Tn ECC +errors. +.Pp +.It %s%d at mba%d drive %d. +A tape formatter or a disk was found +on the +.Tn MASSBUS ; +for disks +.Ql %s%d +will look like +.Dq Li hp0 , +for tape formatters +like +.Dq Li ht1 . +The drive number comes from the unit plug on the drive +or in the +.Tn TM +formatter +.Pf ( Em not +on the tape drive; see below). +.Pp +.It %s%d at %s%d slave %d. +(For +.Tn MASSBUS +devices). +Which would look like +.Dq Li tu0 at ht0 slave 0 , +where +.Dq Li tu0 +is the name for the tape device and +.Dq Li ht0 +is the name for the formatter. A tape slave was found on the tape formatter at the indicated drive number (on the front of the tape drive). -UNIX will call the device, e.g., \fBtu0\fR. -.PP -\fB%s%d at uba%d csr %o vec %o ipl %x\fR. The device %s%d, e.g. dz0 -was found on uba%d at control-status register address %o and with -device vector %o. The device interrupted at priority level %x. -.PP -\fB%s%d at uba%d csr %o zero vector\fR. The device did not present +.Ux +will call the device, e.g., +.Dq Li tu0 . +.Pp +.It "%s%d at uba%d csr %o vec %o ipl %x." +The device +.Ql %s%d , +e.g. +.Dq Li dz0 +was found on +.Ql uba%d +at control-status register address +.Ql \&%o +and with +device vector +.Ql \&%o . +The device interrupted at priority level +.Ql \&%x . +.Pp +.It %s%d at uba%d csr %o zero vector. +The device did not present a valid interrupt vector, rather presented 0 (a passive release condition) to the adapter. -.PP -\fB%s%d at uba%d csr %o didn't interrupt\fR. The device did not interrupt, +.Pp +.It %s%d at uba%d csr %o didn't interrupt. +The device did not interrupt, likely because it is broken, hung, or not the kind of device it is advertised to be. -.PP -\fB%s%d at %s%d slave %d\fR. (For UNIBUS devices). -Which would look like ``up0 at sc0 slave 0'', -where \fBup0\fR is the name of a disk drive and \fBsc0\fR is the name -of the controller. Analogous to MASSBUS case. +.Pp +.It %s%d at %s%d slave %d. +(For UNIBUS devices). +Which would look like +.Dq Li up0 at sc0 slave 0 , +where +.Dq Li up0 +is the name of a disk drive and +.Dq Li sc0 +is the name +of the controller. Analogous to +.Tn MASSBUS +case. +.El +.Sh SEE ALSO +.Xr intro 4 , +.Xr boot 8 , +.Xr config 8 +.Sh HISTORY +The +.Nm +feature +appeared in +.Bx 4.1 . diff --git a/usr/src/share/man/man4/man4.vax/cons.4 b/usr/src/share/man/man4/man4.vax/cons.4 index 976c017b3d..4cb6928f0f 100644 --- a/usr/src/share/man/man4/man4.vax/cons.4 +++ b/usr/src/share/man/man4/man4.vax/cons.4 @@ -1,54 +1,124 @@ -.\" Copyright (c) 1980 Regents of the University of California. -.\" All rights reserved. The Berkeley software License Agreement -.\" specifies the terms and conditions for redistribution. +.\" Copyright (c) 1980, 1991 Regents of the University of California. +.\" All rights reserved. .\" -.\" @(#)cons.4 6.2 (Berkeley) %G% +.\" %sccs.include.redist.man% .\" -.TH CONS 4 "" -.UC 4 -.SH NAME -cons \- VAX-11 console interface -.SH DESCRIPTION +.\" @(#)cons.4 6.3 (Berkeley) %G% +.\" +.Dd +.Dt CONS 4 vax +.Os BSD 4 +.Sh NAME +.Nm cons +.Nd "VAX-11 console interface" +.Sh DESCRIPTION The console is available to the processor through the console registers. It acts like a normal terminal, except that when the local functions are -not disabled, control-P puts the console in local console mode (where -the prompt is ``>>>''). The operation of the console in this mode varies +not disabled, +.Ic \&^P +(control-P) puts the console in local console mode (where +the prompt is +.Sq Li >>> ) . +The operation of the console in this mode varies slightly per-processor. -.PP +.Ss Tn VAX No 11/780 or 785 +On either the +.Tn VAX +11/780 or 785 the following commands may be used +after placing the console in local mode with +.Ic ^P . +.Pp +.Bl -tag -width continue -compact -offset 4n +.It Ic c +.It Ic continue +Re-enter conversational mode +if the processor was halted. +.Pp +.It Ic h +.It Ic halt +Halt the CPU. On an 11/780 or 785 the processor is not stopped by entering local console mode. -The CPU may be halted with the ``halt'' command, which may be abbreviated -to ``h.'' -Conversational mode is re-entered by using the command -``set t p'' (set terminal program) if the processor is still -running, or ``continue'' if it is halted. -The latter command may be abbreviated ``c''. -If you hit the break key on the console, then the console LSI-11 -will go into ODT -(console debugger mode). Hit a ``P'' (upper-case letter p; ``proceed'') -to get out of this mode. -.PP +.Pp +.It Ic set t p +(set terminal program) +Re-enter conversational mode +if the processor is still +running. +.Pp +.It Ic P +(proceed) +Get out of +.Tn ODT +mode. +.Pp +.It Ic +If you hit the break key on the console, then the console +.Tn LSI Ns -11 +will go into +.Tn ODT +(console debugger mode). +.El +.Pp +.Ss Tn VAX No 11/750 or 11/730 On an 11/750 or an 11/730 -the processor is halted whenever the console is not in conversational mode, -and typing ``C'' returns to conversational mode. -When in console mode on an 11/750 which has a remote diagnosis module, -a ^D will put you in remote diagnosis mode, where the prompt will be ``RDM>''. -The command ``ret'' will return from remote diagnosis mode to local console +the processor is halted whenever the console is not in conversational mode. +.Pp +.Bl -tag -width continue -compact -offset 4n +.It Ic C +Return to conversational mode. +.Pp +.It Ic ret +Return from remote diagnosis mode to local console mode. -.PP -The VAX 8600 (8650) console normally works in the same way as the 11/750, +.Pp +.It Ic \&^D +(11/750 only) +When in console mode on an 11/750 which has a remote diagnosis module, +a +.Ic \&^D +will put you in remote diagnosis mode, where the prompt will be +.ql RDM> . +.El +.Pp +.Ss Tn VAX No 8600 or 8650 +The +.Tn VAX +8600 (8650) console normally works in the same way as the 11/750, except that there are many additional modes and commands. -In the normal mode -control-P halts the processor, and ``c'' or ``continue'' returns to +.Pp +.Bl -tag -width continue -compact -offset 4n +.It Ic c +.It Ic continue +Return to conversational mode. -If HEX debug is enabled, control-P does not halt the CPU; the ``halt'' -command stops the CPU as on the 11/780. -.PP -With the above proviso's the console works like any other UNIX terminal. -.SH FILES -/dev/console -.SH "SEE ALSO" -tty(4), reboot(8) -.br -VAX Hardware Handbook +.Pp +.It Ic halt +Halt the processor if +.Tn HEX +debug enabled. +.Pp +.It Ic p +Halt the processor if in normal mode. +.El +.Pp +With the above proviso's the console works like any other +.Ux +terminal. +.Sh FILES +.Bl -tag -width /dev/console -compact +.It Pa /dev/console +.El +.Sh SEE ALSO +.Xr tty 4 , +.Xr reboot 8 +.Rs +.%T "VAX Hardware Handbook" +.Re +.Sh HISTORY +The +.Nm cons +interface +appeared in +.Bx 4.0 . diff --git a/usr/src/share/man/man4/man4.vax/crl.4 b/usr/src/share/man/man4/man4.vax/crl.4 index 20ebe5b700..a5569fecb8 100644 --- a/usr/src/share/man/man4/man4.vax/crl.4 +++ b/usr/src/share/man/man4/man4.vax/crl.4 @@ -1,29 +1,56 @@ -.\" Copyright (c) 1986 Regents of the University of California. -.\" All rights reserved. The Berkeley software License Agreement -.\" specifies the terms and conditions for redistribution. +.\" Copyright (c) 1986, 1991 Regents of the University of California. +.\" All rights reserved. .\" -.\" @(#)crl.4 6.2 (Berkeley) %G% +.\" %sccs.include.redist.man% .\" -.TH CRL 4 "" -.UC 6 -.SH NAME -crl \- VAX 8600 console RL02 interface -.SH DESCRIPTION -This is a simple interface to the DEC RL02 +.\" @(#)crl.4 6.3 (Berkeley) %G% +.\" +.Dd +.Dt CRL 4 vax +.Os BSD 4.3 +.Sh NAME +.Nm crl +.Nd +.Tn VAX +8600 console +.Tn RL Ns 02 +interface +.Sh DESCRIPTION +This is a simple interface to the +.Tn DEC +.Tn RL Ns 02 disk unit which is part of the console -subsystem on the VAX 8600 and 8650. +subsystem on the +.Tn VAX +8600 and 8650. Access is given to the entire -RL02 disk; the pack format is the same -as that of RL02 disks on other controllers. -As on other VAX console media, transfers are done a word at a time +.Tn RL Ns 02 +disk; the pack format is the same +as that of +.Tn RL Ns 02 +disks on other controllers. +As on other +.Tn VAX +console media, transfers are done a word at a time using privileged registers (i.e., slowly). -.PP -All I/O is raw; the seek addresses in raw transfers should be a multiple +.Pp +All +.Tn I/O +is raw; the seek addresses in raw transfers should be a multiple of 512 bytes and a multiple of 512 bytes should be transferred, -as in other ``raw'' disk interfaces. +as in other +.Dq raw +disk interfaces. (Although the sector size is actually 256 bytes, the driver allows operations only on 512-byte boundaries.) -.SH FILES -/dev/crl -.SH SEE ALSO -arff(8V) +.Sh FILES +.Bl -tag -width /dev/crl -compact +.It Pa /dev/crl +.El +.Sh SEE ALSO +.Xr arff 8 +.Sh HISTORY +The +.Nm +driver appeared in +.Bx 4.3 . diff --git a/usr/src/share/man/man4/man4.vax/css.4 b/usr/src/share/man/man4/man4.vax/css.4 index c2dacba1e9..842212269d 100644 --- a/usr/src/share/man/man4/man4.vax/css.4 +++ b/usr/src/share/man/man4/man4.vax/css.4 @@ -1,57 +1,78 @@ -.\" Copyright (c) 1983 Regents of the University of California. -.\" All rights reserved. The Berkeley software License Agreement -.\" specifies the terms and conditions for redistribution. +.\" Copyright (c) 1983, 1991 Regents of the University of California. +.\" All rights reserved. .\" -.\" @(#)css.4 6.1 (Berkeley) %G% +.\" %sccs.include.redist.man% .\" -.TH CSS 4 "" -.UC 5 -.SH NAME -css \- DEC IMP-11A LH/DH IMP interface -.SH SYNOPSIS -.B "pseudo-device imp" -.br -.B "device css0 at uba0 csr 167600 flags 10 vector cssrint cssxint" -.SH DESCRIPTION +.\" @(#)css.4 6.2 (Berkeley) %G% +.\" +.Dd +.Dt CSS 4 vax +.Os BSD 4.2 +.Sh NAME +.Nm css +.Nd +.Tn DEC IMP-11A LH/DH IMP +interface +.Sh SYNOPSIS +.Cd "pseudo-device imp device css0 \&at uba0 csr 167600 flags 10 vector cssrint cssxint" +.Sh DESCRIPTION The -.I css +.Nm css device provides a Local Host/Distant Host -interface to an IMP. It is normally used when participating -in the DARPA Internet. The controller itself is not accessible -to users, but instead provides the hardware support to the IMP +interface to an +.Tn IMP . +It is normally used when participating +in the +.Tn DARPA +Internet. The controller itself is not accessible +to users, but instead provides the hardware support to the +.Tn IMP interface described in -.IR imp (4). -When configuring, the -.I imp -pseudo-device is also included. -.SH DIAGNOSTICS -.BR "css%d: not alive" . +.Xr imp 4 . +The configuration entry for the +.Xr imp +must also include the +.Em pseudo-device +as shown above. +.Sh DIAGNOSTICS +.Bl -diag +.It css%d: not alive. The initialization routine was entered even though the device did not autoconfigure. This is indicates a system problem. -.PP -.BR "css%d: can't initialize" . -Insufficient UNIBUS resources existed to initialize the device. +.Pp +.It css%d: can't initialize. +Insufficient +.Tn UNIBUS +resources existed to initialize the device. This is likely to occur when the device is run on a buffered data path on an 11/750 and other network interfaces are also configured to use buffered data paths, or when it is configured to use buffered data paths on an 11/730 (which has none). -.PP -.BR "css%d: imp doesn't respond, icsr=%b" . -The driver attempted to initialize the device, but the IMP +.Pp +.It css%d: imp doesn't respond, icsr=%b. +The driver attempted to initialize the device, but the +.Tn IMP failed to respond after 500 tries. Check the cabling. -.PP -.BR "css%d: stray output interrupt csr=%b" . +.Pp +.It css%d: stray output interrupt csr=%b. An interrupt occurred when no output had previously been started. -.PP -.BR "css%d: output error, ocsr=%b icsr=%b" . +.Pp +.It css%d: output error, ocsr=%b icsr=%b. The device indicated a problem sending data on output. -.PP -.BR "css%d: recv error, csr=%b" . +.Pp +.It css%d: recv error, csr=%b. The device indicated a problem receiving data on input. -.PP -.BR "css%d: bad length=%d" . +.Pp +.It css%d: bad length=%d. An input operation resulted in a data transfer of less than 0 or more than 1008 bytes of data into memory (according to the word count register). -This should never happen as the maximum size of a host-IMP +This should never happen as the maximum size of a +.Pf host- Tn IMP message is 1008 bytes. +.El +.Sh HISTORY +The +.Nm +interface appeared in +.Bx 4.2 . diff --git a/usr/src/share/man/man4/man4.vax/ct.4 b/usr/src/share/man/man4/man4.vax/ct.4 index 6dbf6d2571..0c4d69acef 100644 --- a/usr/src/share/man/man4/man4.vax/ct.4 +++ b/usr/src/share/man/man4/man4.vax/ct.4 @@ -1,28 +1,44 @@ -.\" Copyright (c) 1980 Regents of the University of California. -.\" All rights reserved. The Berkeley software License Agreement -.\" specifies the terms and conditions for redistribution. +.\" Copyright (c) 1980, 1991 Regents of the University of California. +.\" All rights reserved. .\" -.\" @(#)ct.4 6.2 (Berkeley) %G% +.\" %sccs.include.redist.man% .\" -.TH CT 4 "" -.UC 4 -.SH NAME -ct \- phototypesetter interface -.SH SYNOPSIS -.B "device ct0 at uba0 csr 0167760 vector ctintr" -.SH DESCRIPTION -This provides an interface to a Graphic Systems C/A/T phototypesetter -or an Autologic APS-Micro5 using a DR11C interface. -Bytes written on the file specify font, size, and other control -information as well as the characters to be flashed. The -coding is not described here. -.PP -Only one process may have this file open at a time. It is write-only. -.SH FILES -/dev/cat -.SH "SEE ALSO" -troff(1) -.br -Phototypesetter interface specification -.SH DIAGNOSTICS +.\" @(#)ct.4 6.3 (Berkeley) %G% +.\" +.Dd +.Dt CT 4 vax +.Os BSD 4 +.Sh NAME +.Nm \&ct +.Nd "C/A/T phototypesetter interface" +.Sh SYNOPSIS +.Cd "device ct0 at uba0 csr 0167760 vector ctintr" +.Sh DESCRIPTION +This is an interface to either a Graphic Systems +.Tn C/A/T +phototypesetter +or an Autologic +.Tn APS-Micro5 +using a +.Tn DR-11 C +interface. +.Pp +The +.Nm \&ct +is a write only device. +.Sh FILES +.Bl -tag -width /dev/catxx -compact +.It Pa /dev/cat +.El +.Sh DIAGNOSTICS None. +.Sh SEE ALSO +.Xr troff 1 +.Rs +.%T Phototypesetter interface specification +.Re +.Sh HISTORY +The +.Nm \&ct +driver appeared in +.Bx 4.1 . diff --git a/usr/src/share/man/man4/man4.vax/ddn.4 b/usr/src/share/man/man4/man4.vax/ddn.4 index 7558fed940..8f722a335c 100644 --- a/usr/src/share/man/man4/man4.vax/ddn.4 +++ b/usr/src/share/man/man4/man4.vax/ddn.4 @@ -1,62 +1,106 @@ -.\" Copyright (c) 1983 The Regents of the University of California. +.\" Copyright (c) 1983, 1991 The Regents of the University of California. .\" All rights reserved. .\" .\" %sccs.include.redist.man% .\" -.\" @(#)ddn.4 6.4 (Berkeley) %G% +.\" @(#)ddn.4 6.5 (Berkeley) %G% .\" -.TH DDN 4 "" -.UC 6 -.SH NAME -ddn \- DDN Standard Mode X.25 IMP interface -.SH SYNOPSIS -.B "device ddn0 at uba0 csr 166740 vector ddnintr" -.SH DESCRIPTION +.Dd +.Dt DDN 4 vax +.Os BSD 4.3 +.Sh NAME +.Nm ddn +.Nd +.Tn DDN +Standard Mode +.Tn X.25 +.Tn IMP +interface +.Sh SYNOPSIS +.Cd "device ddn0 at uba0 csr 166740 vector ddnintr" +.Sh DESCRIPTION The -.I ddn -device provides a DDN Standard Mode X.25 interface to an IMP using -the ACC ACP625 X.25 board. It is normally used for connecting to -the Defense Data Network (DDN). The controller itself is not accessible +.Nm ddn +device provides a +.Tn DDN +Standard Mode +.Tn X.25 +interface to an +.Tn IMP +using +the +.Tn ACC ACP625 +.Tn X.25 +board. It is normally used for connecting to +the Defense Data Network +.Pq Tn DDN . +The controller itself is not accessible to users, but instead provides a network interface for the Internet Protocol described in -.IR ip (4). -.SH DIAGNOSTICS -.BR "ddn%d: not alive" . +.Xr ip 4 . +.Sh DIAGNOSTICS +.Bl -diag +.It ddn%d: not alive. The initialization routine was entered even though the device did not autoconfigure. This indicates a system problem. -.PP -.BR "ddn%d: failed getting UBA resources for lcn %d" . -Insufficient UNIBUS resources existed to initialize the device. -This is likely to be a shortage of UNIBUS mapping registers. -.PP -.BR "ddn%d: couldn't get X25 init buffer" . +.Pp +.It ddn%d: failed getting UBA resources for lcn %d." +Insufficient +.Tn UNIBUS +resources existed to initialize the device. +This is likely to be a shortage of +.Tn UNIBUS +mapping registers. +.Pp +.It ddn%d: couldn't get X25 init buffer. This indicates that an -.I mbuf +.Em mbuf could not be allocated for sending the initialization message to the -ACP625. -.PP -.BR "DDN: illegal X25 address length!" -.br -.BR "DDN: illegal X25 address format!" -.br -These errors indicate a problem with the called X.25 address received -from the IMP on an incoming call. -.PP -.BR "X25 RESET on lcn = %d" . -This indicates that an unexpected X.25 RESET was received on the -indicated LCN. -.PP -.BR "X25 INTERRUPT on lcn = %d, code = %d" . -This indicates that an unexpected X.25 INTERRUPT Packet was received on the -indicated LCN. -.PP -.BR "ddn%d: failed to get supr msg bfr!" . +.Tn ACP Ns 625. +.Pp +.It DDN: illegal X25 address length! +.It DDN: illegal X25 address format! +These errors indicate a problem with the called +.Tn X.25 +address received +from the +.Tn IMP +on an incoming call. +.Pp +.It X25 RESET on lcn = %d. +This indicates that an unexpected +.Tn X.25 +.Tn RESET +was received on the +indicated +.Tn LCN . +.Pp +.It X25 INTERRUPT on lcn = %d, code = %d. +This indicates that an unexpected +.Tn X.25 +.Tn INTERRUPT +Packet was received on the +indicated +.Tn LCN . +.Pp +.It ddn%d: failed to get supr msg bfr! This indicates that an -.I mbuf +.Em mbuf could not be allocated for sending a supervisor message to the -ACP625. -.PP -Any other error message from ddn%d: indicates a serious error -detected by either the driver or the ACP625 firmware. -.SH SEE ALSO -netintro(4), ip(4) +.Tn ACP625 . +.El +.Pp +Any other error message from +.Ql ddn%d: +indicates a serious error +detected by either the driver or the +.Tn ACP Ns 625 +firmware. +.Sh SEE ALSO +.Xr netintro 4 , +.Xr ip 4 +.Sh HISTORY +The +.Nm +interface appeared in +.Bx 4.3 . diff --git a/usr/src/share/man/man4/man4.vax/de.4 b/usr/src/share/man/man4/man4.vax/de.4 index eb37595188..66ea478480 100644 --- a/usr/src/share/man/man4/man4.vax/de.4 +++ b/usr/src/share/man/man4/man4.vax/de.4 @@ -1,80 +1,105 @@ -.\" Copyright (c) 1986 The Regents of the University of California. +.\" Copyright (c) 1986, 1991 The Regents of the University of California. .\" All rights reserved. .\" .\" %sccs.include.redist.man% .\" -.\" @(#)de.4 6.4 (Berkeley) %G% +.\" @(#)de.4 6.5 (Berkeley) %G% .\" -.TH DE 4 "" -.UC 5 -.SH NAME -de \- DEC DEUNA 10 Mb/s Ethernet interface -.SH SYNOPSIS -.B "device de0 at uba0 csr 174510 vector deintr" -.SH DESCRIPTION +.Dd +.Dt DE 4 vax +.Os BSD 4.2 +.Sh NAME +.Nm de +.Nd +.Tn DEC DEUNA +10 Mb/s Ethernet interface +.Sh SYNOPSIS +.Cd "device de0 at uba0 csr 174510 vector deintr" +.Sh DESCRIPTION The -.I de +.Nm de interface provides access to a 10 Mb/s Ethernet network through -a Digital Equipment UNIBUS Network Adapter (DEUNA). -.PP +a Digital Equipment +.Tn UNIBUS +Network Adapter +.Pq Tn DEUNA . +.Pp Each of the host's network addresses -is specified at boot time with an SIOCSIFADDR -ioctl. The -.I de +is specified at boot time with an +.Dv SIOCSIFADDR +.Xr ioctl 2 . +The +.Nm de interface employs the address resolution protocol described in -.IR arp (4) +.Xr arp 4 to dynamically map between Internet and Ethernet addresses on the local network. -.PP -The interface normally tries to use a ``trailer'' encapsulation +.Pp +The interface normally tries to use a +.Dq trailer +encapsulation to minimize copying data on input and output. -The use of trailers is negotiated with ARP. +The use of trailers is negotiated with +.Tn ARP . This negotiation may be disabled, on a per-interface basis, -by setting the IFF_NOTRAILERS -flag with an SIOCSIFFLAGS ioctl. -.SH DIAGNOSTICS -\fBde%d: hardware address %s\fP. +by setting the +.Dv IFF_NOTRAILERS +flag with an +.Dv SIOCSIFFLAGS +.Xr ioctl . +.Sh DIAGNOSTICS +.Bl -diag +.It de%d: hardware address %s. This is a normal autoconfiguration message noting the 6 byte physical ethernet address of the adapter. -.PP -\fBde%d: oerror, flags=%b tdrerr=%b (len=%d)\fP. +.Pp +.It de%d: oerror, flags=%b tdrerr=%b (len=%d). The hardware indicated an error in transmitting a packet to the cable. The status and error flags are reported. -.PP -\fBde%d: ierror, flags=%b lenerr=%b (len=%d)\fP. +.Pp +.It de%d: ierror, flags=%b lenerr=%b (len=%d). The hardware indicated an error in reading a packet from the cable. The status and error flags are reported. -.PP -\fBde%d: can't handle af%d\fP. The interface was handed +.Pp +.It de%d: can't handle af%d. +The interface was handed a message with addresses formatted in an unsuitable address family; the packet was dropped. -.PP -\fBde%d: buffer unavailable\fP. The interface received more packets +.Pp +.It de%d: buffer unavailable. +The interface received more packets than it had buffers allocated to receive them. -.PP -\fBde%d: address change failed, csr0=%b csr1=%b\fP. +.Pp +.It de%d: address change failed, csr0=%b csr1=%b. The interface was unable to reprogram its physical ethernet address. This may happen with very early models of the interface. This facility is used only when -the controller is not the first network interface configured for XNS. -.PP +the controller is not the first network interface configured for +.Tn XNS . +.El +.Pp The following messages indicate a probable hardware error performing the indicated operation during autoconfiguration or initialization. The two control and status registers should indicate the nature of the failure. See the hardware manual for details. -.PP -\fBde%d: reset failed, csr0=%b csr1=%b\fP. -.PP -\fBde%d: ppcb failed, csr0=%b csr1=%b\fP. -.PP -\fBde%d: read addr failed, csr0=%b csr1=%b\fP. -.PP -\fBde%d: wtring failed, csr0=%b csr1=%b\fP. -.PP -\fBde%d: wtmode failed, csr0=%b csr1=%b\fP. -.SH SEE ALSO -netintro(4), inet(4), arp(4) +.Pp +.Bl -diag +.It de%d: reset failed, csr0=%b csr1=%b. +.It de%d: ppcb failed, csr0=%b csr1=%b. +.It de%d: read addr failed, csr0=%b csr1=%b. +.It de%d: wtring failed, csr0=%b csr1=%b. +.It de%d: wtmode failed, csr0=%b csr1=%b. +.El +.Sh SEE ALSO +.Xr netintro 4 , +.Xr inet 4 , +.Xr arp 4 +.Sh HISTORY +The +.Nm +driver appeared in +.Bx 4.3 . diff --git a/usr/src/share/man/man4/man4.vax/dh.4 b/usr/src/share/man/man4/man4.vax/dh.4 index 789c591ed0..676be9e5c2 100644 --- a/usr/src/share/man/man4/man4.vax/dh.4 +++ b/usr/src/share/man/man4/man4.vax/dh.4 @@ -1,59 +1,107 @@ -.\" Copyright (c) 1980 Regents of the University of California. -.\" All rights reserved. The Berkeley software License Agreement -.\" specifies the terms and conditions for redistribution. +.\" Copyright (c) 1980, 1991 Regents of the University of California. +.\" All rights reserved. .\" -.\" @(#)dh.4 6.2 (Berkeley) %G% +.\" %sccs.include.redist.man% .\" -.TH DH 4 "" -.UC 4 -.SH NAME -dh \- DH-11/DM-11 communications multiplexer -.SH SYNOPSIS -.B "device dh0 at uba0 csr 0160020 vector dhrint dhxint" -.br -.B "device dm0 at uba0 csr 0170500 vector dmintr" -.SH DESCRIPTION -A dh-11 provides 16 communication lines; dm-11's may be optionally -paired with dh-11's to provide modem control for the lines. -.PP -Each line attached to the DH-11 communications multiplexer -behaves as described in -.IR tty (4). -Input and output for each line may independently -be set to run at any of 16 speeds; +.\" @(#)dh.4 6.3 (Berkeley) %G% +.\" +.Dd +.Dt DH 4 vax +.Os BSD 4 +.Sh NAME +.Nm dh +.Nd +.Tn DH-11 Ns / Tn DM-11 +multiplexer device interface +.Sh SYNOPSIS +.Cd "device dh0 at uba0 csr 0160020 vector dhrint dhxint" Op Ar flags +.Cd "device dm0 at uba0 csr 0170500 vector dmintr" Op Ar flags +.Sh DESCRIPTION +A +.Tn DH-11 +provides 16 serial communication lines; +.Tn DM-11 Ns s +may optionally be +paired with +.Tn DH-11 Ns s +to provide modem control for the lines. +.Pp +An optional argument +.Ar flags +may be supplied with the device specification +in the +.Xr config 8 +file indicating +that the line corresponding to +bit number +.Ar i +is not properly +connected, and should be treated as hard-wired with carrier +always present. Thus specifying +.Ql flags 0x0004 +for +.Li dh0 +would cause line +.Pa ttyh2 +to be treated in this way. +.Pp +Normal I/O +control parameters for individual lines are managed by +.Xr ioctl 2 +calls. +Line speeds may be initiated via +.Xr getty 8 +and +.Xr stty 1 +or may be communicated by other programs which +utilize +.Xr ioctl +such as +.Xr ifcongif 8 , see -.IR tty (4) -for the encoding. -.PP -Bit -.I i -of flags may be specified for a dh to say that a line is not properly -connected, and that the line should be treated as hard-wired with carrier -always present. Thus specifying ``flags 0x0004'' in the specification of dh0 -would cause line ttyh2 to be treated in this way. -.PP +.Xr tty 4 . +.Pp The -.I dh +.Nm dh driver monitors the rate of input on each board, and switches between the use of character-at-a-time interrupts and input silos. While the silo is enabled during periods of high-speed input, the driver polls for input 30 times per second. -.SH FILES -/dev/tty[h-o][0-9a-f] -.br -/dev/ttyd[0-9a-f] -.SH "SEE ALSO" -tty(4) -.SH DIAGNOSTICS -\fBdh%d: NXM\fR. No response from UNIBUS on a dma transfer -within a timeout period. This is often followed by a UNIBUS adapter -error. This occurs most frequently when the UNIBUS is heavily loaded -and when devices which hog the bus (such as rk07's) are present. +.Sh FILES +.Bl -tag -width /dev/tty[h-o][0-9a-f]x -compact +.It Pa /dev/tty[h-o][0-9a-f] +.It Pa /dev/ttyd[0-9a-f] +.El +.Sh DIAGNOSTICS +.Bl -diag +.It dh%d: NXM. +No response from +.Tn UNIBUS +on a dma transfer +within a timeout period. This is often followed by a +.Tn UNIBUS +adapter +error. This occurs most frequently when the +.Tn UNIBUS +is heavily loaded +and when devices which hog the bus (such as +.Tn RK07 Ns s) are present. It is not serious. -.PP -\fBdh%d: silo overflow\fR. The character input silo overflowed +.Pp +.It dh%d: silo overflow. +The character input silo overflowed before it could be serviced. This can happen if a hard error occurs -when the CPU is running with elevated priority, as the system will +when the +.Tn CPU +is running with elevated priority, as the system will then print a message on the console with interrupts disabled. It is not serious. +.El +.Sh SEE ALSO +.Xr tty 4 +.Sh HISTORY +A +.Nm +driver appeared in +.At v6 . diff --git a/usr/src/share/man/man4/man4.vax/dhu.4 b/usr/src/share/man/man4/man4.vax/dhu.4 index dc7558d57e..58ba8d5120 100644 --- a/usr/src/share/man/man4/man4.vax/dhu.4 +++ b/usr/src/share/man/man4/man4.vax/dhu.4 @@ -1,58 +1,119 @@ -.\" Copyright (c) 1985 Regents of the University of California. -.\" All rights reserved. The Berkeley software License Agreement -.\" specifies the terms and conditions for redistribution. +.\" Copyright (c) 1985, 1991 Regents of the University of California. +.\" All rights reserved. .\" -.\" @(#)dhu.4 6.2 (Berkeley) %G% +.\" %sccs.include.redist.man% .\" -.TH DHU 4 "" -.UC 6 -.SH NAME -dhu \- DHU-11 communications multiplexer -.SH SYNOPSIS -.B "device dhu0 at uba0 csr 0160440 vector dhurint dhuxint" -.SH DESCRIPTION -A DHU-11 provides 16 communication lines. -.PP -Each line attached to the DHU-11 communications multiplexer -behaves as described in -.IR tty (4). -Input and output for each line may independently -be set to run at any of 13 speeds (50, 200 and 38400 baud are not available); +.\" @(#)dhu.4 6.3 (Berkeley) %G% +.\" +.Dd +.Dt DHU 4 vax +.Os BSD 4.3 +.Sh NAME +.Nm dhu +.Nd +.Tn DHU-11 +communications multiplexer +.Sh SYNOPSIS +.Cd "device dhu0 at uba0 csr 0160440 vector dhurint dhuxint" +.Sh DESCRIPTION +A +.Tn DHU-11 +provides 16 communication lines. +.Pp +An optional argument +.Ar flags +may be supplied with the device specification +in the config file indicating +that the line corresponding to +bit number +.Ar i +is not properly +connected, and should be treated as hard-wired with carrier +always present. Thus specifying +.Ql flags 0x0004 +for +.Li dhu0 +would cause line +.Pa ttyS2 +to be treated in this way. +.Pp +Normal I/O +control parameters for individual lines are managed by +.Xr ioctl 2 +calls. +Individual +.Tn DHU-11 +lines may be configured to run at any of 13 speeds +(50, 200 and 38400 baud are not available); +the speed may be set via +.Xr getty 8 +or +.Xr stty 1 +or may be communicated by other programs which +utilize +.Xr ioctl +such as +.Xr ifcongif 8 , see -.IR tty (4) -for the encoding. -.PP -Bit -.I i -of flags may be specified for a DHU-11 to say that a line is not properly -connected, and that the line should be treated as hard-wired with carrier -always present. Thus specifying ``flags 0x0004'' in the specification of dhu0 -would cause line ttyS2 to be treated in this way. -.PP -The DHU-11 driver normally uses input silos +.Xr tty 4 . +.Pp +The +.Tn DHU-11 +driver normally uses input silos and delays receiver interrupts by 20 milliseconds rather than taking an interrupt on each input character. -.SH FILES -/dev/tty[S-Z][0-9a-f] -.SH "SEE ALSO" -tty(4) -.SH DIAGNOSTICS -\fBdhu(%d,%d): NXM fault\fR. No response from UNIBUS on a DMA transfer -within a timeout period. This is often followed by a UNIBUS adapter -error. This occurs most frequently when the UNIBUS is heavily loaded -and when devices which hog the bus (such as RK07s) are present. +.Sh FILES +.Bl -tag -width /dev/tty[S-Z][0-9a-f]xx -compact +.It Pa /dev/tty[S-Z][0-9a-f] +.El +.Sh DIAGNOSTICS +.Bl -diag +.It dhu(%d,%d): NXM fault. +No response from +.Tn UNIBUS +on a +.Tn DMA +transfer +within a timeout period. This is often followed by a +.Tn UNIBUS +adapter +error. This occurs most frequently when the +.Tn UNIBUS +is heavily loaded +and when devices which hog the bus (such as +.Tn RK07 Ns s ) +are present. It is not serious. -.PP -\fBdhu%d: silo overflow\fR. The character input silo overflowed +.Pp +.It dhu%d: silo overflow. +The character input silo overflowed before it could be serviced. This can happen if a hard error occurs -when the CPU is running with elevated priority, as the system may +when the +.Tn CPU +is running with elevated priority, as the system may then print a message on the console with interrupts disabled. -.SH NOTES +.El +.Sh NOTES The driver currently does not make full use of the hardware -capabilities of the DHU-11, for dealing with XON/XOFF flow-control or hard-wired +capabilities of the +.Tn DHU-11 , +for dealing with +.Tn XON/XOFF +flow-control or hard-wired lines for example. -.PP -Although the devices are not the same, a DHU-11 can convince the -DH-11 autoconfiguration code that it is a DH-11. -.PP +.Pp +Although the devices are not the same, a +.Tn DHU-11 +can convince the +.Tn DH-11 +autoconfiguration code that it is a +.Tn DH-11 . +.Pp The 4 40-way cables are a pain. +.Sh SEE ALSO +.Xr tty 4 +.Sh HISTORY +The +.Nm +driver appeared in +.Bx 4.3 . diff --git a/usr/src/share/man/man4/man4.vax/dmc.4 b/usr/src/share/man/man4/man4.vax/dmc.4 index 20f62824f8..30b0868f93 100644 --- a/usr/src/share/man/man4/man4.vax/dmc.4 +++ b/usr/src/share/man/man4/man4.vax/dmc.4 @@ -1,81 +1,132 @@ -.\" Copyright (c) 1983 Regents of the University of California. -.\" All rights reserved. The Berkeley software License Agreement -.\" specifies the terms and conditions for redistribution. +.\" Copyright (c) 1983, 1991 Regents of the University of California. +.\" All rights reserved. .\" -.\" @(#)dmc.4 6.4 (Berkeley) %G% +.\" %sccs.include.redist.man% .\" -.TH DMC 4 "" -.UC 5 -.SH NAME -dmc \- DEC DMC-11/DMR-11 point-to-point communications device -.SH SYNOPSIS -.B "device dmc0 at uba0 csr 167600 vector dmcrint dmcxint" -.SH DESCRIPTION +.\" @(#)dmc.4 6.5 (Berkeley) %G% +.\" +.Dd +.Dt DMC 4 vax +.Os BSD 4.2 +.Sh NAME +.Nm dmc +.Nd +.Tn DEC +.Tn DMC-11 Ns / Tn DMR-11 +point-to-point communications device +.Sh SYNOPSIS +.Cd "device dmc0 at uba0 csr 167600 vector dmcrint dmcxint" +.Sh DESCRIPTION The -.I dmc +.Nm dmc interface provides access to a point-to-point communications -device which runs at either 1 Mb/s or 56 Kb/s. DMC-11's communicate -using the DEC DDCMP link layer protocol. -.PP +device which runs at either 1 Mb/s or 56 Kb/s. +.Tn DMC-11 Ns s +communicate +using the +.Tn DEC DDCMP +link layer protocol. +.Pp The -.I dmc -interface driver also supports a DEC DMR-11 providing point-to-point +.Nm dmc +interface driver also supports a +.Tn DEC +.Tn DMR-11 +providing point-to-point communication running at data rates from 2.4 Kb/s to 1 Mb/s. -DMR-11's are a more recent design and thus are preferred over DMC-11's. -The NXMT and NRCV constants in the driver may be increased in this case, -as the DMR can accept up to 64 transmit and receive buffers, as opposed -to 7 for the DMC. -.PP -The configuration flags specify how to set up the device, -.br -0 -- full duplex DDCMP (normal mode) -.br -1 -- DDCMP Maintence mode (generally useless) -.br -2 -- DDCMP Half Duplex, primary station -.br -3 -- DDCMP Half Duplex, secondary station -.ti -.PP -Several device error counters are available via "adb", for -more information see the adb script /usr/lib/adb/dmcstats, or the -DMC11 technical manual. -.PP -The host's address must be specified with an SIOCSIFADDR ioctl, -and the destination address specified with a SIOCSIFDSTADDR ioctl, +.Tn DMR-11 Ns s +are a more recent design and thus are preferred over +.Tn DMC-11 Ns s . +The +.Dv NXMT +and +.Dv NRCV +constants in the driver may be increased in this case, +as the +.Tn DMR +can accept up to 64 transmit and receive buffers, as opposed +to 7 for the +.Tn DMC . +.Pp +The configuration flags specify how to set up the device, +.Bl -column xxx -offset indent +0 full duplex DDCMP (normal mode) +1 DDCMP Maintence mode (generally useless) +2 DDCMP Half Duplex, primary station +3 DDCMP Half Duplex, secondary station +.El +.Pp +Several device error counters are available via +.Xr adb 1 , +for +more information see the +.Xr adb +script +.Pa /usr/lib/adb/dmcstats , +or the +.Tn DMC-11 +technical manual. +.Pp +The host's address must be specified with an +.Dv SIOCSIFADDR +.Xr ioctl 2 , +and the destination address specified with a +.Dv SIOCSIFDSTADDR +.Xr ioctl , before the interface will transmit or receive any packets. -.SH ROUTING -The driver places a HOST entry in the kernel routing tables for the -address given in the SIOCSIFDSTADDR ioctl. To use the DMC as a +.Sh ROUTING +The driver places a +.Tn HOST +entry in the kernel routing tables for the +address given in the +.Dv SIOCSIFDSTADDR +.Xr ioctl. +To use the +.Tn DMC +as a link between local nets, the route to the remote net must be added manually with the -.IR route (8) +.Xr route 8 command, or by the use of the routing process -.IR routed (8) +.Xr routed 8 on each end of the link. -.SH DIAGNOSTICS -.BR "dmc%d: bad control %o" . +.Sh DIAGNOSTICS +.Bl -diag +.It dmc%d: bad control %o. A bad parameter was passed to the -.I dmcload +.Em dmcload routine. -.PP -.BR "dmc%d: unknown address type %d" . +.Pp +.It dmc%d: unknown address type %d. An input packet was received which contained a type of address unknown to the driver. -.PP -.BR "DMC fatal error 0%o" . -A fatal error in DDMCP occurred, causing the device to be restarted. -.PP -.BR "DMC soft error 0%o" . -A non-fatal error in DDMCP has occurred. -.PP -.BR "dmc%d: af%d not supported" . +.Pp +.It DMC fatal error 0%o. +A fatal error in +.Tn DDMCP +occurred, causing the device to be restarted. +.Pp +.It DMC soft error 0%o. +A non-fatal error in +.Tn DDMCP +has occurred. +.Pp +.It dmc%d: af%d not supported. The interface was handed a message which has addresses formatted in an unsuitable address family. -.SH SEE ALSO -intro(4N), inet(4F) -.SH BUGS +.El +.Sh SEE ALSO +.Xr intro 4 , +.Xr inet 4 +.Sh HISTORY +The +.Nm +driver appeared in +.Bx 4.2 . +.Sh BUGS The current version of the driver uses a link-level encapsulation so that multiple protocol types may be used. It is thus incompatible with earlier drivers, -including the 4.2BSD version. +including the +.Bx 4.2 +version. diff --git a/usr/src/share/man/man4/man4.vax/dmf.4 b/usr/src/share/man/man4/man4.vax/dmf.4 index 78972be6e8..75890db4b9 100644 --- a/usr/src/share/man/man4/man4.vax/dmf.4 +++ b/usr/src/share/man/man4/man4.vax/dmf.4 @@ -1,97 +1,136 @@ -.\" Copyright (c) 1983 Regents of the University of California. -.\" All rights reserved. The Berkeley software License Agreement -.\" specifies the terms and conditions for redistribution. +.\" Copyright (c) 1983, 1991 Regents of the University of California. +.\" All rights reserved. .\" -.\" @(#)dmf.4 6.4 (Berkeley) %G% +.\" %sccs.include.redist.man% .\" -.TH DMF 4 "" -.UC 5 -.SH NAME -dmf \- DMF-32, terminal multiplexor -.SH SYNOPSIS -.B "device dmf0 at uba? csr 0160340" -.br -.ti +0.5i -.B "vector dmfsrint dmfsxint dmfdaint dmfdbint dmfrint dmfxint dmflint" -.SH DESCRIPTION -The -.I dmf +.\" @(#)dmf.4 6.5 (Berkeley) %G% +.\" +.Dd +.Dt DMF 4 vax +.Os BSD 4.2 +.Sh NAME +.Nm dmf +.Nd +.Tn DMF-32 +terminal multiplexor +.Sh SYNOPSIS +.Cd "device dmf0 at uba? csr 0160340 vector dmfsrint dmfsxint dmfdaint dmfdbint dmfrint dmfxint dmflint" +.Sh DESCRIPTION +The +.Nm dmf device provides 8 lines of asynchronous serial line support. The first two of these have full modem control. The device also provides a line printer port -similar to the LP-11. -Other features of the DMF-32 are not supported. -During autoconfiguration, the driver examines the configuration of each DMF-32 +similar to the +.Tn LP-11 . +Other features of the +.Tn DMF-32 +are not supported. +During autoconfiguration, the driver examines the configuration of each +.Tn DMF-32 and adjusts the interrupt vectors so that fewer vector locations are used if possible. -.PP -Each line attached to a DMF-32 serial line port behaves as described -in -.IR tty (4). -Input and output for each line may independently be set to run at any -of 16 speeds; see -.IR tty (4) -for the encoding. -.PP -Bit -.I i -of flags may be specified for a -.I dmf -to to say that a line is not properly connected, and that the -line should be treated as hard-wired with carrier always present. -Thus specifying ``flags 0x04'' in the specification of -.IR dmf 0 -would cause line ttyA2 to be treated in this way. +.Pp +An optional argument +.Ar flags +may be supplied with the device specification +in the config file indicating +that the line corresponding to +bit number +.Ar i +is not properly +connected, and should be treated as hard-wired with carrier +always present. Thus specifying +.Ql flags 0x04 +for +.Li dmf0 +would cause line +.Pa ttyA2 +to be treated in this way. Flags should be set for all lines without hardware support for modem control. -.PP +.Pp +Normal +.Tn I/O +control parameters for individual lines are managed by +.Xr ioctl 2 +calls. +Line speeds may be initiated via +.Xr getty 8 +and +.Xr stty 1 +or may be communicated by other programs which +utilize +.Xr ioctl +such as +.Xr ifcongif 8 , +see +.Xr tty 4 . +.Pp The serial line part of the -.I dmf +.Nm dmf driver normally enables the input silos with a short timeout (30 milliseconds); this allows multiple characters to be received per interrupt during periods of high-speed input. -.PP -A line printer port on -.I dmf\^n +.Pp +A line printer port on a +.Nm dmf is designated by -a minor device number of the form 128+\fIn\fP. -Columns and lines per page may be changed from the default +a minor device number of the form +.Pf 128+ Ns Ar n . +See +.Xr MAKEDEV 8 . +Column and lines per page may be changed from the default 132 columns and 66 lines by encoding the number of columns in bits 8-15 of flags and the number of lines in bits 16-23. This device does not provide the fancy output canonicalization features of the -.IR lp (4) +.Xr lp 4 driver. -.SH FILES -/dev/tty[A-CE-I][0-7] -.br -/dev/ttyd[0-7] -.br -/dev/lp -.SH SEE ALSO -tty(4) -.SH DIAGNOSTICS -.BR "dmf%d: NXM line %d" . -No response from UNIBUS on a DMA transfer -within a timeout period. This is often followed by a UNIBUS adapter -error. This occurs most frequently when the UNIBUS is heavily loaded -and when devices which hog the bus (such as RK07s) are present. +.Sh FILES +.Bl -tag -width "/dev/tty[A-CE-I][0-7]" -compact +.It Pa /dev/tty[A-CE-I][0-7] +.It Pa /dev/ttyd[0-7] +.It Pa /dev/lp +.El +.Sh DIAGNOSTICS +.Bl -diag +.It dmf%d: NXM line %d. +No response from +.Tn UNIBUS +on a DMA transfer +within a timeout period. This is often followed by a +.Tn UNIBUS +adapter +error. This occurs most frequently when the +.Tn UNIBUS +is heavily loaded +and when devices which hog the bus (such as +.Tn RK07 Ns s ) +are present. It is not serious. -.PP -.BR "dmf%d: silo overflow" . +.Pp +.It dmf%d: silo overflow. The character input silo overflowed before it could be serviced. This can happen if a hard error occurs -when the CPU is running with elevated priority, as the system will +when the +.Tn CPU +is running with elevated priority, as the system will then print a message on the console with interrupts disabled. It is not serious. -.PP -.BR dmfsrint , -.BR dmfsxint , -.BR dmfdaint , -.BR dmfdbint . +.Pp +.It dmfsrint, dmfsxint, dmfdaint, dmfdbint. One of the unsupported parts of the dmf interrupted; something is amiss, check your interrupt vectors for a conflict with another device. -.SH BUGS +.El +.Sh SEE ALSO +.Xr tty 4 +.Sh HISTORY +The +.Nm +driver appeared in +.Bx 4.2 . +.Sh BUGS It should be possible to set the silo timeout with a configuration file option, as the value is a trade-off between efficiency and response time for flow control and character echo. diff --git a/usr/src/share/man/man4/man4.vax/dmv.4 b/usr/src/share/man/man4/man4.vax/dmv.4 index b17b74160e..5b8cd11263 100644 --- a/usr/src/share/man/man4/man4.vax/dmv.4 +++ b/usr/src/share/man/man4/man4.vax/dmv.4 @@ -1,71 +1,102 @@ -.\" Copyright (c) 1988 Regents of the University of California. -.\" All rights reserved. The Berkeley software License Agreement -.\" specifies the terms and conditions for redistribution. +.\" Copyright (c) 1988, 1991 Regents of the University of California. +.\" All rights reserved. .\" -.\" @(#)dmv.4 6.1 (Berkeley) %G% +.\" %sccs.include.redist.man% .\" -.TH DMV 4 "" -.UC 6 -.SH NAME -dmv \- DEC DMV-11 point-to-point communications device -.SH SYNOPSIS -.B "device dmv0 at uba0 csr 167000 vector dmvrint dmvxint" -.SH DESCRIPTION +.\" @(#)dmv.4 6.2 (Berkeley) %G% +.\" +.Dd +.Dt DMV 4 vax +.Os BSD 4.3 +.Sh NAME +.Nm dmv +.Nd +.Tn DEC +.Tn DMV-11 +point-to-point communications device +.Sh SYNOPSIS +.Cd "device dmv0 at uba0 csr 167000 vector dmvrint dmvxint" +.Sh DESCRIPTION The -.I dmv +.Nm dmv interface provides access to a point-to-point communications -device which runs at up to 56 Kb/s. DMV-11's communicate -using the DEC DDCMP link layer protocol. -.PP -The host's address must be specified with an SIOCSIFADDR ioctl, -and the destination address specified with a SIOCSIFDSTADDR ioctl, +device which runs at up to 56 Kb/s. +.Tn DMV-11 Ns s +communicate +using the +.Tn DEC +.Tn DDCMP +link layer protocol. +.Pp +The host's address must be specified with an +.Dv SIOCSIFADDR +.Xr ioctl 2 , +and the destination address specified with a +.Dv SIOCSIFDSTADDR +.Xr ioctl , before the interface will transmit or receive any packets. -.SH ROUTING -The driver places a HOST entry in the kernel routing tables for the -address given in the SIOCSIFDSTADDR ioctl. To use the DMV as a +.Sh ROUTING +The driver places a +.Tn HOST +entry in the kernel routing tables for the +address given in the +.Dv SIOCSIFDSTADDR +.Xr ioctl . +To use the +.Tn DMV +as a link between local nets, the route to the remote net must be added manually with the -.IR route (8) +.Xr route 8 command, or by the use of the routing process -.IR routed (8) +.Xr routed 8 on each end of the link. -.SH DIAGNOSTICS -.BR "dmvprobe: can't start device" -.BR "dmvprobe: device init failed, bsel4=%o, bsel6=%o" +.Sh DIAGNOSTICS +.Bl -diag +.It dmvprobe: can't start device. +.It "dmvprobe: device init failed, bsel4=%o, bsel6=%o." The probe routine was unable to start the device. -.PP -.BR "dmvinit: dmv%d not running" -.BR "dmvrestart: can't start device" -.BR "dmv%d: device init failed, bsel4=%o, bsel6=%o" +.Pp +.It dmvinit: dmv%d not running. +.It dmvrestart: can't start device. +.It "dmv%d: device init failed, bsel4=%o, bsel6=%o." The initialization/restart routine was unable to start the device. -.PP -.BR "dmv%d: far end on-line" +.Pp +.It dmv%d: far end on-line. The other end of the connection has come online. -.PP -.BR "dmv%d: far end restart" +.Pp +.It dmv%d: far end restart. The other end of the line has restarted. -.PP -.BR "dmv%d: bad control %o" . +.Pp +.It dmv%d: bad control %o. A bad parameter was passed to the -.I dmvload +.Em dmvload routine. -.PP -.BR "dmvxint: dmv%d bad rcv pkt addr 0x%x len 0x%x" +.Pp +.It "dmvxint: dmv%d bad rcv pkt addr 0x%x len 0x%x." A bad packet was received. -.PP -.BR "dmv%d: bad packet address 0x%x" +.Pp +.It "dmv%d: bad packet address 0x%x." An input packet was received which contained a type of address unknown to the driver. -.PP -.BR "dmvxint: dmv%d unallocated packet 0x%x" +.Pp +.It "dmvxint: dmv%d unallocated packet 0x%x." A protocol error has occured with the board. -.PP -.BR "dmvoutput, dmv%d can't handle af%d" +.Pp +.It "dmvoutput, dmv%d can't handle af%d." A packet for an unsupported address family has been sent. -.PP -.BR "dmv%d: output timeout, bsel0=%b bsel2=%b" +.Pp +.It "dmv%d: output timeout, bsel0=%b bsel2=%b." A device timeout occurred. -.PP +.El +.Pp Numerous other device errors may be displayed. -.SH SEE ALSO -dmc(4), intro(4N), inet(4F) +.Sh SEE ALSO +.Xr dmc 4 , +.Xr intro 4 , +.Xr inet 4 +.Sh HISTORY +The +.Nm +driver appeared in +.Bx 4.3 tahoe . diff --git a/usr/src/share/man/man4/man4.vax/dmz.4 b/usr/src/share/man/man4/man4.vax/dmz.4 index c27f563891..96784ab1aa 100644 --- a/usr/src/share/man/man4/man4.vax/dmz.4 +++ b/usr/src/share/man/man4/man4.vax/dmz.4 @@ -1,69 +1,109 @@ -.\" Copyright (c) 1983 Regents of the University of California. -.\" All rights reserved. The Berkeley software License Agreement -.\" specifies the terms and conditions for redistribution. +.\" Copyright (c) 1983, 1991 Regents of the University of California. +.\" All rights reserved. .\" -.\" @(#)dmz.4 6.3 (Berkeley) %G% +.\" %sccs.include.redist.man% .\" -.TH DMZ 4 "April 7, 1986" -.UC 5 -.SH NAME -dmz \- DMZ-32 terminal multiplexor -.SH SYNOPSIS -.B "device dmz0 at uba? csr 0160540" -.br -.ti +0.5i -.B "vector dmzrinta dmzxinta dmzrintb dmzxintb dmzrintc dmzxintc" -.SH DESCRIPTION +.\" @(#)dmz.4 6.4 (Berkeley) %G% +.\" +.Dd +.Dt DMZ 4 vax +.Os BSD 4.2 +.Sh NAME +.Nm dmz +.Nd +.Tn DMZ-32 +terminal multiplexor +.Sh SYNOPSIS +.Cd "device dmz0 at uba? csr 0160540" "vector dmzrinta dmzxinta dmzrintb dmzxintb dmzrintc dmzxintc" +.Sh DESCRIPTION The -.I dmz +.Nm dmz device provides 24 lines of asynchronous serial line support. Modem control on all ports is available as an option for the H3014 distribution panel. -.PP -Each line attached to a DMZ-32 serial line port behaves as described -in -.IR tty (4). -Input and output for each line may independently be set to run at any -of 16 speeds; see -.IR tty (4) -for the encoding. -.PP -Bit -.I i -of flags may be specified for a -.I dmz -to to say that a line is not properly connected, and that the -line should be treated as hard-wired with carrier always present. -Thus specifying ``flags 0x000004'' in the specification of -.IR dmz 0 +.Pp +An optional argument +.Ar flags +may be supplied with the device specification for +.Nm dmz +in the config file indicating +that the line corresponding to +bit number +.Ar i +is not properly +connected, and should be treated as hard-wired with carrier +always present. Thus specifying +.Ql flags 0x000004 +for +.Li dmz0 would cause line -.I ttya2 +.Pa ttya2 to be treated in this way. -.PP +.Pp +Normal +.Tn I/O +control parameters for individual lines are managed by +.Xr ioctl 2 +calls. +Line speeds (there are 16 choices for the +.Tn DMZ ) +may be initiated via +.Xr getty 8 +and +.Xr stty 1 +or may be communicated by other programs which +utilize +.Xr ioctl +such as +.Xr ifcongif 8 , +see +.Xr tty 4 . +.Pp The -.I dmz +.Nm dmz driver normally enables the input silos with a short timeout (30 milliseconds); this allows multiple characters to be received per interrupt during periods of high-speed input. -.SH FILES -/dev/tty[abcefg][0-9a-n] -.SH SEE ALSO -tty(4) -.SH DIAGNOSTICS -.BR "dmz%d: NXM line %d" . -No response from the UNIBUS on a DMA transfer -within a timeout period. This is often followed by a UNIBUS adapter -error. This occurs most frequently when the UNIBUS is heavily loaded -and when devices which hog the bus (such as RK07s) are present. +.Sh FILES +.Bl -tag -width /dev/tty[abcefg][0-9a-n] -compact +.It Pa /dev/tty[abcefg][0-9a-n] +.El +.Sh DIAGNOSTICS +.Bl -diag +.It dmz%d: NXM line %d. +No response from the +.Tn UNIBUS +on a +.Tn DMA +transfer +within a timeout period. This is often followed by a +.Tn UNIBUS +adapter +error. This occurs most frequently when the +.Tn UNIBUS +is heavily loaded +and when devices which hog the bus (such as +.Tn RK07 Ns s ) +are present. It is not serious. -.PP -.BR "dmz%d: silo overflow" . +.Pp +.It dmz%d: silo overflow. The character input silo overflowed before it could be serviced. This can happen if a hard error occurs -when the CPU is running with elevated priority, as the system will +when the +.Tn CPU +is running with elevated priority, as the system will then print a message on the console with interrupts disabled. It is not serious. -.SH BUGS +.El +.Sh SEE ALSO +.Xr tty 4 +.Sh HISTORY +The +.Nm +driver appeared in +.Bx 4.3 . +.Sh BUGS It should be possible to set the silo timeout with a configuration file option, as the value is a trade-off between efficiency and response time for flow control and character echo. diff --git a/usr/src/share/man/man4/man4.vax/dn.4 b/usr/src/share/man/man4/man4.vax/dn.4 index 0910e39203..531ddcb4b8 100644 --- a/usr/src/share/man/man4/man4.vax/dn.4 +++ b/usr/src/share/man/man4/man4.vax/dn.4 @@ -1,74 +1,87 @@ -.\" Copyright (c) 1980 Regents of the University of California. -.\" All rights reserved. The Berkeley software License Agreement -.\" specifies the terms and conditions for redistribution. +.\" Copyright (c) 1980, 1991 Regents of the University of California. +.\" All rights reserved. .\" -.\" @(#)dn.4 6.1 (Berkeley) %G% +.\" %sccs.include.redist.man% .\" -.TH DN 4 "" -.UC 4 -.SH NAME -dn \- DN-11 autocall unit interface -.SH SYNOPSIS -.B "device dn0 at uba? csr 0160020 vector dnintr" -.SH DESCRIPTION +.\" @(#)dn.4 6.2 (Berkeley) %G% +.\" +.Dd +.Dt DN 4 vax +.Os BSD 4 +.Sh NAME +.Nm dn +.Nd +.Tn DN-11 +autocall unit interface +.Sh SYNOPSIS +.Cd "device dn0 at uba? csr 0160020 vector dnintr" +.Sh DESCRIPTION The -.I dn -device provides an interface through a DEC DN-11 (or equivalent -such as the Able Quadracall) to an auto-call unit (ACU). +.Nm dn +device provides an interface through a +.Tn DEC +.Tn DN-11 +(or equivalent +such as the Able Quadracall) to an auto-call unit +.Pq Tn ACU . To place an outgoing call one forks a sub-process which opens the appropriate call unit file, -.I /dev/cua? +.Pa /dev/cua? and writes the phone number on it. The parent process then opens the corresponding modem line -.IR /dev/cul? . +.Pa /dev/cul? . When the connection has been -established, the open on the modem line, -.I /dev/cul? +established, the open on the modem line +.Pa /dev/cul? will return and the process will be connected. A timer is normally used to timeout the opening of the modem line. -.PP +.Pp The codes for the phone numbers are: -.PP -.nf -.ta \w'0-9 'u -0-9 dial 0-9 +.Bl -column xxxx -offset indent +0-9 number to be dialed * dial * (`:' is a synonym) # dial # (`;' is a synonym) \- delay 20 milliseconds -< end-of-number (`e' is a synonym) +< end of phone number (`e' is a synonym) = delay for a second dial tone (`w' is a synonym) f force a hangup of any existing connection -.fi -.PP -The entire telephone number must be presented in a single -.I write -system call. -.PP +.El +.Pp +The phone number to be dialed must be presented as one contiguous string. +.Pp By convention, even numbered call units are for 300 baud modem lines, while odd numbered units are for 1200 baud lines. For example, -.I /dev/cua0 +.Pa /dev/cua0 is associated with a 300 baud modem line, -.IR /dev/cul0 , +.Pa /dev/cul0 , while -.I /dev/cua1 +.Pa /dev/cua1 is associated with a 1200 baud modem line, -.IR /dev/cul1 . -For devices such as the Quadracall which simulate multiple DN-11 +.Pa /dev/cul1 . +For devices such as the Quadracall which simulate multiple +.Tn DN-11 units, the minor device indicates which outgoing modem to use. -.SH FILES -.DT -/dev/cua? call units -.br -/dev/cul? associated modem lines -.SH "SEE ALSO" -tip(1C) -.SH DIAGNOSTICS +.Sh FILES +.Bl -tag -width /dev/cul? -compact +.It Pa /dev/cua? +call units +.It Pa /dev/cul? +associated modem lines +.El +.Sh DIAGNOSTICS Two error numbers are of interest at open time. -.TP 10 -[EBUSY] +.Bl -tag -width EBUSYxx +.It Bq Er EBUSY The dialer is in use. -.TP -[ENXIO] +.It Bq Er ENXIO The device doesn't exist, or there's no power to it. +.El +.Sh SEE ALSO +.Xr tip 1 +.Sh HISTORY +A +.Nm +driver appeared in +.At v6 . diff --git a/usr/src/share/man/man4/man4.vax/dz.4 b/usr/src/share/man/man4/man4.vax/dz.4 index cba3a1fd17..912affd620 100644 --- a/usr/src/share/man/man4/man4.vax/dz.4 +++ b/usr/src/share/man/man4/man4.vax/dz.4 @@ -1,49 +1,91 @@ -.\" Copyright (c) 1980 Regents of the University of California. -.\" All rights reserved. The Berkeley software License Agreement -.\" specifies the terms and conditions for redistribution. +.\" Copyright (c) 1980, 1991 Regents of the University of California. +.\" All rights reserved. .\" -.\" @(#)dz.4 6.2 (Berkeley) %G% +.\" %sccs.include.redist.man% .\" -.TH DZ 4 "" -.UC 4 -.SH NAME -dz \- DZ-11 communications multiplexer -.SH SYNOPSIS -.B "device dz0 at uba0 csr 0160100 vector dzrint dzxint" -.SH DESCRIPTION -A DZ11 provides 8 communication lines with partial modem control, -adequate for UNIX dialup use. -Each line attached to the DZ11 communications multiplexer -behaves as described in -.IR tty (4) -and may be set to run at any of 16 speeds; see -.IR tty (4) -for the encoding. -.PP -Bit -.I i -of flags may be specified for a dz to say that a line is not properly -connected, and that the line should be treated as hard-wired with carrier -always present. Thus specifying ``flags 0x04'' in the specification of dz0 -would cause line tty02 to be treated in this way. -.PP +.\" @(#)dz.4 6.3 (Berkeley) %G% +.\" +.Dd +.Dt DZ 4 vax +.Os BSD 4 +.Sh NAME +.Nm dz +.Nd +.Tn DZ-11 +multiplexer device interface +.Sh SYNOPSIS +.Cd "device dz0 at uba0 csr 0160100 vector dzrint dzxint" +.Sh DESCRIPTION +A +.Tn DZ-11 +provides 8 communication lines with partial modem control, +adequate for +.Tn UNIX +dialup use. +.Pp +An optional argument +.Ar flags +may be supplied with the device specification +in the config file indicating +that the line corresponding to +bit number +.Ar i +is not properly +connected, and should be treated as hard-wired with carrier +always present. Thus specifying +.Ql flags 0x04 +for +.Li dz0 +would cause line +.Pa tty02 +to be treated in this way. +.Pp +Normal I/O +control parameters for individual lines are managed by +.Xr ioctl 2 +calls. +Line speeds may be initiated via +the +.Xr ttys 5 +file, +.Xr stty 1 +or +.Xr ifconfig 8 +to name a few, +see +.Xr tty 4 . +.Pp The -.I dz +.Nm dz driver monitors the rate of input on each board, and switches between the use of character-at-a-time interrupts and input silos. While the silo is enabled during periods of high-speed input, the driver polls for input 30 times per second. -.SH FILES -/dev/tty[0-9][0-9] -.br -/dev/ttyd[0-9a-f] dialups -.SH "SEE ALSO" -tty(4) -.SH DIAGNOSTICS -.PP -\fBdz%d: silo overflow\fR. The 64 character input silo overflowed +.Sh FILES +.Bl -tag -width /dev/tty[0-9][0-9]xx -compact +.It Pa /dev/tty[0-9][0-9] +.It Pa /dev/ttyd[0-9a-f] +dialups +.El +.Sh DIAGNOSTICS +.Bl -diag +.It dz%d: silo overflow . +The 64 character input silo overflowed before it could be serviced. This can happen if a hard error occurs -when the CPU is running with elevated priority, as the system will +when the +.Tn CPU +is running with elevated priority, as the system will then print a message on the console with interrupts disabled. It is not serious. +.El +.Sh SEE ALSO +.Xr stty 1 , +.Xr tty 4 , +.Xr ttys 5 , +.Xr getty 8 +.Sh HISTORY +A +.Nm +driver appeared in +.At 32v . diff --git a/usr/src/share/man/man4/man4.vax/ec.4 b/usr/src/share/man/man4/man4.vax/ec.4 index a8991a6b3f..fcde6a7a3c 100644 --- a/usr/src/share/man/man4/man4.vax/ec.4 +++ b/usr/src/share/man/man4/man4.vax/ec.4 @@ -1,90 +1,113 @@ -.\" Copyright (c) 1983 The Regents of the University of California. +.\" Copyright (c) 1983, 1991 The Regents of the University of California. .\" All rights reserved. .\" .\" %sccs.include.redist.man% .\" -.\" @(#)ec.4 6.6 (Berkeley) %G% +.\" @(#)ec.4 6.7 (Berkeley) %G% .\" -.TH EC 4 "" -.UC 5 -.SH NAME -ec \- 3Com 10 Mb/s Ethernet interface -.SH SYNOPSIS -.B "device ec0 at uba0 csr 161000 vector ecrint eccollide ecxint flags 0" -.SH DESCRIPTION +.Dd +.Dt EC 4 vax +.Os BSD 4.2 +.Sh NAME +.Nm ec +.Nd 3Com 10 Mb/s Ethernet interface +.Sh SYNOPSIS +.Cd "device ec0 at uba0 csr 161000 vector ecrint eccollide ecxint flags 0" +.Sh DESCRIPTION The -.I ec +.Nm ec interface provides access to a 10 Mb/s Ethernet network through a 3com controller. -.PP -The hardware has 32 kilobytes of dual-ported memory on the UNIBUS. +.Pp +The hardware has 32 kilobytes of dual-ported memory on the +.Tn UNIBUS . This memory is used for internal buffering by the board, and the interface code reads -the buffer contents directly through the UNIBUS. -The address of this memory is given in the \fIflags\fP field +the buffer contents directly through the +.Tn UNIBUS . +The address of this memory is given in the +.Ar flags +field in the configuration file. The first interface normally has its memory at Unibus address 0. -.PP +.Pp Each of the host's network addresses -is specified at boot time with an SIOCSIFADDR -ioctl. The -.I ec +is specified at boot time with an +.Dv SIOCSIFADDR +.Xr ioctl 2 . +The +.Nm ec interface employs the address resolution protocol described in -.IR arp (4) +.Xr arp 4 to dynamically map between Internet and Ethernet addresses on the local network. -.PP -The interface normally tries to use a ``trailer'' encapsulation +.Pp +The interface normally tries to use a +.Dq trailer +encapsulation to minimize copying data on input and output. -The use of trailers is negotiated with ARP. +The use of trailers is negotiated with +.Tn ARP . This negotiation may be disabled, on a per-interface basis, -by setting the IFF_NOTRAILERS -flag with an SIOCSIFFLAGS ioctl. -.PP +by setting the +.Dv IFF_NOTRAILERS +flag with an +.Dv SIOCSIFFLAGS +.Xr ioctl . +.Pp The interface software implements an exponential backoff algorithm when notified of a collision on the cable. This algorithm utilizes -a 16-bit mask and the VAX-11's interval timer in calculating a series +a 16-bit mask and the +.Tn VAX-11 Ns 's +interval timer in calculating a series of random backoff values. The algorithm is as follows: -.TP 5 -1. +.Bl -enum -offset indent +.It Initialize the mask to be all 1's. -.TP 5 -2. +.It If the mask is zero, 16 retries have been made and we give up. -.TP 5 -3. +.It Shift the mask left one bit and formulate a backoff by masking the interval timer with the smaller of the complement of this mask and a 5-bit mask, resulting in a pseudo-random number between 0 and 31. This produces the number of slot times to delay, where a slot is 51 microseconds. -.TP 5 -4. +.It Use the value calculated in step 3 to delay before retransmitting the packet. The delay is done in a software busy loop. -.SH DIAGNOSTICS -.BR "ec%d: send error" . +.El +.Sh DIAGNOSTICS +.Bl -diag +.It ec%d: send error. After 16 retransmissions using the exponential backoff algorithm described above, the packet was dropped. -.PP -.BR "ec%d: input error (offset=%d)" . +.Pp +.It ec%d: input error (offset=%d). The hardware indicated an error in reading a packet off the cable or an illegally sized packet. The buffer offset value is printed for debugging purposes. -.PP -.BR "ec%d: can't handle af%d" . +.Pp +.It ec%d: can't handle af%d. The interface was handed a message with addresses formatted in an unsuitable address family; the packet was dropped. -.SH SEE ALSO -netintro(4), inet(4), arp(4) -.SH BUGS +.El +.Sh SEE ALSO +.Xr netintro 4 , +.Xr inet 4 , +.Xr arp 4 +.Sh HISTORY +The +.Nm +driver appeared in +.Bx 4.2 . +.Sh BUGS The hardware is not capable of talking to itself. The software implements local sending and broadcast by sending such packets to the loop interface. This is a kludge. -.PP +.Pp Backoff delays are done in a software busy loop. This can degrade the system if the network experiences frequent collisions. diff --git a/usr/src/share/man/man4/man4.vax/en.4 b/usr/src/share/man/man4/man4.vax/en.4 index a2df8209c4..a0b27f1cc4 100644 --- a/usr/src/share/man/man4/man4.vax/en.4 +++ b/usr/src/share/man/man4/man4.vax/en.4 @@ -1,87 +1,120 @@ -.\" Copyright (c) 1983 The Regents of the University of California. +.\" Copyright (c) 1983, 1991 The Regents of the University of California. .\" All rights reserved. .\" .\" %sccs.include.redist.man% .\" -.\" @(#)en.4 6.4 (Berkeley) %G% +.\" @(#)en.4 6.5 (Berkeley) %G% .\" -.TH EN 4 "" -.UC 5 -.SH NAME -en \- Xerox 3 Mb/s Ethernet interface -.SH SYNOPSIS -.B "device en0 at uba0 csr 161000 vector enrint enxint encollide" -.SH DESCRIPTION +.Dd +.Dt EN 4 vax +.Os BSD 4.2 +.Sh NAME +.Nm en +.Nd Xerox 3 Mb/s Ethernet interface +.Sh SYNOPSIS +.Cd "device en0 at uba0 csr 161000 vector enrint enxint encollide" +.Sh DESCRIPTION The -.I en +.Nm en interface provides access to a 3 Mb/s Ethernet network. -Due to limitations in the hardware, DMA transfers +Due to limitations in the hardware, +.Tn DMA +transfers to and from the network must take place in the lower 64K bytes -of the UNIBUS address space, and thus this must be among the first -UNIBUS devices enabled after boot. -.PP +of the +.Tn UNIBUS +address space, and thus this must be among the first +.Tn UNIBUS +devices enabled after boot. +.Pp Each of the host's network addresses -is specified at boot time with an SIOCSIFADDR -ioctl. The station address is discovered by probing the on-board Ethernet +is specified at boot time with an +.Dv SIOCSIFADDR +.Xr ioctl 2 . +The station address is discovered by probing the on-board Ethernet address register, and is used to verify the protocol addresses. No packets will be sent or accepted until a network address is supplied. -.PP +.Pp The interface software implements an exponential backoff algorithm when notified of a collision on the cable. This algorithm utilizes -a 16-bit mask and the VAX-11's interval timer in calculating a series +a 16-bit mask and the +.Tn VAX-11 Ns 's +interval timer in calculating a series of random backoff values. The algorithm is as follows: -.TP 5 -1. +.Pp +.Bl -enum -offset indent +.It Initialize the mask to be all 1's. -.TP 5 -2. +.It If the mask is zero, 16 retries have been made and we give up. -.TP 5 -3. +.It Shift the mask left one bit and formulate a backoff by masking the interval timer with the mask (this is actually the two's complement of the value). -.TP 5 -4. +.It Use the value calculated in step 3 to delay before retransmitting the packet. -.PP -The interface handles both Internet and NS protocol families. -It normally tries to use a ``trailer'' encapsulation +.El +.Pp +The interface handles both Internet and +.Tn NS +protocol families. +It normally tries to use a +.Dq trailer +encapsulation to minimize copying data on input and output. -The use of trailers is negotiated with ARP. +The use of trailers is negotiated with +.Tn ARP . This negotiation may be disabled, on a per-interface basis, -by setting the IFF_NOTRAILERS -flag with an SIOCSIFFLAGS ioctl. -.SH DIAGNOSTICS -.BR "en%d: output error" . +by setting the +.Dv IFF_NOTRAILERS +flag with an +.Dv SIOCSIFFLAGS +.Xr ioctl . +.Sh DIAGNOSTICS +.Bl -diag +.It en%d: output error. The hardware indicated an error on the previous transmission. -.PP -.BR "en%d: send error" . +.Pp +.It en%d: send error. After 16 retransmissions using the exponential backoff algorithm described above, the packet was dropped. -.PP -.BR "en%d: input error" . +.Pp +.It en%d: input error. The hardware indicated an error in reading a packet off the cable. -.PP -.BR "en%d: can't handle af%d" . +.Pp +.It en%d: can't handle af%d. The interface was handed a message with addresses formatted in an unsuitable address family; the packet was dropped. -.SH SEE ALSO -netintro(4), inet(4) -.SH BUGS +.El +.Sh SEE ALSO +.Xr netintro 4 , +.Xr inet 4 +.Sh HISTORY +The +.Nm +driver appeared in +.Bx 4.2 . +.Sh BUGS The device has insufficient buffering to handle back to back packets. This makes use in a production environment painful. -.PP -The hardware does word at a time DMA without byte swapping. +.Pp +The hardware does word at a time +.Tn DMA +without byte swapping. To compensate, byte swapping of user data must either be done by the user or by the system. A kludge to byte swap only -IP packets is provided if the ENF_SWABIPS flag is defined in -the driver and set at boot time with an SIOCSIFFLAGS ioctl. +.Tn IP +packets is provided if the +.Dv ENF_SWABIPS +flag is defined in +the driver and set at boot time with an +.Dv SIOCSIFFLAGS +.Xr ioctl . diff --git a/usr/src/share/man/man4/man4.vax/ex.4 b/usr/src/share/man/man4/man4.vax/ex.4 index 39cd19d618..403edcc9fa 100644 --- a/usr/src/share/man/man4/man4.vax/ex.4 +++ b/usr/src/share/man/man4/man4.vax/ex.4 @@ -1,60 +1,82 @@ -.\" Copyright (c) 1986 The Regents of the University of California. +.\" Copyright (c) 1986, 1991 The Regents of the University of California. .\" All rights reserved. .\" .\" %sccs.include.redist.man% .\" -.\" @(#)ex.4 6.5 (Berkeley) %G% +.\" @(#)ex.4 6.6 (Berkeley) %G% .\" -.TH EX 4 "" -.UC 5 -.SH NAME -ex \- Excelan 10 Mb/s Ethernet interface -.SH SYNOPSIS -.B "device ex0 at uba0 csr 164000 vector excdint" -.SH DESCRIPTION +.Dd +.Dt EX 4 vax +.Os BSD 4.2 +.Sh NAME +.Nm ex +.Nd Excelan 10 Mb/s Ethernet interface +.Sh SYNOPSIS +.Cd "device ex0 at uba0 csr 164000 vector excdint" +.Sh DESCRIPTION The -.I ex +.Nm ex interface provides access to a 10 Mb/s Ethernet network through an Excelan controller used as a link-layer interface. -.PP +.Pp Each of the host's network addresses -is specified at boot time with an SIOCSIFADDR -ioctl. The -.I ex +is specified at boot time with an +.Dv SIOCSIFADDR +.Xr ioctl 2 . +The +.Nm ex interface employs the address resolution protocol described in -.IR arp (4) +.Xr arp 4 to dynamically map between Internet and Ethernet addresses on the local network. -.PP -The interface normally tries to use a ``trailer'' encapsulation +.Pp +The interface normally tries to use a +.Dq trailer +encapsulation to minimize copying data on input and output. -The use of trailers is negotiated with ARP. +The use of trailers is negotiated with +.Tn ARP . This negotiation may be disabled, on a per-interface basis, -by setting the IFF_NOTRAILERS -flag with an SIOCSIFFLAGS ioctl. -.SH DIAGNOSTICS -\fBex%d: HW %c.%c, NX %c.%c, hardware address %s\fP. +by setting the +.Dv IFF_NOTRAILERS +flag with an +.Dv SIOCSIFFLAGS +.Xr ioctl . +.Sh DIAGNOSTICS +.Bl -diag +.It "ex%d: HW %c.%c, NX %c.%c, hardware address %s." This provides firmware revisions levels, and is expected during autoconfiguration. -.PP -\fBex%d: can't initialize\fP. +.Pp +.It ex%d: can't initialize. There was a failure in allocating unibus resources for the device. -.PP -\fBex%d: configuration failed; cc = %x\fP. +.Pp +.It "ex%d: configuration failed; cc = %x." The hardware indicated an error when trying to initalize itself. The error code returned is described at length in the device Reference Manual. -.PP -\fBex%d: receive error %b\fP. The hardware indicated an error +.Pp +.It ex%d: receive error %b. +The hardware indicated an error in reading a packet from the cable. Specific Error bits are provided -.PP -\fBex%d: transmit error %b\fP. The hardware indicated an error +.Pp +.It ex%d: transmit error %b. +The hardware indicated an error in transmitting a packet to the cable or an illegally sized packet. Specific Error bits are provided -.PP -\fBex%d: can't handle af%d\fP. The interface was handed +.Pp +.It ex%d: can't handle af%d. +The interface was handed a message with addresses formatted in an unsuitable address family; the packet was dropped. -.SH SEE ALSO -netintro(4), inet(4), arp(4) +.El +.Sh SEE ALSO +.Xr netintro 4 , +.Xr inet 4 , +.Xr arp 4 +.Sh HISTORY +The +.Nm +driver appeared in +.Bx 4.3 . diff --git a/usr/src/share/man/man4/man4.vax/fl.4 b/usr/src/share/man/man4/man4.vax/fl.4 index a18d4ee85a..ba122f7ee2 100644 --- a/usr/src/share/man/man4/man4.vax/fl.4 +++ b/usr/src/share/man/man4/man4.vax/fl.4 @@ -1,31 +1,47 @@ -.\" Copyright (c) 1980 Regents of the University of California. -.\" All rights reserved. The Berkeley software License Agreement -.\" specifies the terms and conditions for redistribution. +.\" Copyright (c) 1980, 1991 Regents of the University of California. +.\" All rights reserved. .\" -.\" @(#)fl.4 6.2 (Berkeley) %G% +.\" %sccs.include.redist.man% .\" -.TH FL 4 "" -.UC 4 -.SH NAME -fl \- console floppy interface -.SH DESCRIPTION -This is a simple interface to the DEC RX01 +.\" @(#)fl.4 6.3 (Berkeley) %G% +.\" +.Dd +.Dt FL 4 vax +.Os BSD 4 +.Sh NAME +.Nm fl +.Nd console floppy interface +.Sh DESCRIPTION +This is a simple interface to the +.Tn DEC +.Tn RX01 floppy disk unit, which is part of the console -LSI-11 subsystem for VAX-11/780's. +.Tn LSI-11 +subsystem for +.Tn VAX-11/780 Ns s . Access is given to the entire floppy consisting of 77 tracks of 26 sectors of 128 bytes. -.PP -All i/o is raw; the seek addresses in raw transfers should be a multiple +.Pp +All I/O is raw; the seek addresses in raw transfers should be a multiple of 128 bytes and a multiple of 128 bytes should be transferred, -as in other ``raw'' disk interfaces. -.SH FILES -/dev/floppy -.SH SEE ALSO -arff(8V) -.SH DIAGNOSTICS +as in other +.Dq raw +disk interfaces. +.Sh FILES +.Bl -tag -width /dev/floppy -compact +.It Pa /dev/floppy +.El +.Sh DIAGNOSTICS None. -.SH BUGS +.Sh SEE ALSO +.Xr arff 8 +.Sh HISTORY +The +.Nm +driver appeared in +.Bx 4.0 . +.Sh BUGS Multiple console floppies are not supported. -.PP +.Pp If a write is given with a count not a multiple of 128 bytes then the trailing portion of the last sector will be zeroed. diff --git a/usr/src/share/man/man4/man4.vax/hdh.4 b/usr/src/share/man/man4/man4.vax/hdh.4 index 5ec276b018..c34e950b75 100644 --- a/usr/src/share/man/man4/man4.vax/hdh.4 +++ b/usr/src/share/man/man4/man4.vax/hdh.4 @@ -1,62 +1,98 @@ -.\" Copyright (c) 1983 The Regents of the University of California. +.\" Copyright (c) 1983, 1991 The Regents of the University of California. .\" All rights reserved. .\" .\" %sccs.include.redist.man% .\" -.\" @(#)hdh.4 6.3 (Berkeley) %G% +.\" @(#)hdh.4 6.4 (Berkeley) %G% .\" -.TH HDH 4 "" -.UC 6 -.SH NAME -hdh \- ACC IF-11/HDH IMP interface -.SH SYNOPSIS -.B "pseudo-device imp" -.br -.B "device hdh0 at uba0 csr 166740 vector hdhintr" -.SH DESCRIPTION +.Dd +.Dt HDH 4 vax +.Os BSD 4.3 +.Sh NAME +.Nm hdh +.Nd +.Tn ACC +.Tn IF-11/HDH +.Tn IMP +interface +.Sh SYNOPSIS +.Cd "pseudo-device imp" +.Cd "device hdh0 at uba0 csr 166740 vector hdhintr" +.Sh DESCRIPTION The -.I hdh -device provides an HDLC Host (HDH) -interface to an IMP. It is normally used when participating -in the DARPA Internet. The controller itself is not accessible -to users, but instead provides the hardware support to the IMP +.Nm hdh +device provides an +.Tn HDLC +Host +.Pq Tn HDH +interface to an +.Tn IMP . +It is normally used when participating +in the +.Tn DARPA +Internet. The controller itself is not accessible +to users, but instead provides the hardware support to the +.Tn IMP interface described in -.IR imp (4). -When configuring, the -.I imp -pseudo-device must also be included. -.SH DIAGNOSTICS -.BR "hdh%d: not alive" . +.Xr imp 4 . +The configuration entry for the +.Tn IMP +must also include the +.Em pseudo-device +as shown above in the +.Sx SYNOPSIS . +.Sh DIAGNOSTICS +.Bl -diag +.It hdh%d: not alive. The initialization routine was entered even though the device did not autoconfigure. This indicates a system problem. -.PP -.BR "hdh%d: cannot get chan %d uba resources" . -Insufficient UNIBUS resources existed to initialize the device. -This is likely to be a shortage of UNIBUS mapping registers. -.PP -.BR "hdh%d: LINE UP" . -This indicates that both the HDLC and HDH protocols have declared the -link to the IMP alive. -.PP -.BR "hdh%d: LINE DOWN" . -This indicates that the link to the IMP has died. -.PP -.BR "hdh%d: HOST SEQUENCE ERROR" -.br -.BR "hdh%d: IMP SEQUENCE ERROR" -.br -.BR "hdh%d: HOST DATA ERROR" -.br -.BR "hdh%d: TIMEOUT" -.br -These errors indicate that an HDH protocol error has been detected. -.PP -.BR "hdh%d: cannot get supervisor cmnd buffer" . +.Pp +.It hdh%d: cannot get chan %d uba resources. +Insufficient +.Tn UNIBUS +resources existed to initialize the device. +This is likely to be a shortage of +.Tn UNIBUS +mapping registers. +.Pp +.It hdh%d: LINE UP. +This indicates that both the +.Tn HDLC +and +.Tn HDH +protocols have declared the +link to the +.Tn IMP +alive. +.Pp +.It hdh%d: LINE DOWN. +This indicates that the link to the +.Tn IMP +has died. +.Pp +.It hdh%d: TIMEOUT. +.It hdh%d: HOST DATA ERROR. +.It hdh%d: IMP SEQUENCE ERROR. +.It hdh%d: HOST SEQUENCE ERROR. +These errors indicate that an +.Tn HDH +protocol error has been detected. +.Pp +.It hdh%d: cannot get supervisor cmnd buffer. This error indicates that an -.I mbuf -could not be allocated to send a command to the IF-11/HDH. -.PP +.Em mbuf +could not be allocated to send a command to the +.Tn IF-11/HDH . +.El +.Pp Any other error message from hdh%d: indicates a serious error -detected by either the driver or the IF-11/HDH firmware. -.SH "SEE ALSO" -netintro(4) +detected by either the driver or the +.Tn IF-11/HDH +firmware. +.Sh SEE ALSO +.Xr netintro 4 +.Sh HISTORY +The +.Nm +driver appeared in +.Bx 4.3 . diff --git a/usr/src/share/man/man4/man4.vax/hk.4 b/usr/src/share/man/man4/man4.vax/hk.4 index d5ac525100..a345dc6e03 100644 --- a/usr/src/share/man/man4/man4.vax/hk.4 +++ b/usr/src/share/man/man4/man4.vax/hk.4 @@ -1,63 +1,83 @@ -.\" Copyright (c) 1980 Regents of the University of California. -.\" All rights reserved. The Berkeley software License Agreement -.\" specifies the terms and conditions for redistribution. +.\" Copyright (c) 1980, 1991 Regents of the University of California. +.\" All rights reserved. .\" -.\" @(#)hk.4 6.3 (Berkeley) %G% +.\" %sccs.include.redist.man% .\" -.TH HK 4 "" -.UC 4 -.SH NAME -hk \- RK6-11/RK06 and RK07 moving head disk -.SH SYNOPSIS -.B "controller hk0 at uba? csr 0177440 vector rkintr" -.br -.B "disk rk0 at hk0 drive 0" -.SH DESCRIPTION -Files with minor device numbers 0 through 7 refer to various portions -of drive 0; -minor devices 8 through 15 refer to drive 1, etc. -The standard device names begin with ``hk'' followed by -the drive number and then a letter a-h for partitions 0-7 respectively. -The character ? stands here for a drive number in the range 0-7. -.PP -The block files access the disk via the system's normal -buffering mechanism and may be read and written without regard to -physical disk records. There is also a `raw' interface -which provides for direct transmission between the disk -and the user's read or write buffer. -A single read or write call results in exactly one I/O operation -and therefore raw I/O is considerably more efficient when -many words are transmitted. The names of the raw files -conventionally begin with an extra `r.' -.PP -In raw I/O counts should be a multiple of 512 bytes (a disk sector). -Likewise -.I seek -calls should specify a multiple of 512 bytes. -.SH "DISK SUPPORT" -The origin and size (in sectors) of the -pseudo-disks on each drive are as follows: -.PP -.nf -.ta .5i +\w'000000 'u +\w'000000 'u +\w'000000 'u -RK07 partitions: - disk start length cyl +.\" @(#)hk.4 6.4 (Berkeley) %G% +.\" +.Dd +.Dt HK 4 +.Os BSD 4 +.Sh NAME +.Nm hk +.Nd +.Tn RK6-11 Ns / Tn RK06 +and +.Tn RK07 +disk interface +.Sh SYNOPSIS +.Cd "controller hk0 at uba? csr 0177440 vector rkintr" +.Cd "disk rk0 at hk0 drive 0" +.Sh DESCRIPTION +The +.Nm hk +driver +is a typical block-device disk driver; block device +.Tn I/O +is +described in +.Xr physio 4 . +.Pp +The script +.Xr MAKEDEV 8 +should be used to create the special files; if a special file +needs to be created by hand consult +.Xr mknod 8 . +.Sh DISK SUPPORT +Special file names begin with +.Sq Li hk +and +.Sq Li rhk +for the block and character files respectively. The second +component of the name, a drive unit number in the range of zero to +seven, is represented by a +.Sq Li ? +in the disk layouts below. The last component is the file system partition +which is designated +by a letter from +.Sq Li a +to +.Sq Li h . +and +corresponds to a minor device number set: zero to seven, +eight to 15, 16 to 23 and so forth for drive zero, drive two and drive +three respectively. +The location and size (in sectors) of the +partitions for the +.Tn RK06 +and +.Tn RK07 +drives are as follows: +.Bl -column header diskx undefined length +.Tn RK07 No partitions: +.Sy disk start length cyl hk?a 0 15884 0-240 hk?b 15906 10032 241-392 hk?c 0 53790 0-814 hk?d 25938 15884 393-633 hk?f 41844 11792 634-814 hk?g 25938 27786 393-813 -.PP -RK06 partitions - disk start length cyl + +.Tn RK06 No partitions +.Sy disk start length cyl hk?a 0 15884 0-240 hk?b 15906 11154 241-409 hk?c 0 27126 0-410 -.DT -.fi -.PP -On a dual RK-07 system +.El +.Pp +On a dual +.Tn RK-07 +system partition hk?a is used for the root for one drive and partition hk?g for the /usr file system. @@ -66,17 +86,16 @@ hk?b on both drives as swap area provides a 10Mbyte paging area. Otherwise partition hk?c on the other drive is used as a single large file system. -.SH FILES -/dev/hk[0-7][a-h] block files -.br -/dev/rhk[0-7][a-h] raw files -.SH SEE ALSO -hp(4), -uda(4), -up(4), -syslogd(8) -.SH DIAGNOSTICS -\fBhk%d%c: hard error %sing fsbn %d[-%d] cs2=%b ds=%b er=%b\fR. +.Sh FILES +.Bl -tag -width /dev/rhk[0-7][a-h] -compact +.It Pa /dev/hk[0-7][a-h] +block files +.It Pa /dev/rhk[0-7][a-h] +raw files +.El +.Sh DIAGNOSTICS +.Bl -diag +.It "hk%d%c: hard error %sing fsbn %d[-%d] cs2=%b ds=%b er=%b." An unrecoverable error occurred during transfer of the specified filesystem block number(s), which are logical block numbers on the indicated partition. @@ -85,58 +104,71 @@ in octal and symbolically with bits decoded. The error was either unrecoverable, or a large number of retry attempts (including offset positioning and drive recalibration) could not recover the error. -.PP -\fBrk%d: write locked\fR. The write protect switch was set on the drive +.Pp +.It rk%d: write locked. +The write protect switch was set on the drive when a write was attempted. The write operation is not recoverable. -.PP -\fBrk%d: not ready\fR. The drive was spun down or off line when it was +.Pp +.It rk%d: not ready. +The drive was spun down or off line when it was accessed. The i/o operation is not recoverable. -.PP -\fBrk%d: not ready (came back!)\fR. The drive was not ready, but after +.Pp +.It rk%d: not ready (came back!). +The drive was not ready, but after printing the message about being not ready (which takes a fraction of a second) was ready. The operation is recovered if no further errors occur. -.PP -\fBup%d%c: soft ecc reading fsbn %d[-%d]\fP. -A recoverable ECC error occurred on the +.Pp +.It rk%d%c: soft ecc reading fsbn %d[-%d]. +A recoverable +.Tn ECC +error occurred on the specified sector(s) in the specified disk partition. This happens normally a few times a week. If it happens more frequently than this the sectors where the errors are occurring should be checked to see if certain cylinders on the pack, spots on the carriage of the drive or heads are indicated. -.PP -\fBhk%d: lost interrupt\fR. A timer watching the controller detected +.Pp +.It hk%d: lost interrupt. +A timer watching the controller detected no interrupt for an extended period while an operation was outstanding. This indicates a hardware or software failure. There is currently a hardware/software problem with spinning down drives while they are being accessed which causes this error to occur. -The error causes a UNIBUS reset, and retry of the pending operations. +The error causes a +.Tn UNIBUS +reset, and retry of the pending operations. If the controller continues to lose interrupts, this error will recur a few seconds later. -.SH BUGS -In raw I/O -.I read -and -.IR write (2) -truncate file offsets to 512-byte block boundaries, -and -.I write +.El +.Sh SEE ALSO +.Xr hp 4 , +.Xr uda 4 , +.Xr up 4 , +.Xr syslogd 8 +.Sh HISTORY +The +.Nm +driver appeared in +.Bx 4.1 . +.Sh BUGS +The +.Xr write +function scribbles on the tail of incomplete blocks. -Thus, -in programs that are likely to access raw devices, -.I read, write -and -.IR lseek (2) -should always deal in 512-byte multiples. -.PP -DEC-standard error logging should be supported. -.PP +.Pp +.Tn DEC Ns -standard +error logging should be supported. +.Pp A program to analyze the logged error information (even in its present reduced form) is needed. -.PP +.Pp The partition tables for the file systems should be read off of each pack, as they are never quite what any single installation would prefer, and this would make packs more portable. -.PP -The rk07 g partition size in rk.c disagrees with that in /etc/disktab. +.Pp +The +.Tn RK07 +g partition size in rk.c disagrees with that in +.Pa /etc/disktab. diff --git a/usr/src/share/man/man4/man4.vax/hp.4 b/usr/src/share/man/man4/man4.vax/hp.4 index 307e9717c2..750394de92 100644 --- a/usr/src/share/man/man4/man4.vax/hp.4 +++ b/usr/src/share/man/man4/man4.vax/hp.4 @@ -1,75 +1,124 @@ -.\" Copyright (c) 1980,1988 Regents of the University of California. -.\" All rights reserved. The Berkeley software License Agreement -.\" specifies the terms and conditions for redistribution. +.\" Copyright (c) 1980,1988, 1991 Regents of the University of California. +.\" All rights reserved. .\" -.\" @(#)hp.4 6.4 (Berkeley) %G% +.\" %sccs.include.redist.man% .\" -.TH HP 4 "" -.UC 4 -.SH NAME -hp \- MASSBUS disk interface -.SH SYNOPSIS -.B "disk hp0 at mba0 drive 0" -.SH DESCRIPTION -Files with minor device numbers 0 through 7 refer to various portions -of drive 0; -minor devices 8 through 15 refer to drive 1, etc. -The standard device names begin with ``hp'' followed by -the drive number and then a letter a-h for partitions 0-7 respectively. -The character ? stands here for a drive number in the range 0-7. -.PP -The block file's access the disk via the system's normal -buffering mechanism and may be read and written without regard to -physical disk records. There is also a `raw' interface -which provides for direct transmission between the disk -and the user's read or write buffer. -A single read or write call results in exactly one I/O operation -and therefore raw I/O is considerably more efficient when -many words are transmitted. The names of the raw files -conventionally begin with an extra `r.' -.PP -In raw I/O counts should be a multiple of 512 bytes (a disk sector). -Likewise -.I seek -calls should specify a multiple of 512 bytes. -.PP +.\" @(#)hp.4 6.5 (Berkeley) %G% +.\" +.Dd +.Dt HP 4 vax +.Os BSD 4 +.Sh NAME +.Nm hp +.Nd +.Tn MASSBUS +disk interface +.Sh SYNOPSIS +.Cd "disk hp0 at mba0 drive 0" +.Sh DESCRIPTION +The +.Nm hp +driver +is a generic Massbus disk driver which handles both the standard +.Tn DEC +controllers and the Emulex +.Tn SC750 +and +.Tn SC780 +controllers. +It is typical of a block-device disk driver; block +.Tn I/O +is +described in +.Xr physio 4 . +.Pp +The script +.Xr MAKEDEV 8 +should be used to create the special files; if a special file +needs to be created by hand consult +.Xr mknod 8 . +It is recommended as a security precaution to not create special files +for devices which may never be installed. +.Pp The first sector of each disk contains both a first-stage bootstrap program and a disk label containing geometry information and partition layouts (see -.IR disklabel (5). +.Xr disklabel 5 . This sector is normally write-protected, and disk-to-disk copies should avoid copying this sector. The label may be updated with -.IR disklabel (8), +.Xr disklabel 8 , which can also be used to write-enable and write-disable the sector. The next 15 sectors contain a second-stage bootstrap program. -.SH "DISK SUPPORT" -This driver handles both standard DEC controllers and Emulex -SC750 and SC780 controllers. +.Sh DISK SUPPORT +This driver handles both standard +.Tn DEC +controllers and Emulex +.Tn SC750 +and +.Tn SC780 +controllers. During autoconfiguration or whenever a drive comes on line for the first time, -as well as when a drive is opened after all partitions are closed, +or when a drive is opened after all partitions are closed, the first sector of the drive is examined for a disk label. If a label is found, the geometry of the drive and the partition tables are taken from it. If no label is found, -standard DEC drive types are -recognized according to the MASSBUS drive type register, +standard +.Tn DEC +drive types are +recognized according to the +.Tn MASSBUS +drive type register, and default partitions are used. For the Emulex controller the drive type register should be configured -to indicate the drive is an RM02. When this is encountered, +to indicate the drive is an +.Tn RM02 . +When this is encountered, the driver checks the holding register to find out the disk geometry and, based on this information, decides what -the drive type is. The following disks are supported: RM03, -RM05, RP06, RM80, RP05, RP07, ML11A, ML11B, CDC 9775, CDC 9730, -AMPEX Capricorn (32 sectors/track), FUJITSU Eagle (48 sectors/track), -Fujitsu 2361, -and AMPEX 9300. The default origin and size (in sectors) of the pseudo-disks -on each drive are as follows: -.PP -.nf -.ta .5i +\w'000000 'u +\w'000000 'u +\w'000000 'u +\w'000000 'u -.PP -RM03 partitions - disk start length cyls +the drive type is. +.Pp +Special file names begin with +.Sq Li hp +and +.Sq Li rhp +for the block and character files respectively. The second +component of the name, a drive unit number in the range of zero to +seven, is represented by a +.Sq Li ? +in the disk layouts below. +The last component is the file system partition +designated +by a letter from +.Sq Li a +to +.Sq Li h +and also corresponds to a minor device number set: zero to seven, +eight to 15, 16 to 23 and so forth for drive zero, drive two and drive +three respectively. +The following disks are supported: +.Tn RM03 , +.Tn RM05 , +.Tn RP06 , +.Tn RM80 , +.Tn RP05 , +.Tn RP07 , +.Tn ML11A , +.Tn ML11B , +.Tn CDC 9775 , +.Tn CDC 9730 , +.Tn AMPEX +Capricorn (32 sectors/track), +.Tn FUJITSU +Eagle (48 sectors/track), +.Tn FUJITSU 2361, +and +.Tn AMPEX +9300. The default layout and size (in sectors) of the +partitions for these drives: +.Bl -column header diskx undefined length +.Tn RM03 No partitions +.Sy disk start length cyls hp?a 0 15884 0-99 hp?b 16000 33440 100-309 hp?c 0 131680 0-822 @@ -77,9 +126,9 @@ RM03 partitions hp?e 65440 55936 409-758 hp?f 121440 10080 759-822 hp?g 49600 82080 309-822 -.PP -RM05 partitions - disk start length cyls + +.Tn RM05 No partitions +.Sy disk start length cyls hp?a 0 15884 0-26 hp?b 16416 33440 27-81 hp?c 0 500384 0-822 @@ -88,9 +137,9 @@ RM05 partitions hp?f 414048 86176 681-822 hp?g 341696 158528 562-822 hp?h 49856 291346 82-561 -.PP -RP06 partitions - disk start length cyls + +.Tn RP06 No partitions +.Sy disk start length cyls hp?a 0 15884 0-37 hp?b 15884 33440 38-117 hp?c 0 340670 0-814 @@ -98,9 +147,9 @@ RP06 partitions hp?e 65208 55936 156-289 hp?f 121220 219296 290-814 hp?g 49324 291192 118-814 -.PP -RM80 partitions - disk start length cyls + +.Tn RM80 No partitions +.Sy disk start length cyls hp?a 0 15884 0-36 hp?b 16058 33440 37-114 hp?c 0 242606 0-558 @@ -108,9 +157,9 @@ RM80 partitions hp?e 68096 55936 152-280 hp?f 125888 120466 281-558 hp?g 49910 192510 115-558 -.PP -RP05 partitions - disk start length cyls + +.Tn RP05 No partitions +.Sy disk start length cyls hp?a 0 15884 0-37 hp?b 15884 33440 38-117 hp?c 0 171798 0-410 @@ -118,9 +167,9 @@ RP05 partitions hp?e 65208 55936 156-289 hp?f 121220 50424 290-410 hp?g 2242 122320 118-410 -.PP -RP07 partitions - disk start length cyls + +.Tn RP07 No partitions +.Sy disk start length cyls hp?a 0 15884 0-9 hp?b 16000 66880 10-51 hp?c 0 1008000 0-629 @@ -129,9 +178,9 @@ RP07 partitions hp?f 699200 308600 437-629 hp?g 376000 631800 235-629 hp?h 83200 291346 52-234 -.PP -CDC 9775 partitions - disk start length cyls + +.Tn CDC No 9775 partitions +.Sy disk start length cyls hp?a 0 15884 0-12 hp?b 16640 66880 13-65 hp?c 0 1077760 0-841 @@ -140,9 +189,9 @@ CDC 9775 partitions hp?f 700160 377440 547-841 hp?g 376320 701280 294-841 hp?h 84480 291346 66-293 -.PP -CDC 9730 partitions - disk start length cyls + +.Tn CDC No 9730 partitions +.Sy disk start length cyls hp?a 0 15884 0-49 hp?b 16000 33440 50-154 hp?c 0 263360 0-822 @@ -150,9 +199,9 @@ CDC 9730 partitions hp?e 65600 55936 205-379 hp?f 121600 141600 380-822 hp?g 49600 213600 155-822 -.PP -AMPEX Capricorn partitions - disk start length cyls + +.Tn AMPEX No Capricorn partitions +.Sy disk start length cyls hp?a 0 15884 0-31 hp?b 16384 33440 32-97 hp?c 0 524288 0-1023 @@ -161,9 +210,9 @@ AMPEX Capricorn partitions hp?f 414720 109408 810-1023 hp?g 342016 182112 668-1023 hp?h 50176 291346 98-667 -.PP -FUJITSU Eagle partitions - disk start length cyls + +.Tn FUJITSU No Eagle partitions +.Sy disk start length cyls hp?a 0 15884 0-16 hp?b 16320 66880 17-86 hp?c 0 808320 0-841 @@ -172,9 +221,9 @@ FUJITSU Eagle partitions hp?f 698880 109248 728-841 hp?g 375360 432768 391-841 hp?h 83520 291346 87-390 -.PP -FUJITSU 2361 partitions - disk start length cyls + +.Tn FUJITSU No 2361 partitions +.Sy disk start length cyls hp?a 0 15884 0-12 hp?b 16640 66880 13-65 hp?c 0 1077760 0-841 @@ -183,9 +232,9 @@ FUJITSU 2361 partitions hp?f 700160 377408 547-841 hp?g 363520 701248 294-841 hp?h 84480 291346 66-293 -.PP -AMPEX 9300 partitions - disk start length cyl + +.Tn AMPEX No 9300 partitions +.Sy disk start length cyl hp?a 0 15884 0-26 hp?b 16416 33440 27-81 hp?c 0 495520 0-814 @@ -194,12 +243,8 @@ AMPEX 9300 partitions hp?f 414048 81312 681-814 hp?g 341696 153664 562-814 hp?h 49856 291346 82-561 -.DT -.fi -.PP -It is unwise for all of these files to be present in one installation, -since there is overlap in addresses and protection becomes -a sticky matter. +.El +.Pp The hp?a partition is normally used for the root file system, the hp?b partition as a paging area, and the hp?c partition for pack-pack copying (it maps the entire disk). @@ -207,19 +252,19 @@ On disks larger than about 205 Megabytes, the hp?h partition is inserted prior to the hp?d or hp?g partition; the hp?g partition then maps the remainder of the pack. All disk partition tables are calculated using the -.IR diskpart (8) +.Xr diskpart 8 program. -.SH FILES -.ta 2i -/dev/hp[0-7][a-h] block files -.br -/dev/rhp[0-7][a-h] raw files -.SH SEE ALSO -up(4), -disklabel(5), disklabel(8) -.SH DIAGNOSTICS -\fBhp%d%c: hard error %sing fsbn %d [of %d-%d] (hp%d bn %d cn %d tn %d sn %d) -mbsr=%b er1=%b er2=%b\fR. +.Pp +.Sh FILES +.Bl -tag -width /dev/rhp[0-7][a-h] -compact +.It Pa /dev/hp[0-7][a-h] +block files +.It Pa /dev/rhp[0-7][a-h] +raw files +.El +.Sh DIAGNOSTICS +.Bl -diag +.It "hp%d%c: hard error %sing fsbn %d [of %d-%d] (hp%d bn %d cn %d tn %d sn %d) mbsr=%b er1=%b er2=%b." An unrecoverable error occurred during transfer of the specified filesystem block number, which is a logical block number on the indicated partition. @@ -227,24 +272,41 @@ If the transfer involved multiple blocks, the block range is printed as well. The parenthesized fields list the actual disk sector number relative to the beginning of the drive, as well as the cylinder, track and sector number of the block. -The MASSBUS status register is printed in hexadecimal and -with the error bits decoded if any error bits other than MBEXC and DTABT +The +.Tn MASSBUS +status register is printed in hexadecimal and +with the error bits decoded if any error bits other than +.Tn MBEXC +and +.Tn DTABT are set. In any case the contents of the two error registers are also printed in octal and symbolically with bits decoded. -(Note that er2 is what old RP06 manuals would call RPER3; the terminology -is that of the RM disks). +(Note that er2 is what old +.Tn RP06 +manuals would call +.Tn RPER3 ; +the terminology +is that of the +.Tn RM +disks). The error was either unrecoverable, or a large number of retry attempts (including offset positioning and drive recalibration) could not recover the error. -.PP -\fBhp%d: write locked\fR. The write protect switch was set on the drive +.Pp +.It hp%d: write locked. +The write protect switch was set on the drive when a write was attempted. The write operation is not recoverable. -.PP -\fBhp%d: not ready\fR. The drive was spun down or off line when it was -accessed. The I/O operation is not recoverable. -.PP -\fBhp%d%c: soft ecc reading fsbn %d [of %d-%d] (hp%d bn %d cn %d tn %d sn %d)\fP. -A recoverable ECC error occurred on the +.Pp +.It hp%d: not ready . +The drive was spun down or off line when it was +accessed. The +.Tn I/O +operation is not recoverable. +.Pp +.It "hp%d%c: soft ecc reading fsbn %d [of %d-%d] (hp%d bn %d cn %d tn %d sn %d)." +A recoverable +.Tn ECC +error occurred on the specified sector of the specified disk partition. If the transfer involved multiple blocks, the block range is printed as well. The parenthesized fields list the actual disk sector number @@ -255,40 +317,37 @@ a few times a week. If it happens more frequently than this the sectors where the errors are occurring should be checked to see if certain cylinders on the pack, spots on the carriage of the drive or heads are indicated. -.PP -During autoconfiguration one of the following messages may appear +.Pp +.It hp%d: 9775 (direct). +.It hp%d: 9730 (direct). +.It hp%d: 9300. +.It hp%d: 9762. +.It hp%d: capricorn. +.It hp%d: eagle. +.It hp%d: 2361. +.It hp%d: ntracks %d, nsectors %d: unknown device. +During autoconfiguration one of the above messages may appear on the console indicating the appropriate drive type was recognized. The last message indicates the drive is of a unknown type. In this case, the correct geometry is set, and one partition is created that contains the entire drive. -.PP -.nf -.BR "hp%d: 9775 (direct)" . -.BR "hp%d: 9730 (direct)" . -.BR "hp%d: 9300" . -.BR "hp%d: 9762" . -.BR "hp%d: capricorn" . -.BR "hp%d: eagle" . -.BR "hp%d: 2361" . -.BR "hp%d: ntracks %d, nsectors %d: unknown device" . -.fi -.SH BUGS -In raw I/O -.I read -and -.IR write (2) -truncate file offsets to 512-byte block boundaries, -and -.I write -scribbles on the tail of incomplete blocks. -Thus, -in programs that are likely to access raw devices, -.I read, write -and -.IR lseek (2) -should always deal in 512-byte multiples. -.PP -DEC-standard error logging should be supported. -.PP +.Pp +.El +.Sh SEE ALSO +.Xr physio 4 , +.Xr up 4 , +.Xr disklabel 5 , +.Xr MAKEDEV 8 +.Xr disklabel 8 +.Xr mknod 8 +.Sh HISTORY +The +.Nm +driver appeared in +.Bx 4.0 . +.Sh BUGS +.Tn DEC Ns -standard +error logging should be supported. +.Pp A program to analyze the logged error information (even in its present reduced form) is needed. diff --git a/usr/src/share/man/man4/man4.vax/ht.4 b/usr/src/share/man/man4/man4.vax/ht.4 index 5a31f6ede8..0fff8b4e59 100644 --- a/usr/src/share/man/man4/man4.vax/ht.4 +++ b/usr/src/share/man/man4/man4.vax/ht.4 @@ -1,51 +1,86 @@ -.\" Copyright (c) 1980 Regents of the University of California. -.\" All rights reserved. The Berkeley software License Agreement -.\" specifies the terms and conditions for redistribution. +.\" Copyright (c) 1980, 1991 Regents of the University of California. +.\" All rights reserved. .\" -.\" @(#)ht.4 6.2 (Berkeley) %G% +.\" %sccs.include.redist.man% .\" -.TH HT 4 "" -.UC 4 -.SH NAME -ht \- TM-03/TE-16,TU-45,TU-77 MASSBUS magtape interface -.SH SYNOPSIS -.B "master ht0 at mba? drive ?" -.br -.B "tape tu0 at ht0 slave 0" -.SH DESCRIPTION -The tm-03/transport combination provides a standard tape drive +.\" @(#)ht.4 6.3 (Berkeley) %G% +.\" +.Dd +.Dt HT 4 vax +.Os BSD 4 +.Sh NAME +.Nm ht +.Nd +.Tn TM-03 Ns / Tn TE-16 , +.Tn TU-45 , +.Tn TU-77 +.Tn MASSBUS +magtape device interface: +.Sh SYNOPSIS +.Cd "master ht0 at mba? drive ?" +.Cd "tape tu0 at ht0 slave 0" +.Sh DESCRIPTION +The +.Tn TM-03 +transport combination provides a standard tape drive interface as described in -.IR mtio (4). -All drives provide both 800 and 1600 bpi; the TE-16 runs at 45 ips, -the TU-45 at 75 ips, while the TU-77 runs at 125 ips and autoloads tapes. -.SH "SEE ALSO" -mt(1), -tar(1), -tp(1), -mtio(4), -tm(4), -ts(4), -mt(4), -ut(4) -.SH DIAGNOSTICS -\fBtu%d: no write ring\fR. An attempt was made to write on the tape drive +.Xr mtio 4 . +All drives provide both 800 and 1600 +.Tn BPI ; +the +.Tn TE-16 +runs at 45 +.Tn IPS , +the +.Tn TU-45 +at 75 +.Tn IPS , +while the +.Tn TU-77 +runs at 125 +.Tn IPS +and autoloads tapes. +.Sh DIAGNOSTICS +.Bl -diag +.It tu%d: no write ring. +An attempt was made to write on the tape drive when no write ring was present; this message is written on the terminal of the user who tried to access the tape. -.PP -\fBtu%d: not online\fR. An attempt was made to access the tape while it +.Pp +.It tu%d: not online. +An attempt was made to access the tape while it was offline; this message is written on the terminal of the user who tried to access the tape. -.PP -\fBtu%d: can't change density in mid-tape\fR. An attempt was made to write +.Pp +.It tu%d: can't change density in mid-tape. +An attempt was made to write on a tape at a different density than is already recorded on the tape. This message is written on the terminal of the user who tried to switch the density. -.PP -\fBtu%d: hard error bn%d mbsr=%b er=%b ds=%b\fR. A tape error occurred -at block \fIbn\fR; the ht error register and drive status register are +.Pp +.It "tu%d: hard error bn%d mbsr=%b er=%b ds=%b." +A tape error occurred +at block +.Em bn ; +the ht error register and drive status register are printed in octal with the bits symbolically decoded. Any error is fatal on non-raw tape; when possible the driver will have retried the operation which failed several times before reporting the error. -.SH BUGS -If any non-data error is encountered on non-raw tape, it refuses to do anything -more until closed. +.El +.Sh SEE ALSO +.Xr mt 1 , +.Xr tar 1 , +.Xr tp 1 , +.Xr mtio 4 , +.Xr mt 4 , +.Xr physio 4 , +.Xr tm 4 , +.Xr ts 4 , +.Xr ut 4 +.Sh HISTORY +An +.Nm +driver appeared in +.At v6 . +.Sh BUGS +May hang if physical (non-data) errors occur. diff --git a/usr/src/share/man/man4/man4.vax/hy.4 b/usr/src/share/man/man4/man4.vax/hy.4 index 7e83398933..700b07988e 100644 --- a/usr/src/share/man/man4/man4.vax/hy.4 +++ b/usr/src/share/man/man4/man4.vax/hy.4 @@ -1,91 +1,110 @@ -.\" Copyright (c) 1983 The Regents of the University of California. +.\" Copyright (c) 1983, 1991 The Regents of the University of California. .\" All rights reserved. .\" .\" %sccs.include.redist.man% .\" -.\" @(#)hy.4 6.3 (Berkeley) %G% +.\" @(#)hy.4 6.4 (Berkeley) %G% .\" -.TH HY 4 "" -.UC 5 -.SH NAME -hy \- Network Systems Hyperchannel interface -.SH SYNOPSIS -.B "device hy0 at uba0 csr 0172410 vector hyint" -.SH DESCRIPTION +.Dd +.Dt HY 4 vax +.Os BSD 4.2 +.Sh NAME +.Nm hy +.Nd Network Systems Hyperchannel interface +.Sh SYNOPSIS +.Cd "device hy0 at uba0 csr 0172410 vector hyint" +.Sh DESCRIPTION The -.I hy +.Nm hy interface provides access to a Network Systems Corporation Hyperchannel Adapter. -.PP +.Pp The network to which the interface is attached -is specified at boot time with an SIOCSIFADDR ioctl. +is specified at boot time with an +.Dv SIOCSIFADDR +.Xr ioctl 2 . The host's address is discovered by reading the adapter status register. The interface will not transmit or receive packets until the network number is known. -.SH DIAGNOSTICS -\fBhy%d: unit number 0x%x port %d type %x microcode level 0x%x\fP. +.Sh DIAGNOSTICS +.Bl -diag +.It "hy%d: unit number 0x%x port %d type %x microcode level 0x%x." Identifies the device during autoconfiguration. -.PP -\fBhy%d: can't handle af%d\fP. The interface was handed +.Pp +.It hy%d: can't handle af%d. +The interface was handed a message with addresses formatted in an unsuitable address family; the packet was dropped. -.PP -\fBhy%d: can't initialize\fP. -The interface was unable to allocate UNIBUS resources. This +.Pp +.It hy%d: can't initialize. +The interface was unable to allocate +.Tn UNIBUS +resources. This is usually due to having too many network devices on an 11/750 where there are only 3 buffered data paths. -.PP -\fBhy%d: NEX - Non Existent Memory\fP. +.Pp +.It hy%d: NEX - Non Existent Memory. Non existent memory error returned from hardware. -.PP -\fBhy%d: BAR overflow\fP. Bus address register +.Pp +.It hy%d: BAR overflow. +Bus address register overflow error returned from hardware. -.PP -\fBhy%d: Power Off bit set, trying to reset\fP. +.Pp +.It hy%d: Power Off bit set, trying to reset. Adapter has lost power, driver will reset the bit and see if power is still out in the adapter. -.PP -\fBhy%d: Power Off Error, network shutdown\fP. +.Pp +.It hy%d: Power Off Error, network shutdown. Power was really off in the adapter, network connections are dropped. Software does not shut down the network unless power has been off for a while. -.PP -\fBhy%d: RECVD MP > MPSIZE (%d)\fP. +.Pp +.It hy%d: RECVD MP > MPSIZE (%d). A message proper was received that is too big. Probable a driver bug. Shouldn't happen. -.PP -\fBhy%d: xmit error \- len > hy_olen [%d > %d]\fP. +.Pp +.It "hy%d: xmit error \- len > hy_olen [%d > %d]." Probable driver error. Shouldn't happen. -.PP -\fBhy%d: DRIVER BUG \- INVALID STATE %d\fP. +.Pp +.It hy%d: DRIVER BUG \- INVALID STATE %d. The driver state machine reached a non-existent state. Definite driver bug. -.PP -\fBhy%d: watchdog timer expired\fP. +.Pp +.It hy%d: watchdog timer expired. A command in the adapter has taken too long to complete. Driver will abort and retry the command. -.PP -\fBhy%d: adapter power restored\fP. +.Pp +.It hy%d: adapter power restored. Software was able to reset the power off bit, indicating that the power has been restored. -.SH SEE ALSO -netintro(4), inet(4) -.SH BUGS +.El +.Sh SEE ALSO +.Xr netintro 4 , +.Xr inet 4 +.Sh HISTORY +The +.Nm +interface appeared in +.Bx 4.2 . +.Sh BUGS If the adapter does not respond to the status command issued during autoconfigure, the adapter is assumed down. A reboot is required to recognize it. -.PP +.Pp The adapter power fail interrupt seems to occur sporadically when power has, in fact, not failed. The driver will believe that power has failed only if it can not reset the power fail latch after -a ``reasonable'' time interval. +a +.Dq reasonable +time interval. These seem to appear about 2-4 times a day on some machines. There seems to be no correlation with adapter rev level, number of ports used etc. and whether a -machine will get these ``bogus powerfails''. +machine will get these +.Dq bogus powerfails . They don't seem to cause any real problems so they have been ignored. diff --git a/usr/src/share/man/man4/man4.vax/ik.4 b/usr/src/share/man/man4/man4.vax/ik.4 index 8389f85e73..4d8c057697 100644 --- a/usr/src/share/man/man4/man4.vax/ik.4 +++ b/usr/src/share/man/man4/man4.vax/ik.4 @@ -1,39 +1,61 @@ -.\" Copyright (c) 1983 Regents of the University of California. -.\" All rights reserved. The Berkeley software License Agreement -.\" specifies the terms and conditions for redistribution. +.\" Copyright (c) 1983, 1991 Regents of the University of California. +.\" All rights reserved. .\" -.\" @(#)ik.4 6.1 (Berkeley) %G% +.\" %sccs.include.redist.man% .\" -.TH IK 4 "" -.UC 5 -.SH NAME -ik \- Ikonas frame buffer, graphics device interface -.SH SYNOPSIS -.B "device ik0 at uba? csr 0172460 vector ikintr" -.SH DESCRIPTION -.I Ik +.\" @(#)ik.4 6.2 (Berkeley) %G% +.\" +.Dd +.Dt IK 4 vax +.Os BSD 4.2 +.Sh NAME +.Nm ik +.Nd "Ikonas frame buffer, graphics device interface" +.Sh SYNOPSIS +.Cd "device ik0 at uba? csr 0172460 vector ikintr" +.Sh DESCRIPTION +The +.Nm ik +driver provides an interface to an Ikonas frame buffer graphics device. Each minor device is a different frame buffer interface board. When the device is opened, its interface registers are mapped, via virtual memory, into the user processes address space. This allows the user process very high bandwidth to the frame buffer with no system call overhead. -.PP -Bytes written or read from the device are DMA'ed from or to the interface. -The frame buffer XY address, its addressing mode, etc. must be set up by the +.Pp +Bytes written or read from the device are +.Tn DMA Ns 'ed +from or to the interface. +The frame buffer +.Tn XY +address, its addressing mode, etc. must be set up by the user process before calling write or read. -.PP +.Pp Other communication with the driver is via ioctls. -The IK_GETADDR ioctl returns the virtual address where the user process can +The +.Dv IK_GETADDR +.Xr ioctl 2 +returns the virtual address where the user process can find the interface registers. -The IK_WAITINT ioctl suspends the user process until the ikonas device +The +.Dv IK_WAITINT +.Xr ioctl +suspends the user process until the ikonas device has interrupted (for whatever reason \(em the user process has to set the interrupt enables). -.SH FILES -/dev/ik -.SH DIAGNOSTICS +.Sh FILES +.Bl -tag -width /dev/ikxx -compact +.It Pa /dev/ik +.El +.Sh DIAGNOSTICS None. -.SH BUGS +.Sh HISTORY +The +.Nm +driver appeared in +.Bx 4.2 . +.Sh BUGS An invalid access (e.g., longword) to a mapped interface register can cause the system to crash with a machine check. A user process could possibly cause infinite interrupts hence diff --git a/usr/src/share/man/man4/man4.vax/il.4 b/usr/src/share/man/man4/man4.vax/il.4 index 698476102b..1b942a195c 100644 --- a/usr/src/share/man/man4/man4.vax/il.4 +++ b/usr/src/share/man/man4/man4.vax/il.4 @@ -1,68 +1,83 @@ -.\" Copyright (c) 1983 The Regents of the University of California. +.\" Copyright (c) 1983, 1991 The Regents of the University of California. .\" All rights reserved. .\" .\" %sccs.include.redist.man% .\" -.\" @(#)il.4 6.6 (Berkeley) %G% +.\" @(#)il.4 6.7 (Berkeley) %G% .\" -.TH IL 4 "" -.UC 5 -.SH NAME -il \- Interlan NI1010 10 Mb/s Ethernet interface -.SH SYNOPSIS -.B "device il0 at uba0 csr 164000 vector ilrint ilcint" -.SH DESCRIPTION +.Dd +.Dt IL 4 vax +.Os BSD 4.2 +.Sh NAME +.Nm il +.Nd Interlan NI1010 10 Mb/s Ethernet interface +.Sh SYNOPSIS +.Cd "device il0 at uba0 csr 164000 vector ilrint ilcint" +.Sh DESCRIPTION The -.I il +.Nm il interface provides access to a 10 Mb/s Ethernet network through an Interlan 1010 or 1010A controller. -.PP +.Pp Each of the host's network addresses -is specified at boot time with an SIOCSIFADDR -ioctl. The -.I il +is specified at boot time with an +.Dv SIOCSIFADDR +.Xr ioctl 2 . +The +.Nm il interface employs the address resolution protocol described in -.IR arp (4) +.Xr arp 4 to dynamically map between Internet and Ethernet addresses on the local network. -.PP +.Pp The interface normally tries to use a ``trailer'' encapsulation to minimize copying data on input and output. -The use of trailers is negotiated with ARP. +The use of trailers is negotiated with +.Tn ARP . This negotiation may be disabled, on a per-interface basis, -by setting the IFF_NOTRAILERS -flag with an SIOCSIFFLAGS ioctl. -.SH DIAGNOSTICS -\fBil%d: input error\fP. The hardware indicated an error +by setting the +.Dv IFF_NOTRAILERS +flag with an +.Dv SIOCSIFFLAGS +.Xr ioctl . +.Sh DIAGNOSTICS +.Bl -diag +.It il%d: input error. +The hardware indicated an error in reading a packet off the cable or an illegally sized packet. -.PP -\fBil%d: can't handle af%d\fP. The interface was handed +.Pp +.It il%d: can't handle af%d. +The interface was handed a message with addresses formatted in an unsuitable address family; the packet was dropped. -.PP -\fBil%d: setaddr didn't work\fP. The interface was unable to reprogram +.Pp +.It il%d: setaddr didn't work. +The interface was unable to reprogram its physical ethernet address. This may happen with very early models of the interface. This facility is used only when -the controller is not the first network interface configured for XNS. +the controller is not the first network interface configured for +.Tn XNS . The oldest interface tested (2.7.1.0.1.45) has never failed in this way. -.PP -The following messages indicate a probable hardware error performing +.Pp +.It il%d: reset failed, csr=%b. +.It il%d: status failed, csr=%b. +.It il%d: hardware diag failed, csr=%b. +.It il%d: verifying setaddr, csr=%b. +.It il%d: stray xmit interrupt, csr=%b. +.It il%d: can't initialize. +The above messages indicate a probable hardware error performing the indicated operation during autoconfiguration or initialization. The status field in the control and status register (the low-order four bits) should indicate the nature of the failure. See the hardware manual for details. -.PP -\fBil%d: reset failed, csr=%b\fP. -.PP -\fBil%d: status failed, csr=%b\fP. -.PP -\fBil%d: hardware diag failed, csr=%b\fP. -.PP -\fBil%d: verifying setaddr, csr=%b\fP. -.PP -\fBil%d: stray xmit interrupt, csr=%b\fP. -.PP -\fBil%d: can't initialize\fP. -.SH SEE ALSO -netintro(4), inet(4), arp(4) +.El +.Sh SEE ALSO +.Xr netintro 4 , +.Xr inet 4 , +.Xr arp 4 +.Sh HISTORY +The +.Nm +interface appeared in +.Bx 4.2 . diff --git a/usr/src/share/man/man4/man4.vax/intro.4 b/usr/src/share/man/man4/man4.vax/intro.4 index 1bbcf9b226..64c016ab77 100644 --- a/usr/src/share/man/man4/man4.vax/intro.4 +++ b/usr/src/share/man/man4/man4.vax/intro.4 @@ -1,75 +1,107 @@ -.\" Copyright (c) 1980 Regents of the University of California. -.\" All rights reserved. The Berkeley software License Agreement -.\" specifies the terms and conditions for redistribution. +.\" Copyright (c) 1980, 1991 Regents of the University of California. +.\" All rights reserved. .\" -.\" @(#)intro.4 6.5 (Berkeley) %G% +.\" %sccs.include.redist.man% .\" -.TH INTRO 4 "" -.UC 4 -.SH NAME -intro \- introduction to special files and hardware support -.SH DESCRIPTION +.\" @(#)intro.4 6.6 (Berkeley) %G% +.\" +.Dd +.Dt INTRO 4 vax +.Os BSD 4 +.Sh NAME +.Nm intro +.Nd introduction to special files and hardware support +.Sh DESCRIPTION This section describes the special files, related driver functions, and networking support available in the system. -In this part of the manual, the SYNOPSIS section of +In this part of the manual, the +.Tn SYNOPSIS +section of each configurable device gives a sample specification for use in constructing a system description for the -.IR config (8) +.Xr config 8 program. -The DIAGNOSTICS section lists messages which may appear on the console +The +.Tn DIAGNOSTICS +section lists messages which may appear on the console and/or in the system error log -.I /var/log/messages +.Pa /var/log/messages due to errors in device operation; see -.IR syslogd (8) +.Xr syslogd 8 for more information. -.SH "VAX DEVICE SUPPORT" -This section describes the hardware supported on the DEC VAX-11. +.Sh VAX DEVICE SUPPORT +This section describes the hardware supported on the +.Tn DEC +.Tn VAX-11 . Software support for these devices comes in two forms. A hardware device may be supported with a character or block -.IR "device driver" , +.Em device driver , or it may be used within the networking subsystem and have a -.IR "network interface driver" . +.Em network interface driver . Block and character devices are accessed through files in the file -system of a special type; c.f. -.IR mknod (8). +system of a special type; see +.Xr physio 4 +and +.Xr mknod 8 . Network interfaces are indirectly accessed through the interprocess communication facilities provided by the system; see -.IR socket (2). -.PP +.Xr socket 2 . +.Pp A hardware device is identified to the system at configuration time and the appropriate device or network interface driver is then compiled into the system. When the resultant system is booted, the autoconfiguration facilities in the system probe for the device -on either the UNIBUS (or Q-bus) or MASSBUS and, if found, enable the software -support for it. If a UNIBUS device does not respond at autoconfiguration +on either the +.Tn UNIBUS +(or +.Tn Q-bus ) +or +.Tn MASSBUS +and, if found, enable the software +support for it. If a +.Tn UNIBUS +device does not respond at autoconfiguration time it is not accessible at any time afterwards. To -enable a UNIBUS device which did not autoconfigure, the system will have to +enable a +.Tn UNIBUS +device which did not autoconfigure, the system will have to be rebooted. If a -MASSBUS device comes ``on-line'' after the autoconfiguration sequence +.Tn MASSBUS +device comes +.Dq on-line +after the autoconfiguration sequence it will be dynamically autoconfigured into the running system. -.PP +.Pp The autoconfiguration system is described in -.IR autoconf (4). +.Xr autoconf 4 . A list of the supported devices is given below. -.SH SEE ALSO -intro(4), netintro(4), autoconf(4), config(8). -.PP -Building 4.3BSD UNIX Systems with \fIConfig\fP (SMM:2) -.SH "LIST OF DEVICES" +.Sh SEE ALSO +.Xr intro 4 , +.Xr netintro 4 , +.Xr autoconf 4 , +.Xr config 8 . +.Rs +.%T "Building 4.3 BSD UNIX Systems with Config" +.%B SMM +.%N 2 +.Re +.Sh LIST OF DEVICES The devices listed below are supported in this incarnation of the system. Pseudo-devices are not listed. Devices are indicated by their functional interface. If second vendor products provide functionally identical interfaces they should be usable with the supplied software. -(\fBBeware, however, that we promise the software works -ONLY with the hardware indicated on the appropriate manual page.\fP) +.Bf -symbolic +Beware, +however, that we promise the software works +ONLY with the hardware indicated on the appropriate manual page. +.Ef Occasionally, new devices of a similar type may be added simply by creating appropriate table entries in the driver. -.sp -.ta 1.0i -.nf +.Pp +.Bl -column tmscp -offset indent acc ACC LH/DH IMP communications interface ad Data translation A/D interface css DEC IMP-11A communications interface @@ -116,3 +148,9 @@ uu TU58 dual cassette drive interface (DL11) va Benson-Varian printer/plotter interface vp Versatec printer/plotter interface vv Proteon proNET 10Mb/s and 80Mb/s ring network interface +.El +.Sh HISTORY +The section 4 +.Nm intro +appeared in +.Bx 4.1 . diff --git a/usr/src/share/man/man4/man4.vax/ix.4 b/usr/src/share/man/man4/man4.vax/ix.4 index ad787ce7e2..ddc9d17109 100644 --- a/usr/src/share/man/man4/man4.vax/ix.4 +++ b/usr/src/share/man/man4/man4.vax/ix.4 @@ -1,85 +1,107 @@ -.\" Copyright (c) 1986 The Regents of the University of California. +.\" Copyright (c) 1986, 1991 The Regents of the University of California. .\" All rights reserved. .\" .\" %sccs.include.redist.man% .\" -.\" @(#)ix.4 6.4 (Berkeley) %G% +.\" @(#)ix.4 6.5 (Berkeley) %G% .\" -.TH IX 4 "" -.UC 5 -.SH NAME -ix \- Interlan Np100 10 Mb/s Ethernet interface -.SH SYNOPSIS -.B "device np0 at uba0 csr 166000 vector npintr" -.SH DESCRIPTION +.Dd +.Dt IX 4 vax +.Os BSD 4.2 +.Sh NAME +.Nm ix +.Nd Interlan Np100 10 Mb/s Ethernet interface +.Sh SYNOPSIS +.Cd "device np0 at uba0 csr 166000 vector npintr" +.Sh DESCRIPTION The -.I ix +.Nm ix interface provides access to a 10 Mb/s Ethernet network through an Interlan Np100 controller used as a link-layer interface. -.PP +.Pp This interface is unusual in that it requires loading firmware into the controller before it may be used as a network interface. This is accomplished by opening a character special device, and writing data to it. -A program to load the image is provided in /usr/src/new/np100. +A program to load the image is provided in +.Pa /usr/src/new/np100 . The sequence of commands would be: -.nf - - # ./npload np.image [/dev/np if other than np00] - # sleep 10 - # ifconfig ix0 ... -.fi -.PP +.Bd -literal -offset indent +# ./npload np.image [/dev/np if other than np00] +# sleep 10 +# ifconfig ix0 ... +.Ed +.Pp Each of the host's network addresses -is specified at boot time with an SIOCSIFADDR -ioctl. The -.I ix +is specified at boot time with an +.Dv SIOCSIFADDR +.Xr ioctl 2 . +The +.Nm ix interface employs the address resolution protocol described in -.IR arp (4) +.Xr arp 4 to dynamically map between Internet and Ethernet addresses on the local network. -.PP -The interface normally tries to use a ``trailer'' encapsulation +.Pp +The interface normally tries to use a +.Dq trailer +encapsulation to minimize copying data on input and output. -The use of trailers is negotiated with ARP. +The use of trailers is negotiated with +.Tn ARP . This negotiation may be disabled, on a per-interface basis, -by setting the IFF_NOTRAILERS -flag with an SIOCSIFFLAGS ioctl. -.SH DIAGNOSTICS -\fBix%d: Req failed, cmd %x, stat %x, ust error %x,%x\fP. +by setting the +.Dv IFF_NOTRAILERS +flag with an +.Dv SIOCSIFFLAGS +.Xr ioctl . +.Sh DIAGNOSTICS +.Bl -diag +.It "ix%d: Req failed, cmd %x, stat %x, ust error %x,%x." The firmware in the controller refused to honor a request from -.UX +.Tn UNIX in initializing packet level communications. The board may need to be reset and reloaded. Or, you may not have allowed enough time between loading the board and issuing the request to begin unix network operation. -.PP -\fBix%d: can't initialize\fP. +.Pp +.It ix%d: can't initialize. The interface was unable to obtain unibus resources required for operation. -.PP -\fBix%d: failed to reinitialize DLA module\fP. +.Pp +.It ix%d: failed to reinitialize DLA module. The interface got sick after attempting to reprogram its physical ethernet address. Try reloading the firmware. The attempt is made only when this interfaces is not the first -one configured for XNS. -.PP -\fBix%d: can't handle af%d\fP. The interface was handed +one configured for +.Tn XNS . +.Pp +.It ix%d: can't handle af%d. +The interface was handed a message with addresses formatted in an unsuitable address family; the packet was dropped. -.PP -\fBix%d: stray xmit interrupt, npreq=%x\fP. +.Pp +.It ix%d: stray xmit interrupt, npreq=%x. This may happen if the board is reloaded while network processes are still running. -.PP -\fBixrint: cqe error %x, %x, %x\fP. +.Pp +.It ixrint: cqe error %x, %x, %x. This will result if an -.IR ifconfig (8c) +.Xr ifconfig 8 request is made at an inopportune time, such as not allowing enough time after loading the firmware. After 100 such errors are logged, the unix network driver will shut itself down, saying: -.PP -\fBixrint: shutting down unix dla\fP. +.Pp +.It ixrint: shutting down unix dla. The recourse is to reload the firmware and allow more time. -.SH SEE ALSO -netintro(4), inet(4), arp(4), np(4). +.El +.Sh SEE ALSO +.Xr netintro 4 , +.Xr inet 4 , +.Xr arp 4 , +.Xr np 4 . +.Sh HISTORY +The +.Nm +driver appeared in +.Bx 4.3 . diff --git a/usr/src/share/man/man4/man4.vax/kg.4 b/usr/src/share/man/man4/man4.vax/kg.4 index 3c0ca18e7a..a8904a2979 100644 --- a/usr/src/share/man/man4/man4.vax/kg.4 +++ b/usr/src/share/man/man4/man4.vax/kg.4 @@ -1,26 +1,43 @@ -.\" Copyright (c) 1983 Regents of the University of California. -.\" All rights reserved. The Berkeley software License Agreement -.\" specifies the terms and conditions for redistribution. +.\" Copyright (c) 1983, 1991 Regents of the University of California. +.\" All rights reserved. .\" -.\" @(#)kg.4 6.1 (Berkeley) %G% +.\" %sccs.include.redist.man% .\" -.TH KG 4 "" -.UC 5 -.SH NAME -kg \- KL-11/DL-11W line clock -.SH SYNOPSIS -.B "device kg0 at uba0 csr 0176500 vector kglock" -.SH DESCRIPTION -A kl-11 or dl-11w can be used as an alternate real +.\" @(#)kg.4 6.2 (Berkeley) %G% +.\" +.Dd +.Dt KG 4 vax +.Os BSD 4.2 +.Sh NAME +.Nm kg +.Nd +.Tn KL-11 Ns / Tn DL-11W +line clock +.Sh SYNOPSIS +.Cd "device kg0 at uba0 csr 0176500 vector kglock" +.Sh DESCRIPTION +A +.Tn KL-11 +or +.Tn DL-11W +can be used as an alternate real time clock source. When configured, certain system statistics and, optionally, system profiling work will be collected each time the clock interrupts. For -optimum accuracy in profiling, the dl-11w should be +optimum accuracy in profiling, the +.Tn DL-11W +should be configured to interrupt at the highest possible priority level. The -.I kg +.Nm kg device driver automatically calibrates itself to the line clock frequency. -.SH "SEE ALSO" -kgmon(8), config(8) +.Sh SEE ALSO +.Xr kgmon 8 , +.Xr config 8 +.Sh HISTORY +The +.Nm +driver appeared in +.Bx 4.2 . diff --git a/usr/src/share/man/man4/man4.vax/lp.4 b/usr/src/share/man/man4/man4.vax/lp.4 index eba390e1f2..111e804e50 100644 --- a/usr/src/share/man/man4/man4.vax/lp.4 +++ b/usr/src/share/man/man4/man4.vax/lp.4 @@ -1,67 +1,59 @@ -.\" Copyright (c) 1980 Regents of the University of California. -.\" All rights reserved. The Berkeley software License Agreement -.\" specifies the terms and conditions for redistribution. +.\" Copyright (c) 1980, 1991 Regents of the University of California. +.\" All rights reserved. .\" -.\" @(#)lp.4 6.1 (Berkeley) %G% +.\" %sccs.include.redist.man% .\" -.TH LP 4 "" -.UC 4 -.SH NAME -lp \- line printer -.SH SYNOPSIS -.B "device lp0 at uba0 csr 0177514 vector lpintr" -.SH DESCRIPTION -.I Lp -provides the interface to any of the standard -DEC line printers on an LP-11 parallel interface. -When it is opened or closed, a suitable number -of page ejects is generated. -Bytes written are printed. -.PP +.\" @(#)lp.4 6.2 (Berkeley) %G% +.\" +.Dd +.Dt LP 4 vax +.Os BSD 4 +.Sh NAME +.Nm lp +.Nd line printer +.Sh SYNOPSIS +.Cd "device lp0 at uba0 csr 0177514 vector lpintr" +.Sh DESCRIPTION +The +.Nm lp +device +supports +.Tn DEC +and +.Tn DEC +compatible printers +on the +.Tn LP-11 +parallel interface. +.Pp The unit number of the printer is specified by the minor device after removing the low 3 bits, which act as per-device parameters. Currently only the lowest of the low three bits is interpreted: -if it is set, the device is treated as having a 64-character set, +if it is set, the device is assumed to have a 64-character set or +.Pf half Tn -ASCII +mode, rather than a full 96-character set. -In the resulting half-ASCII mode, lower case letters are turned -into upper case and certain characters are escaped according to -the following table: -.PP -.br -.ns -.TP 10 -{ -\o"-(" -.br -.ns -.TP 10 -} -\o"-)" -.br -.ns -.TP 10 -\` -\o"-\'" -.br -.ns -.TP 10 -| -\o"\-!" -.br -.ns -.TP 10 -~ -\o"\-^" -.. -.PP -The driver correctly interprets -carriage returns, backspaces, tabs, and form feeds. -Lines longer than the maximum page width are truncated. -The default page width is 132 columns. -This may be overridden by specifying, for example, ``flags 256'' . -.SH FILES -/dev/lp -.SH "SEE ALSO" -lpr(1) -.SH DIAGNOSTICS -None. +.Pp +If the 64-character set is assumed, +any lower case characters are mapped to upper case; left curly and +right curly braces are mapped to left and right parentheses over +laid with a hyphen; grave accents are mapped to acute accents +with overlaid with a hyphen; the pipe bar character is mapped +to an exclamation sign overlaid with a hyphen; and the tilde +character is mapped to a carat overlaid with a hyphen. +.Pp +The default page width is 132 columns; longer lines are +truncated. +This may be overridden by specifying, for example, +.Ql flags 256 . +.Sh FILES +.Bl -tag -width Pa -compact +.It Pa /dev/lp +.El +.Sh SEE ALSO +.Xr lpr 1 +.Sh HISTORY +A +.Nm +driver appeared in +.At v6 . diff --git a/usr/src/share/man/man4/man4.vax/mem.4 b/usr/src/share/man/man4/man4.vax/mem.4 index 3c6d040f1e..6c61a8bdf7 100644 --- a/usr/src/share/man/man4/man4.vax/mem.4 +++ b/usr/src/share/man/man4/man4.vax/mem.4 @@ -1,51 +1,78 @@ -.\" Copyright (c) 1980 Regents of the University of California. -.\" All rights reserved. The Berkeley software License Agreement -.\" specifies the terms and conditions for redistribution. +.\" Copyright (c) 1980, 1991 Regents of the University of California. +.\" All rights reserved. .\" -.\" @(#)mem.4 6.2 (Berkeley) %G% +.\" %sccs.include.redist.man% .\" -.TH MEM 4 "" -.UC 4 -.SH NAME -mem, kmem \- main memory -.SH DESCRIPTION -.lg -.I Mem -is a special file that is an image of the main memory -of the computer. -It may be used, for example, to examine -(and even to patch) the system. -.PP -Byte addresses in -.I mem -are interpreted as physical memory addresses. -References to non-existent locations cause errors to be returned. -.PP -The file -.I kmem -is the same as -.I mem -except that kernel virtual memory -rather than physical memory is accessed. -Only kernel virtual addresses that are mapped to memory are allowed. +.\" @(#)mem.4 6.3 (Berkeley) %G% +.\" +.Dd +.Dt MEM 4 vax +.Os BSD 4 +.Sh NAME +.Nm mem , +.Nm kmem , +.Nm kUmem +.Nd memory files +.Sh DESCRIPTION +The special file +.Nm /dev/mem +is an interface to the physical memory of the computer. +Byte offsets in this file are interpreted as physical memory addresses. +Reading and writing this file is equivalent to reading and writing +memory itself. +Only offsets within the bounds of +.Nm /dev/mem +are allowed. +.Pp +Kernel virtual memory is accessed through the interface +.Nm /dev/kmem +in the same manner as +.Nm /dev/mem . +Only kernel virtual addresses that are currently mapped to memory are allowed. +.Pp The file -.I kUmem +.Nm /dev/kUmem also refers to kernel virtual memory, -but may be used to access areas mapped to UNIBUS address space -and other I/O areas. +but may be used to access areas mapped to +.Tn UNIBUS +address space +and other +.Tn I/O +areas. It forces all accesses to use word (short integer) accesses. -Examining and patching device registers is likely -to lead to unexpected results when read-only or write-only -bits are present. -.PP -On VAX 11/780 the I/O space begins at physical address 20000000(16); -on an 11/750 I/O space addresses are of the form fxxxxx(16). -On all VAX'en -per-process data for the current process is UPAGES long, and ends at virtual -address 80000000(16). -.SH FILES -/dev/mem -.br -/dev/kmem -.br -/dev/kUmem +.Pp +On the +.Tn VAX +11/780, +the +.Tn I/O +space base address is +20000000(16); +on an 11/750 +the +.Tn I/O space addresses are of the form fxxxxx(16). +On all +.Tn VAX Ns 'en +the +per-process data +size +for the current process +is +.Dv UPAGES +long and ends at the virtual address 80000000(16). +.Sh FILES +.Bl -tag -width Pa -compact +.It Pa /dev/mem +.It Pa /dev/kmem +.It Pa /dev/kUmem +.El +.Sh HISTORY +The +.Nm mem , +.Nm kmem +files appeared in +.At v6 . +The file +.Nm kUmem +appeared in +.Bx 3.0 . diff --git a/usr/src/share/man/man4/man4.vax/mt.4 b/usr/src/share/man/man4/man4.vax/mt.4 index a85eaa6219..b554a1a57b 100644 --- a/usr/src/share/man/man4/man4.vax/mt.4 +++ b/usr/src/share/man/man4/man4.vax/mt.4 @@ -1,62 +1,90 @@ -.\" Copyright (c) 1980 Regents of the University of California. -.\" All rights reserved. The Berkeley software License Agreement -.\" specifies the terms and conditions for redistribution. +.\" Copyright (c) 1980, 1991 Regents of the University of California. +.\" All rights reserved. .\" -.\" @(#)mt.4 6.3 (Berkeley) %G% +.\" %sccs.include.redist.man% .\" -.TH MT 4 "" -.UC 4 -.SH NAME -mt \- TM78/TU-78 MASSBUS magtape interface -.SH SYNOPSIS -.B master mt0 at mba? drive ? -.br -.B tape mu0 at mt0 slave 0 -.SH DESCRIPTION -The tm78/tu-78 combination provides a standard tape drive +.\" @(#)mt.4 6.4 (Berkeley) %G% +.\" +.Dd +.Dt MT 4 vax +.Os BSD 4 +.Sh NAME +.Nm mt +.Nd +.Tn TM78 Ns / Tn TU-78 +.Tn MASSBUS +magtape interface +.Sh SYNOPSIS +.Cd "master mt0 at mba? drive ? tape mu0 at mt0 slave 0" +.Sh DESCRIPTION +The +.Tn TM78 Ns / Tn TU-78 +combination provides a standard tape drive interface as described in -.IR mtio (4). -Only 1600 and 6250 bpi are supported; the -TU-78 runs at 125 ips and autoloads tapes. -.SH "SEE ALSO" -mt(1), -tar(1), -tp(1), -mtio(4), -tm(4), -ts(4), -ut(4) -.SH DIAGNOSTICS -\fBmu%d: no write ring\fR. An attempt was made to write on the tape drive +.Xr mtio 4 . +Only 1600 and 6250 +.Tn BPI +are supported; the +.Tn TU-78 +runs at 125 +.Tn IPS +and autoloads tapes. +.Sh DIAGNOSTICS +.Bl -diag +.It mu%d: no write ring. +An attempt was made to write on the tape drive when no write ring was present; this message is written on the terminal of the user who tried to access the tape. -.PP -\fBmu%d: not online\fR. An attempt was made to access the tape while it +.Pp +.It mu%d: not online. +An attempt was made to access the tape while it was offline; this message is written on the terminal of the user who tried to access the tape. -.PP -\fBmu%d: can't change density in mid-tape\fR. An attempt was made to write +.Pp +.It "mu%d: can't change density in mid-tape." +An attempt was made to write on a tape at a different density than is already recorded on the tape. This message is written on the terminal of the user who tried to switch the density. -.PP -\fBmu%d: hard error bn%d mbsr=%b er=%x ds=%b\fR. A tape error occurred -at block \fIbn\fR; the mt error register and drive status register are +.Pp +.It "mu%d: hard error bn%d mbsr=%b er=%x ds=%b." +A tape error occurred +at block +.Em bn ; +the mt error register and drive status register are printed in octal with the bits symbolically decoded. Any error is fatal on non-raw tape; when possible the driver will have retried the operation which failed several times before reporting the error. -.PP -\fBmu%d: blank tape\fP. +.Pp +.It mu%d: blank tape. An attempt was made to read a blank tape (a tape without even end-of-file marks). -.PP -\fBmu%d: offline\fP. +.Pp +.It mu%d: offline. During an i/o operation the device was set offline. If a non-raw tape was used in the access it is closed. -.SH BUGS -If any non-data error is encountered on non-raw tape, -it refuses to do anything more until closed. -.PP -Because 800 bpi tapes are not supported, the numbering of minor devices +.El +.Sh SEE ALSO +.Xr mt 1 , +.Xr tar 1 , +.Xr tp 1 , +.Xr mtio 4 , +.Xr tm 4 , +.Xr ts 4 , +.Xr ut 4 +.Sh HISTORY +The +.Nm +driver appeared in +.Bx 4.1 . +.Sh BUGS +If a physical error (non-data) occurs, +.Nm +may hang ungracefully. +.Pp +Because 800 +.Tn BPI +tapes are not supported, the numbering of minor devices is inconsistent with triple-density tape units. -Unit 0 is drive 0, 1600 bpi. +Unit 0 is drive 0, 1600 +.Tn BPI. diff --git a/usr/src/share/man/man4/man4.vax/mtio.4 b/usr/src/share/man/man4/man4.vax/mtio.4 index da65114597..f16f0ee104 100644 --- a/usr/src/share/man/man4/man4.vax/mtio.4 +++ b/usr/src/share/man/man4/man4.vax/mtio.4 @@ -1,77 +1,103 @@ -.\" Copyright (c) 1983 The Regents of the University of California. +.\" Copyright (c) 1983, 1991 The Regents of the University of California. .\" All rights reserved. .\" .\" %sccs.include.redist.man% .\" -.\" @(#)mtio.4 6.4 (Berkeley) %G% +.\" @(#)mtio.4 6.5 (Berkeley) %G% .\" -.TH MTIO 4 "" -.UC 5 -.SH NAME -mtio \- UNIX magtape interface -.SH DESCRIPTION -The files -.I "mt0, ..., mt15" -refer to the UNIX magtape drives, -which may be on the MASSBUS using the TM03 formatter -.IR ht (4), -or TM78 formatter, -.IR mt (4), -or on the UNIBUS using either the TM11 or TS11 formatters -.IR tm (4), -TU45 compatible formatters, -.IR ut (4), -or -.IR ts (4). -The following description applies to any of the transport/controller pairs. -The files -.I "mt0, ..., mt7" -are 800bpi (or the transport's lowest density), -.I "mt8, ..., mt15" -are 1600bpi (or the transport's second density), and -.I "mt16, ..., mt23" -are 6250bpi (or the transport's third density). -(But note that only 1600 bpi is available with the TS11.) -The files -.IR "mt0, ..., mt3" , -.IR "mt8, ..., mt11" , +.Dd +.Dt MTIO 4 vax +.Os BSD 4.2 +.Sh NAME +.Nm mtio +.Nd +.Tn UNIX +magtape interface +.Sh DESCRIPTION +The special files +named +.Pa /dev/mt0 and -.I "mt16, ..., mt19" -are rewound when closed; the others are not. -When a file open for writing is closed, two end-of-files are written. -If the tape is not to be rewound -it is positioned with the head between the two -tapemarks. -.PP -A standard tape consists of a -series of 1024 byte records terminated by an -end-of-file. -To the extent possible, the system makes -it possible, if inefficient, to treat -the tape like any other file. -Seeks have their usual meaning and it is possible -to read or write a byte at a time. -Writing in very small units is inadvisable, -however, because it uses most of the tape in record -gaps. -.PP -The -.I mt -files discussed above are useful -when it is desired to access the tape in a way -compatible with ordinary files. -When foreign tapes are to be dealt with, and especially -when long records are to be read or written, the -`raw' interface is appropriate. -The associated files are named -.I "rmt0, ..., rmt23," -but the same minor-device considerations as for the regular files still apply. -A number of other ioctl operations are available +.Pa /dev/rmt0 +through +.Pa /dev/mt23 +and +.Pa /dev/rmt23 +refer to +.Tn UNIX +magtape drives, +which may be on the +.Tn MASSBUS +using the +.Tn TM03 +formatter +.Xr ht 4 , +or +.Tn TM78 +formatter, +.Xr mt 4 , +or on the +.Tn UNIBUS +using either the +.Tn TM11 +or +.Tn TS11 +formatters +.Xr tm 4 , +.Tn TU45 +compatible formatters, +.Xr ut 4 , +or +.Xr ts 4 . +These devices are typical tape block devices, +see +.Xr physio 4 . +.Pp +The following table of the converntional device names +is applicable to any of the transport/controller pairs. +(But note that only 1600 +.Tn BPI +is available with the +.Tn TS11 . ) +.Bl -column "no-rewindxxx" "or lowest densityxx" "or lowest densityxx" "or lowest densityxx" -offset indent + 800 BPI 1600 BPI 6500 BPI +.Em or lowest density or second density or third density + +Rewind mt0/rmt0 mt8/rmt8 mt16/rmt16 +Rewind mt1/rmt1 mt9/rmt9 mt17/rmt17 +Rewind mt2/rmt2 mt10/rmt10 mt18/rmt18 +Rewind mt3/rmt3 mt11/rmt11 mt19/rmt19 +No-rewind nmt4/nrmt4 nmt12/nrmt12 nmt20/nrmt20 +No-rewind nmt5/nrmt5 nmt13/nrmt13 nmt21/nrmt21 +No-rewind nmt6/nrmt6 nmt14/nrmt14 nmt22/nrmt22 +No-rewind nmt7/nrmt7 nmt15/nrmt15 nmt23/nrmt32 +.El +.Pp +The rewind devices automatically rewind +when the last requested read, write or seek has finished, or the end of the tape +has been reached. The letter +.Ql n +is usually prepended to +the name of the no-rewind devices. +.Pp +Unix tapes are written in multiples of 1024 byte block +records. Two end-of-file markers mark the end of a tape, and +one end-of-file marker marks the end of a tape file. +If the tape is not to be rewound it is positioned with the +head in between the two tape marks, where the next write +will over write the second end-of-file marker. +.Pp +All of the magtape devices may be manipulated with the +.Xr mt 1 +command. +.Pp +A number of +.Xr ioctl 2 +operations are available on raw magnetic tape. The following definitions are from -.RI < sys/mtio.h >: -.PP -.nf +.Aq Pa sys/mtio.h : +.Bd -literal /* * Structures and definitions for mag tape io control commands */ @@ -91,8 +117,8 @@ struct mtop { #define MTREW 5 /* rewind */ #define MTOFFL 6 /* rewind and put the drive offline */ #define MTNOP 7 /* no operation, sets status only */ -#define MTCACHE 8 /* enable controller cache */ -#define MTNOCACHE 9 /* disable controller cache */ +#define MTCACHE 8 /* enable controller cache */ +#define MTNOCACHE 9 /* disable controller cache */ /* structure for MTIOCGET - mag tape get status command */ @@ -111,7 +137,7 @@ struct mtget { /* * Constants for mt_type byte. These are the same - * for other controllers compatible with the types listed. + * for controllers compatible with the types listed. */ #define MT_ISTS 0x01 /* TS-11 */ #define MT_ISHT 0x02 /* TM03 Massbus: TE16, TU45, TU77 */ @@ -121,49 +147,62 @@ struct mtget { #define MT_ISCPC 0x06 /* SUN */ #define MT_ISAR 0x07 /* SUN */ #define MT_ISTMSCP 0x08 /* DEC TMSCP protocol (TU81, TK50) */ +#define MT_ISCY 0x09 /* CCI Cipher */ +#define MT_ISCT 0x0a /* HP 1/4 tape */ +#define MT_ISFHP 0x0b /* HP 7980 1/2 tape */ +#define MT_ISEXABYTE 0x0c /* Exabyte */ +#define MT_ISEXA8200 0x0c /* Exabyte EXB-8200 */ +#define MT_ISEXA8500 0x0d /* Exabyte EXB-8500 */ +#define MT_ISVIPER1 0x0e /* Archive Viper-150 */ +#define MT_ISPYTHON 0x0f /* Archive Python (DAT) */ +#define MT_ISHPDAT 0x10 /* HP 35450A DAT drive */ /* mag tape io control commands */ -#define MTIOCTOP _IOW(m, 1, struct mtop) /* do a mag tape op */ -#define MTIOCGET _IOR(m, 2, struct mtget) /* get tape status */ -#define MTIOCIEOT _IO(m, 3) /* ignore EOT error */ -#define MTIOCEEOT _IO(m, 4) /* enable EOT error */ +#define MTIOCTOP _IOW('m', 1, struct mtop) /* do a mag tape op */ +#define MTIOCGET _IOR('m', 2, struct mtget) /* get tape status */ +#define MTIOCIEOT _IO('m', 3) /* ignore EOT error */ +#define MTIOCEEOT _IO('m', 4) /* enable EOT error */ #ifndef KERNEL #define DEFTAPE "/dev/rmt12" #endif -.fi -.ft R -.PP -Each -.I read -or -.I write -call reads or writes the next record on the tape. -In the write case the record has the same length as the -buffer given. -During a read, the record size is passed -back as the number of bytes read, provided it is no greater -than the buffer size; -if the record is long, an error is indicated. -In raw tape I/O seeks are ignored. -A zero byte count is returned when a tape mark is read, -but another read will fetch the first record of the -new tape file. -.SH FILES -/dev/mt? -.br -/dev/rmt? -.SH "SEE ALSO" -mt(1), -tar(1), -tp(1), -ht(4), -tm(4), -ts(4), -mt(4), -ut(4) -.SH BUGS + +#ifdef KERNEL +/* + * minor device number + */ + +#define T_UNIT 003 /* unit selection */ +#define T_NOREWIND 004 /* no rewind on close */ +#define T_DENSEL 030 /* density select */ +#define T_800BPI 000 /* select 800 bpi */ +#define T_1600BPI 010 /* select 1600 bpi */ +#define T_6250BPI 020 /* select 6250 bpi */ +#define T_BADBPI 030 /* undefined selection */ +#endif +.Ed +.Pp +.Sh FILES +.Bl -tag -width /dev/rmt? -compact +.It Pa /dev/mt? +.It Pa /dev/rmt? +.El +.Sh SEE ALSO +.Xr mt 1 , +.Xr tar 1 , +.Xr tp 1 , +.Xr ht 4 , +.Xr tm 4 , +.Xr ts 4 , +.Xr mt 4 , +.Xr ut 4 +.Sh HISTORY +The +.Nm mtio +manual appeared in +.Bx 4.2 . +.Sh BUGS The status should be returned in a device independent format. -.PP +.Pp The special file naming should be redone in a more consistent and understandable manner. diff --git a/usr/src/share/man/man4/man4.vax/np.4 b/usr/src/share/man/man4/man4.vax/np.4 index 2fc2b67d63..16bcd5d9cf 100644 --- a/usr/src/share/man/man4/man4.vax/np.4 +++ b/usr/src/share/man/man4/man4.vax/np.4 @@ -1,96 +1,109 @@ -.\" Copyright (c) 1986 The Regents of the University of California. +.\" Copyright (c) 1986, 1991 The Regents of the University of California. .\" All rights reserved. .\" .\" %sccs.include.redist.man% .\" -.\" @(#)np.4 6.5 (Berkeley) %G% +.\" @(#)np.4 6.6 (Berkeley) %G% .\" -.TH NP 4 "" -.UC 5 -.SH NAME -np \- Interlan Np100 10 Mb/s Ethernet interface -.SH SYNOPSIS -.B "device np0 at uba0 csr 166000 vector npintr" -.SH DESCRIPTION +.Dd +.Dt NP 4 vax +.Os BSD 4.2 +.Sh NAME +.Nm np +.Nd Interlan Np100 10 Mb/s Ethernet interface +.Sh SYNOPSIS +.Cd "device np0 at uba0 csr 166000 vector npintr" +.Sh DESCRIPTION The -.I NP +.Nm np device provides access to an Interlan Np100 Ethernet interface for control functions. -.PP +.Pp This interface is unusual in that it requires loading firmware into the controller before it may be used as a network link-level interface. This is accomplished by opening a character special device, and writing data to it. It is also possible to do post-mortem debugging of firmware failures by reading the local memory of the device. -.PP -A program to load the image is provided in /usr/src/new/np100. -The sequence of commands would be: -.nf - - # ./npload np.image [/dev/np00] - # sleep 10 - # ifconfig ix0 ... -.fi -.PP +.\" .Pp +.\" A program to load the image is provided in +.\" .Pa /usr/src/new/np100 . +.\" The sequence of commands would be: +.\" .Bd -literal -offset indent +.\" # ./npload np.image [/dev/np00] +.\" # sleep 10 +.\" # ifconfig ix0 ... +.\" .Ed +.Pp Multiple control processes are allowed by opening separate minor devices; secondary interfaces are specified by shifting the interface number by 4 bits. -.PP +.Pp The device also responds to commands passed through the driver -by the following ioctls: -.TP -NPRESET -.br +by the following +.Xr ioctl 2 Ns s : +.Bl -tag -width NPNETBOOT +.It Dv NPRESET kills off all active network processes. -.TP -NPSTART -.br -begins execution of the board at the specified address (usually 0x400). -.TP -NPNETBOOT -.br +.It Dv NPSTART +begins execution of the board at the specified address (usually +.Li 0x400 ) . +.It Dv NPNETBOOT downloads the image from a server on the network. -[Contact MICOM-INTERLAN for details.] -.SH DIAGNOSTICS -\fBnp%d: Bad Maintenance command: %x!\fP. -An invalid ioctl was passed to the np driver. -.PP -\fBnp%d: Panic NP100 bad buffer chain\fP. +[Contact +.Tn MICOM-INTERLAN +for details.] +.El +.Sh DIAGNOSTICS +.Bl -diag +.It np%d: Bad Maintenance command: %x! +An invalid +.Xr ioctl +was passed to the np driver. +.Pp +.It np%d: Panic NP100 bad buffer chain. An error occurred in an read or write operation causing it to run out of buffers before it finished the operation. This indicates a kernel failure rather than a device failure. -.PP -\fBNP100 unit %d not found!\fP. +.Pp +.It NP100 unit %d not found! A failure occurred during initialization, such that the unibus address expected for the board was found to be bad. Probably indicates hardware problems with the board, as do the following: -\fB -.nf - -NP100 Unit %d timed out! - -NP100 Unit %d Failed diagnostics! -Status from CSR0: %x.\fP -.fi -.PP -\fBPanic from NP100 unit %d!\\nPanic Message: %s\fP. +.Pp +.Bd -filled -offset indent -compact +.It NP100 Unit %d timed out! +.It NP100 Unit %d Failed diagnostics! +.It Status from CSR0: %x. +.Ed +.Pp +.It "Panic from NP100 unit %d!" +.It "Panic Message: %s." An occurrence on the board was deemed serious enough to have the vax print it out. -.PP -\fBNP100 unit #%d available!\fP. +.Pp +.It NP100 unit #%d available! The board was successfully loaded and started. -.PP -\fBnp%d: Bad Req: %x.\fP. +.Pp +.It np%d: Bad Req: %x. The board made a maintenance request to the vax that it did not understand. -.PP -\fBnp%d: No more room on Command Queue!\fP. +.Pp +.It np%d: No more room on Command Queue! The np driver allowed an internal resource to be exhausted. This should never happen. -.PP +.El +.Pp There are 110 other diagnostic messages that can be enabled by setting bits in a debugging mask. Consult the driver for details. -.SH SEE ALSO -netintro(4), inet(4), arp(4), ix(4) +.Sh SEE ALSO +.Xr netintro 4 , +.Xr inet 4 , +.Xr arp 4 , +.Xr ix 4 +.Sh HISTORY +The +.Nm +driver appeared in +.Bx 4.3 . diff --git a/usr/src/share/man/man4/man4.vax/pcl.4 b/usr/src/share/man/man4/man4.vax/pcl.4 index ec7e3caf05..be8ecb6906 100644 --- a/usr/src/share/man/man4/man4.vax/pcl.4 +++ b/usr/src/share/man/man4/man4.vax/pcl.4 @@ -1,68 +1,106 @@ -.\" Copyright (c) 1983 Regents of the University of California. -.\" All rights reserved. The Berkeley software License Agreement -.\" specifies the terms and conditions for redistribution. +.\" Copyright (c) 1983, 1991 Regents of the University of California. +.\" All rights reserved. .\" -.\" @(#)pcl.4 6.2 (Berkeley) %G% +.\" %sccs.include.redist.man% .\" -.TH PCL 4 "" -.UC 5 -.SH NAME -pcl \- DEC CSS PCL-11 B Network Interface -.SH SYNOPSIS -.B "device pcl0 at uba? csr 164200 vector pclxint pclrint" -.SH DESCRIPTION +.\" @(#)pcl.4 6.3 (Berkeley) %G% +.\" +.Dd +.Dt PCL 4 vax +.Os BSD 4.2 +.Sh NAME +.Nm pcl +.Nd +.Tn DEC CSS +.Tn PCL-11 B +Network Interface +.Sh SYNOPSIS +.Cd "device pcl0 at uba? csr 164200 vector pclxint pclrint" +.Sh DESCRIPTION The -.I pcl -device provides an IP-only interface to the DEC CSS PCL-11 +.Nm pcl +device provides an +.Tn IP Ns -only +interface to the +.Tn DEC CSS +.Tn PCL-11 time division multiplexed network bus. The controller itself is not accessible to users. -.PP -The hosts's address is specified with the SIOCSIFADDR ioctl. +.Pp +The hosts's address is specified with the +.Dv SIOCSIFADDR +.Xr ioctl 2 . The interface will not transmit or receive any data before its address is defined. -.PP -As the PCL-11 hardware is only capable of having 15 interfaces per network, +.Pp +As the +.Tn PCL-11 +hardware is only capable of having 15 interfaces per network, a single-byte host-on-network number is used, with range [1..15] to match -the TDM bus addresses of the interfaces. -.PP +the +.Tn TDM +bus addresses of the interfaces. +.Pp The interface currently only supports the Internet protocol family -and only provides ``natural'' (header) encapsulation. -.SH DIAGNOSTICS -.BR "pcl%d: can't init" . -Insufficient UNIBUS resources existed to initialize the device. +and only provides +.Dq natural +(header) encapsulation. +.Sh DIAGNOSTICS +.Bl -diag +.It pcl%d: can't init. +Insufficient +.Tn UNIBUS +resources existed to initialize the device. This is likely to occur when the device is run on a buffered data path on an 11/750 and other network interfaces are also configured to use buffered data paths, or when it is configured to use buffered data paths on an 11/730 (which has none). -.PP -.BR "pcl%d: can't handle af%d" . +.Pp +.It pcl%d: can't handle af%d. The interface was handed a message with addresses formatted in an unsuitable address family; the packet was dropped. -.PP -.BR "pcl%d: stray xmit interrupt" . +.Pp +.It pcl%d: stray xmit interrupt. An interrupt occurred when no output had previously been started. -.PP -.BR "pcl%d: master" . -The TDM bus had no station providing ``bus master'' timing signals, +.Pp +.It pcl%d: master. +The +.Tn TDM +bus had no station providing ``bus master'' timing signals, so this interface has assumed the ``master'' role. This message should -only appear at most once per UNIBUS INIT on a single system. +only appear at most once per +.Tn UNIBUS INIT +on a single system. Unless there is a hardware failure, only one station may be master at at time. -.PP -.BR "pcl%d: send error, tcr=%b, tsr=%b" . +.Pp +.It pcl%d: send error, tcr=%b, tsr=%b. The device indicated a problem sending data on output. If a ``receiver offline'' error is detected, it is not normally logged -unless the option PCL_TESTING has been selected, as this causes a lot +unless the option +.Dv PCL_TESTING +has been selected, as this causes a lot of console chatter when sending to a down machine. However, this option -is quite useful when debugging problems with the PCL interfaces. -.PP -.BR "pcl%d: rcv error, rcr=%b rsr=%b" . +is quite useful when debugging problems with the +.Tn PCL +interfaces. +.Pp +.It pcl%d: rcv error, rcr=%b rsr=%b. The device indicated a problem receiving data on input. -.PP -.BR "pcl%d: bad len=%d" . +.Pp +.It pcl%d: bad len=%d. An input operation resulted in a data transfer of less than 0 or more than 1008 bytes of data into memory (according to the word count register). -This should never happen as the maximum size of a PCL message +This should never happen as the maximum size of a +.Tn PCL +message has been agreed upon to be 1008 bytes (same as ArpaNet message). -.SH "SEE ALSO" -intro(4N), inet(4F) +.El +.Sh SEE ALSO +.Xr intro 4 , +.Xr inet 4 +.Sh HISTORY +The +.Nm +interface appeared in +.Bx 4.2 . diff --git a/usr/src/share/man/man4/man4.vax/ps.4 b/usr/src/share/man/man4/man4.vax/ps.4 index 5d0f47f683..179a775055 100644 --- a/usr/src/share/man/man4/man4.vax/ps.4 +++ b/usr/src/share/man/man4/man4.vax/ps.4 @@ -1,70 +1,75 @@ -.\" Copyright (c) 1983 Regents of the University of California. -.\" All rights reserved. The Berkeley software License Agreement -.\" specifies the terms and conditions for redistribution. +.\" Copyright (c) 1983, 1991 Regents of the University of California. +.\" All rights reserved. .\" -.\" @(#)ps.4 6.3 (Berkeley) %G% +.\" %sccs.include.redist.man% .\" -.TH PS 4 "" -.UC 5 -.SH NAME -ps \- Evans and Sutherland Picture System 2 graphics device interface -.SH SYNOPSIS -.B "device ps0 at uba? csr 0172460 vector psclockintr pssystemintr" -.SH DESCRIPTION +.\" @(#)ps.4 6.4 (Berkeley) %G% +.\" +.Dd +.Dt PS 4 vax +.Os BSD 4.2 +.Sh NAME +.Nm ps +.Nd Evans and Sutherland Picture System 2 graphics device interface +.Sh SYNOPSIS +.Cd "device ps0 at uba? csr 0172460 vector psclockintr pssystemintr" +.Sh DESCRIPTION The -.I ps +.Nm ps driver provides access to an Evans and Sutherland Picture System 2 graphics device. -Each minor device is a new PS2. +Each minor device is a new +.Tn PS2 . When the device is opened, its interface registers are mapped, via virtual memory, into a user process's address space. This allows the user process very high bandwidth to the device with no system call overhead. -.PP -DMA to and from the PS2 is not supported. All read and write +.Pp +.Tn DMA +to and from the +.Tn PS2 +is not supported. All read and write system calls will fail. -All data is moved to and from the PS2 via programmed I/O using +All data is moved to and from the +.Tn PS2 +via programmed +.Tn I/O +using the device's interface registers. -.PP -Commands are fed to and from the driver using the following ioctls: -.TP -PSIOGETADDR -.br +.Pp +Commands are fed to and from the driver using the following +.Xr ioctl 2 Ns s : +.Bl -tag -width PSIOSINGLEREFRESH +.It Dv PSIOGETADDR Returns the virtual address through which the user process can access the device's interface registers. -.TP -PSIOAUTOREFRESH -.br +.It Dv PSIOAUTOREFRESH Start auto refreshing the screen. The argument is an address in user space where the following data resides. The first longword is a -.I count +.Em count of the number of static refresh buffers. The next -.I count +.Em count longwords are the addresses in refresh memory where the refresh buffers lie. The driver will cycle through these refresh buffers displaying them one by one on the screen. -.TP -PSIOAUTOMAP -.br +.It Dv PSIOAUTOMAP Start automatically passing the display file through the matrix processor and into the refresh buffer. The argument is an address in user memory where the following data resides. The first longword is a -.I count +.Em count of the number of display files to operate on. The next -.I count +.Em count longwords are the address of these display files. The final longword is the address in refresh buffer memory where transformed coordinates are to be placed if the driver is not in double buffer mode (see below). -.TP -PSIODOUBLEBUFFER -.br +.It Dv PSIODOUBLEBUFFER Cause the driver to double buffer the output from the map that is going to the refresh buffer. The argument is again a user space address where the real arguments are stored. @@ -73,53 +78,48 @@ double buffers are located. The second argument is the length of each double buffer. The refresh mechanism displays the current double buffer, in addition to its static refresh lists, when in double buffer mode. -.TP -PSIOSINGLEREFRESH -.br +.It Dv PSIOSINGLEREFRESH Single step the refresh process. That is, the driver does not continually refresh the screen. -.TP -PSIOSINGLEMAP -.br +.It Dv PSIOSINGLEMAP Single step the matrix process. The driver does not automatically feed display files through the matrix unit. -.TP -PSIOSINGLEBUFFER -.br +.It Dv PSIOSINGLEBUFFER Turn off double buffering. -.TP -PSIOTIMEREFRESH -.br +.It Dv PSIOTIMEREFRESH The argument is a count of the number of refresh interrupts to take before turning off the screen. This is used to do time exposures. -.TP -PSIOWAITREFRESH -.br +.It Dv PSIOWAITREFRESH Suspend the user process until a refresh interrupt has occurred. -If in TIMEREFRESH mode, suspend until count refreshes have occurred. -.TP -PSIOSTOPREFRESH -.br +If in +.Dv TIMEREFRESH +mode, suspend until count refreshes have occurred. +.It Dv PSIOSTOPREFRESH Wait for the next refresh, stop all refreshes, and then return to user process. -.TP -PSIOWAITMAP -.br +.It Dv PSIOWAITMAP Wait until a map done interrupt has occurred. -.TP -PSIOSTOPMAP -.br +.It Dv PSIOSTOPMAP Wait for a map done interrupt, do not restart the map, and then return to the user. -.SH FILES -/dev/ps -.SH DIAGNOSTICS -.BR "ps device intr" . -.br -.BR "ps dma intr" . +.El +.Sh FILES +.Bl -tag -width /dev/psxx +.It Pa /dev/ps +.El +.Sh DIAGNOSTICS +.Bl -diag +.It ps device intr. +.It ps dma intr. An interrupt was received from the device. This shouldn't happen, check your device configuration for overlapping interrupt vectors. -.SH BUGS +.El +.Sh HISTORY +The +.Nm +driver appeared in +.Bx 4.2 . +.Sh BUGS An invalid access (e.g., longword) to a mapped interface register can cause the system to crash with a machine check. A user process could possibly cause infinite interrupts hence diff --git a/usr/src/share/man/man4/man4.vax/qe.4 b/usr/src/share/man/man4/man4.vax/qe.4 index 9e64a79566..2c18918181 100644 --- a/usr/src/share/man/man4/man4.vax/qe.4 +++ b/usr/src/share/man/man4/man4.vax/qe.4 @@ -1,36 +1,59 @@ -.\" Copyright (c) 1983 The Regents of the University of California. +.\" Copyright (c) 1983, 1991 The Regents of the University of California. .\" All rights reserved. .\" .\" %sccs.include.redist.man% .\" -.\" @(#)qe.4 6.3 (Berkeley) %G% +.\" @(#)qe.4 6.4 (Berkeley) %G% .\" -.TH QE 4 "" -.UC 6 -.SH NAME -qe \- DEC DEQNA Q-bus 10 Mb/s Ethernet interface -.SH SYNOPSIS -.B "device qe0 at uba? csr 174440 vector qeintr" -.SH DESCRIPTION +.Dd +.Dt QE 4 vax +.Os BSD 4.3 +.Sh NAME +.Nm qe +.Nd +.Tn DEC DEQNA +.Tn Q-bus +10 Mb/s Ethernet interface +.Sh SYNOPSIS +.Cd "device qe0 at uba? csr 174440 vector qeintr" +.Sh DESCRIPTION The -.B qe +.Nm qe interface provides access to a 10 Mb/s Ethernet network through -the DEC DEQNA Q-bus controller. -.PP +the +.Tn DEC DEQNA +.Tn Q-bus +controller. +.Pp Each of the host's network addresses -is specified at boot time with an SIOCSIFADDR -ioctl. The -.B qe +is specified at boot time with an +.Dv SIOCSIFADDR +.Xr ioctl 2 . +The +.Nm qe interface employs the address resolution protocol described in -arp(4) +.Xr arp 4 to map dynamically between Internet and Ethernet addresses on the local network. -.PP -The interface normally tries to use a ``trailer'' encapsulation +.Pp +The interface normally tries to use a +.Dq trailer +encapsulation to minimize copying data on input and output. -The use of trailers is negotiated with ARP. +The use of trailers is negotiated with +.Tn ARP . This negotiation may be disabled, on a per-interface basis, -by setting the IFF_NOTRAILERS -flag with an SIOCSIFFLAGS ioctl. -.SH "SEE ALSO" -netintro(4), inet(4), arp(4) +by setting the +.Dv IFF_NOTRAILERS +flag with an +.Dv SIOCSIFFLAGS +.Xr ioctl . +.Sh SEE ALSO +.Xr netintro 4 , +.Xr inet 4 , +.Xr arp 4 +.Sh HISTORY +The +.Nm +driver appeared in +.Bx 4.3 . diff --git a/usr/src/share/man/man4/man4.vax/rx.4 b/usr/src/share/man/man4/man4.vax/rx.4 index ea617fe9d7..5319438e97 100644 --- a/usr/src/share/man/man4/man4.vax/rx.4 +++ b/usr/src/share/man/man4/man4.vax/rx.4 @@ -1,168 +1,228 @@ -.\" Copyright (c) 1983 Regents of the University of California. -.\" All rights reserved. The Berkeley software License Agreement -.\" specifies the terms and conditions for redistribution. +.\" Copyright (c) 1983, 1991 Regents of the University of California. +.\" All rights reserved. .\" -.\" @(#)rx.4 6.1 (Berkeley) %G% +.\" %sccs.include.redist.man% .\" -.TH RX 4 "" -.UC 5 -.SH NAME -rx \- DEC RX02 floppy disk interface -.SH SYNOPSIS -.B "controller fx0 at uba0 csr 0177170 vector rxintr" -.br -.B "disk rx0 at fx0 drive 0" -.br -.B "disk rx1 at fx0 drive 1" -.SH DESCRIPTION +.\" @(#)rx.4 6.2 (Berkeley) %G% +.\" +.Dd +.Dt RX 4 vax +.Os BSD 4.2 +.Sh NAME +.Nm rx +.Nd +.Tn DEC +.Tn RX02 +floppy disk interface +.Sh SYNOPSIS +.Cd "controller fx0 at uba0 csr 0177170 vector rxintr" +.Cd "disk rx0 at fx0 drive 0" +.Cd "disk rx1 at fx0 drive 1" +.Sh DESCRIPTION +The +.Nm rx +device provides access to a +.Tn DEC +.Tn RX02 +floppy disk +unit with M8256 interface module +.Pf ( Tn RX211 +configuration). The -.I rx -device provides access to a DEC RX02 floppy disk -unit with M8256 interface module (RX211 configuration). -The RX02 uses 8-inch, single-sided, soft-sectored floppy +.Tn RX02 +uses 8-inch, single-sided, soft-sectored floppy disks (with pre-formatted industry-standard headers) in either single or double density. -.PP -Floppy disks handled by the RX02 contain 77 tracks, each with 26 +.Pp +Floppy disks handled by the +.Tn RX02 +contain 77 tracks, each with 26 sectors (for a total of 2,002 sectors). The sector size is 128 bytes for single density, 256 bytes for double density. Single -density disks are compatible with the RX01 floppy disk unit and with -IBM 3740 Series Diskette 1 systems. -.PP -In addition to normal (`block' and `raw') i/o, the driver supports +density disks are compatible with the +.Tn RX01 +floppy disk unit and with +.Tn IBM +3740 Series Diskette 1 systems. +.Pp +In addition to normal (`block' and `raw') +.Tn I/O , +the driver supports formatting of disks for either density and the ability to invoke a 2 for 1 interleaved sector mapping -compatible with the DEC operating system RT-11. -.PP +compatible with the +.Tn DEC +operating system +.Tn RT-11 . +.Pp The minor device number is interpreted as follows: -.PP -.nf -.ta \w'Bit 'u -\fBBit Description\fP +.Pp +.Bl -column Otherx -offset indent +.Sy Bit Description 0 Sector interleaving (1 disables interleaving) 1 Logical sector 1 is on track 1 (0 no, 1 yes) 2 Not used, reserved Other Drive number -.fi -.PP -The two drives in a single RX02 unit are treated as +.El +.Pp +The two drives in a single +.Tn RX02 +unit are treated as two disks attached to a single controller. Thus, if there are two -RX02's on a system, the drives on the first RX02 are ``rx0'' and ``rx1'', -while the drives on the second are ``rx2'' and ``rx3''. -.PP +.Tn RX02 Ns 's +on a system, the drives on the first +.Tn RX02 +are +.Dq Li rx0 +and +.Dq Li rx1 , +while the drives on the second are +.Dq Li rx2 +and +.Dq Li rx3 . +.Pp When the device is opened, the density of the disk currently in the drive is automatically determined. If there is no floppy in the device, open will fail. -.PP +.Pp The interleaving parameters are represented in raw device -names by the letters `a' through `d'. Thus, unit 0, drive 0 is +names by the letters +.Ql a +through +.Ql d . +Thus, unit 0, drive 0 is called by one of the following names: -.PP -.nf -.ta \w'interleaved 'u +\w'Device name 'u -\fBMapping Device name Starting track\fP +.Pp +.Bl -column interleavedxx "Device namexx" "Starting Track" -offset indent +.Sy Mapping Device name Starting track interleaved /dev/rrx0a 0 direct /dev/rrx0b 0 interleaved /dev/rrx0c 1 direct /dev/rrx0d 1 -.fi -.PP -The mapping used on the `c' device is compatible with the -DEC operating system RT-11. The `b' device accesses the +.El +.Pp +The mapping used on the +.Ql c +device is compatible with the +.Tn DEC +operating system +.Tn RT-11 . +The +.Ql b +device accesses the sectors of the disk in strictly sequential order. -The `a' device is the most efficient for disk-to-disk copying. +The +.Ql a +device is the most efficient for disk-to-disk copying. This mapping is always used by the block device. -.PP -I/O requests must start on a sector boundary, involve an integral +.Pp +.Tn I/O +requests must start on a sector boundary, involve an integral number of complete sectors, and not go off the end of the disk. -.SH NOTES +.Sh NOTES Even though the storage capacity on a floppy disk is quite small, it is possible to make filesystems on double density disks. For example, the command -.nf -.RS +.Bd -literal -offset indent % mkfs /dev/rx0 1001 13 1 4096 512 32 0 4 -.RE -.fi +.Ed +.Pp makes a file system on the double density disk in rx0 with 436 kbytes available for file storage. -Using \fItar\fP(1) gives a more efficient utilization of the available +Using +.Xr tar 1 +gives a more efficient utilization of the available space for file storage. Single density diskettes do not provide sufficient storage capacity to hold file systems. -.PP -A number of \fIioctl\fP(2) calls apply to the rx devices, and +.Pp +A number of +.Xr ioctl 2 +calls apply to the rx devices, and have the form -.RS -.nf -.ft B +.Bd -literal -offset indent #include ioctl(fildes, code, arg) int *arg; -.ft R -.fi -.RE +.Ed +.Pp The applicable codes are: -.IP RXIOC_FORMAT 18 +.Bl -tag -width RXIOC_GETDENS +.It Dv RXIOC_FORMAT Format the diskette. The density to use is specified by the -.I arg +.Ar arg argument, zero gives single density while non-zero gives double density. -.IP RXIOC_GETDENS +.It Dv RXIOC_GETDENS Return the density of the diskette (zero or non-zero as above). -.IP RXIOC_WDDMK -On the next write, include a \fIdeleted data address mark\fP in +.It Dv RXIOC_WDDMK +On the next write, include a +.Em deleted data address mark +in the header of the first sector. -.IP RXIOC_RDDMK +.It Dv RXIOC_RDDMK Return non-zero if the last sector read contained a -\fIdeleted data address mark\fP in its header, otherwise +.Em deleted data address mark +in its header, otherwise return 0. -.SH ERRORS +.El +.Sh FILES +.Bl -tag -width /dev/rx?xx -compact +.It Pa /dev/rx? +.It Pa /dev/rrx?[a-d] +.El +.Sh DIAGNOSTICS +.Bl -diag +.It "rx%d: hard error, trk %d psec %d cs=%b, db=%b, err=%x, %x, %x, %x." +An unrecoverable error was encountered. The +track and physical sector numbers, the device registers and the +extended error status are displayed. +.Pp +.It rx%d: state %d (reset). +The driver entered a bogus state. This should not happen. +.El +.Sh ERRORS The following errors may be returned by the driver: -.TP 12 -[ENODEV] +.Bl -tag -width [ENODEV] +.It Bq Er ENODEV Drive not ready; usually because no disk is in the drive or the drive door is open. -.TP -[ENXIO] +.It Bq Er ENXIO Nonexistent drive (on open); offset is too large or not on a sector boundary or byte count is not a multiple of the sector size (on read or write); or bad (undefined) ioctl code. -.TP -[EIO] +.It Bq Er EIO A physical error other than ``not ready'', probably bad media or unknown format. -.TP -[EBUSY] +.It Bq Er EBUSY Drive has been opened for exclusive access. -.IP [EBADF] 12 +.It Bq Er EBADF No write access (on format), or wrong density; the latter can only happen if the disk is changed without -.I closing +.Em closing the device -(i.e., calling \fIclose\fP(2) ). -.SH FILES -/dev/rx? -.br -/dev/rrx?[a-d] -.SH SEE ALSO -rxformat(8V), newfs(8), mkfs(8), tar(1), arff(8V) -.SH DIAGNOSTICS -.BR "rx%d: hard error, trk %d psec %d cs=%b, db=%b, err=%x, %x, %x, %x". -An unrecoverable error was encountered. The -track and physical sector numbers, the device registers and the -extended error status are displayed. -.PP -.BR "rx%d: state %d (reset)" . -The driver entered a bogus state. This should not happen. -.SH BUGS +(i.e., calling +.Xr close 2 ) . +.El +.Sh SEE ALSO +.Xr rxformat 8 , +.Xr newfs 8 , +.Xr mkfs 8 , +.Xr tar 1 , +.Xr arff 8 +.Sh HISTORY +The +.Nm +driver appeared in +.Bx 4.2 . +.Sh BUGS A floppy may not be formatted if the header info on sector 1, track 0 has been damaged. Hence, it is not possible to format completely degaussed disks or disks with other formats than the two known by the hardware. -.PP +.Pp If the drive subsystem is powered down when the machine is booted, the controller won't interrupt. diff --git a/usr/src/share/man/man4/man4.vax/tb.4 b/usr/src/share/man/man4/man4.vax/tb.4 index 88a1de9c68..04f9943695 100644 --- a/usr/src/share/man/man4/man4.vax/tb.4 +++ b/usr/src/share/man/man4/man4.vax/tb.4 @@ -1,34 +1,34 @@ -.\" Copyright (c) 1986 Regents of the University of California. -.\" All rights reserved. The Berkeley software License Agreement -.\" specifies the terms and conditions for redistribution. +.\" Copyright (c) 1986, 1991 Regents of the University of California. +.\" All rights reserved. .\" -.\" @(#)tb.4 6.3 (Berkeley) %G% +.\" %sccs.include.redist.man% .\" -.TH TB 4 "" -.UC 6 -.SH NAME -tb \- line discipline for digitizing devices -.SH SYNOPSIS -.B pseudo-device tb -.SH DESCRIPTION +.\" @(#)tb.4 6.4 (Berkeley) %G% +.\" +.Dd +.Dt TB 4 vax +.Os BSD 4.3 +.Sh NAME +.Nm tb +.Nd line discipline for digitizing devices +.Sh SYNOPSIS +.Cd pseudo-device tb +.Sh DESCRIPTION This line discipline provides a polled interface to many common digitizing devices which are connected to a host through a serial line. When these devices stream data at high speed, the use of the line discipline is critical in minimizing the number of samples that would otherwise be lost due to buffer exhaustion in the -.IR tty (4) +.Xr tty 4 handler. -.PP +.Pp The line discipline is enabled by a sequence: -.PP -.nf -.ft B - #include - int ldisc = TBLDISC, fildes; ... - ioctl(fildes, TIOCSETD, &ldisc); -.fi -.ft R -.PP +.Bd -literal -offset indent +#include +int ldisc = TBLDISC, fildes; ... +ioctl(fildes, TIOCSETD, &ldisc); +.Ed +.Pp A typical application program then polls the digitizing device by reading a binary data structure which contains: the current X and Y positions (in the device coordinate space), @@ -36,31 +36,47 @@ up-down status of the buttons or pen stylus, proximity information (when available), and a count of the number of samples received from the input device since it was opened. In addition, devices such as the -GTCO append tilt and pressure information to the end of +.Tn GTCO +append tilt and pressure information to the end of the aforementioned structure. For the Polhemus 3-D digitizer the structure read is completely different. Refer to the include file for a complete description. -.PP +.Pp While in tablet mode, normal teletype input and output functions take place. Thus, if an 8 bit output data path is desired, it is necessary -to prepare the output line by putting it into RAW mode using -.IR ioctl (2). +to prepare the output line by putting it into +.Tn RAW +mode using +.Xr ioctl 2 . This must be done -.B before -changing the discipline with TIOCSETD, as most -.IR ioctl (2) +.Em before +changing the discipline with +.Dv TIOCSETD , +as most +.Xr ioctl 2 calls are disabled while in tablet line-discipline mode. -.PP +.Pp The line discipline supports -.IR ioctl (2) +.Xr ioctl 2 requests to get/set the operating mode, and to get/set the tablet type -and operating mode by \fIor\fP-ing the two values together. -.PP +and operating mode by +.Em or Ns -ing +the two values together. +.Pp The line discipline supports digitizing devices which are -compatible with Hitachi, GTCO, or Polhemus protocol formats. +compatible with Hitachi, +.Tn GTCO , +or Polhemus protocol formats. For Hitachi there are several formats with that used in the -newer model HDG-1111B the most common. -.SH "SEE ALSO" -tty(4) -.SH DIAGNOSTICS +newer model +.Tn HDG-1111B +the most common. +.Sh DIAGNOSTICS None. +.Sh SEE ALSO +.Xr tty 4 +.Sh HISTORY +The +.Nm +interface appeared in +.Bx 4.3 . diff --git a/usr/src/share/man/man4/man4.vax/tm.4 b/usr/src/share/man/man4/man4.vax/tm.4 index 600ce66ee6..523e15ad45 100644 --- a/usr/src/share/man/man4/man4.vax/tm.4 +++ b/usr/src/share/man/man4/man4.vax/tm.4 @@ -1,59 +1,83 @@ -.\" Copyright (c) 1980 Regents of the University of California. -.\" All rights reserved. The Berkeley software License Agreement -.\" specifies the terms and conditions for redistribution. +.\" Copyright (c) 1980, 1991 Regents of the University of California. +.\" All rights reserved. .\" -.\" @(#)tm.4 6.2 (Berkeley) %G% +.\" %sccs.include.redist.man% .\" -.TH TM 4 "" -.UC 4 -.SH NAME -tm \- TM-11/TE-10 magtape interface -.SH SYNOPSIS -.B "controller tm0 at uba? csr 0172520 vector tmintr" -.br -.B "tape te0 at tm0 drive 0" -.SH DESCRIPTION -The tm-11/te-10 combination provides a standard tape drive +.\" @(#)tm.4 6.3 (Berkeley) %G% +.\" +.Dd +.Dt TM 4 vax +.Os BSD 4 +.Sh NAME +.Nm tm +.Nd +.Tn TM-11 Ns / Tn TE-10 +magtape device interface +.Sh SYNOPSIS +.Sy "controller tm0 at uba? csr 0172520 vector tmintr" +.Sy "tape te0 at tm0 drive 0" +.Sh DESCRIPTION +The +.Tn TM-11 Ns / Tn TE-10 +combination provides a standard tape drive interface as described in -.IR mtio (4). -Hardware implementing this on the VAX is typified by the Emulex TC-11 +.Xr mtio 4 . +Hardware implementing this on the +.Tn VAX +is typified by the Emulex +.Tn TC-11 controller operating with a Kennedy model 9300 tape transport, -providing 800 and 1600 bpi operation at 125 ips. -.SH "SEE ALSO" -mt(1), -tar(1), -tp(1), -mtio(4), -ht(4), -ts(4), -mt(4), -ut(4) -.SH DIAGNOSTICS -\fBte%d: no write ring\fR. An attempt was made to write on the tape drive +providing 800 and 1600 +.Tn BPI operation at 125 +.Tn IPS . +.Sh DIAGNOSTICS +.Bl -diag +.It te%d: no write ring. +An attempt was made to write on the tape drive when no write ring was present; this message is written on the terminal of the user who tried to access the tape. -.PP -\fBte%d: not online\fR. An attempt was made to access the tape while it +.Pp +.It te%d: not online. +An attempt was made to access the tape while it was offline; this message is written on the terminal of the user who tried to access the tape. -.PP -\fBte%d: can't change density in mid-tape\fR. An attempt was made to write +.Pp +.It te%d: can't change density in mid-tape. +An attempt was made to write on a tape at a different density than is already recorded on the tape. This message is written on the terminal of the user who tried to switch the density. -.PP -\fBte%d: hard error bn%d er=%b\fR. A tape error occurred -at block \fIbn\fR; the tm error register is +.Pp +.It te%d: hard error bn%d er=%b. +A tape error occurred +at block +.Em bn ; +the tm error register is printed in octal with the bits symbolically decoded. Any error is fatal on non-raw tape; when possible the driver will have retried the operation which failed several times before reporting the error. -.PP -\fBte%d: lost interrupt\fR. A tape operation did not complete +.Pp +.It te%d: lost interrupt. +A tape operation did not complete within a reasonable time, most likely because the tape was taken off-line during rewind or lost vacuum. The controller should, but does not, give an interrupt in these cases. The device will be made available again after this message, but any current open reference to the device will return an error as the operation in progress aborts. -.SH BUGS -If any non-data error is encountered on non-raw tape, it refuses to do anything -more until closed. +.El +.Sh SEE ALSO +.Xr mt 1 , +.Xr tar 1 , +.Xr tp 1 , +.Xr mt 4 , +.Xr mtio 4 , +.Xr ht 4 , +.Xr ts 4 , +.Xr ut 4 +.Sh HISTORY +A +.Nm +driver appeared in +.At v6 . +.Sh BUGS +May hang if a physical (non-data) error occurs. diff --git a/usr/src/share/man/man4/man4.vax/tmscp.4 b/usr/src/share/man/man4/man4.vax/tmscp.4 index 528d9d4257..5048e83d18 100644 --- a/usr/src/share/man/man4/man4.vax/tmscp.4 +++ b/usr/src/share/man/man4/man4.vax/tmscp.4 @@ -1,75 +1,105 @@ -.\" Copyright (c) 1986 Regents of the University of California. -.\" All rights reserved. The Berkeley software License Agreement -.\" specifies the terms and conditions for redistribution. +.\" Copyright (c) 1986, 1991 Regents of the University of California. +.\" All rights reserved. .\" -.\" @(#)tmscp.4 6.1 (Berkeley) %G% +.\" %sccs.include.redist.man% .\" -.TH TMSCP 4 "" -.UC 6 -.SH NAME -tmscp \- DEC TMSCP magtape interface -.SH SYNOPSIS -.B "controller tmscp0 at uba? csr 0174500 vector tmscpintr" -.br -.B "tape tms0 at tmscp0 drive 0" -.SH DESCRIPTION -Tape controllers compatible with the DEC -Tape Mass Storage Control Protocol (TMSCP) architecture -such as the TU81 and the TK50 +.\" @(#)tmscp.4 6.2 (Berkeley) %G% +.\" +.Dd +.Dt TMSCP 4 vax +.Os BSD 4.3 +.Sh NAME +.Nm tmscp +.Nd +.Tn DEC TMSCP +magtape interface +.Sh SYNOPSIS +.Cd "controller tmscp0 at uba? csr 0174500 vector tmscpintr" +.Cd "tape tms0 at tmscp0 drive 0" +.Sh DESCRIPTION +Tape controllers compatible with the +.Tn DEC +Tape Mass Storage Control Protocol +.Pq Tn TMSCP +architecture +such as the +.Tn TU81 +and the +.Tn TK50 provide a standard tape drive interface as described in -.IR mtio (4). +.Xr mtio 4 . The controller communicates with the host through a packet oriented protocol. Consult the file -.IR < vax/tmscp.h > +.Aq Pa vax/tmscp.h for a detailed description of this protocol. -.SH DIAGNOSTICS -.BR "tmscp controller failed to init" . +.Sh DIAGNOSTICS +.Bl -diag +.It tmscp controller failed to init. The controller initialization procedure failed. This probably indicates a hardware problem. -.PP -.BR "tmscp%d: sa 0%o, state %d" . -(Additional status information given after a hard I/O error.) +.Pp +.It tmscp%d: sa 0%o, state %d. +(Additional status information given after a hard +.Tn I/O +error.) The values of the controller status register and the internal driver state are printed. -.PP -.BR "tmscp%d: random interrupt ignored" . -An unexpected interrupt was received (e.g. when no i/o was +.Pp +.It tmscp%d: random interrupt ignored. +An unexpected interrupt was received (e.g. when no +.Tn I/O +was pending). The interrupt is ignored. -.PP -.BR "tmscp%d: interrupt in unknown state %d ignored" . +.Pp +.It tmscp%d: interrupt in unknown state %d ignored. An interrupt was received when the driver was in an unknown internal state. Indicates a hardware problem or a driver bug. -.PP -.BR "tmscp%d: fatal error (0%o)" . +.Pp +.It tmscp%d: fatal error (0%o). The controller detected a ``fatal error'' in the status returned to the host. The contents of the status register are displayed. -.PP -.BR OFFLINE . -(Additional status information given after a hard I/O error.) -A hard I/O error occurred because the drive was not on-line. -.PP -The following errors are interpretations of TMSCP error messages +.Pp +.It OFFLINE. +(Additional status information given after a hard +.Tn I/O +error.) +A hard +.Tn I/O +error occurred because the drive was not on-line. +.Pp +.It tmscp%d: hard error +.It tmscp%d: soft error. +These errors precede an interpretation of a +.Tn TMSCP +error message returned by the controller to the host. -Each is preceded by either -.B "tmscp%d: hard error" -or -.BR "tmscp%d: soft error" . -.PP -.BR "controller error, event 0%o" . -.PP -.BR "host memory access error, event 0%o, addr 0%o" . -.PP -.BR "tape transfer error, unit %d, grp 0x%x, event 0%o" . -.PP -.BR "STI error, unit %d, event 0%o" . -.PP -.BR "STI Drive Error Log, unit %d, event 0%o" . -.PP -.BR "STI Formatter Error Log, unit %d, event 0%o" . -.PP -.BR "unknown error, unit %d, format 0%o, event 0%o" . -.SH "SEE ALSO" -mt(1), tar(1), tp(1), mtio(4), tm(4), ts(4), ut(4), dmesg(8) +.Tn TMSCP +errors may be: +.Pp +.Bd -filled -offset indent -compact +.It controller error, event 0%o. +.It host memory access error, event 0%o, addr 0%o. +.It tape transfer error, unit %d, grp 0x%x, event 0%o. +.It STI error, unit %d, event 0%o. +.It STI Drive Error Log, unit %d, event 0%o. +.It STI Formatter Error Log, unit %d, event 0%o. +.It unknown error, unit %d, format 0%o, event 0%o. +.Ed +.El +.Sh SEE ALSO +.Xr mt 1 , +.Xr tar 1 , +.Xr tp 1 , +.Xr mtio 4 , +.Xr tm 4 , +.Xr ts 4 , +.Xr ut 4 , +.Xr dmesg 8 +.Sh HISTORY +The +.Nm +driver appeared in +.Bx 4.3 . diff --git a/usr/src/share/man/man4/man4.vax/ts.4 b/usr/src/share/man/man4/man4.vax/ts.4 index 01829447b2..cb1680bbeb 100644 --- a/usr/src/share/man/man4/man4.vax/ts.4 +++ b/usr/src/share/man/man4/man4.vax/ts.4 @@ -1,51 +1,83 @@ -.\" Copyright (c) 1980 Regents of the University of California. -.\" All rights reserved. The Berkeley software License Agreement -.\" specifies the terms and conditions for redistribution. +.\" Copyright (c) 1980, 1991 Regents of the University of California. +.\" All rights reserved. .\" -.\" @(#)ts.4 6.1 (Berkeley) %G% +.\" %sccs.include.redist.man% .\" -.TH TS 4 "" -.UC 4 -.SH NAME -ts \- TS-11 magtape interface -.SH SYNOPSIS -.B "controller zs0 at uba? csr 0172520 vector tsintr" -.br -.B "tape ts0 at zs0 drive 0" -.SH DESCRIPTION -The ts-11 combination provides a standard tape drive +.\" @(#)ts.4 6.2 (Berkeley) %G% +.\" +.Dd +.Dt TS 4 vax +.Os BSD 4 +.Sh NAME +.Nm ts +.Nd +.Tn TS-11 +magtape interface +.Sh SYNOPSIS +.Cd "controller zs0 at uba? csr 0172520 vector tsintr" +.Cd "tape ts0 at zs0 drive 0" +.Sh DESCRIPTION +The +.Tn TS-11 +combination provides a standard tape drive interface as described in -.IR mtio (4). -The ts-11 operates only at 1600 bpi, and only one transport +.Xr mtio 4 . +The +.Tn TS-11 +operates only at 1600 +.Tn BPI , +and only one transport is possible per controller. -.SH "SEE ALSO" -mt(1), -tar(1), -tp(1), -mtio(4), -ht(4), -tm(4), -mt(4), -ut(4) -.SH DIAGNOSTICS -\fBts%d: no write ring\fR. An attempt was made to write on the tape drive +.Sh DIAGNOSTICS +.Bl -diag +.It ts%d: no write ring. +An attempt was made to write on the tape drive when no write ring was present; this message is written on the terminal of the user who tried to access the tape. -.PP -\fBts%d: not online\fR. An attempt was made to access the tape while it +.Pp +.It ts%d: not online. +An attempt was made to access the tape while it was offline; this message is written on the terminal of the user who tried to access the tape. -.PP -\fBts%d: hard error bn%d xs0=%b\fR. A hard error occurred on the tape -at block \fIbn\fR; status register 0 is printed in octal and symbolically +.Pp +.It ts%d: hard error bn%d xs0=%b. +A hard error occurred on the tape +at block +.Em bn ; +status register 0 is printed in octal and symbolically decoded as bits. -.SH BUGS -If any non-data error is encountered on non-raw tape, it refuses to do anything -more until closed. -.PP -The device lives at the same address as a tm-11 -.IR tm (4); +.El +.Sh SEE ALSO +.Xr mt 1 , +.Xr tar 1 , +.Xr tp 1 , +.Xr mtio 4 , +.Xr ht 4 , +.Xr tm 4 , +.Xr mt 4 , +.Xr ut 4 +.Sh HISTORY +The +.Nm +driver appeared in +.Bx 4.1 . +.Sh BUGS +May hang ungracefully if a physical error (non-data) occurs. +.Pp +The device lives at the same address as a +.Tn TM-11 +.Pq Xr tm 4 ; as it is very difficult to get this device to interrupt, a generic -system assumes that a ts is present whenever no tm-11 exists but -the csr responds and a ts-11 is configured. -This does no harm as long as a non-existent ts-11 is not accessed. +system assumes that a +.Nm ts +is present whenever no +.Tn TM-11 +exists but +the +.Tn CSR +responds and a +.Tn TS-11 +is configured. +This does no harm as long as a non-existent +.Tn TS-11 +is not accessed. diff --git a/usr/src/share/man/man4/man4.vax/tu.4 b/usr/src/share/man/man4/man4.vax/tu.4 index 37e4adcbce..cd15369bcc 100644 --- a/usr/src/share/man/man4/man4.vax/tu.4 +++ b/usr/src/share/man/man4/man4.vax/tu.4 @@ -1,84 +1,139 @@ -.\" Copyright (c) 1980 Regents of the University of California. -.\" All rights reserved. The Berkeley software License Agreement -.\" specifies the terms and conditions for redistribution. +.\" Copyright (c) 1980, 1991 Regents of the University of California. +.\" All rights reserved. .\" -.\" @(#)tu.4 6.1 (Berkeley) %G% +.\" %sccs.include.redist.man% .\" -.TH TU 4 "" -.UC 4 -.SH NAME -tu \- VAX-11/730 and VAX-11/750 TU58 console cassette interface -.SH SYNOPSIS -.B "options MRSP" -(for VAX-11/750's with an MRSP prom) -.SH DESCRIPTION +.\" @(#)tu.4 6.2 (Berkeley) %G% +.\" +.Dd +.Dt TU 4 vax +.Os BSD 4 +.Sh NAME +.Nm tu +.Nd +.Tn VAX-11/730 +and +.Tn VAX-11/750 +.Tn TU58 +console cassette interface +.Sh SYNOPSIS +.Cd "options MRSP" +(for +.Tn VAX-11/750 Ns 's +with an +.Tn MRSP +prom) +.Sh DESCRIPTION The -.I tu -interface provides access to the VAX 11/730 and 11/750 TU58 console +.Nm tu +interface provides access to the +.Tn VAX +11/730 and 11/750 +.Tn TU58 +console cassette drive(s). -.PP -The interface supports only block i/o to the TU58 cassettes. +.Pp +The interface supports only block +.Tn I/O +to the +.Tn TU58 +cassettes. The devices are normally manipulated with the -.IR arff (8V) +.Xr arff 8 program using the ``f'' and ``m'' options. -.PP +.Pp The device driver is automatically included when a system is configured to run on an 11/730 or 11/750. -.PP -The TU58 on an 11/750 uses the Radial Serial Protocol (RSP) +.Pp +The +.Tn TU58 +on an 11/750 uses the Radial Serial Protocol +.Pq Tn RSP to communicate with the cpu over a serial line. This protocol is inherently unreliable as it has no flow control measures built in. On an 11/730 the Modified Radial Serial Protocol is used. This protocol incorporates flow control measures which insure reliable data transfer between the cpu and the device. Certain 11/750's have -been modified to use the MRSP prom used in the 11/730. -To reliably use the console TU58 on an 11/750 under UNIX, -the MRSP prom is required. For those 11/750's without -an MRSP prom, an unreliable but often +been modified to use the +.Tn MRSP +prom used in the 11/730. +To reliably use the console +.Tn TU58 +on an 11/750 under +.Tn UNIX , +the +.Tn MRSP +prom is required. For those 11/750's without +an +.Tn MRSP +prom, an unreliable but often useable interface has been developed. This interface uses an assembly language ``pseudo-dma'' routine to minimize the receiver interrupt service latency. To include this code in -the system, the configuration must \fBnot\fP specify the -system will run on an 11/730 or use an MRSP prom. +the system, the configuration must +.Em not +specify the +system will run on an 11/730 or use an +.Tn MRSP +prom. This unfortunately makes it impossible to configure a -single system which will properly handle TU58's on both an 11/750 -and an 11/730 (unless both machines have MRSP proms). -.SH FILES -.nf -.DT -/dev/tu0 -/dev/tu1 (only on a VAX-11/730) -.fi -.SH "SEE ALSO" -arff(8V) -.SH DIAGNOSTICS -.BR "tu%d: no bp, active %d" . +single system which will properly handle +.Tn TU58 Ns 's +on both an 11/750 +and an 11/730 (unless both machines have +.Tn MRSP +proms). +.Sh FILES +.Bl -tag -width /dev/tu0xx -compact +.It Pa /dev/tu0 +.It Pa /dev/tu1 +(only on a +.Tn VAX Ns \-11/730) +.El +.Sh DIAGNOSTICS +.Bl -diag +.It tu%d: no bp, active %d. A transmission complete interrupt was received with no outstanding -i/o request. This indicates a hardware problem. -.PP -.BR "tu%d protocol error, state=%s, op=%x, cnt=%d, block=%d" . +.Tn I/O +request. This indicates a hardware problem. +.Pp +.It "tu%d protocol error, state=%s, op=%x, cnt=%d, block=%d." The driver entered an illegal state. The information printed indicates the illegal state, operation currently being executed, -the i/o count, and the block number on the cassette. -.PP -.BR "tu%d receive state error, state=%s, byte=%x" . +the +.Tn I/O +count, and the block number on the cassette. +.Pp +.It "tu%d receive state error, state=%s, byte=%x." The driver entered an illegal state in the receiver finite state machine. The state is shown along with the control byte of the received packet. -.PP -.BR "tu%d: read stalled" . +.Pp +.It tu%d: read stalled. A timer watching the controller detected no interrupt for an extended period while an operation was outstanding. This usually indicates that one or more receiver interrupts were lost and the transfer is restarted (11/750 only). -.PP -.BR "tu%d: hard error bn%d, pk_mod %o" . +.Pp +.It tu%d: hard error bn%d, pk_mod %o. The device returned a status code indicating a hard error. The actual error code is shown in octal. No retries are attempted by the driver. -.SH BUGS -The VAX-11/750 console interface without MRSP prom is unuseable +.El +.Sh SEE ALSO +.Xr arff 8 +.Sh HISTORY +The +.Nm +driver appeared in +.Bx 4.1 . +.Sh BUGS +The +.Tn VAX Ns \-11/750 +console interface without +.Tn MRSP +prom is unuseable while the system is multi-user; it should be used only with the system running single-user and, even then, with caution. diff --git a/usr/src/share/man/man4/man4.vax/uda.4 b/usr/src/share/man/man4/man4.vax/uda.4 index 4b1914f153..9fdc99a96b 100644 --- a/usr/src/share/man/man4/man4.vax/uda.4 +++ b/usr/src/share/man/man4/man4.vax/uda.4 @@ -1,63 +1,68 @@ -.\" Copyright (c) 1980, 1987 Regents of the University of California. -.\" All rights reserved. The Berkeley software License Agreement -.\" specifies the terms and conditions for redistribution. +.\" Copyright (c) 1980, 1987, 1991 Regents of the University of California. +.\" All rights reserved. .\" -.\" @(#)uda.4 6.5 (Berkeley) %G% +.\" %sccs.include.redist.man% .\" -.TH UDA 4 "" -.UC 4 -.SH NAME -uda \- UDA50 disk controller interface -.SH SYNOPSIS -.B "controller uda0 at uba0 csr 0172150 vector udaintr" -.br -.B "disk ra0 at uda0 drive 0" -.br -.B "options MSCP_PARANOIA" -.SH DESCRIPTION -This is a driver for the DEC UDA50 disk controller and other -compatible controllers. The UDA50 communicates with the host through -a packet protocol known as the Mass Storage Control Protocol (MSCP). +.\" @(#)uda.4 6.6 (Berkeley) %G% +.\" +.Dd +.Dt UDA 4 vax +.Os BSD 4 +.Sh NAME +.Nm uda +.Nd +.Tn UDA50 +disk controller interface +.Sh SYNOPSIS +.Cd "controller uda0 at uba0 csr 0172150 vector udaintr" +.Cd "disk ra0 at uda0 drive 0" +.Cd "options MSCP_PARANOIA" +.Sh DESCRIPTION +This is a driver for the +.Tn DEC UDA50 +disk controller and other +compatible controllers. The +.Tn UDA50 +communicates with the host through +a packet protocol known as the Mass Storage Control Protocol +.Pq Tn MSCP . Consult the file -.RI < vax/mscp.h > +.Aq Pa vax/mscp.h for a detailed description of this protocol. -.PP -Files with minor device numbers 0 through 7 refer to various portions -of drive 0; minor devices 8 through 15 refer to drive 1, etc. The -standard device names begin with `ra' followed by the drive number -and then a letter a-h for partitions 0-7 respectively. -The character ? stands here for a drive number in the range 0-7. -.PP -The block files access the disk via the system's normal buffering -mechanism mechanism and may be read and written without regard to -physical disk records. There is also a `raw' interface which provides -for direct transmission between the disk and the user's read or write -buffer. A single read or write call results in exactly one I/O -operation and therefore raw I/O is considerably more efficient when -many words are transmitted. The names of the raw files conventionally -begin with an extra `r'. -.PP -In raw I/O counts should be a multiple of 512 bytes (a disk sector). -Likewise -.I seek -calls should specify a multiple of 512 bytes. -.PP +.Pp +The +.Nm uda +driver +is a typical block-device disk driver; see +.Xr physio 4 +for a description of block +.Tn I/O . +The script +.Xr MAKEDEV 8 +should be used to create the +.Nm uda +special files; should a special +file need to be created by hand, consult +.Xr mknod 8 . +.Pp The -.B MSCP_PARANOIA +.Dv MSCP_PARANOIA option enables runtime checking on all transfer completion responses -from the controller. This increases disk I/O overhead and may +from the controller. This increases disk +.Tn I/O +overhead and may be undesirable on slow machines, but is otherwise recommended. -.PP +.Pp The first sector of each disk contains both a first-stage bootstrap program and a disk label containing geometry information and partition layouts (see -.IR disklabel (5). +.Xr disklabel 5 ) . This sector is normally write-protected, and disk-to-disk copies should avoid copying this sector. The label may be updated with -.IR disklabel (8), +.Xr disklabel 8 , which can also be used to write-enable and write-disable the sector. The next 15 sectors contain a second-stage bootstrap program. -.SH "DISK SUPPORT" +.Sh DISK SUPPORT During autoconfiguration, as well as when a drive is opened after all partitions are closed, the first sector of the drive is examined for a disk label. @@ -72,14 +77,33 @@ drive are shown below. Not all partitions begin on cylinder boundaries, as on other drives, because previous drivers used one partition table for all drive types. Variants of the partition tables are common; check the driver and the file -.IR /etc/disktab ( disktab (5)) +.Pa /etc/disktab +.Pq Xr disktab 5 for other possibilities. -.PP -.nf -.ta .5i +\w'000000 'u +\w'000000 'u +\w'000000 'u +\w'000000 'u -.PP -RA60 partitions - disk start length +.Pp +Special file names begin with +.Sq Li ra +and +.Sq Li rra +for the block and character files respectively. The second +component of the name, a drive unit number in the range of zero to +seven, is represented by a +.Sq Li ? +in the disk layouts below. The last component of the name is the +file system partition +designated +by a letter from +.Sq Li a +to +.Sq Li h +and which corresponds to a minor device number set: zero to seven, +eight to 15, 16 to 23 and so forth for drive zero, drive two and drive +three respectively, (see +.Xr physio 4) . +The location and size (in sectors) of the partitions: +.Bl -column header diskx undefined length +.Tn RA60 No partitions +.Sy disk start length ra?a 0 15884 ra?b 15884 33440 ra?c 0 400176 @@ -88,9 +112,9 @@ RA60 partitions ra?f 49324 350852 ra?g 242606 157570 ra?h 49324 193282 -.PP -RA70 partitions - disk start length + +.Tn RA70 No partitions +.Sy disk start length ra?a 0 15884 ra?b 15972 33440 ra?c 0 547041 @@ -99,9 +123,9 @@ RA70 partitions ra?f 413457 133584 ra?g 341220 205821 ra?h 49731 29136 -.PP -RA80 partitions - disk start length + +.Tn RA80 No partitions +.Sy disk start length ra?a 0 15884 ra?b 15884 33440 ra?c 0 242606 @@ -109,9 +133,9 @@ RA80 partitions ra?f 49324 82080 same as 4.2BSD ra?g ra?g 49910 192696 ra?h 131404 111202 same as 4.2BSD -.PP -RA81 partitions - disk start length + +.Tn RA81 No partitions +.Sy disk start length ra?a 0 15884 ra?b 16422 66880 ra?c 0 891072 @@ -120,9 +144,9 @@ RA81 partitions ra?f 699720 191352 ra?g 375564 515508 ra?h 83538 291346 -.PP -RA81 partitions with 4.2BSD-compatible partitions - disk start length + +.Tn RA81 No partitions with 4.2BSD-compatible partitions +.Sy disk start length ra?a 0 15884 ra?b 16422 66880 ra?c 0 891072 @@ -131,9 +155,9 @@ RA81 partitions with 4.2BSD-compatible partitions ra?f 412490 478582 same as 4.2BSD ra?f ra?g 375564 515508 ra?h 83538 291346 -.PP -RA82 partitions - disk start length + +.Tn RA82 No partitions +.Sy disk start length ra?a 0 15884 ra?b 16245 66880 ra?c 0 1135554 @@ -142,245 +166,283 @@ RA82 partitions ra?f 669390 466164 ra?g 375345 760209 ra?h 83790 291346 -.DT -.fi -.PP +.El +.Pp The ra?a partition is normally used for the root file system, the ra?b partition as a paging area, and the ra?c partition for pack-pack copying (it maps the entire disk). -.SH FILES -/dev/ra[0-9][a-f] -.br -/dev/rra[0-9][a-f] -.SH SEE ALSO -disklabel(5), disklabel(8) -.SH DIAGNOSTICS -.TP -panic: udaslave +.Sh FILES +.Bl -tag -width /dev/rra[0-9][a-f] -compact +.It Pa /dev/ra[0-9][a-f] +.It Pa /dev/rra[0-9][a-f] +.El +.Sh DIAGNOSTICS +.Bl -diag +.It "panic: udaslave" No command packets were available while the driver was looking for disk drives. The controller is not extending enough credits to use the drives. -.TP -uda%d: no response to Get Unit Status request +.Pp +.It "uda%d: no response to Get Unit Status request" A disk drive was found, but did not respond to a status request. This is either a hardware problem or someone pulling unit number plugs very fast. -.TP -uda%d: unit %d off line +.Pp +.It "uda%d: unit %d off line" While searching for drives, the controller found one that seems to be manually disabled. It is ignored. -.TP -uda%d: unable to get unit status +.Pp +.It "uda%d: unable to get unit status" Something went wrong while trying to determine the status of a disk drive. This is followed by an error detail. -.TP -uda%d: unit %d, next %d +.Pp +.It uda%d: unit %d, next %d This probably never happens, but I wanted to know if it did. I have no idea what one should do about it. -.TP -uda%d: cannot handle unit number %d (max is %d) +.Pp +.It "uda%d: cannot handle unit number %d (max is %d)" The controller found a drive whose unit number is too large. Valid unit numbers are those in the range [0..7]. -.TP -ra%d: don't have a partition table for %s; using (s,t,c)=(%d,%d,%d) +.Pp +.It "ra%d: don't have a partition table for %s; using (s,t,c)=(%d,%d,%d)" The controller found a drive whose media identifier (e.g. `RA 25') does not have a default partition table. A temporary partition table containing only an `a' partition has been created covering the entire disk, which has the indicated numbers of sectors per track (s), tracks per cylinder (t), and total cylinders (c). Give the pack a label with the -.I disklabel +.Xr disklabel utility. -.TP -uda%d: uballoc map failed +.Pp +.It "uda%d: uballoc map failed" Unibus resource map allocation failed during initialisation. This can only happen if you have 496 devices on a Unibus. -.TP -uda%d: timeout during init +.Pp +.It uda%d: timeout during init The controller did not initialise within ten seconds. A hardware problem, but it sometimes goes away if you try again. -.TP -uda%d: init failed, sa=%b +.Pp +.It uda%d: init failed, sa=%b The controller refused to initalise. -.TP -uda%d: controller hung +.Pp +.It uda%d: controller hung The controller never finished initialisation. Retrying may sometimes fix it. -.TP -ra%d: drive will not come on line +.Pp +.It ra%d: drive will not come on line The drive will not come on line, probably because it is spun down. This should be preceded by a message giving details as to why the drive stayed off line. -.TP -uda%d: still hung +.Pp +.It uda%d: still hung When the controller hangs, the driver occasionally tries to reinitialise it. This means it just tried, without success. -.TP -panic: udastart: bp==NULL +.Pp +.It panic: udastart: bp==NULL A bug in the driver has put an empty drive queue on a controller queue. -.TP -uda%d: command ring too small -If you increase NCMDL2, you may see a performance improvement. -(See /sys/vaxuba/uda.c.) -.TP -panic: udastart +.Pp +.It uda%d: command ring too small +If you increase +.Dv NCMDL2 , +you may see a performance improvement. +(See +.Pa /sys/vaxuba/uda.c . ) +.Pp +.It panic: udastart A drive was found marked for status or on-line functions while performing status or on-line functions. This indicates a bug in the driver. -.TP -uda%d: controller error, sa=0%o (%s) +.Pp +.It "uda%d: controller error, sa=0%o (%s)" The controller reported an error. The error code is printed in octal, along with a short description if the code is known (see the -.IR "UDA50 Maintenance Guide" , -DEC part number AA-M185B-TC, pp. 18-22). +.%T UDA50 Maintenance Guide , +.Tn DEC +part number +.Tn AA-M185B-TC , +pp. 18-22). If this occurs during normal -operation, the driver will reset it and retry pending I/O. If +operation, the driver will reset it and retry pending +.Tn I/O . +If it occurs during configuration, the controller may be ignored. -.TP -uda%d: stray intr +.Pp +.It uda%d: stray intr The controller interrupted when it should have stayed quiet. The interrupt has been ignored. -.TP -uda%d: init step %d failed, sa=%b +.Pp +.It "uda%d: init step %d failed, sa=%b" The controller reported an error during the named initialisation step. The driver will retry initialisation later. -.TP -uda%d: version %d model %d +.Pp +.It uda%d: version %d model %d An informational message giving the revision level of the controller. -.TP -uda%d: DMA burst size set to %d -An informational message showing the DMA burst size, in words. -.TP -panic: udaintr -Indicates a bug in the generic MSCP code. -.TP -uda%d: driver bug, state %d +.Pp +.It uda%d: DMA burst size set to %d +An informational message showing the +.Tn DMA +burst size, in words. +.Pp +.It panic: udaintr +Indicates a bug in the generic +.Tn MSCP +code. +.Pp +.It uda%d: driver bug, state %d The driver has a bogus value for the controller state. Something is quite wrong. This is immediately followed by a `panic: udastate'. -.TP -uda%d: purge bdp %d +.Pp +.It uda%d: purge bdp %d A benign message tracing BDP purges. I have been trying to figure out what BDP purges are for. You might want to comment out this call to log() in /sys/vaxuba/uda.c. -.TP -.RI "uda%d: SETCTLRC failed: " detail +.Pp +.It uda%d: SETCTLRC failed: `detail' The Set Controller Characteristics command (the last part of the controller initialisation sequence) failed. The -.I detail +.Em detail message tells why. -.TP -.RI "uda%d: attempt to bring ra%d on line failed: " detail +.Pp +.It "uda%d: attempt to bring ra%d on line failed: `detail'" The drive could not be brought on line. The -.I detail +.Em detail message tells why. -.TP -uda%d: ra%d: unknown type %d +.Pp +.It uda%d: ra%d: unknown type %d The type index of the named drive is not known to the driver, so the drive will be ignored. -.TP -ra%d: changed types! was %d now %d -A drive somehow changed from one kind to another, e.g., from an RA80 -to an RA60. The numbers printed are the encoded media identifiers (see -.RI < vax/mscp.h > +.Pp +.It "ra%d: changed types! was %d now %d" +A drive somehow changed from one kind to another, e.g., from an +.Tn RA80 +to an +.Tn RA60 . +The numbers printed are the encoded media identifiers (see +.Ao Pa vax/mscp.h Ac for the encoding). The driver believes the new type. -.TP -ra%d: uda%d, unit %d, size = %d sectors +.Pp +.It "ra%d: uda%d, unit %d, size = %d sectors" The named drive is on the indicated controller as the given unit, and has that many sectors of user-file area. This is printed during configuration. -.TP -.RI "uda%d: attempt to get status for ra%d failed: " detail +.Pp +.It "uda%d: attempt to get status for ra%d failed: `detail'" A status request failed. The -.I detail +.Em detail message should tell why. -.TP -ra%d: bad block report: %d +.Pp +.It ra%d: bad block report: %d The drive has reported the given block as bad. If there are multiple bad blocks, the drive will report only the first; in this case this -message will be followed by `+ others'. Get DEC to forward the -block with EVRLK. -.TP -ra%d: serious exception reported +message will be followed by `+ others'. Get +.Tn DEC +to forward the +block with +.Tn EVRLK . +.Pp +.It ra%d: serious exception reported I have no idea what this really means. -.TP -panic: udareplace -The controller reported completion of a REPLACE operation. The -driver never issues any REPLACEs, so something is wrong. -.TP -panic: udabb -The controller reported completion of bad block related I/O. The +.Pp +.It panic: udareplace +The controller reported completion of a +.Tn REPLACE +operation. The +driver never issues any +.Tn REPLACE Ns s , +so something is wrong. +.Pp +.It panic: udabb +The controller reported completion of bad block related +.Tn I/O . +The driver never issues any such, so something is wrong. -.TP -uda%d: lost interrupt +.Pp +.It uda%d: lost interrupt The controller has gone out to lunch, and is being reset to try to bring it back. -.TP -panic: mscp_go: AEB_MAX_BP too small -You defined AVOID_EMULEX_BUG and increased NCMDL2 and Emulex has -new firmware. Raise AEB_MAX_BP or turn off AVOID_EMULEX_BUG. -.TP -uda%d: unit %d: unknown message type 0x%x ignored +.Pp +.It panic: mscp_go: AEB_MAX_BP too small +You defined +.Dv AVOID_EMULEX_BUG +and increased +.Dv NCMDL2 +and Emulex has +new firmware. Raise +.Dv AEB_MAX_BP +or turn off +.Dv AVOID_EMULEX_BUG . +.Pp +.It "uda%d: unit %d: unknown message type 0x%x ignored" The controller responded with a mysterious message type. See -/sys/vax/mscp.h for a list of known message types. This is probably +.Pa /sys/vax/mscp.h +for a list of known message types. This is probably a controller hardware problem. -.TP -uda%d: unit %d out of range +.Pp +.It "uda%d: unit %d out of range" The disk drive unit number (the unit plug) is higher than the maximum number the driver allows (currently 7). -.TP -uda%d: unit %d not configured, \fImessage\fP ignored +.Pp +.It "uda%d: unit %d not configured, message ignored" The named disk drive has announced its presence to the controller, but was not, or cannot now be, configured into the running system. -.I Message +.Em Message is one of `available attention' (an `I am here' message) or `stray response op 0x%x status 0x%x' (anything else). -.TP -ra%d: bad lbn (%d)? +.Pp +.It ra%d: bad lbn (%d)? The drive has reported an invalid command error, probably due to an invalid block number. If the lbn value is very much greater than the size reported by the drive, this is the problem. It is probably due to an improperly configured partition table. Other invalid commands indicate a bug in the driver, or hardware trouble. -.TP -ra%d: duplicate ONLINE ignored +.Pp +.It ra%d: duplicate ONLINE ignored The drive has come on-line while already on-line. This condition can probably be ignored (and has been). -.TP -ra%d: io done, but no buffer? -Hardware trouble, or a bug; the drive has finished an I/O request, +.Pp +.It ra%d: io done, but no buffer? +Hardware trouble, or a bug; the drive has finished an +.Tn I/O +request, but the response has an invalid (zero) command reference number. -.TP -Emulex SC41/MS screwup: uda%d, got %d correct, then -.br -.ti -5 -changed 0x%x to 0x%x -.br -You turned on AVOID_EMULEX_BUG, and the driver successfully +.Pp +.It "Emulex SC41/MS screwup: uda%d, got %d correct, then changed 0x%x to 0x%x" +You turned on +.Dv AVOID_EMULEX_BUG , +and the driver successfully avoided the bug. The number of correctly-handled requests is reported, along with the expected and actual values relating to the bug being avoided. -.TP -panic: unrecoverable Emulex screwup -You turned on AVOID_EMULEX_BUG, but Emulex was too clever and -avoided the avoidance. Try turning on MSCP_PARANOIA instead. -.TP -uda%d: bad response packet ignored -You turned on MSCP_PARANOIA, and the driver caught the controller in +.Pp +.It panic: unrecoverable Emulex screwup +You turned on +.Dv AVOID_EMULEX_BUG , +but Emulex was too clever and +avoided the avoidance. Try turning on +.Dv MSCP_PARANOIA +instead. +.Pp +.It uda%d: bad response packet ignored +You turned on +.Dv MSCP_PARANOIA , +and the driver caught the controller in a lie. The lie has been ignored, and the controller will soon be reset (after a `lost' interrupt). This is followed by a hex dump of the offending packet. -.TP -ra%d: bogus REPLACE end +.Pp +.It ra%d: bogus REPLACE end The drive has reported finishing a bad sector replacement, but the driver never issues bad sector replacement commands. The report is ignored. This is likely a hardware problem. -.TP -ra%d: unknown opcode 0x%x status 0x%x ignored +.Pp +.It "ra%d: unknown opcode 0x%x status 0x%x ignored" The drive has reported something that the driver cannot understand. -Perhaps DEC has been inventive, or perhaps your hardware is ill. +Perhaps +.Tn DEC +has been inventive, or perhaps your hardware is ill. This is followed by a hex dump of the offending packet. -.TP -\fBra%d%c: hard error %sing fsbn %d [of %d-%d] (ra%d bn %d cn %d tn %d sn %d)\fP. +.Pp +.It "ra%d%c: hard error %sing fsbn %d [of %d-%d] (ra%d bn %d cn %d tn %d sn %d)." An unrecoverable error occurred during transfer of the specified filesystem block number(s), which are logical block numbers on the indicated partition. @@ -388,8 +450,8 @@ If the transfer involved multiple blocks, the block range is printed as well. The parenthesized fields list the actual disk sector number relative to the beginning of the drive, as well as the cylinder, track and sector number of the block. -.TP -uda%d: %s error datagram +.Pp +.It uda%d: %s error datagram The controller has reported some kind of error, either `hard' (unrecoverable) or `soft' (recoverable). If the controller is going on (attempting to fix the problem), this message includes the remark @@ -397,20 +459,20 @@ The controller has reported some kind of error, either `hard' are hard errors. This message may be followed by one of the following 5 messages, depending on its type, and will always be followed by a failure detail message (also listed below). -.RS -.TP -memory addr 0x%x +.Bd -filled -offset indent +.It memory addr 0x%x A host memory access error; this is the address that could not be read. -.TP -unit %d: level %d retry %d, %s %d +.Pp +.It "unit %d: level %d retry %d, %s %d" A typical disk error; the retry count and error recovery levels are printed, along with the block type (`lbn', or logical block; or `rbn', -or replacement block) and number. If the string is something else, DEC +or replacement block) and number. If the string is something else, +.Tn DEC has been clever, or your hardware has gone to Australia for vacation (unless you live there; then it might be in New Zealand, or Brazil). -.TP -unit %d: %s %d +.Pp +.It unit %d: %s %d Also a disk error, but an `SDI' error, whatever that is. (I doubt it has anything to do with Ronald Reagan.) This lists the block type (`lbn' or `rbn') and number. This is followed by a second @@ -418,59 +480,62 @@ message indicating a microprocessor error code and a front panel code. These latter codes are drive-specific, and are intended to be used by field service as an aid in locating failing hardware. The codes for RA81s can be found in the -.IR "RA81 Maintenance Guide" , +.%T RA81 Maintenance Guide , DEC order number AA-M879A-TC, in appendices E and F. -.TP -unit %d: small disk error, cyl %d +.Pp +.It "unit %d: small disk error, cyl %d" Yet another kind of disk error, but for small disks. (`That's what it says, guv'nor. Dunnask me what it means.') -.TP -unit %d: unknown error, format 0x%x +.Pp +.It "unit %d: unknown error, format 0x%x" A mysterious error: the given format code is not known. -.RE -.PP +.Ed +.Pp The detail messages are as follows: -.RS -.TP -success (%s) (code 0, subcode %d) +.Bd -filled -offset indent +.It success (%s) (code 0, subcode %d) Everything worked, but the controller thought it would let you know that something went wrong. No matter what subcode, this can probably be ignored. -.TP -invalid command (%s) (code 1, subcode %d) +.Pp +.It "invalid command (%s) (code 1, subcode %d)" This probably cannot occur unless the hardware is out; %s should be `invalid msg length', meaning some command was too short or too long. -.TP -command aborted (unknown subcode) (code 2, subcode %d) +.Pp +.It "command aborted (unknown subcode) (code 2, subcode %d)" This should never occur, as the driver never aborts commands. -.TP -unit offline (%s) (code 3, subcode %d) +.Pp +.It "unit offline (%s) (code 3, subcode %d)" The drive is offline, either because it is not around (`unknown drive'), stopped (`not mounted'), out of order (`inoperative'), has the same unit number as some other drive (`duplicate'), or has been disabled for diagnostics (`in diagnosis'). -.TP -unit available (unknown subcode) (code 4, subcode %d) +.Pp +.It "unit available (unknown subcode) (code 4, subcode %d)" The controller has decided to report a perfectly normal event as an error. (Why?) -.TP -media format error (%s) (code 5, subcode %d) +.Pp +.It "media format error (%s) (code 5, subcode %d)" The drive cannot be used without reformatting. The Format Control Table cannot be read (`fct unread - edc'), there is a bad sector header (`invalid sector header'), the drive is not set for 512-byte sectors (`not 512 sectors'), the drive is not formatted (`not formatted'), -or the FCT has an uncorrectable ECC error (`fct ecc'). -.TP -write protected (%s) (code 6, subcode %d) +or the +.Tn FCT +has an uncorrectable +.Tn ECC +error (`fct ecc'). +.Pp +.It "write protected (%s) (code 6, subcode %d)" The drive is write protected, either by the front panel switch (`hardware') or via the driver (`software'). The driver never sets software write protect. -.TP -compare error (unknown subcode) (code 7, subcode %d) +.Pp +.It "compare error (unknown subcode) (code 7, subcode %d)" A compare operation showed some sort of difference. The driver never uses compare operations. -.TP -data error (%s) (code 7, subcode %d) +.Pp +.It "data error (%s) (code 7, subcode %d)" Something went wrong reading or writing a data sector. A `forced error' is a software-asserted error used to mark a sector that contains suspect data. Rewriting the sector will clear the forced error. This @@ -479,25 +544,28 @@ no bad block replacement, so these should not occur. A `header compare' error probably means the block is shot. A `sync timeout' presumably has something to do with sector synchronisation. An `uncorrectable ecc' error is an ordinary data error that cannot -be fixed via ECC logic. A `%d symbol ecc' error is a data error -that can be (and presumably has been) corrected by the ECC logic. +be fixed via +.Tn ECC +logic. A `%d symbol ecc' error is a data error +that can be (and presumably has been) corrected by the +.Tn ECC +logic. It might indicate a sector that is imperfect but usable, or that is starting to go bad. If any of these errors recur, the sector may need to be replaced. -.TP -host buffer access error (%s) (code %d, subcode %d) +.Pp +.It "host buffer access error (%s) (code %d, subcode %d)" Something went wrong while trying to copy data to or from the host (Vax). The subcode is one of `odd xfer addr', `odd xfer count', `non-exist. memory', or `memory parity'. The first two could be a software glitch; the last two indicate hardware problems. -.TP -controller error (%s) (code %d, subcode %d) +.It controller error (%s) (code %d, subcode %d) The controller has detected a hardware error in itself. A `serdes overrun' is a serialiser / deserialiser overrun; `edc' probably stands for `error detection code'; and `inconsistent internal data struct' is obvious. -.TP -drive error (%s) (code %d, subcode %d) +.Pp +.It "drive error (%s) (code %d, subcode %d)" Either the controller or the drive has detected a hardware error in the drive. I am not sure what an `sdi command timeout' is, but these seem to occur benignly on occasion. A `ctlr detected protocol' @@ -509,4 +577,13 @@ means that the drive clock logic is bad, or the media is hopelessly scrambled. I have no idea what `lost recvr ready' means. A `drive detected error' is a catch-all for drive hardware trouble; `ctlr detected pulse or parity' errors are often caused by cabling problems. -.RE +.Ed +.El +.Sh SEE ALSO +.Xr disklabel 5 , +.Xr disklabel 8 +.Sh HISTORY +The +.Nm +driver appeared in +.Bx 4.2 . diff --git a/usr/src/share/man/man4/man4.vax/up.4 b/usr/src/share/man/man4/man4.vax/up.4 index e7a83d29b0..fb692e78af 100644 --- a/usr/src/share/man/man4/man4.vax/up.4 +++ b/usr/src/share/man/man4/man4.vax/up.4 @@ -1,61 +1,84 @@ -.\" Copyright (c) 1980,1988 Regents of the University of California. -.\" All rights reserved. The Berkeley software License Agreement -.\" specifies the terms and conditions for redistribution. +.\" Copyright (c) 1980,1988, 1991 Regents of the University of California. +.\" All rights reserved. .\" -.\" @(#)up.4 6.3 (Berkeley) %G% +.\" %sccs.include.redist.man% .\" -.TH UP 4 "" -.UC 4 -.SH NAME -up \- unibus storage module controller/drives -.SH SYNOPSIS -.B "controller sc0 at uba? csr 0176700 vector upintr -.br -.B "disk up0 at sc0 drive 0" -.SH DESCRIPTION -This is a generic UNIBUS storage module disk driver. +.\" @(#)up.4 6.4 (Berkeley) %G% +.\" +.Dd +.Dt UP 4 vax +.Os BSD 4 +.Sh NAME +.Nm up +.Nd unibus storage module controller/drives +.Sh SYNOPSIS +.Cd "controller sc0 at uba? csr 0176700 vector upintr +.Cd "disk up0 at sc0 drive 0" +.Sh DESCRIPTION +This is a generic +.Tn UNIBUS +storage module disk driver. It is specifically designed to work with the -Emulex SC-21 and SC-31 controllers. +Emulex +.Tn SC-21 +and +.Tn SC-31 +controllers. It can be easily adapted to other controllers (although bootstrapping will -not necessarily be directly possible.) -.PP -Files with minor device numbers 0 through 7 refer to various portions -of drive 0; -minor devices 8 through 15 refer to drive 1, etc. -The standard device names begin with ``up'' followed by -the drive number and then a letter a-h for partitions 0-7 respectively. -The character ? stands here for a drive number in the range 0-7. -.PP -The block files access the disk via the system's normal -buffering mechanism and may be read and written without regard to -physical disk records. There is also a `raw' interface -which provides for direct transmission between the disk -and the user's read or write buffer. -A single read or write call results in exactly one I/O operation -and therefore raw I/O is considerably more efficient when -many words are transmitted. The names of the raw files -conventionally begin with an extra `r.' -.PP -In raw I/O counts should be a multiple of 512 bytes (a disk sector). -Likewise -.I seek -calls should specify a multiple of 512 bytes. -.SH "DISK SUPPORT" +not necessarily be directly possible.) +.Pp +The script +.Xr MAKEDEV 8 +should be used to create the +.Nm up +special files; consult +.Xr mknod 8 +if a special file needs to be made manually. +It is recommended as a security precaution to not create special files +for devices which may never be installed. +.Sh DISK SUPPORT The driver interrogates the controller's holding register to determine the type of drive attached. The driver recognizes seven different drives: -CDC 9762, CDC 9766, -AMPEX DM980, AMPEX 9300, AMPEX Capricorn, -FUJITSU 160, and FUJITSU Eagle +.Tn CDC +9762, +.Tn CDC +9766, +.Tn AMPEX DM Ns 980 , +.Tn AMPEX +9300, +.Tn AMPEX +Capricorn, +.Tn FUJITSU +160, and +.Tn FUJITSU +Eagle (the Eagle is not supported by the SC-21). -The origin and size of the pseudo-disks on each drive are -as follows: -.PP -.nf -.ta .5i +\w'000000 'u +\w'000000 'u +\w'000000 'u -CDC 9762 partitions - disk start length cyls +.Pp +Special file names begin with +.Sq Li up +and +.Sq Li rup +for the block and character files respectively. The second +component of the name, a drive unit number in the range of zero to +seven, is represented by a +.Sq Li ? +in the disk layouts below. The last component of the name, the +file system partition, is +designated by a letter from +.Sq Li a +to +.Sq Li h +which also corresponds to a minor device number set: zero to seven, +eight to 15, 16 to 23 and so forth for drive zero, drive two and drive +three respectively (see +.Xr physio 4 ) . +The location and size (in 512 byte sectors) of the +partitions for the above drives: +.Bl -column header diskx undefined length +.Tn CDC No 9762 partitions +.Sy disk start length cyls hp?a 0 15884 0-99 hp?b 16000 33440 100-309 hp?c 0 131680 0-822 @@ -63,9 +86,9 @@ CDC 9762 partitions hp?e 65440 55936 409-758 hp?f 121440 10080 759-822 hp?g 49600 82080 309-822 -.PP -CDC 9766 300M drive partitions: - disk start length cyl + +.Tn CDC No 9766 300M drive partitions: +.Sy disk start length cyl up?a 0 15884 0-26 up?b 16416 33440 27-81 up?c 0 500384 0-822 @@ -74,9 +97,9 @@ CDC 9766 300M drive partitions: up?f 414048 861760 681-822 up?g 341696 158528 562-822 up?h 49856 291346 82-561 -.PP -AMPEX DM980 partitions - disk start length cyls + +.Tn AMPEX DM Ns No 980 partitions +.Sy disk start length cyls hp?a 0 15884 0-99 hp?b 16000 33440 100-309 hp?c 0 131680 0-822 @@ -84,9 +107,9 @@ AMPEX DM980 partitions hp?e 65440 55936 409-758 hp?f 121440 10080 759-822 hp?g 49600 82080 309-822 -.PP -AMPEX 9300 300M drive partitions: - disk start length cyl + +.Tn AMPEX No 9300 300M drive partitions: +.Sy disk start length cyl up?a 0 15884 0-26 up?b 16416 33440 27-81 up?c 0 495520 0-814 @@ -95,9 +118,9 @@ AMPEX 9300 300M drive partitions: up?f 414048 81312 681-814 up?g 341696 153664 562-814 up?h 49856 291346 82-561 -.PP -AMPEX Capricorn 330M drive partitions: - disk start length cyl + +.Tn AMPEX No Capricorn 330M drive partitions: +.Sy disk start length cyl hp?a 0 15884 0-31 hp?b 16384 33440 32-97 hp?c 0 524288 0-1023 @@ -106,9 +129,9 @@ AMPEX Capricorn 330M drive partitions: hp?f 414720 109408 810-1023 hp?g 342016 182112 668-1023 hp?h 50176 291346 98-667 -.PP -FUJITSU 160M drive partitions: - disk start length cyl + +.Tn FUJITSU No 160M drive partitions: +.Sy disk start length cyl up?a 0 15884 0-49 up?b 16000 33440 50-154 up?c 0 263360 0-822 @@ -116,9 +139,9 @@ FUJITSU 160M drive partitions: up?e 65600 55936 205-379 up?f 121600 141600 380-822 up?g 49600 213600 155-822 -.PP -FUJITSU Eagle partitions - disk start length cyls + +.Tn FUJITSU No Eagle partitions +.Sy disk start length cyls hp?a 0 15884 0-16 hp?b 16320 66880 17-86 hp?c 0 808320 0-841 @@ -127,26 +150,24 @@ FUJITSU Eagle partitions hp?f 698880 109248 728-841 hp?g 375360 432768 391-841 hp?h 83520 291346 87-390 -.DT -.fi -.PP -It is unwise for all of these files to be present in one installation, -since there is overlap in addresses and protection becomes -a sticky matter. +.El +.Pp The up?a partition is normally used for the root file system, the up?b partition as a paging area, and the up?c partition for pack-pack copying (it maps the entire disk). On 160M drives the up?g partition maps the rest of the pack. On other drives both up?g and up?h are used to map the remaining cylinders. -.SH FILES -/dev/up[0-7][a-h] block files -.br -/dev/rup[0-7][a-h] raw files -.SH SEE ALSO -hk(4), hp(4), uda(4) -.SH DIAGNOSTICS -\fBup%d%c: hard error %sing fsbn %d[-%d] cs2=%b er1=%b er2=%b\fR. +.Sh FILES +.Bl -tag -width Pa -compact +.It Pa /dev/up[0-7][a-h] +block files +.It Pa /dev/rup[0-7][a-h] +raw files +.El +.Sh DIAGNOSTICS +.Bl -diag +.It "up%d%c: hard error %sing fsbn %d[-%d] cs2=%b er1=%b er2=%b." An unrecoverable error occurred during transfer of the specified filesystem block number(s), which are logical block numbers on the indicated partition. @@ -155,19 +176,22 @@ in octal and symbolically with bits decoded. The error was either unrecoverable, or a large number of retry attempts (including offset positioning and drive recalibration) could not recover the error. -.PP -\fBup%d: write locked\fR. The write protect switch was set on the drive +.Pp +.It "up%d: write locked." +The write protect switch was set on the drive when a write was attempted. The write operation is not recoverable. -.PP -\fBup%d: not ready\fR. The drive was spun down or off line when it was +.Pp +.It "up%d: not ready." +The drive was spun down or off line when it was accessed. The i/o operation is not recoverable. -.PP -\fBup%d: not ready (flakey)\fR. The drive was not ready, but after +.Pp +.It "up%d: not ready (flakey)." +The drive was not ready, but after printing the message about being not ready (which takes a fraction of a second) was ready. The operation is recovered if no further errors occur. -.PP -\fBup%d%c: soft ecc reading fsbn %d[-%d]\fP. +.Pp +.It "up%d%c: soft ecc reading fsbn %d[-%d]." A recoverable ECC error occurred on the specified sector of the specified disk partition. This happens normally @@ -175,34 +199,33 @@ a few times a week. If it happens more frequently than this the sectors where the errors are occurring should be checked to see if certain cylinders on the pack, spots on the carriage of the drive or heads are indicated. -.PP -\fBsc%d: lost interrupt\fR. A timer watching the controller detecting +.Pp +.It "sc%d: lost interrupt." +A timer watching the controller detecting no interrupt for an extended period while an operation was outstanding. This indicates a hardware or software failure. There is currently a hardware/software problem with spinning down drives while they are being accessed which causes this error to occur. -The error causes a UNIBUS reset, and retry of the pending operations. +The error causes a +.Tn UNIBUS +reset, and retry of the pending operations. If the controller continues to lose interrupts, this error will recur a few seconds later. -.SH BUGS -In raw I/O -.I read -and -.IR write (2) -truncate file offsets to 512-byte block boundaries, -and -.I write -scribbles on the tail of incomplete blocks. -Thus, -in programs that are likely to access raw devices, -.I read, write -and -.IR lseek (2) -should always deal in 512-byte multiples. -.PP +.El +.Sh SEE ALSO +.Xr hk 4 , +.Xr hp 4 , +.Xr uda 4 +.Sh HISTORY +The +.Nm up +driver appeared in +.Bx 4.0 . +.Sh BUGS +.Pp A program to analyze the logged error information (even in its present reduced form) is needed. -.PP +.Pp The partition tables for the file systems should be read off of each pack, as they are never quite what any single installation would prefer, and this would make packs more portable. diff --git a/usr/src/share/man/man4/man4.vax/ut.4 b/usr/src/share/man/man4/man4.vax/ut.4 index f2f2f1598f..772d7b774b 100644 --- a/usr/src/share/man/man4/man4.vax/ut.4 +++ b/usr/src/share/man/man4/man4.vax/ut.4 @@ -1,65 +1,81 @@ -.\" Copyright (c) 1983 Regents of the University of California. -.\" All rights reserved. The Berkeley software License Agreement -.\" specifies the terms and conditions for redistribution. +.\" Copyright (c) 1983, 1991 Regents of the University of California. +.\" All rights reserved. .\" -.\" @(#)ut.4 6.1 (Berkeley) %G% +.\" %sccs.include.redist.man% .\" -.TH UT 4 "" -.UC 5 -.SH NAME -ut \- UNIBUS TU45 tri-density tape drive interface -.SH SYNOPSIS -.B "controller ut0 at uba0 csr 0172440 vector utintr" -.br -.B "tape tj0 at ut0 drive 0" -.SH DESCRIPTION +.\" @(#)ut.4 6.2 (Berkeley) %G% +.\" +.Dd +.Dt UT 4 vax +.Os BSD 4.2 +.Sh NAME +.Nm ut +.Nd +.Tn UNIBUS TU45 +tri-density tape drive interface +.Sh SYNOPSIS +.Cd "controller ut0 at uba0 csr 0172440 vector utintr" +.Cd "tape tj0 at ut0 drive 0" +.Sh DESCRIPTION The -.I ut +.Nm ut interface provides access to a standard tape drive interface as describe in -.IR mtio (4). -Hardware implementing this on the VAX is typified by the System -Industries SI 9700 tape subsystem. Tapes may be read or written -at 800, 1600, and 6250 bpi. -.SH "SEE ALSO" -mt(1), -mtio(4) -.SH DIAGNOSTICS -.BR "tj%d: no write ring" . +.Xr mtio 4 . +Hardware implementing this on the +.Tn VAX +is typified by the System +Industries +.Tn SI +9700 tape subsystem. Tapes may be read or written +at 800, 1600, and 6250 +.Tn BPI . +.Sh DIAGNOSTICS +.Bl -diag +.It tj%d: no write ring. An attempt was made to write on the tape drive when no write ring was present; this message is written on the terminal of the user who tried to access the tape. -.PP -.BR "tj%d: not online" . +.Pp +.It tj%d: not online. An attempt was made to access the tape while it was offline; this message is written on the terminal of the user who tried to access the tape. -.PP -.BR "tj%d: can't change density in mid-tape" . +.Pp +.It tj%d: can't change density in mid-tape. An attempt was made to write on a tape at a different density than is already recorded on the tape. This message is written on the terminal of the user who tried to switch the density. -.PP -.BR "ut%d: soft error bn%d cs1=%b er=%b cs2=%b ds=%b" . +.Pp +.It "ut%d: soft error bn%d cs1=%b er=%b cs2=%b ds=%b." The formatter indicated a corrected error at a density other than 800bpi. The data transferred is assumed to be correct. -.PP -.BR "ut%d: hard error bn%d cs1=%b er=%b cs2=%b ds=%b" . +.Pp +.It "ut%d: hard error bn%d cs1=%b er=%b cs2=%b ds=%b." A tape error occurred at block -.IR bn . +.Pp +.It bn. Any error is fatal on non-raw tape; when possible the driver will have retried the operation which failed several times before reporting the error. -.PP -.BR "tj%d: lost interrupt" . +.Pp +.It tj%d: lost interrupt. A tape operation did not complete within a reasonable time, most likely because the tape was taken off-line during rewind or lost vacuum. The controller should, but does not, give an interrupt in these cases. The device will be made available again after this message, but any current open reference to the device will return an error as the operation in progress aborts. -.SH BUGS -If any non-data error is encountered on non-raw tape, it refuses to do anything -more until closed. +.El +.Sh SEE ALSO +.Xr mt 1 , +.Xr mtio 4 +.Sh HISTORY +The +.Nm +driver appeared in +.Bx 4.2 . +.Sh BUGS +May hang if a physical error (non-data) occurs. diff --git a/usr/src/share/man/man4/man4.vax/uu.4 b/usr/src/share/man/man4/man4.vax/uu.4 index 4d3f88fe78..59968261a8 100644 --- a/usr/src/share/man/man4/man4.vax/uu.4 +++ b/usr/src/share/man/man4/man4.vax/uu.4 @@ -1,87 +1,130 @@ -.\" Copyright (c) 1983 Regents of the University of California. -.\" All rights reserved. The Berkeley software License Agreement -.\" specifies the terms and conditions for redistribution. +.\" Copyright (c) 1983, 1991 Regents of the University of California. +.\" All rights reserved. .\" -.\" @(#)uu.4 6.1 (Berkeley) %G% +.\" %sccs.include.redist.man% .\" -.TH UU 4 "" -.UC 5 -.SH NAME -uu \- TU58/DECtape II UNIBUS cassette interface -.SH SYNOPSIS -.B "options UUDMA" -.br -.B "device uu0 at uba0 csr 0176500 vector uurintr uuxintr" -.SH DESCRIPTION +.\" @(#)uu.4 6.2 (Berkeley) %G% +.\" +.Dd +.Dt UU 4 vax +.Os BSD 4.2 +.Sh NAME +.Nm uu +.Nd +.Tn TU58 Ns / Tn DECtape II UNIBUS +cassette interface +.Sh SYNOPSIS +.Cd "options UUDMA" +.Cd "device uu0 at uba0 csr 0176500 vector uurintr uuxintr" +.Sh DESCRIPTION The -.I uu -device provides access to dual DEC TU58 tape cartridge drives -connected to the UNIBUS via a DL11-W interface module. -.PP -The interface supports only block i/o to the TU58 cassettes. +.Nm uu +device provides access to dual +.Tn DEC +.Tn TU58 +tape cartridge drives +connected to the +.Tn UNIBUS +via a +.Tn DL11-W +interface module. +.Pp +The interface supports only block +.Tn I/O +to the +.Tn TU58 +cassettes (see +.Xr physio 4 ) . The drives are normally manipulated with the -.IR arff (8V) +.Xr arff 8 program using the ``m'' and ``f'' options. -.PP +.Pp The driver provides for an optional write and verify (read after write) mode that is activated by specifying the ``a'' device. -.PP -The TU58 is treated as a single device by the system even -though it has two separate drives, ``uu0'' and ``uu1''. If there is -more than one TU58 unit on a system, the extra drives -are named ``uu2'', ``uu3'' etc. -.SH NOTES +.Pp +The +.Tn TU58 +is treated as a single device by the system even +though it has two separate drives, +.Sq Li uu0 +and +.Sq Li uu1 . +If there is +more than one +.Tn TU58 +unit on a system, the extra drives +are named +.Sq Li uu2 , +.Sq Li uu3 +etc. +.Sh NOTES Assembly language code to assist the driver in handling the receipt of data (using a pseudo-dma approach) should -be included when using this driver; specify ``options UUDMA'' +be included when using this driver; specify +.Sq Li options UUDMA in the configuration file. -.SH ERRORS -The following errors may be returned: -.TP 12 -[ENXIO] -Nonexistent drive (on open); -offset is too large or bad (undefined) ioctl code. -.TP -[EIO] -Open failed, the device could not be reset. -.TP -[EBUSY] -Drive in use. -.SH FILES -/dev/uu? -.br -/dev/uu?a -.SH SEE ALSO -tu(4), arff(8V) -.SH DIAGNOSTICS -.BR "uu%d: no bp, active %d" . +.Sh FILES +.Bl -tag -width /dev/uu?a -compact +.It Pa /dev/uu? +.It Pa /dev/uu?a +.El +.Sh DIAGNOSTICS +.Bl -diag +.It uu%d: no bp, active %d. A transmission complete interrupt was received with no outstanding -i/o request. This indicates a hardware problem. -.PP -.BR "uu%d protocol error, state=%s, op=%x, cnt=%d, block=%d" . +.Tn I/O +request. This indicates a hardware problem. +.Pp +.It uu%d protocol error, state=%s, op=%x, cnt=%d, block=%d. The driver entered an illegal state. The information printed indicates the illegal state, the operation currently being executed, -the i/o count, and the block number on the cassette. -.PP -.BR "uu%d: break received, transfer restarted" . -The TU58 was sending a continuous break signal and had +the +.Tn I/O +count, and the block number on the cassette. +.Pp +.It uu%d: break received, transfer restarted. +The +.Tn TU58 +was sending a continuous break signal and had to be reset. This may indicate a hardware problem, but the driver will attempt to recover from the error. -.PP -.BR "uu%d receive state error, state=%s, byte=%x" . +.Pp +.It uu%d receive state error, state=%s, byte=%x. The driver entered an illegal state in the receiver finite state machine. The state is shown along with the control byte of the received packet. -.PP -.BR "uu%d: read stalled" . +.Pp +.It uu%d: read stalled. A timer watching the controller detected no interrupt for an extended period while an operation was outstanding. This usually indicates that one or more receiver interrupts were lost and the transfer is restarted. -.PP -.BR "uu%d: hard error bn%d, pk_mod %o" . +.Pp +.It uu%d: hard error bn%d, pk_mod %o. The device returned a status code indicating a hard error. The actual error code is shown in octal. No retries are attempted by the driver. +.El +.Sh ERRORS +The following errors may be returned: +.Bl -tag -width [ENXIO] +.It Bq Er ENXIO +Nonexistent drive (on open); +offset is too large or bad (undefined) +.Xr ioctl 2 +code. +.It Bq Er EIO +Open failed, the device could not be reset. +.It Bq Er EBUSY +Drive in use. +.El +.Sh SEE ALSO +.Xr tu 4 , +.Xr arff 8 +.Sh HISTORY +The +.Nm +driver appeared in +.Bx 4.2 . diff --git a/usr/src/share/man/man4/man4.vax/va.4 b/usr/src/share/man/man4/man4.vax/va.4 index db509bb6bb..f18ce349e2 100644 --- a/usr/src/share/man/man4/man4.vax/va.4 +++ b/usr/src/share/man/man4/man4.vax/va.4 @@ -1,111 +1,147 @@ -.\" Copyright (c) 1980 Regents of the University of California. -.\" All rights reserved. The Berkeley software License Agreement -.\" specifies the terms and conditions for redistribution. +.\" Copyright (c) 1980, 1991 Regents of the University of California. +.\" All rights reserved. .\" -.\" @(#)va.4 6.2 (Berkeley) %G% +.\" %sccs.include.redist.man% .\" -.TH VA 4 "" -.UC 4 -.SH NAME -va \- Benson-Varian interface -.SH SYNOPSIS -.B "controller va0 at uba0 csr 0164000 vector vaintr" -.br -.B "disk vz0 at va0 drive 0" -.SH DESCRIPTION -(\fBNOTE: the configuration description, while counter-intuitive, -is actually as shown above\fP.) -.PP +.\" @(#)va.4 6.3 (Berkeley) %G% +.\" +.Dd +.Dt VA 4 vax +.Os BSD 4 +.Sh NAME +.Nm va +.Nd Benson-Varian interface +.Sh SYNOPSIS +.Cd "controller va0 at uba0 csr 0164000 vector vaintr" +.Cd "disk vz0 at va0 drive 0" +.Sh DESCRIPTION +.Bf -symbolic +(NOTE: the configuration description, while counter-intuitive, +is actually as shown above.) +.Ef +.Pp The Benson-Varian printer/plotter in normally used with the line printer system. This description is designed for those who wish to drive the Benson-Varian directly. -.PP -In print mode, the Benson-Varian uses a modified ASCII character set. -Most control characters print various non-ASCII graphics such as daggers, +.Pp +In print mode, the Benson-Varian uses a modified +.Tn ASCII +character set. +Most control characters print various non- +.Tn ASCII +graphics such as daggers, sigmas, copyright symbols, etc. -Only LF and FF are used as format effectors. LF acts as a newline, -advancing to the beginning of the next line, and FF advances to the top of +Only +.Tn LF +and +.Tn FF +are used as format effectors. +.Tn LF +acts as a newline, +advancing to the beginning of the next line, and +.Tn FF +advances to the top of the next page. -.PP +.Pp In plot mode, the Benson-Varian prints one raster line at a time. An entire raster line of bits (2112 bits = 264 bytes) is sent, and then the Benson-Varian advances to the next raster line. -.PP -.B Note: +.Pp +.Em Note : The Benson-Varian must be sent an even number of bytes. If an odd number is sent, the last byte will be lost. Nulls can be used in print mode to pad to an even number of bytes. -.PP +.Pp To use the Benson-Varian yourself, you must realize that you cannot open the device, -.I /dev/va0 -if there is a daemon active. +.Pa /dev/va0 +if there is an daemon active. You can see if there is an active daemon by doing a -.IR lpq (1) +.Xr lpq 1 and seeing if there are any files being printed. Printing should be turned off using -.IR lpc (8). -.PP +.Xr lpc 8 . +.Pp To set the Benson-Varian into plot mode include the file -.RI < sys/vcmd.h > +.Aq Pa sys/vcmd.h and use the following -.IR ioctl (2) +.Xr ioctl 2 call -.IP +.Bd -literal -offset indent ioctl(fileno(va), VSETSTATE, plotmd); -.PP +.Ed +.Pp where -.I plotmd +.Ar plotmd is defined to be -.IP -\fBint\fR plotmd[] = { VPLOT, 0, 0 }; -.PP +.Bd -literal -offset indent +int plotmd[] = { VPLOT, 0, 0 }; +.Ed +.Pp and -.I va +.Ar va is the result of a call to -.I fopen +.Xr fopen on stdio. When you finish using the Benson-Varian in plot mode you should advance to a new page -by sending it a FF after putting it back into print mode, i.e. by -.PP -'nf - \fBint\fR prtmd[] = { VPRINT, 0, 0 }; - \&... - fflush(va); - ioctl(fileno(va), VSETSTATE, prtmd); - write(fileno(va), "\ef\e0", 2); -.fi -.SH FILES -/dev/va0 -.SH SEE ALSO -vfont(5), -lpr(1), -lpd(8), -vp(4) -.SH DIAGNOSTICS +by sending it a +.Tn FF +after putting it back into print mode, i.e. by +.Bd -literal -offset indent +int prtmd[] = { VPRINT, 0, 0 }; +\&... +fflush(va); +ioctl(fileno(va), VSETSTATE, prtmd); +write(fileno(va), "\ef\e0", 2); +.Ed +.Sh FILES +.Bl -tag -width /dev/va0xx -compact +.It Pa /dev/va0 +.El +.Sh DIAGNOSTICS The following error numbers are significant at the time the device is opened. -.TP 10 -[ENXIO] +.Bl -tag -width ENXIOxx +.It Bq Er ENXIO The device is already in use. -.TP -[EIO] +.It Bq Er EIO The device is offline. -.PP +.El +.Pp The following message may be printed on the console. -.PP -\fBva%d: npr timeout\fR. The device was not able to get data from -the UNIBUS within the timeout period, most likely because some other -device was hogging the bus. (But see BUGS below). -.SH BUGS +.Pp +.Bl -diag +.It va%d: npr timeout. +The device was not able to get data from +the +.Tn UNIBUS +within the timeout period, most likely because some other +device was hogging the bus. (But see +.Sx BUGS +below). +.El +.Sh SEE ALSO +.Xr vfont 5 , +.Xr lpr 1 , +.Xr lpd 8 , +.Xr vp 4 +.Sh HISTORY +The +.Nm +driver appeared in +.Bx 4.0 . +.Sh BUGS The 1's (one's) and l's (lower-case el's) in the Benson-Varian's standard character set look very similar; caution is advised. -.PP +.Pp The interface hardware is rumored to have problems which can -play havoc with the UNIBUS. We have intermittent minor problems on the -UNIBUS where our -.I va +play havoc with the +.Tn UNIBUS . +We have intermittent minor problems on the +.Tn UNIBUS +where our +.Xr va lives, but haven't ever been able to pin them down completely. diff --git a/usr/src/share/man/man4/man4.vax/vp.4 b/usr/src/share/man/man4/man4.vax/vp.4 index e7cbb8e3d7..6b8ef3a488 100644 --- a/usr/src/share/man/man4/man4.vax/vp.4 +++ b/usr/src/share/man/man4/man4.vax/vp.4 @@ -1,77 +1,90 @@ -.\" Copyright (c) 1980 Regents of the University of California. -.\" All rights reserved. The Berkeley software License Agreement -.\" specifies the terms and conditions for redistribution. +.\" Copyright (c) 1980, 1991 Regents of the University of California. +.\" All rights reserved. .\" -.\" @(#)vp.4 6.2 (Berkeley) %G% +.\" %sccs.include.redist.man% .\" -.TH VP 4 "" -.UC 4 -.SH NAME -vp \- Versatec interface -.SH SYNOPSIS -.B "device vp0 at uba0 csr 0177510 vector vpintr vpintr" -.SH DESCRIPTION +.\" @(#)vp.4 6.3 (Berkeley) %G% +.\" +.Dd +.Dt VP 4 vax +.Os BSD 4 +.Sh NAME +.Nm vp +.Nd Versatec interface +.Sh SYNOPSIS +.Cd "device vp0 at uba0 csr 0177510 vector vpintr vpintr" +.Sh DESCRIPTION The Versatec printer/plotter is normally used with the line printer system. This description is designed for those who wish to drive the Versatec directly. -.PP +.Pp To use the Versatec yourself, you must realize that you cannot open the device, -.I /dev/vp0 +.Pa /dev/vp0 if there is a daemon active. You can see if there is a daemon active by doing a -.IR lpq (1), +.Xr lpq 1 , and seeing if there are any files being sent. Printing should be turned off using -.IR lpc (8). -.PP +.Xr lpc 8 . +.Pp To set the Versatec into plot mode you should include -.RI < sys/vcmd.h > +.Aq Pa sys/vcmd.h and use the -.IR ioctl (2) +.Xr ioctl 2 call -.IP +.Bd -literal -offset indent ioctl(fileno(vp), VSETSTATE, plotmd); -.PP +.Ed +.Pp where -.I plotmd +.Em plotmd is defined to be -.IP -\fBint\fR plotmd[] = { VPLOT, 0, 0 }; -.PP +.Bd -literal -offset indent +int plotmd[] = { VPLOT, 0, 0 }; +.Ed +.Pp and -.I vp +.Em vp is the result of a call to -.I fopen +.Xr fopen on stdio. When you finish using the Versatec in plot mode you should eject paper -by sending it a EOT after putting it back into print mode, i.e. by -.PP -'nf - \fBint\fR prtmd[] = { VPRINT, 0, 0 }; - \&... - fflush(vp); - ioctl(fileno(vp), VSETSTATE, prtmd); - write(fileno(vp), "\e04", 1); -.fi -.SH FILES -/dev/vp0 -.SH SEE ALSO -vfont(5), -lpr(1), -lpd(8), -vtroff(1), -va(4) -.SH DIAGNOSTICS +by sending it a +.Tn EOT +after putting it back into print mode, i.e. by +.Bd -literal -offset indent +int prtmd[] = { VPRINT, 0, 0 }; +\&... +fflush(vp); +ioctl(fileno(vp), VSETSTATE, prtmd); +write(fileno(vp), "\e04", 1); +.Ed +.Sh FILES +.Bl -tag -width /dev/vp0xx -compact +.It Pa /dev/vp0 +.El +.Sh DIAGNOSTICS The following error numbers are significant at the time the device is opened. -.TP 10 -[ENXIO] +.Bl -tag -width [ENXIO] +.It Bq Er ENXIO The device is already in use. -.TP -[EIO] +.It Bq Er EIO The device is offline. -.SH BUGS +.El +.Sh SEE ALSO +.Xr lpr 1 , +.Xr vtroff 1 , +.Xr va 4 +.Xr font 5 , +.Xr lpd 8 , +.Sh HISTORY +A +.Nm +driver appeared in +.At v7 . +.Sh BUGS The configuration part of the driver assumes that the device is set up to vector print mode through 0174 and plot mode through 0200. As the configuration program can't be sure diff --git a/usr/src/share/man/man4/man4.vax/vv.4 b/usr/src/share/man/man4/man4.vax/vv.4 index 47a45419c5..8a1bb5f044 100644 --- a/usr/src/share/man/man4/man4.vax/vv.4 +++ b/usr/src/share/man/man4/man4.vax/vv.4 @@ -1,71 +1,113 @@ -.\" Copyright (c) 1983 The Regents of the University of California. +.\" Copyright (c) 1983, 1991 The Regents of the University of California. .\" All rights reserved. .\" .\" %sccs.include.redist.man% .\" -.\" @(#)vv.4 6.4 (Berkeley) %G% +.\" @(#)vv.4 6.5 (Berkeley) %G% .\" -.TH VV 4 "" -.UC 5 -.SH NAME -vv \- Proteon proNET 10 Megabit ring -.SH SYNOPSIS -.B "device vv0 at uba0 csr 0161000 vector vvrint vvxint" -.SH DESCRIPTION +.Dd +.Dt VV 4 vax +.Os BSD 4.2 +.Sh NAME +.Nm vv +.Nd Proteon proNET 10 Megabit ring +.Sh SYNOPSIS +.Cd "device vv0 at uba0 csr 0161000 vector vvrint vvxint" +.Sh DESCRIPTION The -.I vv -interface provides access to a 10 Mb/s Proteon proNET ring network. -.PP +.Nm vv +interface provides access to a 10 Mb/s Proteon +.Tn proNET +ring network. +.Pp The network address of the interface must be specified with an -an SIOCSIFADDR ioctl before data can be transmitted or received. +an +.Dv SIOCSIFADDR +.Xr ioctl 2 +before data can be transmitted or received. It is only permissible to change the network address while the -interface is marked "down". -.PP +interface is marked +.Dq down . +.Pp The host's hardware address is discovered by putting the interface in digital loopback mode (not joining the ring) and sending a broadcast packet from which the hardware address is extracted. -.PP +.Pp Transmit timeouts are detected through use of a watchdog routine. Lost input interrupts are checked for when packets are sent out. -.PP -If the installation is running CTL boards which use the old broadcast -address of 0 instead of the new address of 0xff, the define OLD_BROADCAST +.Pp +If the installation is running +.Tn CTL +boards which use the old broadcast +address of +.Ql 0 +instead of the new address of +.Ql 0xff , +the define +.Dv OLD_BROADCAST should be specified in the driver. -.PP -The driver can use ``trailer'' encapsulation to minimize copying +.Pp +The driver can use +.Dq trailer +encapsulation to minimize copying data on input and output. This may be disabled, on a per-interface basis, -by setting the IFF_NOTRAILERS flag with an SIOCSIFFLAGS ioctl. -.SH DIAGNOSTICS -.PP -\fBvv%d: host %d\fP. The software announces the host +by setting the +.Dv IFF_NOTRAILERS +flag with an +.Dv SIOCSIFFLAGS +.Xr ioctl . +.Sh DIAGNOSTICS +.Bl -diag +.It vv%d: host %d. +The software announces the host address discovered during autoconfiguration. -.PP -\fBvv%d: can't initialize\fP. The software was unable to +.Pp +.It vv%d: can't initialize. +The software was unable to discover the address of this interface, so it deemed "dead" will not be enabled. -.PP -\fBvv%d: error vvocsr=%b\fP. The hardware indicated an error on +.Pp +.It vv%d: error vvocsr=%b. +The hardware indicated an error on the previous transmission. -.PP -\fBvv%d: output timeout\fP. The token timer has fired and the +.Pp +.It vv%d: output timeout. +The token timer has fired and the token will be recreated. -.PP -\fBvv%d: error vvicsr=%b\fP. The hardware indicated an error +.Pp +.It vv%d: error vvicsr=%b. +The hardware indicated an error in reading a packet off the ring. -.PP -\fBen%d: can't handle af%d\fP. The interface was handed +.Pp +.It en%d: can't handle af%d. +The interface was handed a message with addresses formatted in an unsuitable address family; the packet was dropped. -.PP -\fBvv%d: vs_olen=%d\fP. The ring output routine has been +.Pp +.It vv%d: vs_olen=%d. +The ring output routine has been handed a message with a preposterous length. This results in an immediate -.IR "panic: vs_olen" . -.SH SEE ALSO -netintro(4), inet(4) -.SH BUGS -The encapsulation of trailer packets in the 4.2BSD version of this driver -was incorrect (the packet type was in VAX byte order). +.Em panic: vs_olen . +.El +.Sh SEE ALSO +.Xr netintro 4 , +.Xr inet 4 +.Sh HISTORY +The +.Nm +driver appeared in +.Bx 4.2 . +.Sh BUGS +The encapsulation of trailer packets in the +.Bx 4.2 +version of this driver +was incorrect (the packet type was in +.Tn VAX +byte order). As a result, the trailer encapsulation in this version is not compatible -with the 4.2BSD VAX version. +with the +.Bx 4.2 +.Tn VAX +version. diff --git a/usr/src/share/man/man4/netintro.4 b/usr/src/share/man/man4/netintro.4 index d6be7306f0..8ce34a6d74 100644 --- a/usr/src/share/man/man4/netintro.4 +++ b/usr/src/share/man/man4/netintro.4 @@ -1,49 +1,33 @@ -.\" Copyright (c) 1983, 1990 The Regents of the University of California. +.\" Copyright (c) 1983, 1990, 1991 The Regents of the University of California. .\" All rights reserved. .\" .\" %sccs.include.redist.man% .\" -.\" @(#)netintro.4 6.9 (Berkeley) %G% +.\" @(#)netintro.4 6.10 (Berkeley) %G% .\" -.TH NETINTRO 4 "" -.UC 5 -.SH NAME -networking \- introduction to networking facilities -.SH SYNOPSIS -.nf -.ft B -#include -#include -#include -.fi R -.fi -.SH DESCRIPTION -.de _d -.if t .ta .6i 2.1i 2.6i -.\" 2.94 went to 2.6, 3.64 to 3.30 -.if n .ta .84i 2.6i 3.30i -.. -.de _f -.if t .ta .5i 1.25i 2.5i -.\" 3.5i went to 3.8i -.if n .ta .7i 1.75i 3.8i -.. +.Dd +.Dt NETINTRO 4 +.Os BSD 4.2 +.Sh NAME +.Nm networking +.Nd introduction to networking facilities +.Sh SYNOPSIS +.Fd #include +.Fd #include +.Fd #include +.Sh DESCRIPTION This section is a general introduction to the networking facilities available in the system. Documentation in this part of section 4 is broken up into three areas: -.I "protocol families +.Em protocol families (domains), -.IR protocols , +.Em protocols , and -.IR "network interfaces" . -.\" Entries describing a protocol family are marked ``4F,'' -.\" while entries describing protocol use are marked ``4P.'' -.\" Hardware support for network interfaces are found -.\" among the standard ``4'' entries. -.PP +.Em network interfaces . +.Pp All network protocols are associated with a specific -.IR "protocol family" . +.Em protocol family . A protocol family provides basic services to the protocol implementation to allow it to function within a specific network environment. These services may include @@ -52,14 +36,14 @@ basic transport. A protocol family may support multiple methods of addressing, though the current protocol implementations do not. A protocol family is normally comprised of a number of protocols, one per -.IR socket (2) +.Xr socket 2 type. It is not required that a protocol family support all socket types. A protocol family may contain multiple protocols supporting the same socket abstraction. -.PP +.Pp A protocol supports one of the socket abstractions detailed in -.IR socket (2). +.Xr socket 2 . A specific protocol may be accessed either by creating a socket of the appropriate type and protocol family, or by requesting the protocol explicitly when creating a socket. @@ -71,10 +55,10 @@ protocol specific. All protocols are expected to support the basic model for their particular socket type, but may, in addition, provide non-standard facilities or extensions to a mechanism. For example, a protocol supporting the -SOCK_STREAM +.Dv SOCK_STREAM abstraction may allow more than one byte of out-of-band data to be transmitted per out-of-band message. -.PP +.Pp A network interface is similar to a device interface. Network interfaces comprise the lowest layer of the networking subsystem, interacting with the actual transport @@ -84,164 +68,168 @@ The SYNOPSIS section of each network interface entry gives a sample specification of the related drivers for use in providing a system description to the -.IR config (8) +.Xr config 8 program. The DIAGNOSTICS section lists messages which may appear on the console and/or in the system error log, -.I /var/log/messages +.Pa /var/log/messages (see -.IR syslogd (8)), +.Xr syslogd 8 ) , due to errors in device operation. -.SH PROTOCOLS -The system currently supports the DARPA Internet +.Sh PROTOCOLS +The system currently supports the +.Tn DARPA +Internet protocols, the Xerox Network Systems(tm) protocols, -and some of the ISO OSI protocols. -Raw socket interfaces are provided to the IP protocol -layer of the DARPA Internet, to the IMP link layer (1822), and to -the IDP protocol of Xerox NS. +and some of the +.Tn ISO OSI +protocols. +Raw socket interfaces are provided to the +.Tn IP +protocol +layer of the +.Tn DARPA +Internet, to the +.Tn IMP +link layer (1822), and to +the +.Tn IDP +protocol of Xerox +.Tn NS . Consult the appropriate manual pages in this section for more information regarding the support for each protocol family. -.SH ADDRESSING +.Sh ADDRESSING Associated with each protocol family is an address format. All network address adhere to a general structure, called a sockaddr, described below. However, each protocol imposes finer and more specific structure, generally renaming the variant, which is discussed in the protocol family manual page alluded to above. -.nf -._f -struct sockaddr { +.Bd -literal -offset indent + struct sockaddr { u_char sa_len; - u_char sa_family; - char sa_data[14]; + u_char sa_family; + char sa_data[14]; }; -.sp 1 -.fi -The field sa_len contains the total length of the of the structure, +.Ed +.Pp +The field +.Ar sa_len +contains the total length of the of the structure, which may exceed 16 bytes. The following address values for -.I sa_family +.Ar sa_family are known to the system (and additional formats are defined for possible future implementation): -.sp 1 -.nf -._d -#define AF_UNIX 1 /* local to host (pipes, portals) */ -#define AF_INET 2 /* internetwork: UDP, TCP, etc. */ -#define AF_IMPLINK 3 /* arpanet imp addresses */ -#define AF_NS 6 /* Xerox NS protocols */ -#define AF_CCITT 10 /* CCITT protocols, X.25 etc */ -#define AF_HYLINK 15 /* NSC Hyperchannel */ -#define AF_ISO 18 /* ISO protocols */ -.fi -.SH ROUTING -.PP -.UX +.Bd -literal +#define AF_UNIX 1 /* local to host (pipes, portals) */ +#define AF_INET 2 /* internetwork: UDP, TCP, etc. */ +#define AF_IMPLINK 3 /* arpanet imp addresses */ +#define AF_NS 6 /* Xerox NS protocols */ +#define AF_CCITT 10 /* CCITT protocols, X.25 etc */ +#define AF_HYLINK 15 /* NSC Hyperchannel */ +#define AF_ISO 18 /* ISO protocols */ +.Ed +.Sh ROUTING +.Tn UNIX provides some packet routing facilities. The kernel maintains a routing information database, which is used in selecting the appropriate network interface when transmitting packets. -.PP +.Pp A user process (or possibly multiple co-operating processes) maintains this database by sending messages over a special kind of socket. This supplants fixed size -.IR ioctl 's +.Xr ioctl 2 used in earlier releases. -.PP +.Pp This facility is described in -.IR route (4). -.SH INTERFACES +.Xr route 4 . +.Sh INTERFACES Each network interface in a system corresponds to a path through which messages may be sent and received. A network interface usually has a hardware device associated with it, though certain interfaces such as the loopback interface, -.IR lo (4), +.Xr lo 4 , do not. -.PP +.Pp The following -.I ioctl +.Xr ioctl calls may be used to manipulate network interfaces. The -.I ioctl -is made on a socket (typically of type SOCK_DGRAM) +.Xr ioctl +is made on a socket (typically of type +.Dv SOCK_DGRAM ) in the desired domain. Most of the requests supported in earlier releases take an -.I ifreq +.Ar ifreq structure as its parameter. This structure has the form -.PP -.nf -._d -.DT +.Bd -literal struct ifreq { -#define IFNAMSIZ 16 - char ifr_name[IFNAMSIZE]; /* if name, e.g. "en0" */ - union { - struct sockaddr ifru_addr; - struct sockaddr ifru_dstaddr; - struct sockaddr ifru_broadaddr; - short ifru_flags; - int ifru_metric; - caddr_t ifru_data; - } ifr_ifru; -#define ifr_addr ifr_ifru.ifru_addr /* address */ -#define ifr_dstaddr ifr_ifru.ifru_dstaddr /* other end of p-to-p link */ -#define ifr_broadaddr ifr_ifru.ifru_broadaddr /* broadcast address */ -#define ifr_flags ifr_ifru.ifru_flags /* flags */ -#define ifr_metric ifr_ifru.ifru_metric /* metric */ -#define ifr_data ifr_ifru.ifru_data /* for use by interface */ +#define IFNAMSIZ 16 + char ifr_name[IFNAMSIZE]; /* if name, e.g. "en0" */ + union { + struct sockaddr ifru_addr; + struct sockaddr ifru_dstaddr; + struct sockaddr ifru_broadaddr; + short ifru_flags; + int ifru_metric; + caddr_t ifru_data; + } ifr_ifru; +#define ifr_addr ifr_ifru.ifru_addr /* address */ +#define ifr_dstaddr ifr_ifru.ifru_dstaddr /* other end of p-to-p link */ +#define ifr_broadaddr ifr_ifru.ifru_broadaddr /* broadcast address */ +#define ifr_flags ifr_ifru.ifru_flags /* flags */ +#define ifr_metric ifr_ifru.ifru_metric /* metric */ +#define ifr_data ifr_ifru.ifru_data /* for use by interface */ }; -.fi +.Ed +.Pp Calls which are now deprecated are: -.TP -SIOCSIFADDR +.Bl -tag -width SIOCGIFBRDADDR +.It Dv SIOCSIFADDR Set interface address for protocol family. Following the address assignment, the ``initialization'' routine for the interface is called. -.TP -SIOCSIFDSTADDR +.It Dv SIOCSIFDSTADDR Set point to point address for protocol family and interface. -.TP -SIOCSIFBRDADDR +.It Dv SIOCSIFBRDADDR Set broadcast address for protocol family and interface. -.LP -.I Ioctls +.El +.Pp +.Xr Ioctl requests to obtain addresses and requests both to set and retreive other data are still fully supported and use the -.I ifreq +.Ar ifreq structure: -.TP -SIOCGIFADDR +.Bl -tag -width SIOCGIFBRDADDR +.It Dv SIOCGIFADDR Get interface address for protocol family. -.TP -SIOCGIFDSTADDR +.It Dv SIOCGIFDSTADDR Get point to point address for protocol family and interface. -.TP -SIOCGIFBRDADDR +.It Dv SIOCGIFBRDADDR Get broadcast address for protocol family and interface. -.TP -SIOCSIFFLAGS +.It Dv SIOCSIFFLAGS Set interface flags field. If the interface is marked down, any processes currently routing packets through the interface are notified; some interfaces may be reset so that incoming packets are no longer received. When marked up again, the interface is reinitialized. -.TP -SIOCGIFFLAGS +.It Dv SIOCGIFFLAGS Get interface flags. -.TP -SIOCSIFMETRIC +.It Dv SIOCSIFMETRIC Set interface routing metric. The metric is used only by user-level routers. -.TP -SIOCGIFMETRIC +.It Dv SIOCGIFMETRIC Get interface metric. -.LP +.El +.Pp There are two requests that make use of a new structure: -.TP -SIOCAIFADDR +.Bl -tag -width SIOCGIFBRDADDR +.It Dv SIOCAIFADDR An interface may have more than one address associated with it in some protocols. This request provides a means to add additional addresses (or modify characteristics of the @@ -249,64 +237,73 @@ primary address if the default address for the address family is specified). Rather than making separate calls to set destination or broadcast addresses, or network masks (now an integral feature of multiple protocols) -a separate structure is used to specify all three facets simultaneously: -.nf - -.ta \w'struct 'u +\w'struct 'u +\w'sockaddr 'u +\w'ifra_broaddadr 'u -struct ifaliasreq { - char ifra_name[IFNAMSIZ]; /* if name, e.g. "en0" */ - struct sockaddr ifra_addr; - struct sockaddr ifra_broadaddr; - struct sockaddr ifra_mask; -}; -.fi +a separate structure is used to specify all three facets simultaneously +(see below). One would use a slightly tailored version of this struct specific to each family (replacing each sockaddr by one of the family-specific type). Where the sockaddr itself is larger than the default size, one needs to modify the -.I ioctl +.Xr ioctl identifier itself to include the total size, as described in -.IR ioctl (2). -.TP -SIOCDIFADDR +.Xr ioctl . +.It Dv SIOCDIFADDR This requests deletes the specified address from the list -associated with an interface. It also uses the if_aliasreq +associated with an interface. It also uses the +.Ar if_aliasreq structure to allow for the possibility of protocols allowing multiple masks or destination addresses, and also adopts the convention that specification of the default address means to delete the first address for the interface belonging to the address family in which the original socket was opened. -.TP -SIOCGIFCONF +.It Dv SIOCGIFCONF Get interface configuration list. This request takes an -.I ifconf +.Ar ifconf structure (see below) as a value-result parameter. The -.I ifc_len +.Ar ifc_len field should be initially set to the size of the buffer pointed to by -.IR ifc_buf . +.Ar ifc_buf . On return it will contain the length, in bytes, of the configuration list. -.PP -._d -.nf -.DT +.El +.Bd -literal +/* +* Structure used in SIOCAIFCONF request. +*/ +struct ifaliasreq { + char ifra_name[IFNAMSIZ]; /* if name, e.g. "en0" */ + struct sockaddr ifra_addr; + struct sockaddr ifra_broadaddr; + struct sockaddr ifra_mask; +}; +.Ed +.Pp +.Bd -literal /* - * Structure used in SIOCGIFCONF request. - * Used to retrieve interface configuration - * for machine (useful for programs which - * must know all networks accessible). - */ -struct ifconf { - int ifc_len; /* size of associated buffer */ - union { - caddr_t ifcu_buf; - struct ifreq *ifcu_req; - } ifc_ifcu; -#define ifc_buf ifc_ifcu.ifcu_buf /* buffer address */ -#define ifc_req ifc_ifcu.ifcu_req /* array of structures returned */ +* Structure used in SIOCGIFCONF request. +* Used to retrieve interface configuration +* for machine (useful for programs which +* must know all networks accessible). +*/ +struct ifconf { + int ifc_len; /* size of associated buffer */ + union { + caddr_t ifcu_buf; + struct ifreq *ifcu_req; + } ifc_ifcu; +#define ifc_buf ifc_ifcu.ifcu_buf /* buffer address */ +#define ifc_req ifc_ifcu.ifcu_req /* array of structures returned */ }; -.fi -.SH SEE ALSO -socket(2), ioctl(2), intro(4), config(8), routed(8C) +.Ed +.Sh SEE ALSO +.Xr socket 2 , +.Xr ioctl 2 , +.Xr intro 4 , +.Xr config 8 , +.Xr routed 8 +.Sh HISTORY +The +.Nm netintro +manual appeared in +.Bx 4.3 tahoe . diff --git a/usr/src/share/man/man4/ns.4 b/usr/src/share/man/man4/ns.4 index 0deac22ba7..f85a625d33 100644 --- a/usr/src/share/man/man4/ns.4 +++ b/usr/src/share/man/man4/ns.4 @@ -1,53 +1,72 @@ -.\" Copyright (c) 1985 The Regents of the University of California. +.\" Copyright (c) 1985, 1991 The Regents of the University of California. .\" All rights reserved. .\" .\" %sccs.include.redist.man% .\" -.\" @(#)ns.4 1.5 (Berkeley) %G% +.\" @(#)ns.4 1.6 (Berkeley) %G% .\" -.TH NS 4 "" -.UC 6 -.SH NAME -ns \- Xerox Network Systems(tm) protocol family -.SH SYNOPSIS -\fBoptions NS\fP -.br -\fBoptions NSIP\fP -.br -\fBpseudo-device ns\fP -.SH DESCRIPTION -.IX "ns device" "" "\fLns\fP \(em Xerox NS protocol family" -The NS protocol family is a collection of protocols +.Dd +.Dt NS 4 +.Os BSD 4.3 +.Sh NAME +.Nm ns +.Nd Xerox Network Systems(tm) protocol family +.Sh SYNOPSIS +.Nm options NS +.Nm options NSIP +.Nm pseudo-device ns +.Sh DESCRIPTION +The +.Tn NS +protocol family is a collection of protocols layered atop the -.I Internet Datagram Protocol -(IDP) transport layer, and using the Xerox NS address formats. -The NS family provides protocol support for the -SOCK_STREAM, SOCK_DGRAM, SOCK_SEQPACKET, and SOCK_RAW socket types; the -SOCK_RAW interface is a debugging tool, allowing you to trace all packets +.Em Internet Datagram Protocol +.Pq Tn IDP +transport layer, and using the Xerox +.Tn NS +address formats. +The +.Tn NS +family provides protocol support for the +.Dv SOCK_STREAM , SOCK_DGRAM , SOCK_SEQPACKET , +and +.Dv SOCK_RAW +socket types; the +.Dv SOCK_RAW +interface is a debugging tool, allowing you to trace all packets entering, (or with toggling kernel variable, additionally leaving) the local host. -.SH ADDRESSING -NS addresses are 12 byte quantities, consisting of a +.Sh ADDRESSING +.Tn NS +addresses are 12 byte quantities, consisting of a 4 byte Network number, a 6 byte Host number and a 2 byte port number, all stored in network standard format. -(on the VAX these are word and byte reversed; on the Sun they are not +(on the +.Tn VAX +these are word and byte reversed; on the +.Tn Sun +they are not reversed). The include file -.RI < netns/ns.h > -defines the NS address as a structure containing unions (for quicker +.Aq Pa netns/ns.h +defines the +.Tn NS +address as a structure containing unions (for quicker comparisons). -.PP +.Pp Sockets in the Internet protocol family use the following addressing structure: -.nf - +.Bd -literal -offset indent struct sockaddr_ns { short sns_family; struct ns_addr sns_addr; char sns_zero[2]; }; - -where an ns_addr is composed as follows: - +.Ed +.Pp +where an +.Ar ns_addr +is composed as follows: +.Bd -literal -offset indent union ns_host { u_char c_host[6]; u_short s_host[3]; @@ -63,36 +82,72 @@ struct ns_addr { union ns_host x_host; u_short x_port; }; - -.fi +.Ed +.Pp Sockets may be created with an address of all zeroes to effect -``wildcard'' matching on incoming messages. +.Dq wildcard +matching on incoming messages. The local port address specified in a -.IR bind (2) -call is restricted to be greater than NSPORT_RESERVED -(=3000, in ) unless the creating process is running +.Xr bind 2 +call is restricted to be greater than +.Dv NSPORT_RESERVED +(=3000, in +.Aq Pa netns/ns.h ) +unless the creating process is running as the super-user, providing a space of protected port numbers. -.SH PROTOCOLS -The NS protocol family supported by the operating system +.Sh PROTOCOLS +The +.Tn NS +protocol family supported by the operating system is comprised of -the Internet Datagram Protocol (IDP) -.IR idp (4), -Error Protocol (available through IDP), +the Internet Datagram Protocol +.Pq Tn IDP +.Xr idp 4 , +Error Protocol (available through +.Tn IDP ) , +and +Sequenced Packet Protocol +.Pq Tn SPP +.Xr spp 4 . +.Pp +.Tn SPP +is used to support the +.Dv SOCK_STREAM and -Sequenced Packet Protocol (SPP) -.IR spp (4). -.LP -SPP is used to support the SOCK_STREAM and SOCK_SEQPACKET abstraction, -while IDP is used to support the SOCK_DGRAM abstraction. +.Dv SOCK_SEQPACKET +abstraction, +while +.Tn IDP +is used to support the +.Dv SOCK_DGRAM +abstraction. The Error protocol is responded to by the kernel to handle and report errors in protocol processing; it is, however, only accessible to user programs through heroic actions. -.SH SEE ALSO -intro(3), byteorder(3), gethostbyname(3), getnetent(3), -getprotoent(3), getservent(3), ns(3), -intro(4), spp(4), idp(4), nsip(4) -.br -Internet Transport Protocols, Xerox Corporation document XSIS-028112 -.br -An Advanced 4.3BSD Interprocess Communication Tutorial +.Sh SEE ALSO +.Xr intro 3 , +.Xr byteorder 3 , +.Xr gethostbyname 3 , +.Xr getnetent 3 , +.Xr getprotoent 3 , +.Xr getservent 3 , +.Xr ns 3 , +.Xr intro 4 , +.Xr spp 4 , +.Xr idp 4 , +.Xr nsip 4 +.Rs +.%T "Internet Transport Protocols" +.%R Xerox Corporation document XSIS +.%N 028112 +.Re +.Rs +.%T "An Advanced 4.3 BSD Interprocess Communication Tutorial" +.Re +.Sh HISTORY +The +.Nm +protocol family +appeared in +.Bx 4.3 . diff --git a/usr/src/share/man/man4/nsip.4 b/usr/src/share/man/man4/nsip.4 index cad341b060..c2ab176d99 100644 --- a/usr/src/share/man/man4/nsip.4 +++ b/usr/src/share/man/man4/nsip.4 @@ -1,61 +1,102 @@ -.\" Copyright (c) 1985 The Regents of the University of California. +.\" Copyright (c) 1985, 1991 The Regents of the University of California. .\" All rights reserved. .\" .\" %sccs.include.redist.man% .\" -.\" @(#)nsip.4 1.3 (Berkeley) %G% +.\" @(#)nsip.4 1.4 (Berkeley) %G% .\" -.TH NSIP 4 "" -.UC 6 -.SH NAME -nsip \- software network interface encapsulating ns packets in ip packets. -.SH SYNOPSIS -.B options NSIP -.br -.B #include -.SH DESCRIPTION +.Dd +.Dt NSIP 4 +.Os BSD 4.3 +.Sh NAME +.Nm nsip +.Nd software network interface encapsulating NS packets in IP packets +.Sh SYNOPSIS +.Cd options NSIP +.Fd #include +.Sh DESCRIPTION The -.I nsip +.Nm nsip interface is a software mechanism which may be -used to transmit Xerox NS(tm) packets through otherwise uncooperative +used to transmit Xerox +.Tn NS Ns (tm) +packets through otherwise uncooperative networks. -It functions by prepending an IP header, and resubmitting the packet -through the unix IP machinery. -.LP +It functions by prepending an +.Tn IP +header, and resubmitting the packet +through the +.Tn UNIX +.Tn IP +machinery. +.Pp The super-user can advise the operating system of a willing partner -by naming an IP address to be associated with an NS address. +by naming an +.Tn IP +address to be associated with an +.Tn NS +address. Presently, only specific hosts pairs are allowed, and for each host pair, an artificial point-to-point interface is constructed. -At some future date, IP broadcast addresses or hosts may be paired -with NS networks or hosts. -.LP -Specifically, a socket option of SO_NSIP_ROUTE is set on a socket -of family AF_NS, type SOCK_DGRAM, passing the following structure: -.nf - +At some future date, +.Tn IP +broadcast addresses or hosts may be paired +with +.Tn NS +networks or hosts. +.Pp +Specifically, a socket option of +.Dv SO_NSIP_ROUTE +is set on a socket +of family +.Dv AF_NS , +type +.Dv SOCK_DGRAM , +passing the following structure: +.Bd -literal struct nsip_req { struct sockaddr rq_ns; /* must be ns format destination */ struct sockaddr rq_ip; /* must be ip format gateway */ short rq_flags; }; - -.SH DIAGNOSTICS -\fBnsip%d: can't handle af%d\fP. The interface was handed +.Ed +.Sh DIAGNOSTICS +.Bl -diag +.It nsip%d: can't handle af%d. +The interface was handed a message with addresses formatted in an unsuitable address family; the packet was dropped. -.SH SEE ALSO -intro(4), ns(4) -.SH BUGS +.El +.Sh SEE ALSO +.Xr intro 4 , +.Xr ns 4 +.Sh HISTORY +The +.Nm +interface appeared in +.Bx 4.3 . +.Sh BUGS It is absurd to have a separate pseudo-device for each pt-to-pt link. -There is no way to change the IP address for an NS host once the +There is no way to change the +.Tn IP +address for an +.Tn NS +host once the the encapsulation interface is set up. -The request should honor flags of RTF_GATEWAY to indicate -remote networks, and the absence of RTF_UP should be a clue +The request should honor flags of +.Dv RTF_GATEWAY +to indicate +remote networks, and the absence of +.Dv RTF_UP +should be a clue to remove that partner. -This was intended to postpone the necessity of rewriting reverse ARP +This was intended to postpone the necessity of rewriting reverse +.Tn ARP for the -.B en -device, and to allow passing XNS packets through an +.Xr en 4 +device, and to allow passing +.Tn XNS +packets through an Arpanet-Milnet gateway, to facilitate testing between some co-operating universities. diff --git a/usr/src/share/man/man4/null.4 b/usr/src/share/man/man4/null.4 index 0252e1772f..50cb1883ec 100644 --- a/usr/src/share/man/man4/null.4 +++ b/usr/src/share/man/man4/null.4 @@ -1,12 +1,30 @@ -.\" @(#)null.4 6.1 (Berkeley) %G% +.\" Copyright (c) 1991 The Regents of the University of California. +.\" All rights reserved. .\" -.TH NULL 4 "" -.AT 3 -.SH NAME -null \- data sink -.SH DESCRIPTION -Data written on a null special file is discarded. -.PP -Reads from a null special file always return 0 bytes. -.SH FILES -/dev/null +.\" %sccs.include.redist.man% +.\" +.\" @(#)null.4 6.2 (Berkeley) %G% +.\" +.Dd +.Dt NULL 4 +.Os BSD 4.4 +.Sh NAME +.Nm null +.Nd the null device +.Sh DESCRIPTION +The +.Nm +device accepts and reads data as any ordinary (and willing) +file \- +but throws it away. The length of the +.Nm null +device is always zero. +.Sh FILES +.Bl -tag -width /dev/null +.It Pa /dev/null +.El +.Sh HISTORY +A +.Nm +device appeared in +.At v7 . diff --git a/usr/src/share/man/man4/pty.4 b/usr/src/share/man/man4/pty.4 index c8de7504ff..548cdeffd0 100644 --- a/usr/src/share/man/man4/pty.4 +++ b/usr/src/share/man/man4/pty.4 @@ -1,31 +1,35 @@ -.\" Copyright (c) 1983 Regents of the University of California. -.\" All rights reserved. The Berkeley software License Agreement -.\" specifies the terms and conditions for redistribution. +.\" Copyright (c) 1983, 1991 Regents of the University of California. +.\" All rights reserved. .\" -.\" @(#)pty.4 6.2 (Berkeley) %G% +.\" %sccs.include.redist.man% .\" -.TH PTY 4 "" -.UC 5 -.SH NAME -pty \- pseudo terminal driver -.SH SYNOPSIS -.B pseudo-device pty [ count ] -.SH DESCRIPTION +.\" @(#)pty.4 6.3 (Berkeley) %G% +.\" +.Dd +.Dt PTY 4 +.Os BSD 4.2 +.Sh NAME +.Nm pty +.Nd pseudo terminal driver +.Sh SYNOPSIS +.Nm pseudo-device pty +.Op Ar count +.Sh DESCRIPTION The -.I pty +.Xr pty driver provides support for a device-pair termed a -.IR "pseudo terminal" . +.Em pseudo terminal . A pseudo terminal is a pair of character devices, a -.I master +.Em master device and a -.I slave +.Em slave device. The slave device provides processes an interface identical to that described in -.IR tty (4). +.Xr tty 4 . However, whereas all other devices which provide the interface described in -.IR tty (4) +.Xr tty 4 have a hardware device of some sort behind them, the slave device has, instead, another process manipulating it through the master half of the pseudo terminal. @@ -33,118 +37,150 @@ That is, anything written on the master device is given to the slave device as input and anything written on the slave device is presented as input on the master device. -.PP -In configuring, if an optional ``count'' is given in +.Pp +In configuring, if an optional +.Ar count +is given in the specification, that number of pseudo terminal pairs are configured; the default count is 32. -.PP +.Pp The following -.I ioctl +.Xr ioctl 2 calls apply only to pseudo terminals: -.TP -TIOCSTOP -Stops output to a terminal (e.g. like typing ^S). Takes +.Bl -tag -width TIOCREMOTE +.It Dv TIOCSTOP +Stops output to a terminal (e.g. like typing +.Ql ^S ) . +Takes no parameter. -.TP -TIOCSTART -Restarts output (stopped by TIOCSTOP or by typing ^S). +.It Dv TIOCSTART +Restarts output (stopped by +.Dv TIOCSTOP +or by typing +.Ql ^S ) . Takes no parameter. -.TP -TIOCPKT +.It Dv TIOCPKT Enable/disable -.I packet +.Em packet mode. Packet mode is enabled by specifying (by reference) a nonzero parameter and disabled by specifying (by reference) a zero parameter. When applied to the master side of a pseudo terminal, each subsequent -.I read +.Xr read from the terminal will return data written on the slave part of the pseudo terminal preceded by a zero byte (symbolically -defined as TIOCPKT_DATA), or a single byte reflecting control +defined as +.Dv TIOCPKT_DATA ) , +or a single byte reflecting control status information. In the latter case, the byte is an inclusive-or of zero or more of the bits: -.RS -.TP -TIOCPKT_FLUSHREAD +.Bl -tag -width TIOCPKT_FLUSHWRITE +.It Dv TIOCPKT_FLUSHREAD whenever the read queue for the terminal is flushed. -.TP -TIOCPKT_FLUSHWRITE +.It Dv TIOCPKT_FLUSHWRITE whenever the write queue for the terminal is flushed. -.TP -TIOCPKT_STOP -whenever output to the terminal is stopped a la ^S. -.TP -TIOCPKT_START +.It Dv TIOCPKT_STOP +whenever output to the terminal is stopped a la +.Ql ^S . +.It Dv TIOCPKT_START whenever output to the terminal is restarted. -.TP -TIOCPKT_DOSTOP +.It Dv TIOCPKT_DOSTOP whenever -.I t_stopc -is ^S +.Em t_stopc +is +.Ql ^S and -.I t_startc -is ^Q. -.TP -TIOCPKT_NOSTOP -whenever the start and stop characters are not ^S/^Q. -.RE -.IP +.Em t_startc +is +.Ql ^Q . +.It Dv TIOCPKT_NOSTOP +whenever the start and stop characters are not +.Ql ^S/^Q . +.Pp While this mode is in use, the presence of control status information to be read from the master side may be detected by a -.I select +.Xr select 2 for exceptional conditions. -.IP +.Pp This mode is used by -.IR rlogin (1C) +.Xr rlogin 1 and -.IR rlogind (8C) -to implement a remote-echoed, locally ^S/^Q flow-controlled +.Xr rlogind 8 +to implement a remote-echoed, locally +.Ql ^S/^Q +flow-controlled remote login with proper back-flushing of output; it can be used by other similar programs. -.TP -TIOCUCNTL +.El +.It Dv TIOCUCNTL Enable/disable a mode that allows a small number of simple user -.I ioctl +.Xr ioctl commands to be passed through the pseudo-terminal, -using a protocol similar to that of TIOCPKT. -The TIOCUCNTL and TIOCPKT modes are mutually exclusive. +using a protocol similar to that of +.Dv TIOCPKT . +The +.Dv TIOCUCNTL +and +.Dv TIOCPKT +modes are mutually exclusive. This mode is enabled from the master side of a pseudo terminal by specifying (by reference) a nonzero parameter and disabled by specifying (by reference) a zero parameter. Each subsequent -.I read +.Xr read from the master side will return data written on the slave part of the pseudo terminal preceded by a zero byte, or a single byte reflecting a user control operation on the slave side. A user control command consists of a special -.I ioctl -operation with no data; the command is given as UIOCCMD(\fIn\fP), -where \fIn\fP is a number in the range 1-255. -The operation value \fIn\fP will be received as a single byte on the next -.I read +.Xr ioctl +operation with no data; the command is given as +.Dv UIOCCMD Ns (n) , +where +.Ar n +is a number in the range 1-255. +The operation value +.Ar n +will be received as a single byte on the next +.Xr read from the master side. -The \fIioctl\fP UIOCCMD(0) is a no-op that may be used to probe for +The +.Xr ioctl +.Dv UIOCCMD Ns (0) +is a no-op that may be used to probe for the existence of this facility. -As with TIOCPKT mode, command operations may be detected with a -.I select +As with +.Dv TIOCPKT +mode, command operations may be detected with a +.Xr select for exceptional conditions. -.TP -TIOCREMOTE +.It Dv TIOCREMOTE A mode for the master half of a pseudo terminal, independent -of TIOCPKT. This mode causes input to the pseudo terminal +of +.Dv TIOCPKT . +This mode causes input to the pseudo terminal to be flow controlled and not input edited (regardless of the terminal mode). Each write to the control terminal produces a record boundary for the process reading the terminal. In normal usage, a write of data is like the data typed as a line on the terminal; a write of 0 bytes is like typing an end-of-file -character. TIOCREMOTE can be used when doing remote line +character. +.Dv TIOCREMOTE +can be used when doing remote line editing in a window manager, or whenever flow controlled input is required. -.SH FILES -.DT -/dev/pty[p-r][0-9a-f] master pseudo terminals -.br -/dev/tty[p-r][0-9a-f] slave pseudo terminals -.SH DIAGNOSTICS +.El +.Sh FILES +.Bl -tag -width /dev/tty[p-r][0-9a-f]x -compact +.It Pa /dev/pty[p-r][0-9a-f] +master pseudo terminals +.It Pa /dev/tty[p-r][0-9a-f] +slave pseudo terminals +.El +.Sh DIAGNOSTICS None. +.Sh HISTORY +The +.Nm +driver appeared in +.Bx 4.2 . diff --git a/usr/src/share/man/man4/route.4 b/usr/src/share/man/man4/route.4 index e1ba187b59..a2d097860c 100644 --- a/usr/src/share/man/man4/route.4 +++ b/usr/src/share/man/man4/route.4 @@ -1,214 +1,240 @@ -.\" Copyright (c) 1990 The Regents of the University of California. +.\" Copyright (c) 1990, 1991 The Regents of the University of California. .\" All rights reserved. .\" .\" %sccs.include.redist.man% .\" -.\" @(#)route.4 6.2 (Berkeley) %G% +.\" @(#)route.4 6.3 (Berkeley) %G% .\" -.TH ROUTE 4 "" -.UC 5 -.SH NAME -.UC 4 -.SH NAME -ROUTE \- Kernel Packet Forwarding Database -.SH SYNOPSIS -.nf -\fB#include \fR -\fB#include \fR -\fB#include \fR -.br -.B int family -.br -.B s = socket(PF_ROUTE, SOCK_RAW, family); -.SH DESCRIPTION -.PP -.UX +.Dd +.Dt ROUTE 4 +.Os +.Sh NAME +.Nm route +.Nd kernel packet forwarding database +.Sh SYNOPSIS +.Fd #include +.Fd #include +.Fd #include +.Ft int +.Fn socket PF_ROUTE SOCK_RAW "int family" +.Sh DESCRIPTION +.Tn UNIX provides some packet routing facilities. The kernel maintains a routing information database, which is used in selecting the appropriate network interface when transmitting packets. -.PP +.Pp A user process (or possibly multiple co-operating processes) maintains this database by sending messages over a special kind of socket. This supplants fixed size -.IR ioctl 's +.Xr ioctl 2 Ns 's used in earlier releases. Routing table changes may only be carried out by the super user. -.PP +.Pp The operating system may spontaneously emit routing messages in response to external events, such as recipt of a re-direct, or failure to locate a suitable route for a request. The message types are described in greater detail below. -.PP +.Pp Routing database entries come in two flavors: for a specific host, or for all hosts on a generic subnetwork (as specified by a bit mask and value under the mask. The effect of wildcard or default route may be achieved by using a mask of all zeros, and there may be hierarchical routes. -.PP +.Pp When the system is booted and addresses are assigned to the network interfaces, each protocol family installs a routing table entry for each interface when it is ready for traffic. Normally the protocol specifies the route -through each interface as a ``direct'' connection to the destination host +through each interface as a +.Dq direct +connection to the destination host or network. If the route is direct, the transport layer of a protocol family usually requests the packet be sent to the same host specified in the packet. Otherwise, the interface is requested to address the packet to the gateway listed in the routing entry (i.e. the packet is forwarded). -.PP +.Pp When routing a packet, the kernel will first attempt to find a route to the destination host. Failing that, a search is made for a route to the network of the destination. -Finally, any route to a default (``wildcard'') gateway is chosen. +Finally, any route to a default +.Pq Dq wildcard +gateway is chosen. If no entry is found, the destination is declared to be unreachable, and a routing\-miss message is generated if there are any listers on the routing control socket described below. -.PP +.Pp A wildcard routing entry is specified with a zero destination address value. Wildcard routes are used only when the system fails to find a route to the destination host and network. The combination of wildcard routes and routing redirects can provide an economical mechanism for routing traffic. -.PP +.Pp One opens the channel for passing routing control messasges by using the socket call shown in the synopsis above: -.PP -The \fIfamily\fP paramter may be AF_UNSPEC which will provide +.Pp +The +.Fa family +paramter may be +.Dv AF_UNSPEC +which will provide routing information for all address families, or can be restricted to a specific address family by specifying which one is desired. There can be more than one routing socket open per system. -.PP +.Pp Messages are formed by a header followed by a small number of sockadders (now variable length particularly -in the ISO case), interpreted by position, and delimited +in the +.Tn ISO +case), interpreted by position, and delimited by the new length entry in the sockaddr. -An example of a message with four addresses might be an ISO redirect: +An example of a message with four addresses might be an +.Tn ISO +redirect: Destination, Netmask, Gateway, and Author of the redirect. The interpretation of which address are present is given by a bit mask within the header, and the sequence is least significant to most significant bit within the vector. -.PP +.Pp Any messages sent to the kernel are returned, and copies are sent to all interested listeners. The kernel will provide the process id. for the sender, and the sender may use an additional sequence field to distinguish between outstanding messages. However, message replies may be lost when kernel buffers are exhausted. -.PP +.Pp The kernel may reject certain messages, and will indicate this -by filling in the rtm_errno field. -The routing code returns EEXIST if -requested to duplicate an existing entry, ESRCH if +by filling in the +.Ar rtm_errno +field. +The routing code returns +.Dv EEXIST +if +requested to duplicate an existing entry, +.Dv ESRCH +if requested to delete a non-existent entry, -or ENOBUFS if insufficient resources were available +or +.Dv ENOBUFS +if insufficient resources were available to install a new route. In the current implementation, all routing process run locally, -and the values for rtm_errno are available through the normal -errno mechanism, even if the routing reply message is lost. -.PP +and the values for +.Ar rtm_errno +are available through the normal +.Em errno +mechanism, even if the routing reply message is lost. +.Pp A process may avoid the expense of reading replies to its own messages by issuing a -.IR setsockopt () -call indicating that the SO_USELOOPBACK option -at the SOL_SOCKET level is to be turned off. +.Xr setsockopt 2 +call indicating that the +.Dv SO_USELOOPBACK +option +at the +.Dv SOL_SOCKET +level is to be turned off. A process may ignore all messages from the routing socket by doing a -.IR shutdown (2) +.Xr shutdown 2 system call for further input. -.PP +.Pp If a route is in use when it is deleted, the routing entry will be marked down and removed from the routing table, but the resources associated with it will not be reclaimed until all references to it are released. User processes can obtain information about the routing -entry to a specific destination by using a RTM_GET message, +entry to a specific destination by using a +.Dv RTM_GET +message, or by reading the -.I /dev/kmem +.Pa /dev/kmem device, or by issuing a -.I getkerninfo () +.Xr getkerninfo 2 system call. -.nf - +.Pp Messages include: - -.ta \w'#define 'u +\w'RTM_REDIRECT 'u +\w'0x7 'u -#define RTM_ADD 0x1 /* \fIAdd Route\fP */ -#define RTM_DELETE 0x2 /* \fIDelete Route\fP */ -#define RTM_CHANGE 0x3 /* \fIChange Metrics, Flags, or Gateway\fP */ -#define RTM_GET 0x4 /* \fIReport Information\fP */ -#define RTM_LOOSING 0x5 /* \fIKernel Suspects Partitioning\fP */ -#define RTM_REDIRECT 0x6 /* \fITold to use different route\fP */ -#define RTM_MISS 0x7 /* \fILookup failed on this address\fP */ -#define RTM_RESOLVE 0xb /* \fIrequest to resolve dst to LL addr\fP */ - -.ta \w'struct 'u +\w'u_short 'u +\w'rt_metrics rtm_rmx 'u +.Bd -literal +#define RTM_ADD 0x1 /* Add Route */ +#define RTM_DELETE 0x2 /* Delete Route */ +#define RTM_CHANGE 0x3 /* Change Metrics, Flags, or Gateway */ +#define RTM_GET 0x4 /* Report Information */ +#define RTM_LOOSING 0x5 /* Kernel Suspects Partitioning */ +#define RTM_REDIRECT 0x6 /* Told to use different route */ +#define RTM_MISS 0x7 /* Lookup failed on this address */ +#define RTM_RESOLVE 0xb /* request to resolve dst to LL addr */ +.Ed +.Pp A message header consists of: +.Bd -literal struct rt_msghdr { - u_short rmt_msglen; /* \fIto skip over non-understood messages\fP */ - u_char rtm_version; /* \fIfuture binary compatability\fP */ - u_char rtm_type; /* \fImessage type\fP */ - u_short rmt_index; /* \fIindex for associated ifp \fP */ - pid_t rmt_pid; /* \fIidentify sender\fP */ - int rtm_addrs; /* \fIbitmask identifying sockaddrs in msg\fP */ - int rtm_seq; /* \fIfor sender to identify action\fP */ - int rtm_errno; /* \fIwhy failed\fP */ - int rtm_flags; /* \fIflags, incl. kern & message, e.g. DONE\fP */ - int rtm_use; /* \fIfrom rtentry\fP */ - u_long rtm_inits; /* \fIwhich values we are initializing\fP */ - struct rt_metrics rtm_rmx; /* \fImetrics themselves\fP */ + u_short rmt_msglen; /* to skip over non-understood messages */ + u_char rtm_version; /* future binary compatability */ + u_char rtm_type; /* message type */ + u_short rmt_index; /* index for associated ifp */ + pid_t rmt_pid; /* identify sender */ + int rtm_addrs; /* bitmask identifying sockaddrs in msg */ + int rtm_seq; /* for sender to identify action */ + int rtm_errno; /* why failed */ + int rtm_flags; /* flags, incl kern & message, e.g. DONE */ + int rtm_use; /* from rtentry */ + u_long rtm_inits; /* which values we are initializing */ + struct rt_metrics rtm_rmx; /* metrics themselves */ }; - +.Ed +.Pp where - -.ta \w'struct 'u +\w'u_long 'u +\w'rmx_hopcount 'u +.Bd -literal struct rt_metrics { - u_long rmx_locks; /* \fIKernel must leave these values alone\fP */ - u_long rmx_mtu; /* \fIMTU for this path\fP */ - u_long rmx_hopcount; /* \fImax hops expected\fP */ - u_long rmx_expire; /* \fIlifetime for route, e.g. redirect\fP */ - u_long rmx_recvpipe; /* \fIinbound delay-bandwith product\fP */ - u_long rmx_sendpipe; /* \fIoutbound delay-bandwith product\fP */ - u_long rmx_ssthresh; /* \fIoutbound gateway buffer limit\fP */ - u_long rmx_rtt; /* \fIestimated round trip time\fP */ - u_long rmx_rttvar; /* \fIestimated rtt variance\fP */ + u_long rmx_locks; /* Kernel must leave these values alone */ + u_long rmx_mtu; /* MTU for this path */ + u_long rmx_hopcount; /* max hops expected */ + u_long rmx_expire; /* lifetime for route, e.g. redirect */ + u_long rmx_recvpipe; /* inbound delay-bandwith product */ + u_long rmx_sendpipe; /* outbound delay-bandwith product */ + u_long rmx_ssthresh; /* outbound gateway buffer limit */ + u_long rmx_rtt; /* estimated round trip time */ + u_long rmx_rttvar; /* estimated rtt variance */ }; - - +.Ed +.Pp Flags include the values: - -.ta \w'#define 'u +\w'RTF_MODIFIED 'u +\w'0x80 'u -#define RTF_UP 0x1 /* \fIroute useable\fP */ -#define RTF_GATEWAY 0x2 /* \fIdestination is a gateway\fP */ -#define RTF_HOST 0x4 /* \fIhost entry (net otherwise)\fP */ -#define RTF_NORMAL 0x8 /* \fIsubnet mask is cannonical\fP */ -#define RTF_DYNAMIC 0x10 /* \fIcreated dynamically (by redirect)\fP */ -#define RTF_MODIFIED 0x20 /* \fImodified dynamically (by redirect)\fP */ -#define RTF_DONE 0x40 /* \fImessage confirmed\fP */ -#define RTF_MASK 0x80 /* \fIsubnet mask present\fP */ - +.Bd -literal +#define RTF_UP 0x1 /* route useable */ +#define RTF_GATEWAY 0x2 /* destination is a gateway */ +#define RTF_HOST 0x4 /* host entry (net otherwise) */ +#define RTF_NORMAL 0x8 /* subnet mask is cannonical */ +#define RTF_DYNAMIC 0x10 /* created dynamically (by redirect) */ +#define RTF_MODIFIED 0x20 /* modified dynamically (by redirect) */ +#define RTF_DONE 0x40 /* message confirmed */ +#define RTF_MASK 0x80 /* subnet mask present */ +.Ed +.Pp Specfiers for metric values in rmx_locks and rtm_inits are: - -.ta \w'#define 'u +\w'RTF_HOPCOUNT 'u +\w'0x80 'u -#define RTV_SSTHRESH 0x1 /* \fIinit or lock _ssthresh\fP */ -#define RTV_RPIPE 0x2 /* \fIinit or lock _recvpipe\fP */ -#define RTV_SPIPE 0x4 /* \fIinit or lock _sendpipe\fP */ -#define RTV_HOPCOUNT 0x8 /* \fIinit or lock _hopcount\fP */ -#define RTV_RTT 0x10 /* \fIinit or lock _rtt\fP */ -#define RTV_RTTVAR 0x20 /* \fIinit or lock _rttvar\fP */ -#define RTV_MTU 0x40 /* \fIinit or lock _mtu\fP */ - +.Bd -literal +#define RTV_SSTHRESH 0x1 /* init or lock _ssthresh */ +#define RTV_RPIPE 0x2 /* init or lock _recvpipe */ +#define RTV_SPIPE 0x4 /* init or lock _sendpipe */ +#define RTV_HOPCOUNT 0x8 /* init or lock _hopcount */ +#define RTV_RTT 0x10 /* init or lock _rtt */ +#define RTV_RTTVAR 0x20 /* init or lock _rttvar */ +#define RTV_MTU 0x40 /* init or lock _mtu */ +.Ed +.Pp Specifiers for which addresses are present in the messages are: - -.ta \w'#define 'u +\w'RTA_GATEWAY 'u +\w'0x80 'u -#define RTA_DST 0x1 /* \fIdestination sockaddr present\fP */ -#define RTA_GATEWAY 0x2 /* \fIgateway sockaddr present\fP */ -#define RTA_NETMASK 0x4 /* \fInetmask sockaddr present\fP */ -#define RTA_GENMASK 0x8 /* \fIcloning mask sockaddr present\fP */ -#define RTA_IFP 0x10 /* \fIinterface name sockaddr present\fP */ -#define RTA_IFA 0x20 /* \fIinterface addr sockaddr present\fP */ -#define RTA_AUTHOR 0x40 /* \fIsockaddr for author of redirect\fP */ - -.fi - +.Bd -literal +#define RTA_DST 0x1 /* destination sockaddr present */ +#define RTA_GATEWAY 0x2 /* gateway sockaddr present */ +#define RTA_NETMASK 0x4 /* netmask sockaddr present */ +#define RTA_GENMASK 0x8 /* cloning mask sockaddr present */ +#define RTA_IFP 0x10 /* interface name sockaddr present */ +#define RTA_IFA 0x20 /* interface addr sockaddr present */ +#define RTA_AUTHOR 0x40 /* sockaddr for author of redirect */ +.Ed +.Sh HISTORY +The +.Nm +forwarding database +.Ud diff --git a/usr/src/share/man/man4/spp.4 b/usr/src/share/man/man4/spp.4 index dd59c64d06..6500e3a37b 100644 --- a/usr/src/share/man/man4/spp.4 +++ b/usr/src/share/man/man4/spp.4 @@ -1,136 +1,164 @@ -.\" Copyright (c) 1985 The Regents of the University of California. +.\" Copyright (c) 1985, 1991 The Regents of the University of California. .\" All rights reserved. .\" .\" %sccs.include.redist.man% .\" -.\" @(#)spp.4 1.4 (Berkeley) %G% +.\" @(#)spp.4 1.5 (Berkeley) %G% .\" -.TH SPP 4 "" -.UC 6 -.SH NAME -spp \- Xerox Sequenced Packet Protocol -.SH SYNOPSIS -.B #include -.br -.B #include -.br -.B s = socket(AF_NS, SOCK_STREAM, 0); -.PP -.B #include -.br -.B s = socket(AF_NS, SOCK_SEQPACKET, 0); -.SH DESCRIPTION -The SPP protocol provides reliable, flow-controlled, two-way +.Dd +.Dt SPP 4 +.Os BSD 4.3 +.Sh NAME +.Nm spp +.Nd Xerox Sequenced Packet Protocol +.Sh SYNOPSIS +.Fd #include +.Fd #include +.Fd #include +.Ft int +.Fn socket AF_NS SOCK_STREAM 0 +.Ft int +.Fn socket AF_NS SOCK_SEQPACKET 0 +.Sh DESCRIPTION +The +.Tn SPP +protocol provides reliable, flow-controlled, two-way transmission of data. It is a byte-stream protocol used to -support the SOCK_STREAM abstraction. SPP uses the standard -NS(tm) address formats. -.PP -Sockets utilizing the SPP protocol are either \*(lqactive\*(rq or -\*(lqpassive\*(rq. Active sockets initiate connections to passive -sockets. By default SPP sockets are created active; to create a +support the +.Dv SOCK_STREAM +abstraction. +.Tn SPP +uses the standard +.Tn NS Ns (tm) +address formats. +.Pp +Sockets utilizing the +.Tn SPP +protocol are either +.Dq active +or +.Dq passive . +Active sockets initiate connections to passive +sockets. By default +.Tn SPP +sockets are created active; to create a passive socket the -.IR listen (2) +.Xr listen 2 system call must be used after binding the socket with the -.IR bind (2) +.Xr bind 2 system call. Only passive sockets may use the -.IR accept (2) +.Xr accept 2 call to accept incoming connections. Only active sockets may use the -.IR connect (2) +.Xr connect 2 call to initiate connections. -.PP -Passive sockets may \*(lqunderspecify\*(rq their location to match +.Pp +Passive sockets may +.Dq underspecify +their location to match incoming connection requests from multiple networks. This -technique, termed \*(lqwildcard addressing\*(rq, allows a single +technique, termed +.Dq wildcard addressing , +allows a single server to provide service to clients on multiple networks. -To create a socket which listens on all networks, the NS +To create a socket which listens on all networks, the +.Tn NS address of all zeroes must be bound. -The SPP port may still be specified +The +.Tn SPP +port may still be specified at this time; if the port is not specified the system will assign one. Once a connection has been established the socket's address is fixed by the peer entity's location. The address assigned the socket is the address associated with the network interface through which packets are being transmitted and received. Normally this address corresponds to the peer entity's network. -.LP -If the SOCK_SEQPACKET socket type is specified, +.Pp +If the +.Dv SOCK_SEQPACKET +socket type is specified, each packet received has the actual 12 byte sequenced packet header left for the user to inspect: -.nf +.Bd -literal -offset indent struct sphdr { - u_char sp_cc; /* \fIconnection control\fP */ -#define SP_EM 0x10 /* \fIend of message\fP */ - u_char sp_dt; /* \fIdatastream type\fP */ + u_char sp_cc; /* connection control */ +#define SP_EM 0x10 /* end of message */ + u_char sp_dt; /* datastream type */ u_short sp_sid; u_short sp_did; u_short sp_seq; u_short sp_ack; u_short sp_alo; }; -.fi +.Ed +.Pp This facilitates the implementation of higher level Xerox protocols which make use of the data stream type field and the end of message bit. Conversely, the user is required to supply a 12 byte header, the only part of which inspected is the data stream type and end of message fields. -.LP +.Pp For either socket type, packets received with the Attention bit sent are interpreted as -out of band data. Data sent with send(..., ..., ..., MSG_OOB) +out of band data. Data sent with +.Dq send(..., ..., ..., Dv MSG_OOB ) cause the attention bit to be set. -.SH DIAGNOSTICS +.Sh DIAGNOSTICS A socket operation may fail with one of the following errors returned: -.TP 20 -[EISCONN] +.Bl -tag -width [EADDRNOTAVAIL] +.It Bq Er EISCONN when trying to establish a connection on a socket which already has one; -.TP 20 -[ENOBUFS] +.It Bq Er ENOBUFS when the system runs out of memory for an internal data structure; -.TP 20 -[ETIMEDOUT] +.It Bq Er ETIMEDOUT when a connection was dropped due to excessive retransmissions; -.TP 20 -[ECONNRESET] +.It Bq Er ECONNRESET when the remote peer forces the connection to be closed; -.TP 20 -[ECONNREFUSED] +.It Bq Er ECONNREFUSED when the remote peer actively refuses connection establishment (usually because no process is listening to the port); -.TP 20 -[EADDRINUSE] +.It Bq Er EADDRINUSE when an attempt is made to create a socket with a port which has already been allocated; -.TP 20 -[EADDRNOTAVAIL] +.It Bq Er EADDRNOTAVAIL when an attempt is made to create a socket with a network address for which no network interface exists. -.SH SOCKET OPTIONS -.TP 20 -SO_DEFAULT_HEADERS +.El +.Sh SOCKET OPTIONS +.Bl -tag -width SO_DEFAULT_HEADERS +.It Dv SO_DEFAULT_HEADERS when set, this determines the data stream type and whether the end of message bit is to be set on every ensuing packet. -.TP 20 -SO_MTU +.It Dv SO_MTU This specifies the maximum ammount of user data in a single packet. The default is 576 bytes - sizeof(struct spidp). This quantity -affects windowing -- increasing it without increasing the amount +affects windowing \- increasing it without increasing the amount of buffering in the socket will lower the number of unread packets accepted. Anything larger than the default will not be forwarded -by a bona fide XEROX product internetwork router. +by a bona fide +.Tn XEROX +product internetwork router. The data argument for the setsockopt call must be an unsigned short. -.SH SEE ALSO -intro(4), ns(4) -.SH BUGS +.El +.Sh SEE ALSO +.Xr intro 4 , +.Xr ns 4 +.Sh HISTORY +The +.Nm +protocol appeared in +.Bx 4.3 . +.Sh BUGS There should be some way to reflect record boundaries in a stream. For stream mode, there should be an option to get the data stream type of diff --git a/usr/src/share/man/man4/tcp.4 b/usr/src/share/man/man4/tcp.4 index 208305b137..857ad9a610 100644 --- a/usr/src/share/man/man4/tcp.4 +++ b/usr/src/share/man/man4/tcp.4 @@ -1,115 +1,152 @@ -.\" Copyright (c) 1983 The Regents of the University of California. +.\" Copyright (c) 1983, 1991 The Regents of the University of California. .\" All rights reserved. .\" .\" %sccs.include.redist.man% .\" -.\" @(#)tcp.4 6.4 (Berkeley) %G% +.\" @(#)tcp.4 6.5 (Berkeley) %G% .\" -.TH TCP 4 "" -.UC 5 -.SH NAME -tcp \- Internet Transmission Control Protocol -.SH SYNOPSIS -.B #include -.br -.B #include -.PP -.B s = socket(AF_INET, SOCK_STREAM, 0); -.SH DESCRIPTION -The TCP protocol provides reliable, flow-controlled, two-way +.Dd +.Dt TCP 4 +.Os BSD 4.2 +.Sh NAME +.Nm tcp +.Nd Internet Transmission Control Protocol +.Sh SYNOPSIS +.Fd #include +.Fd #include +.Ft int +.Fn socket AF_INET SOCK_STREAM 0 +.Sh DESCRIPTION +The +.Tn TCP +protocol provides reliable, flow-controlled, two-way transmission of data. It is a byte-stream protocol used to -support the SOCK_STREAM abstraction. TCP uses the standard +support the +.Dv SOCK_STREAM +abstraction. TCP uses the standard Internet address format and, in addition, provides a per-host -collection of \*(lqport addresses\*(rq. Thus, each address is composed +collection of +.Dq port addresses . +Thus, each address is composed of an Internet address specifying the host and network, with -a specific TCP port on the host identifying the peer entity. -.PP -Sockets utilizing the tcp protocol are either \*(lqactive\*(rq or -\*(lqpassive\*(rq. Active sockets initiate connections to passive -sockets. By default TCP sockets are created active; to create a +a specific +.Tn TCP +port on the host identifying the peer entity. +.Pp +Sockets utilizing the tcp protocol are either +.Dq active +or +.Dq passive . +Active sockets initiate connections to passive +sockets. By default +.Tn TCP +sockets are created active; to create a passive socket the -.IR listen (2) +.Xr listen 2 system call must be used after binding the socket with the -.IR bind (2) +.Xr bind 2 system call. Only passive sockets may use the -.IR accept (2) +.Xr accept 2 call to accept incoming connections. Only active sockets may use the -.IR connect (2) +.Xr connect 2 call to initiate connections. -.PP -Passive sockets may \*(lqunderspecify\*(rq their location to match +.Pp +Passive sockets may +.Dq underspecify +their location to match incoming connection requests from multiple networks. This -technique, termed \*(lqwildcard addressing\*(rq, allows a single +technique, termed +.Dq wildcard addressing , +allows a single server to provide service to clients on multiple networks. To create a socket which listens on all networks, the Internet -address INADDR_ANY -must be bound. The TCP port may still be specified +address +.Dv INADDR_ANY +must be bound. The +.Tn TCP +port may still be specified at this time; if the port is not specified the system will assign one. Once a connection has been established the socket's address is fixed by the peer entity's location. The address assigned the socket is the address associated with the network interface through which packets are being transmitted and received. Normally this address corresponds to the peer entity's network. -.PP -TCP supports one socket option which is set with -.IR setsockopt (2) +.Pp +.Tn TCP +supports one socket option which is set with +.Xr setsockopt 2 and tested with -.IR getsockopt (2). -Under most circumstances, TCP sends data when it is presented; +.Xr getsockopt 2 . +Under most circumstances, +.Tn TCP +sends data when it is presented; when outstanding data has not yet been acknowledged, it gathers small amounts of output to be sent in a single packet once an acknowledgement is received. For a small number of clients, such as window systems that send a stream of mouse events which receive no replies, this packetization may cause significant delays. -Therefore, TCP provides a boolean option, TCP_NODELAY (from -.IR , +Therefore, +.Tn TCP +provides a boolean option, +.Dv TCP_NODELAY +(from +.Aq Pa netinet/tcp.h , to defeat this algorithm. The option level for the -.I setsockopt -call is the protocol number for TCP, +.Xr setsockopt +call is the protocol number for +.Tn TCP , available from -.IR getprotobyname (3). -.PP -Options at the IP transport level may be used with TCP; see -.IR ip (4). +.Xr getprotobyname 3 . +.Pp +Options at the +.Tn IP +transport level may be used with +.Tn TCP ; +see +.Xr ip 4 . Incoming connection requests that are source-routed are noted, and the reverse source route is used in responding. -.SH DIAGNOSTICS +.Sh DIAGNOSTICS A socket operation may fail with one of the following errors returned: -.TP 20 -[EISCONN] +.Bl -tag -width [EADDRNOTAVAIL] +.It Bq Er EISCONN when trying to establish a connection on a socket which already has one; -.TP 20 -[ENOBUFS] +.It Bq Er ENOBUFS when the system runs out of memory for an internal data structure; -.TP 20 -[ETIMEDOUT] +.It Bq Er ETIMEDOUT when a connection was dropped due to excessive retransmissions; -.TP 20 -[ECONNRESET] +.It Bq Er ECONNRESET when the remote peer forces the connection to be closed; -.TP 20 -[ECONNREFUSED] +.It Bq Er ECONNREFUSED when the remote peer actively refuses connection establishment (usually because no process is listening to the port); -.TP 20 -[EADDRINUSE] +.It Bq Er EADDRINUSE when an attempt is made to create a socket with a port which has already been allocated; -.TP 20 -[EADDRNOTAVAIL] +.It Bq Er EADDRNOTAVAIL when an attempt is made to create a socket with a network address for which no network interface exists. -.SH SEE ALSO -getsockopt(2), socket(2), intro(4), inet(4), ip(4) +.El +.Sh SEE ALSO +.Xr getsockopt 2 , +.Xr socket 2 , +.Xr intro 4 , +.Xr inet 4 , +.Xr ip 4 +.Sh HISTORY +The +.Nm +protocol stack appeared in +.Bx 4.2 . diff --git a/usr/src/share/man/man4/tp.4 b/usr/src/share/man/man4/tp.4 index 7d546c1ba7..9794adb11e 100644 --- a/usr/src/share/man/man4/tp.4 +++ b/usr/src/share/man/man4/tp.4 @@ -1,55 +1,77 @@ -.\" Copyright (c) 1990 The Regents of the University of California. +.\" Copyright (c) 1990, 1991 The Regents of the University of California. .\" All rights reserved. .\" .\" %sccs.include.redist.man% .\" -.\" @(#)tp.4 6.3 (Berkeley) %G% +.\" @(#)tp.4 6.4 (Berkeley) %G% .\" -.TH TP 4 "" -.UC 5 -.SH NAME -TP \- ISO Transport Protocol -.SH SYNOPSIS -.nf -\fB#include \fR -\fB#include \fR -\fB#include \fR -\fB#include \fR -.PP -\fBs = socket( [ AF_INET, AF_ISO ] , SOCK_SEQPACKET, 0);\fR -.SH DESCRIPTION -.PP -The TP protocol provides reliable, flow-controlled, two-way +.Dd +.Dt TP 4 +.Os +.Sh NAME +.Nm TP +.Nd +.Tn ISO +Transport Protocol +.Sh SYNOPSIS +.Fd #include +.Fd #include +.Fd #include +.Fd #include +.Ft int +.Fn socket "[AF_INET, AF_ISO]" SOCK_SEQPACKET 0 +.Sh DESCRIPTION +.Pp +The +.Tn TP +protocol provides reliable, flow-controlled, two-way transmission of data and record boundaries. It is a byte-stream protocol and is accessed according to -the SOCK_SEQPACKET abstraction. -The TP protocol makes use of a standard ISO address format, +the +.Dv SOCK_SEQPACKET +abstraction. +The +.Tn TP +protocol makes use of a standard +.Tn ISO +address format, including a Network Service Access Point, and a Transport Service Entity Selector. Subclass 4 may make use of the internet Internet address format. -.PP -Sockets utilizing the tp protocol are either \*(lqactive\*(rq or -\*(lqpassive\*(rq. Active sockets initiate connections to passive -sockets. By default TCP sockets are created active; to create a +.Pp +Sockets utilizing the tp protocol are either +.Dq active +or +.Dq passive . +Active sockets initiate connections to passive +sockets. By default +.Tn TCP +sockets are created active; to create a passive socket the -.IR listen (2) +.Xr listen 2 system call must be used after binding the socket with the -.IR bind (2) +.Xr bind 2 system call. Only passive sockets may use the -.IR accept (2) +.Xr accept 2 call to accept incoming connections. Only active sockets may use the -.IR connect (2) +.Xr connect 2 call to initiate connections. -.PP -Passive sockets may \*(lqunderspecify\*(rq their location to match +.Pp +Passive sockets may +.Dq underspecify +their location to match incoming connection requests from multiple networks. This -technique, termed \*(lqwildcard addressing\*(rq, allows a single +technique, termed +.Dq wildcard addressing , +allows a single server to provide service to clients on multiple networks. -To create a socket which listens on all networks, the NSAP portion +To create a socket which listens on all networks, the +.Tn NSAP +portion of the bound address must be void (of length zero). The Transport Selector may still be specified at this time; if the port is not specified the system will assign one. @@ -57,14 +79,21 @@ Once a connection has been established the socket's address is fixed by the peer entity's location. The address assigned the socket is the address associated with the network interface through which packets are being transmitted and received. -.PP -The ISO Transport Protocol implemented for AOS R2 +.Pp +The +.Tn ISO +Transport Protocol implemented for +.Tn AOS R2 at the University of Wisconsin - Madison, and modified for inclusion in the Berkeley Software Distribution, includes classes 0 and 4 -of the ISO transport protocols +of the +.Tn ISO +transport protocols as specified in -the June 1986 version of IS 8073. +the June 1986 version of +.Tn IS +8073. Class 4 of the protocol provides reliable, sequenced, flow-controlled, two-way transmission of data packets with an alternate stop-and-wait data path called @@ -75,308 +104,322 @@ flow-controlled, two-way data transmission. Class 0 does not provide the expedited data service. The protocols are implemented as a single transport layer entity that coexists with the Internet protocol suite. -Class 0 may be used only in the ISO domain. -Class 4 may be used in the Internet domain as well as in the ISO domain. -.PP +Class 0 may be used only in the +.Tn ISO +domain. +Class 4 may be used in the Internet domain as well as in the +.Tn ISO +domain. +.Pp Two system calls were modified from the previous release of the Berkeley Software Distribution -to permit the support the end-of-transport-service-data-unit (EOTSDU) +to permit the support the end-of-transport-service-data-unit +.Pq Dv EOTSDU indication, and for the receipt and transmission of user connect, confirm, and disconnect data. -See \fIsendmsg(2)\fR and \fIrecmsgv(2)\fR, and further discussion +See +.Xr sendmsg 2 +and +.Xr recmsgv 2 , +and further discussion below for the formats of the data in the ancillary data buffer. -If the EOTSDU is not needed, the normal -.IR read (2), +If the +.Dv EOTSDU +is not needed, the normal +.Xr read 2 , and -.IR write (2) +.Xr write 2 system calls may be used. -.PP +.Pp Through the -\fIgetsockopt\fR and \fIsetsockopt\fR +.Xr getsockopt +and +.Xr setsockopt system calls, -TP supports several options +.Tn TP +supports several options to control such things as negotiable options in the protocol and protocol strategies. -The options are defined in \fB\fR, +The options are defined in +.Aq Pa netiso/tp_user.h , and are described below. -.\".PP -.\"The options marked with a percent sign ( \fB%\fR ) -.\"are limited to use by the super-user. -.PP +.Pp In the tables below, -the options marked with a pound sign ( \fB#\fR ) +the options marked with a pound sign +.Ql \&# may be used -with \fIsetsockopt()\fR +with +.Xr setsockopt after a connection is established. Others must be used before the connection is established, in other words, before calling -\fIconnect()\fR or -\fIaccept()\fR. +.Xr connect +or +.Xr accept . All options may be used -with \fIgetsockopt()\fR +with +.Xr getsockopt before or after a connection is established. -.\" -.\" .PP -.\" The options marked with an exclamation point ( \fB!\fR ) -.\" may be used after a connection is released, -.\" but before -.\" the TP reference timer (which generally -.\" has a value in minutes) expires, and before -.\" a \fIclose()\fR system call. -.\" In other words, these commands may be used when the peer closes -.\" a connection (possibly causing a disconnect indication), as long as the command -.\" is issued "soon" after the disconnection occurred. -.sp 1 -.TP 25 -\fBName\fR -\fBValue [default]\fR -.IP -\fBDescription\fR -.TP 25 -TPOPT_CONN_DATA +.Bl -tag -width TPOPT_PSTATISTICS +.It Dv TPOPT_CONN_DATA (char *) [none] -.IP -Data to send on \fIconnect()\fR. +.br +Data to send on +.Xr connect . The passive user may issue a -.IR getsockopt () +.Xr getsockopt call to retrieve a connection request's user data, after having done the -.IR accept () +.Xr accept system call without implying confirmation of the connection. -.IP +.Pp The data may also be retrieved by issuing a -.IR recvmsg () +.Xr recvmsg request for ancillary data only, without implying confirmation of the connection. -The returned cmsghdr will contain SOL_TRANSPORT for the csmg_level -and TPOPT_CONN_DATA for cmsg_type. -.TP 25 -TPOPT_DISC_DATA\fB #\fR +The returned +.Va cmsghdr +will contain +.Dv SOL_TRANSPORT +for the +.Va csmg_level +and +.Dv TPOPT_CONN_DATA +for +.Va cmsg_type. +.It Dv TPOPT_DISC_DATA \&# (char *) [none] -.IP -Data to send on \fIclose()\fR. +.br +Data to send on +.Xr close . Disconnect data may be sent by the side initiating the close but not by the passive side ("passive" with respect to the closing of the connection), so there is no need to read disconnect data -after calling \fIclose()\fR. +after calling +.Xr close . This may be sent by a -.IR setsockopt () +.Xr setsockopt system call, or by issuing a -.IR sendmsg () +.Xr sendmsg request specifying ancillary data only. -The user-provided cmsghdr must contain SOL_TRANSPORT for csmg_level -and TPOPT_DISC_DATA for cmsg_type. +The user-provided +.Va cmsghdr +must contain +.Dv SOL_TRANSPORT +for +.Va csmg_level +and +.Dv TPOPT_DISC_DATA +for +.Va cmsg_type . Sending of disconnect data will in of itself tear down (or reject) the connection. -.TP 25 -TPOPT_CFRM_DATA\fB #\fR +.It Dv TPOPT_CFRM_DATA \&# (char *) [none] -.IP +.br Data to send when confirming a connection. This may aslo be sent by a -.IR setsockopt () +.Xr setsockopt system call, or by issuing a -.IR sendmsg () +.Xr sendmsg request, as above. Sending of connect confirm data will cause the connection to be confirmed rather than rejected. -.\".TP 25 -.\"TPOPT_CDDATA_CLEAR\fB #\fR -.\"No associated value. -.\".IP -.\"Erase outgoing connect or disconnect data. -.TP 25 -TPOPT_PERF_MEAS\fB #\fR +.It Dv TPOPT_PERF_MEAS \&# Boolean. -.IP -When \fBtrue\fR, performance measurements will be kept +.br +When +.Xr true , +performance measurements will be kept for this connection. When set before a connection is established, the active side will use a locally defined parameter on the -connect request packet; if the peer is another ARGO +connect request packet; if the peer is another +.Tn ARGO implementation, this will cause performance measurement to be turned on on the passive side as well. -See \fItpperf(8)\fR. -.TP 25 -TPOPT_PSTATISTICS\fB\fR +See +.Xr tpperf 8 . +.It Dv TPOPT_PSTATISTICS No associated value on input. -On output, struct tp_pmeas. -.IP +On output, +.Ar struct tp_pmeas . +.Pp This command is used to read the performance statistics accumulated during a connection's lifetime. -It can only be used with \fIgetsockopt()\fR. -The structure it returns is described in \fB\fR. -See \fItpperf(8)\fR. -.TP 25 -TPOPT_FLAGS -unsigned integer. [ 0x0 ] -.IP -This command can only be used with \fIgetsockopt()\fR. +It can only be used with +.Xr getsockopt . +The structure it returns is described in +.Aq Pa netiso/tp_stat.h . +See +.Xr tpperf 8 . +.It Dv TPOPT_FLAGS +unsigned integer. [0x0] +.br +This command can only be used with +.Xr getsockopt . See the description of the flags below. -.TP 25 -TPOPT_PARAMS\fB\fR -struct tp_conn_param. -.IP +.It Dv TPOPT_PARAMS +.Ar struct tp_conn_param +.br Used to get or set a group parameters for a connection. -The struct tp_conn_param is the argument used with the -\fIgetsockopt()\fR or \fIsetsockopt()\fR system call. +The +.Ar struct tp_conn_param +is the argument used with the +.Xr getsockopt +or +.Xr setsockopt +system call. It is described in -\fB\fR. -.PP -The fields of the \fItp_conn_param\fR structure are +.Aq Pa netiso/tp_user.h . +.Pp +The fields of the +.Ar tp_conn_param +structure are described below. -.nf -.sp 1 -\fIValues for TPOPT_PARAMS:\fR -.fi -.TP 25 -\fBField\fR -\fBValue [default]\fR -.IP -\fBDescription\fR -.\" ******************8 -.TP 25 -p_Nretrans -nonzero short integer [ 1 ] -.IP -Number of times a TPDU will be retransmitted before the +.El +.Pp +.Em Values for TPOPT_PARAMS: +.Bl -tag -width p_sendack_ticks +.It Ar p_Nretrans +nonzero short integer [1] +.br +Number of times a TPDU +will be retransmitted before the local TP entity closes a connection. -.\" ******************8 -.TP 25 -p_dr_ticks -nonzero short integer [ various ] -.IP -Number of clock ticks between retransmissions of disconnect request TPDUs. -.\" ******************8 -.TP 25 -p_dt_ticks -nonzero short integer [ various ] -.IP -Number of clock ticks between retransmissions of data TPDUs. +.It Ar p_dr_ticks +nonzero short integer [various] +.br +Number of clock ticks between retransmissions of disconnect request +TPDUs. +.It Ar p_dt_ticks +nonzero short integer [various] +.br +Number of clock ticks between retransmissions of data +TPDUs. This parameter applies only to class 4. -.\" ******************8 -.TP 25 -p_cr_ticks -nonzero short integer [ various ] -.IP -Number of clock ticks between retransmissions of connection request TPDUs. -.\" ******************8 -.TP 25 -p_cc_ticks -nonzero short integer [ various ] -.IP -Number of clock ticks between retransmissions of connection confirm TPDUs. +.It Ar p_cr_ticks +nonzero short integer [various] +.br +Number of clock ticks between retransmissions of connection request +TPDUs. +.It Ar p_cc_ticks +nonzero short integer [various] +.br +Number of clock ticks between retransmissions of connection confirm +TPDUs. This parameter applies only to class 4. -.\" ******************8 -.TP 25 -p_x_ticks -nonzero short integer [ various ] -.IP -Number of clock ticks between retransmissions of expedited data TPDUs. +.It Ar p_x_ticks +nonzero short integer [various] +.br +Number of clock ticks between retransmissions of expedited data +TPDUs. This parameter applies only to class 4. -.\" ******************8 -.TP 25 -p_sendack_ticks -nonzero short integer [ various ] -.IP +.It Ar p_sendack_ticks +nonzero short integer [various] +.br Number of clock ticks that the local TP entity will wait before sending an acknowledgment for normal data -(not applicable if the acknowlegement strategy is TPACK_EACH). +(not applicable if the acknowlegement strategy is +.Dv TPACK_EACH ) . This parameter applies only to class 4. -.\" ******************8 -.TP 25 -p_ref_ticks -nonzero short integer [ various ] -.IP +.It Ar p_ref_ticks +nonzero short integer [various] +.br Number of clock ticks for which a reference will be considered frozen after the connection to which it applied is closed. This parameter applies to classes 4 and 0 in the -ARGO implementation, despite the fact that +.Tn ARGO +implementation, despite the fact that the frozen reference function is required only for class 4. -.\" ******************8 -.TP 25 -p_inact_ticks -nonzero short integer [ various ] -.IP +.It Ar p_inact_ticks +nonzero short integer [various] +.br Number of clock ticks without an incoming packet from the peer after which -TP close the connection. +.Tn TP +close the connection. This parameter applies only to class 4. -.\" ******************8 -.TP 25 -p_keepalive_ticks -nonzero short integer [ various ] -.IP -nonzero short integer [ various ] +.It Ar p_keepalive_ticks +nonzero short integer [various] +.br Number of clock ticks between acknowledgments that are sent to keep an inactive connection open (to prevent the peer's inactivity control function from closing the connection). This parameter applies only to class 4. -.\" ******************8 -.TP 25 -p_winsize +.It Ar p_winsize short integer between 128 and 16384. [4096 bytes] -.IP +.br The buffer space limits in bytes for incoming and outgoing data. There is no way to specify different limits for incoming and outgoing paths. The actual window size at any time during the lifetime of a connection is a function of the buffer size limit, the negotiated -maximum TPDU size, and the +maximum TPDU +size, and the rate at which the user program receives data. This parameter applies only to class 4. -.\" ******************8 -.TP 25 -p_tpdusize +.It Ar p_tpdusize unsigned char between 0x7 and 0xd. -[ 0xc for class 4 ] [ 0xb for class 0 ] -.IP +[0xc for class 4] [0xb for class 0] +.br Log 2 of the maximum TPDU size to be negotiated. -The TP standard (ISO 8473) gives an upper bound of +The +.Tn TP +standard +.Pf ( Tn ISO +8473) gives an upper bound of 0xd for class 4 and 0xb for class 0. -The ARGO implementation places upper bounds of +The +.Tn ARGO +implementation places upper bounds of 0xc on class 4 and 0xb on class 0. -.\" ******************8 -.TP 25 -p_ack_strat -TPACK_EACH or TPACK_WINDOW. [ TPACK_WINDOW ] -.IP +.It Ar p_ack_strat +.Dv TPACK_EACH +or +.Dv TPACK_WINDOW. +.Bq Dv TPACK_WINDOW +.br This parameter applies only to class 4. Two acknowledgment strategies are supported: -.IP -TPACK_EACH means that each data TPDU is acknowledged +.Pp +.Dv TPACK_EACH means that each data TPDU +is acknowledged with an AK TPDU. -.IP -TPACK_WINDOW +.Pp +.Dv TPACK_WINDOW means that upon receipt of the packet that represents the high edge of the last window advertised, and AK TPDU is generated. -.\" ******************8 -.TP 25 -p_rx_strat +.It Ar p_rx_strat 4 bit mask -[ TPRX_USE_CW | TPRX_FASTSTART over -connectionless network protocols ] -[ TPRX_USE_CW over -connection-oriented network protocols ] -.IP +.Bq Dv TPRX_USE_CW No \&|\ Dv TPRX_FASTSTART +over +connectionless network protocols] +.Pf [ Dv TPRX_USE_CW +over +connection-oriented network protocols] +.br This parameter applies only to class 4. The bit mask may include the following values: -.IP -TPRX_EACH: When a retransmission timer expires, retransmit +.Pp +.Dv TPRX_EACH : +When a retransmission timer expires, retransmit each packet in the send window rather than just the first unacknowledged packet. -.IP -TPRX_USE_CW: Use a "congestion window" strategy borrowed +.Pp +.Dv TPRX_USE_CW : +Use a "congestion window" strategy borrowed from Van Jacobson's congestion window strategy for TCP. The congestion window size is set to one whenever a retransmission occurs. -.IP -TPRX_FASTSTART: Begin sending the maximum amount of data permitted +.Pp +.Dv TPRX_FASTSTART : +Begin sending the maximum amount of data permitted by the peer (subject to availability). The alternative is to start sending slowly by pretending the peer's window is smaller than it is, and letting @@ -385,230 +428,274 @@ This is to smooth the effect of new connections on a congested network by preventing a transport connection from suddenly overloading the network with a burst of packets. This strategy is also due to Van Jacobson. -.\" ******************8 -.TP 25 -p_class +.It Ar p_class 5 bit mask -[ TP_CLASS_4 | TP_CLASS_0 ] -.IP -Bit mask including one or both of the values TP_CLASS_4 and TP_CLASS_0. +.Bq Dv TP_CLASS_4 No \&|\ Dv TP_CLASS_0 +.br +Bit mask including one or both of the values +.Dv TP_CLASS_4 +and +.Dv TP_CLASS_0 . The higher class indicated is the preferred class. If only one class is indicated, negotiation will not occur during connection establishment. -.\" ******************8 -.TP 25 -p_xtd_format +.It Ar p_xtd_format Boolean. -[ false ] -.IP +[false] +.br Boolean indicating that extended format shall be negotiated. This parameter applies only to class 4. -.\" ******************8 -.TP 25 -p_xpd_service +.It Ar p_xpd_service Boolean. -[ true ] -.IP +[true] +.br Boolean indicating that the expedited data transport service will be negotiated. This parameter applies only to class 4. -.\" ******************8 -.TP 25 -p_use_checksum +.It Ar p_use_checksum Boolean. -[ true ] -.IP +[true] +.br Boolean indicating the the use of checksums will be negotiated. This parameter applies only to class 4. -.\" ******************8 -.TP 25 -p_use_nxpd +.It Ar p_use_nxpd Reserved for future use. -.\" ******************8 -.TP 25 -p_use_rcc +.It Ar p_use_rcc Reserved for future use. -.\" ******************8 -.TP 25 -p_use_efc +.It Ar p_use_efc Reserved for future use. -.\" ******************8 -.TP 25 -p_no_disc_indications +.It Ar p_no_disc_indications Boolean. -[ false ] -.IP -Boolean indicating that the local TP entity shall not issue -indications (signals) when a TP connection is disconnected. -.\" ******************8 -.TP 25 -p_dont_change_params -Boolean. -[ false ] -.IP -If \fBtrue\fR the TP entity will not override +[false] +.Pp +Boolean indicating that the local +.Tn TP +entity shall not issue +indications (signals) when a +.Tn TP +connection is disconnected. +.It Ar p_dont_change_params +Boolean. [false] +.br +If +.Em true +the +.Tn TP +entity will not override any of the other values given in this structure. -If the values cannot be used, the TP entity will drop, disconnect, +If the values cannot be used, the +.Tn TP +entity will drop, disconnect, or refuse to establish the connection to which this structure pertains. -.\" ******************8 -.TP 25 -p_netservice -One of { ISO_CLNS, ISO_CONS, ISO_COSNS, IN_CLNS }. -[ ISO_CLNS ] -.IP +.It Ar p_netservice +One of { +.Dv ISO_CLNS , +.Dv ISO_CONS , +.Dv ISO_COSNS , +.Dv IN_CLNS } . +.Pf [ Dv ISO_CLNS ] +.br Indicates which network service is to be used. -.IP -ISO_CLNS indicates the connectionless network service provided -by CLNP (ISO 8473). -.IP -ISO_CONS indicates the connection-oriented network service provided -by X.25 (ISO 8208) and ISO 8878. -.IP -ISO_COSNS indicates the +.Pp +.Dv ISO_CLNS +indicates the connectionless network service provided +by CLNP +.Pf ( Tn ISO +8473). +.Pp +.Dv ISO_CONS +indicates the connection-oriented network service provided +by X.25 +.Pf ( Tn ISO +8208) and +.Tn ISO +8878. +.Pp +.Dv ISO_COSNS +indicates the connectionless network service running over a -connection-oriented subnetwork service : CLNP (ISO 8473) over X.25 (ISO 8208). -.IP -IN_CLNS indicates the +connection-oriented subnetwork service: CLNP +.Pf ( Tn ISO +8473) over X.25 +.Pf ( Tn ISO +8208). +.Pp +.Dv IN_CLNS +indicates the DARPA Internet connectionless network service provided by IP (RFC 791). -.\" ******************8 -.TP 25 -p_dummy +.It Ar p_dummy Reserved for future use. -.sp 1 -.PP -The TPOPT_FLAGS option is used for obtaining +.El +.Pp +The +.Dv TPOPT_FLAGS +option is used for obtaining various boolean-valued options. Its meaning is as follows. The bit numbering used is that of the RT PC, which means that bit 0 is the most significant bit, while bit 8 is the least significant bit. -.nf .sp 1 -\fIValues for TPOPT_FLAGS:\fR -.fi -.TP 10 -\fBBits\fR -\fBDescription [Default]\fR -.TP 10 -0 -TPFLAG_NLQOS_PDN : set when the quality of the +.Em Values for TPOPT_FLAGS: +.Bl -tag -width Bitsx +.It Sy Bits +.Sy Description [Default] +.It \&0 +.Dv TPFLAG_NLQOS_PDN : +set when the quality of the network service is similar to that of a public data network. -.TP 10 -1 -TPFLAG_PEER_ON_SAMENET : set when the peer TP entity +.It \&1 +.Dv TPFLAG_PEER_ON_SAMENET : +set when the peer +.Tn TP +entity is considered to be on the same network as the local -TP entity. -.TP 10 -2 +.Tn TP +entity. +.It \&2 Not used. -.TP 10 -3 -TPFLAG_XPD_PRES : set when expedited data are present -[ 0 ] -.TP 10 -4..7 +.It \&3 +.Dv TPFLAG_XPD_PRES : +set when expedited data are present +[0] +.It 4\&..7 Reserved. -.\".TP 10 -.\"4 -.\"Reserved. -.\".TP 10 -.\"5 -.\"TPFLAG_DISC_DATA_IN : read only flag, if set indicates that -.\"data from a disconnect TPDU are present. -.\".TP 10 -.\"6 -.\"Reserved. -.\".TP 10 -.\"7 -.\"TPFLAG_CONN_DATA_IN : read only flag, if set indicates that -.\"data from a connect TPDU are present. -.SH "ERROR VALUES -.PP -The TP entity returns \fIerrno\fR error values as defined in -\fB\fR +.El +.Sh ERROR VALUES +.Pp +The +.Tn TP +entity returns +.Va errno +error values as defined in +.Aq Pa sys/errno.h and -\fB\fR. +.Aq Pa netiso/iso_errno.h . User programs may print messages associated with these value by -using an expanded version of \fIperror()\fR -found in the ISO library, \fIlibisodir.a\fR. -.PP -If the TP entity encounters asynchronous events +using an expanded version of +.Xr perror +found in the +.Tn ISO +library, +.Pa libisodir.a . +.Pp +If the +.Tn TP +entity encounters asynchronous events that will cause a transport connection to be closed, such as timing out while retransmitting a connect request TPDU, or receiving a DR TPDU, -the TP entity issues a SIGURG signal, indicating that +the +.Tn TP +entity issues a +.Dv SIGURG +signal, indicating that disconnection has occurred. If the signal is issued during a a system call, the system call may be interrupted, in which case the -\fIerrno\fR value upon return from the system call is EINTR. -If the signal SIGURG +.Va errno +value upon return from the system call is +.Er EINTR. +If the signal +.Dv SIGURG is being handled by reading -from the socket, and it was a \fIaccept()\fR that -timed out, the read may result in ENOTSOCK, -because the \fIaccept()\fR call had not yet returned a +from the socket, and it was a +.Xr accept 2 +that +timed out, the read may result in +.Er ENOTSOCK , +because the +.Xr accept +call had not yet returned a legitimate socket descriptor when the signal was handled. -ETIMEDOUT (or a some other errno value appropriate to the -type of error) is returned if SIGURG is blocked +.Dv ETIMEDOUT +(or a some other errno value appropriate to the +type of error) is returned if +.Dv SIGURG +is blocked for the duration of the system call. A user program should take one of the following approaches: -.IP "Block SIGURG." 5 +.Bl -tag -width Ds +.It Block Dv SIGURG If the program is servicing -only one connection, it can block or ignore SIGURG during connection +only one connection, it can block or ignore +.Dv SIGURG +during connection establishment. -The advantage of this is that the \fIerrno\fR value +The advantage of this is that the +.Va errno +value returned is somewhat meaningful. The disadvantage of this is that if ignored, disconnection and expedited data indications could be missed. For some programs this is not a problem. -.IP "Handle SIGURG." 5 +.It Handle Dv SIGURG If the program is servicing more than one connection at a time or expedited data may arrive or both, the program may elect to -service SIGURG. -It can use the \fIgetsockopt(...TPOPT_FLAGS...)\fR system +service +.Dv SIGURG . +It can use the +.Fn getsockopt ...TPOPT_FLAGS... +system call to see if the signal was due to the arrival of expedited data or due to a disconnection. In the latter case, -\fIgetsockopt()\fR -will return ENOTCONN. -.SH BUGS -.PP +.Xr getsockopt +will return +.Er ENOTCONN . +.El +.Sh SEE ALSO +.Xr tcp 4 , +.Xr netstat 1 , +.Xr iso 4 , +.Xr clnp 4 , +.Xr cltp 4 , +.Xr ifconfig 8 . +.Sh HISTORY +The +.Nm +protocol +.Ud +.Sh BUGS The protocol definition of expedited data is slightly problematic, in a way that renders expedited data almost useless, if two or more packets of expedited data are send within -time -\(*e, -where \(*e +time \(*e, where \(*e depends on the application. The problem is not of major significance since most applications do not use transport expedited data. The problem is this: -the expedited data acknowledgment TPDU has no field for conveying -credit, thus it is not possible for a TP entity to inform its peer +the expedited data acknowledgment TPDU +has no field for conveying +credit, thus it is not possible for a +.Tn TP +entity to inform its peer that "I received your expedited data but have no room to receive more." -The TP entity has the choice of acknowledging receipt of the -XPD TPDU -.TP 10 -when the user receives the XPD TSDU +The +.Tn TP +entity has the choice of acknowledging receipt of the +XPD TPDU: +.Bl -tag -width Ds +.It "when the user receives the" XPD TSDU which may be a fairly long time, -which may cause the sending TP entity to retransmit the packet, +which may cause the sending +.Tn TP +entity to retransmit the packet, and possibly to close the connection after retransmission, or -.TP 10 -when the TP entity receives it +.It "when the" Tn TP No "entity receives it" so the sending entity does not retransmit or close the connection. If the sending user then tries to send more expedited data -"soon", the expedited data will not be acknowledged (until the +.Dq soon , +the expedited data will not be acknowledged (until the receiving user receives the first XPD TSDU). -.PP -The ARGO implementation acknowledges XPD TPDUs immediately, +.El +.Pp +The +.Tn ARGO +implementation acknowledges XPD TPDUs +immediately, in the hope that most users will not use expedited data requently enough for this to be a problem. -.SH SEE ALSO -.PP -tcp(4), -netstat(1), -iso(4), clnp(4), -cltp(4), -ifconfig(8). diff --git a/usr/src/share/man/man4/udp.4 b/usr/src/share/man/man4/udp.4 index b634d24fd2..ad6f17c496 100644 --- a/usr/src/share/man/man4/udp.4 +++ b/usr/src/share/man/man4/udp.4 @@ -1,77 +1,111 @@ -.\" Copyright (c) 1983 The Regents of the University of California. +.\" Copyright (c) 1983, 1991 The Regents of the University of California. .\" All rights reserved. .\" .\" %sccs.include.redist.man% .\" -.\" @(#)udp.4 6.4 (Berkeley) %G% +.\" @(#)udp.4 6.5 (Berkeley) %G% .\" -.TH UDP 4 "" -.UC 5 -.SH NAME -udp \- Internet User Datagram Protocol -.SH SYNOPSIS -.B #include -.br -.B #include -.PP -.B s = socket(AF_INET, SOCK_DGRAM, 0); -.SH DESCRIPTION -UDP is a simple, unreliable datagram protocol which is used -to support the SOCK_DGRAM abstraction for the Internet -protocol family. UDP sockets are connectionless, and are +.Dd +.Dt UDP 4 +.Os BSD 4.2 +.Sh NAME +.Nm udp +.Nd Internet User Datagram Protocol +.Sh SYNOPSIS +.Fd #include +.Fd #include +.Ft int +.Fn socket AF_INET SOCK_DGRAM 0 +.Sh DESCRIPTION +.Tn UDP +is a simple, unreliable datagram protocol which is used +to support the +.Dv SOCK_DGRAM +abstraction for the Internet +protocol family. +.Tn UDP +sockets are connectionless, and are normally used with the -.I sendto +.Xr sendto and -.IR recvfrom +.Xr recvfrom calls, though the -.IR connect (2) +.Xr connect 2 call may also be used to fix the destination for future packets (in which case the -.IR recv (2) +.Xr recv 2 or -.IR read (2) +.Xr read 2 and -.IR send (2) +.Xr send 2 or -.IR write(2) +.Xr write 2 system calls may be used). -.PP -UDP address formats are identical to those used by -TCP. In particular UDP provides a port identifier in addition -to the normal Internet address format. Note that the UDP port -space is separate from the TCP port space (i.e. a UDP port -may not be \*(lqconnected\*(rq to a TCP port). In addition broadcast +.Pp +.Tn UDP +address formats are identical to those used by +.Tn TCP . +In particular +.Tn UDP +provides a port identifier in addition +to the normal Internet address format. Note that the +.Tn UDP +port +space is separate from the +.Tn TCP +port space (i.e. a +.Tn UDP +port +may not be +.Dq connected +to a +.Tn TCP +port). In addition broadcast packets may be sent (assuming the underlying network supports -this) by using a reserved \*(lqbroadcast address\*(rq; this address +this) by using a reserved +.Dq broadcast address ; +this address is network interface dependent. -.PP -Options at the IP transport level may be used with UDP; see -.IR ip (4). -.SH DIAGNOSTICS +.Pp +Options at the +.Tn IP +transport level may be used with +.Tn UDP ; +see +.Xr ip 4 . +.Sh DIAGNOSTICS A socket operation may fail with one of the following errors returned: -.TP 15 -[EISCONN] +.Bl -tag -width [EADDRNOTAVAIL] +.It Bq Er EISCONN when trying to establish a connection on a socket which already has one, or when trying to send a datagram with the destination address specified and the socket is already connected; -.TP 15 -[ENOTCONN] +.It Bq Er ENOTCONN when trying to send a datagram, but no destination address is specified, and the socket hasn't been connected; -.TP 15 -[ENOBUFS] +.It Bq Er ENOBUFS when the system runs out of memory for an internal data structure; -.TP 15 -[EADDRINUSE] +.It Bq Er EADDRINUSE when an attempt is made to create a socket with a port which has already been allocated; -.TP 15 -[EADDRNOTAVAIL] +.It Bq Er EADDRNOTAVAIL when an attempt is made to create a socket with a network address for which no network interface exists. -.SH SEE ALSO -getsockopt(2), recv(2), send(2), socket(2), intro(4), inet(4), ip(4) +.El +.Sh SEE ALSO +.Xr getsockopt 2 , +.Xr recv 2 , +.Xr send 2 , +.Xr socket 2 , +.Xr intro 4 , +.Xr inet 4 , +.Xr ip 4 +.Sh HISTORY +The +.Nm +protocol appeared in +.Bx 4.2 . diff --git a/usr/src/share/man/man4/unix.4 b/usr/src/share/man/man4/unix.4 index 50f271f568..792bc5e0a7 100644 --- a/usr/src/share/man/man4/unix.4 +++ b/usr/src/share/man/man4/unix.4 @@ -3,7 +3,7 @@ .\" .\" %sccs.include.redist.man% .\" -.\" @(#)unix.4 6.2 (Berkeley) %G% +.\" @(#)unix.4 6.3 (Berkeley) %G% .\" .TH UNIX 4 "" .UC 5 -- 2.20.1