[vortex] 3c905C Tornado probs

Henrik Gram henrik.gram@teletopia.no
Fri Jul 12 06:30:01 2002


On Thu, July 11, 2002, Donald Becker wrote:
> On Thu, 11 Jul 2002, Henrik Gram wrote:
>
> > I have two different linux boxes and a number of 3c905C Tornado's - a
few
> > are made in ireland but most come from singapore and has a different
chip on
> > it.  I mention this because only the ones that says made in ireland
works
> > 100%.  I've switched pci slots, cables and switches/hunbs around
endlessly,
> > and here's what I've come up with:  (they are now both connected from
the
> > same machine and to the same switch, a 3com 'OfficeConnect - dual speed
> > switch').
>
> What driver are you using?

I had been using LK1.1.16 (2.4.18) and LK1.1.17 (2.4.19-pre9), and later
switched to your latest 3c95x driver.  I did not notice much difference - if
it matters any, the bad cards got ~10% errors under real use, while
currently the test box is getting 2% errors when pingflooding from it.

> What is the detection message?

3c59x.c:v0.99X 6/21/2002 Donald Becker, becker@scyld.com
  http://www.scyld.com/network/vortex.html
eth0: 3Com 3c905C Tornado at 0xe400,  00:04:76:24:c9:c9, IRQ 5
  8K buffer 5:3 Rx:Tx split, autoselect/Autonegotiate interface.
  MII transceiver found at address 24, status 782d.
  Using bus-master transmits and whole-frame receives.
eth1: 3Com 3c905C Tornado at 0xe800,  00:10:22:fd:9a:0c, IRQ 12
  8K buffer 5:3 Rx:Tx split, autoselect/Autonegotiate interface.
  MII transceiver found at address 24, status 782d.
  Using bus-master transmits and whole-frame receives.

> >  The autonegotiated capability is 01e0.
> > The autonegotiated media type is 100baseTx-FD.
> ...
> >  MII PHY #24 transceiver registers:
> >    3000 782d 0040 6176 05e1 45e1 0003 0000
>
> Good.
>
> > henrik@gonzo:~> mii-diag -v eth1
> >  The autonegotiated capability is 0140.
>
> Errmmm,
>
> > The autonegotiated media type is 100baseTx-FD.
>
> OK.
>
> >    This transceiver is capable of  100baseTx-FD 100baseTx 10baseT-FD
> > 10baseT.
> >    Able to perform Auto-negotiation, negotiation not complete.
>
> There was a problem with autonegotiation.  You got the link partner's
> capability information, but didn't finish the last stage of the
> transaction.
>
> >  Your link partner advertised 45e1: Flow-control 100baseTx-FD 100baseTx
> > 10baseT-FD 10baseT, w/ 802.3X flow control.
>
> But here the transceiver claims everything is fine.
>
> >  MII PHY #24 transceiver registers:
> >    3000 780d 0040 6174 0541 45e1 0000 0000
>
> The curiousity is that you are only advertising 0x0140 -- full duplex
> modes.  Did you pass a module option, or is there something set in the
> EEPROM?

I have not passed it any options.

henrik@gonzo:~> vortex-diag -ee
vortex-diag.c:v2.06 4/18/2002 Donald Becker (becker@scyld.com)
 http://www.scyld.com/diag/index.html
Index #1: Found a 3c905C Tornado 100baseTx adapter at 0xe400.
EEPROM format 64x16, configuration table at offset 0:
    00: 0004 7624 c9c9 9200 024f 0048 574d 6d50
  0x08: 2940 0800 0004 7624 c9c9 0010 0000 00aa
  0x10: 72a2 0000 0000 0180 0000 0000 0429 10b7
  0x18: 1000 000a 0002 6300 ffb7 b7b7 0000 0000
  0x20: 00ac 1234 5600 0000 0000 0000 0000 0000
      ...

 The word-wide EEPROM checksum is 0x276c.
Saved EEPROM settings of a 3Com Vortex/Boomerang:
 3Com Node Address 00:04:76:24:C9:C9 (used as a unique ID only).
 OEM Station address 00:04:76:24:C9:C9 (used as the ethernet address).
  Device ID 9200,  Manufacturer ID 6d50.
  Manufacture date (MM/DD/YYYY) 2/15/2001, division H, product MW.
  A BIOS ROM of size 0Kx8 is expected.
 Options: negotiated duplex, link beat required.
  Vortex format checksum is incorrect (003a vs. 10b7).
  Cyclone format checksum is incorrect (0xaa vs. 0xac).
  Hurricane format checksum is incorrect (0x83 vs. 0xac).
Index #2: Found a 3c905C Tornado 100baseTx adapter at 0xe800.
EEPROM format 64x16, configuration table at offset 0:
    00: 0010 22fc 8894 9200 0032 0048 5245 6d50
  0x08: 2940 0001 0010 22fd 9a0c c010 0000 00aa
  0x10: 72a2 0000 0000 0180 0000 0004 0429 10b7
  0x18: 1000 000a 0002 6300 ffb7 b7b7 0000 0000
  0x20: 00de 1234 5600 0000 0000 0000 0000 0000
      ...

 The word-wide EEPROM checksum is 0xc155.
Saved EEPROM settings of a 3Com Vortex/Boomerang:
 3Com Node Address 00:10:22:FC:88:94 (used as a unique ID only).
 OEM Station address 00:10:22:FD:9A:0C (used as the ethernet address).
  Device ID 9200,  Manufacturer ID 6d50.
  Manufacture date (MM/DD/YYYY) 1/18/2000, division H, product ER.
  No BIOS ROM is present.
 Options: force full duplex, link beat check disabled.
  Vortex format checksum is incorrect (000e vs. 10b7).
  Cyclone format checksum is incorrect (0x9e vs. 0xde).
  Hurricane format checksum is incorrect (0xb7 vs. 0xde).

hmmm no bios?  and in the first interface a size zero bios "is expected" -
what does this mean?

The cards are all labelled 3C905C-TX-M, both those made in Singapore and in
Ireland.  So far I have only had luck with the irish ones.  Further the good
NICs are made in 2001 and have product code MW, while the bad one above have
ER. No idea if any of this is significant.

> > ping flooding through the bad NICs results in a lot of RX errors and RX
> > frame errors (~5 %), but I've seen 10%+ when the box was doing something
> > useful instead of just the pings.
>
> This looks like a duplex mismatch.  Perhaps the remote end didn't switch
> to full duplex mode because of the questionable completion of
> autonegotiation.

I've tried using mii-diag eth1 -F 100baseTX-HD (and FD, and the 10base
combinations), the interface would just stop working until a mii-diag
eth1 --Reset.  Further if I ping from the box after having forced it one way
or the other, I get TX errors instead and no replies at all - maybe it
doens't send anything out at all in that case?

Another oddity I've noticed is that after cold booting, the 100 mbit light
is on.. but at some point after booting into linux and playing with the
pings, it changes to the 10 mbit light - yet the diagnostics programs all
say it's 100 mbit.  It will change back to 100mbit if I force it to, but
wont respond to anything after that.  I'm getting really confused.

Regards,

Henrik Gram