[vortex] 3c905C not auto-negotiating full duplex 100BaseT

David LANDGREN dlandgre@bpinet.com
Wed, 26 Sep 2001 18:54:40 +0200


I have a 3Com 3c905C Tornado ethernet card sitting in a 2.2.18pre21 Debian
server (i.e. it's about a year old). It's connected to a HP ProCurve 1600
switch which is configured for autonegotiation, but something in the
server's setup is forcing it to 10baseT-HD, as witnessed by mii-diag:

# mii-diag eth0
Basic registers of MII PHY #0:  0000 0000 0000 0000 0000 0000 0000 0000.
 Basic mode control register 0x0000: Auto-negotiation disabled, with
 Speed fixed at 10 mbps, half-duplex.
 Basic mode status register 0x0000 ... 0000.
   Link status: not established.
 Link partner information is not exchanged when in fixed speed mode.
   End of basic transceiver information.

dmesg contains:

3c59x.c 16Aug00 Donald Becker and others
http://www.scyld.com/network/vortex.html
eth0: 3Com 3c905C Tornado at 0xe800,  00:xx:xx:xx:xx:xx, IRQ 11
  8K byte-wide RAM 5:3 Rx:Tx split, 10baseT interface.

ifconfig reports
eth0      Link encap:Ethernet  HWaddr 00:xx:xx:xx:xx:xx
          inet addr:x.y.0.18  Bcast:x.y.31.255  Mask:255.255.0.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:69024 errors:623 dropped:0 overruns:1 frame:928
          TX packets:64330 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:100
          Interrupt:11 Base address:0xe800

And try as I might, I can't convince the card to enable auto-negotiation.
It's probably always been this way, I just never noticed before. I rebooted
it this morning after installing a new hard disk, and wondered why
throughput was so slow when I tried to scp some files to it.

Another hint: in the process of trying to copy files over the lan to it,
the switch started spewing out "Late collisions detected on port x" errors,
yet the card appears to be fixed to 10baseT-HD and the switch reports that
it has negotiated the link at that speed.

What am I missing? Something in /etc/conf.modules or /etc/interfaces?

Thanks,
David Landgren