Subject: Re: NetBSD ruined my NIC??
To: Rui Paulo <goteki@pixeloverflow.com>
From: Nathan J. Williams <nathanw@wasabisystems.com>
List: port-i386
Date: 04/15/2004 18:37:27
Rui Paulo <goteki@pixeloverflow.com> writes:

> On Thu, 15 Apr 2004 23:53:33 +0200
> "Peter Fors" <pikofarad@bredband.net> wrote:
> 
> > 2. Why doesn't NetBSD even ask a single question before doing this kind of
> > dangerous modification to the hardware?
> > 
> Why are you so sure it was NetBSD's fault ? Several uncommon
> situations could happen that could lead to EEPROM destruction.

The driver for this chip does mess with the EEPROM. Quoting from the
source:

        /*
         * Systems based on the ICH2/ICH2-M chip from Intel, as well
         * as some i82559 designs, have a defect where the chip can
         * cause a PCI protocol violation if it receives a CU_RESUME
         * command when it is entering the IDLE state.
         *
         * The work-around is to disable Dynamic Standby Mode, so that
         * the chip never deasserts #CLKRUN, and always remains in the
         * active state.
         *
         * Unfortunately, the only way to disable Dynamic Standby is
         * to frob an EEPROM setting and reboot (the EEPROM setting
         * is only consulted when the PCI bus comes out of reset).
         *
         * See Intel 82801BA/82801BAM Specification Update, Errata #30.
         */

As for why NetBSD doesn't ask when doing this, well, it isn't supposed
to be dangerous (a quick search doesn't turn up any other victims, but
questions about the meaning of the message have come up several
times), and it is necessary for proper operation. Do you expect anyone
to answer "no" to "Should I work around this hardware problem
(yes/no)?".

Clearly, in your case, it didn't work, and it's not obvious why. It
should be fixable from software, and I would have expected the Intel
utility to have some options for that.

        - Nathan