xref: /original-bsd/share/man/man4/man4.vax/en.4 (revision c3e32dec)
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