1.\" Copyright (c) 1983, 1991, 1993 2.\" The Regents of the University of California. All rights reserved. 3.\" 4.\" %sccs.include.redist.man% 5.\" 6.\" @(#)en.4 8.1 (Berkeley) 06/05/93 7.\" 8.Dd 9.Dt EN 4 vax 10.Os BSD 4.2 11.Sh NAME 12.Nm en 13.Nd Xerox 3 Mb/s Ethernet interface 14.Sh SYNOPSIS 15.Cd "device en0 at uba0 csr 161000 vector enrint enxint encollide" 16.Sh DESCRIPTION 17The 18.Nm en 19interface provides access to a 3 Mb/s Ethernet network. 20Due to limitations in the hardware, 21.Tn DMA 22transfers 23to and from the network must take place in the lower 64K bytes 24of the 25.Tn UNIBUS 26address space, and thus this must be among the first 27.Tn UNIBUS 28devices enabled after boot. 29.Pp 30Each of the host's network addresses 31is specified at boot time with an 32.Dv SIOCSIFADDR 33.Xr ioctl 2 . 34The station address is discovered by probing the on-board Ethernet 35address register, and is used to verify the protocol addresses. 36No packets will be sent or accepted until 37a network address is supplied. 38.Pp 39The interface software implements an exponential backoff algorithm 40when notified of a collision on the cable. This algorithm utilizes 41a 16-bit mask and the 42.Tn VAX-11 Ns 's 43interval timer in calculating a series 44of random backoff values. The algorithm is as follows: 45.Pp 46.Bl -enum -offset indent 47.It 48Initialize the mask to be all 1's. 49.It 50If the mask is zero, 16 retries have been made and we give 51up. 52.It 53Shift the mask left one bit and formulate a backoff by 54masking the interval timer with the mask (this is actually 55the two's complement of the value). 56.It 57Use the value calculated in step 3 to delay before retransmitting 58the packet. 59.El 60.Pp 61The interface handles both Internet and 62.Tn NS 63protocol families. 64It normally tries to use a 65.Dq trailer 66encapsulation 67to minimize copying data on input and output. 68The use of trailers is negotiated with 69.Tn ARP . 70This negotiation may be disabled, on a per-interface basis, 71by setting the 72.Dv IFF_NOTRAILERS 73flag with an 74.Dv SIOCSIFFLAGS 75.Xr ioctl . 76.Sh DIAGNOSTICS 77.Bl -diag 78.It en%d: output error. 79The hardware indicated an error on 80the previous transmission. 81.Pp 82.It en%d: send error. 83After 16 retransmissions using the 84exponential backoff algorithm described above, the packet 85was dropped. 86.Pp 87.It en%d: input error. 88The hardware indicated an error 89in reading a packet off the cable. 90.Pp 91.It en%d: can't handle af%d. 92The interface was handed 93a message with addresses formatted in an unsuitable address 94family; the packet was dropped. 95.El 96.Sh SEE ALSO 97.Xr netintro 4 , 98.Xr inet 4 99.Sh HISTORY 100The 101.Nm 102driver appeared in 103.Bx 4.2 . 104.Sh BUGS 105The device has insufficient buffering to handle back to 106back packets. This makes use in a production environment 107painful. 108.Pp 109The hardware does word at a time 110.Tn DMA 111without byte swapping. 112To compensate, byte swapping of user data must either be done 113by the user or by the system. A kludge to byte swap only 114.Tn IP 115packets is provided if the 116.Dv ENF_SWABIPS 117flag is defined in 118the driver and set at boot time with an 119.Dv SIOCSIFFLAGS 120.Xr ioctl . 121