[3214] in Release_7.7_team

home help back first fref pref prev next nref lref last post

A theory...

daemon@ATHENA.MIT.EDU (Bill Cattey)
Fri Mar 29 20:54:52 2002

From: Bill Cattey <wdc@MIT.EDU>
To: Bogdan Costescu <bogdan.costescu@iwr.uni-heidelberg.de>
Cc: release-team@mit.edu
Content-Type: text/plain
Content-Transfer-Encoding: 7bit
Date: 29 Mar 2002 20:54:48 -0500
Message-Id: <1017453288.2360.49.camel@tokata.mit.edu>
Mime-Version: 1.0

So I have empirical evidence that my 3c905c's could get into a state
where they thought they were not on the network, even across a power
cycle of the machine.

Issuing mii-diag -R fixed the condition.
Also, the older, contained in stock linux mii-tool -R would fix it.

I see that the options selected were "negotiated duplex, link beat
required."

It looks to my eye like with media status linkDetect = 0 in window 3,
the autonegotiate logic was perceiving no capabilities and not
negotiating anything.

I see the following in the 3Com doc:

linkDetect: This read-only bit provides a real-time indication of
        the twisted-pair transceiver link status for 10BASE-T,
        100BASE-TX, and 100BASE-FX operation.
        
        When the NIC is operating in 10BASE-T mode, this bit
        reflects the state of the link beat logic.
        
        For 100BASE-TX or 100BASE-FX operation, this bit reflects
        the state of the link monitor process. For all of these
        modes, linkDetect is forced on whenever linkBeatEnable
        is cleared.
        
        For MII operation, this bit is always set.
        
Is it possible that when we toggled from MII operation (0x0160 in the
Config Register) to Auto Negotiate (0x0180 in the Config Register),
that the linkDetect got stuck off and because the link beat status
was coming from the wrong part of the chip.  When we forced option 2,
I'll bet what we REALLY were doing was disabling linkDetect mode.

Could we have a bug in the chip such that the power-on reset logic is
not making the link-detect status come from the right place when we
toggle back from force MII?

Could the reason why mii-diag -R corrected the problem was that it
cleared and set linkBeatEnable sending us through another route in the
chip config system to get that link beat status from the right place?

Sounds crazy, but that's my guess based on the information I have.

-wdc


home help back first fref pref prev next nref lref last post