midway update:  [1] add EN_ENIDMAFIX - the byte-aligner on the ENI version of the card         appears to lose under heavy load so avoid using it.  see comment         in midway.c for full details.
midway update:
 [1] add EN_ENIDMAFIX - the byte-aligner on the ENI version of the card
        appears to lose under heavy load so avoid using it.  see comment
        in midway.c for full details.

        note that the Adaptec version of the card works properly under
        load.

        detected by Kenjiro Cho <kjc@csl.sony.co.jp> [confirmed by chuck]
        fix by chuck & kjc

[2] update some freebsd specific code [from kjc]

[3] for circular buffers: ensure there is always one free slot so
        that we can easily tell the difference between a full and
        empty list.   re-structure a few loops to reflect this.
        fixes a problem with mbufs being free'd while still in DMA,
        and makes drive a bit more robust.

        detected and fixed by kjc

also, pull in the following changes from netbsd:
revision 1.29
date: 1997/07/07 22:52:17;  author: cgd;  state: Exp;  lines: +29 -22
fix static inline functions' prototypes so they're correctly marked
'inline' as well as static.  mark prototypes for static inline functions
as possibly unused (with __attribute__ ((unused))), to avoid generating
warnings when compiling without optimization but with most ports'
default warning flags.  Clean up prototype list spacing, and make it more
consistent.
---------------------------
revision 1.28
date: 1997/04/28 17:04:06;  author: mycroft;  state: Exp;  lines: +2 -1
Oops; forgot to GC the last mbuf allocated when out of clusters.
---------------------------
revision 1.27
date: 1997/04/24 02:25:37;  author: mycroft;  state: Exp;  lines: +2 -2
Do not force the initial part of a packet into a separate mbuf.
---------------------------
revision 1.26
date: 1997/04/24 02:24:07;  author: mycroft;  state: Exp;  lines: +6 -3
If we fail to allocate a cluster to hold a large packet, simply
drop it rather than using a chain of tiny mbufs.

orumin/openbsd-efivars,orumin/openbsd-efivars,orumin/openbsd-efivars,orumin/openbsd-efivars