1.\" Copyright (c) 1983, 1991, 1993 2.\" The Regents of the University of California. All rights reserved. 3.\" 4.\" Redistribution and use in source and binary forms, with or without 5.\" modification, are permitted provided that the following conditions 6.\" are met: 7.\" 1. Redistributions of source code must retain the above copyright 8.\" notice, this list of conditions and the following disclaimer. 9.\" 2. Redistributions in binary form must reproduce the above copyright 10.\" notice, this list of conditions and the following disclaimer in the 11.\" documentation and/or other materials provided with the distribution. 12.\" 3. All advertising materials mentioning features or use of this software 13.\" must display the following acknowledgement: 14.\" This product includes software developed by the University of 15.\" California, Berkeley and its contributors. 16.\" 4. Neither the name of the University nor the names of its contributors 17.\" may be used to endorse or promote products derived from this software 18.\" without specific prior written permission. 19.\" 20.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 21.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 22.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 23.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 24.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 25.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 26.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 27.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 28.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 29.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 30.\" SUCH DAMAGE. 31.\" 32.\" @(#)en.4 8.1 (Berkeley) 6/5/93 33.\" 34.Dd June 5, 1993 35.Dt EN 4 vax 36.Os BSD 4.2 37.Sh NAME 38.Nm en 39.Nd Xerox 3 Mb/s Ethernet interface 40.Sh SYNOPSIS 41.Cd "device en0 at uba0 csr 161000 vector enrint enxint encollide" 42.Sh DESCRIPTION 43The 44.Nm en 45interface provides access to a 3 Mb/s Ethernet network. 46Due to limitations in the hardware, 47.Tn DMA 48transfers 49to and from the network must take place in the lower 64K bytes 50of the 51.Tn UNIBUS 52address space, and thus this must be among the first 53.Tn UNIBUS 54devices enabled after boot. 55.Pp 56Each of the host's network addresses 57is specified at boot time with an 58.Dv SIOCSIFADDR 59.Xr ioctl 2 . 60The station address is discovered by probing the on-board Ethernet 61address register, and is used to verify the protocol addresses. 62No packets will be sent or accepted until 63a network address is supplied. 64.Pp 65The interface software implements an exponential backoff algorithm 66when notified of a collision on the cable. This algorithm utilizes 67a 16-bit mask and the 68.Tn VAX-11 Ns 's 69interval timer in calculating a series 70of random backoff values. The algorithm is as follows: 71.Pp 72.Bl -enum -offset indent 73.It 74Initialize the mask to be all 1's. 75.It 76If the mask is zero, 16 retries have been made and we give 77up. 78.It 79Shift the mask left one bit and formulate a backoff by 80masking the interval timer with the mask (this is actually 81the two's complement of the value). 82.It 83Use the value calculated in step 3 to delay before retransmitting 84the packet. 85.El 86.Pp 87The interface handles both Internet and 88.Tn NS 89protocol families. 90It normally tries to use a 91.Dq trailer 92encapsulation 93to minimize copying data on input and output. 94The use of trailers is negotiated with 95.Tn ARP . 96This negotiation may be disabled, on a per-interface basis, 97by setting the 98.Dv IFF_NOTRAILERS 99flag with an 100.Dv SIOCSIFFLAGS 101.Xr ioctl . 102.Sh DIAGNOSTICS 103.Bl -diag 104.It en%d: output error. 105The hardware indicated an error on 106the previous transmission. 107.Pp 108.It en%d: send error. 109After 16 retransmissions using the 110exponential backoff algorithm described above, the packet 111was dropped. 112.Pp 113.It en%d: input error. 114The hardware indicated an error 115in reading a packet off the cable. 116.Pp 117.It en%d: can't handle af%d. 118The interface was handed 119a message with addresses formatted in an unsuitable address 120family; the packet was dropped. 121.El 122.Sh SEE ALSO 123.Xr netintro 4 , 124.Xr inet 4 125.Sh HISTORY 126The 127.Nm 128driver appeared in 129.Bx 4.2 . 130.Sh BUGS 131The device has insufficient buffering to handle back to 132back packets. This makes use in a production environment 133painful. 134.Pp 135The hardware does word at a time 136.Tn DMA 137without byte swapping. 138To compensate, byte swapping of user data must either be done 139by the user or by the system. A kludge to byte swap only 140.Tn IP 141packets is provided if the 142.Dv ENF_SWABIPS 143flag is defined in 144the driver and set at boot time with an 145.Dv SIOCSIFFLAGS 146.Xr ioctl . 147