Subject: CVS commit: syssrc
To: None <source-changes@netbsd.org>
From: Jason R Thorpe <thorpej@netbsd.org>
List: source-changes
Date: 08/03/1999 22:21:19
Module Name:	syssrc
Committed By:	thorpej
Date:		Wed Aug  4 05:21:19 UTC 1999

Modified Files:
	syssrc/sys/dev/ic: i82557.c i82557var.h

Log Message:
Almost completely rewrite the receive logic, making it as close as possible
to the EPIC/100 driver's (adjusting for the fact that Intel Ethernet chips
are from Pluto):
* Don't allocate receive buffers until the interface is actually brought
  up, and release all of them if the interface is taken down.
* Add a knob (defaults to off) which will copy an incoming packet to
  a single header mbuf if it is small enough to fit in one, rather than
  burning an entire cluster on it.  Note that this change will be mostly
  moot if/when sbcompress() is changed to handle compressing clusters.

Simplify some of the receive list logic:
* Rather than using a homegrown queue and additional software RX descriptors,
  use an ifqueue to queue receive buffers, and M_{GET,SET}CTX() to hook DMA
  maps and receive buffers together.

Clean up a bit:
* Macroize a bunch of things to make the code a bit easier to follow.


To generate a diff of this commit:
cvs rdiff -r1.6 -r1.7 syssrc/sys/dev/ic/i82557.c
cvs rdiff -r1.4 -r1.5 syssrc/sys/dev/ic/i82557var.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.