minix/minix
David van Moolenbroek 47db417b1a lance: perform full reinitialization for restarts
When performing a restart (CSR0 STOP, STRT), the behavior regarding
the NIC's current RX/TX descriptor ring counters varies between cards:
older LANCE cards do not reset the counters; newer PCnet cards do
reset them; VirtualBox's emulation is once again broken in that it
claims to emulate newer cards but implements the older behavior.

Changing the card's receive mode requires such a restart, and now that
the system can actually change receive modes dynamically as part of
normal network operation, this results in the lance driver breaking
all the time on at least VirtualBox.

Instead of trying to figure out exactly what is going on with the
counters during a restart, we now simply perform a full-blown
reinitialization every time the NIC is restarted.  That leaves no
ambiguity regarding the counters, and appears to be what drivers on
other OSes do as well.  As a bonus, this approach actually saves code.

Change-Id: I60fad2df6de4616d5de2cec39c09b60c15d854fb
2017-04-30 13:15:50 +00:00
..
bin New sources layout 2014-07-31 16:00:30 +02:00
commands Retire MINIX rlogin(1) 2017-03-09 23:40:08 +00:00
drivers lance: perform full reinitialization for restarts 2017-04-30 13:15:50 +00:00
fs Retire inet: the previous MINIX TCP/IP service 2017-03-09 23:39:58 +00:00
include libnetdriver: rewrite 2017-04-30 13:15:28 +00:00
kernel Retire inet: the previous MINIX TCP/IP service 2017-03-09 23:39:58 +00:00
lib libnetdriver: rewrite 2017-04-30 13:15:28 +00:00
llvm generate_gold_plugin: support for MAKE variable 2016-01-13 20:32:36 +01:00
man Retire MINIX rlogin(1) 2017-03-09 23:40:08 +00:00
net Retire inet: the previous MINIX TCP/IP service 2017-03-09 23:39:58 +00:00
sbin New sources layout 2014-07-31 16:00:30 +02:00
servers Retire inet: the previous MINIX TCP/IP service 2017-03-09 23:39:58 +00:00
share Retire MINIX tcpd(8) 2017-03-09 23:40:03 +00:00
tests tests: add advanced UDS tests (test90) 2017-03-09 23:39:56 +00:00
usr.bin UDS: full rewrite 2017-03-09 23:39:56 +00:00
usr.sbin etc: synchronize master.password, group to NetBSD 2017-02-18 21:37:24 +00:00
Makefile NetBSD re-synchronization of the source tree 2016-01-13 20:32:14 +01:00
Makefile.fetchgnu Improve the process for GNU tools 2016-09-01 21:16:13 +02:00
Makefile.inc New sources layout 2014-07-31 16:00:30 +02:00