Problems with Linksys EtherFast 10/100 PCI and 0.89K

Rob Ross rbross@parl.eng.clemson.edu
Thu Aug 13 15:02:32 1998


I just purchased a few of the Linksys EtherFast 10/100 PCI cards with
the LC82C169 chip on board, and I'm having some troubles.

I'm using the 0.89K driver as a module.

Basically, sometimes I boot and the card works, other times it doesn't.
Cold boot vs. rebooting doesn't seem to matter a whole lot.  From the
available output, it appears as if the MII transceiver isn't always
detected correctly(?).

Even when the card operates correctly, I still get a number of
"transmitter stopped!" messages.

Info on the card from /proc/pci:

PCI devices found:
  Bus  0, device  12, function  0:
    Ethernet controller: Unknown vendor LNE100TX (rev 17).
      Medium devsel.  Fast back-to-back capable.  IRQ 10.  Master
Capable.  Latency=64.
      I/O at 0x6c00.
      Non-prefetchable 32 bit memory at 0xea800000.

Here's output from the machine when the ethernet is operating.  It is
plugged into a 100mbit half duplex port.

>From tulip-diag -fam -p 0x6c00:

tulip-diag.c:v1.04 8/10/98 Donald Becker (becker@cesdis.gsfc.nasa.gov)
Unknown Tulip chip registers at 0x6c00:
  00004800 01ff0000 00000000 00fff028 00fff228 02660010 816e2002 0001ebef
  00000000 00008b29 00fff258 00095a24 00000004 00000000 00000000 10000001
 The Rx process state is 'Waiting for packets'.
 The Tx process state is 'Idle'.
Transmit started, Receive started, half-duplex.
 The transmit unit is set to store-and-forward.
 Port selection is MII 100baseTx scrambler, half-duplex.
 An old-style EEPROM layout was found.

 The old-style layout does not contain transceiver control information.

 This board may not work, or may work only with a subset of transceiver

 options or data rates.
 ***WARNING***: No MII transceivers found!

>From system logs:

Aug 13 14:20:33 playtoy kernel: tulip.c:v0.89K 8/8/98 becker@cesdis.gsfc.nasa.gov
Aug 13 14:20:33 playtoy kernel: eth0: Lite-On 82c168 PNIC at 0x6c00,
	00 a0 cc 21 8b 29, IRQ 10.
Aug 13 14:20:33 playtoy kernel: eth0: Checking for MII transceivers...
Aug 13 14:20:33 playtoy kernel: eth0:  MII transceiver found at MDIO
	address 1, config 0000 status 7829.
Aug 13 14:20:37 playtoy kernel: eth0: The transmitter stopped!  CSR5 is 
	2678016, CSR6 816e2002.
Aug 13 14:20:37 playtoy kernel: eth0: Changing PNIC configuration to
	half-duplex, CSR6 816e0000.
Aug 13 14:21:37 playtoy kernel: eth0: The transmitter stopped!  CSR5 is
	2678016, CSR6 812e2002.
[ etc, a few more of those messages ]

Here's the output when the card gets munged and stops working.  Note that
in this state, the link light is on, and the 100 light cycles between on
and off every 1-2 seconds.

>From tulip-diag -fam -p 0x6c00:

tulip-diag.c:v1.04 8/10/98 Donald Becker (becker@cesdis.gsfc.nasa.gov)
Unknown Tulip chip registers at 0x6c00:
  00004800 01ff0000 55555555 00fff028 00fff228 06661000 01862002 0001ebef
  00000000 00008b29 00fff2d8 00fff2d8 00000037 00000000 00000000 10000000
 The Rx process state is 'Waiting for packets'.
 The Tx process state is 'Idle'.
Transmit started, Receive started, half-duplex.
 The transmit threshold is 128.
 Port selection is 100mbps-SYM/PCS 100baseTx scrambler, half-duplex.
 An old-style EEPROM layout was found.

 The old-style layout does not contain transceiver control information.

 This board may not work, or may work only with a subset of transceiver

 options or data rates.
 ***WARNING***: No MII transceivers found!

>From system logs:

Aug 13 14:39:07 playtoy kernel: tulip.c:v0.89K 8/8/98 becker@cesdis.gsfc.nasa.gov
Aug 13 14:39:07 playtoy kernel: eth0: Lite-On 82c168 PNIC at 0x6c00,
	00 a0 cc 21 8b 29, IRQ 10.
Aug 13 14:39:07 playtoy kernel: eth0: Checking for MII transceivers...
Aug 13 14:39:11 playtoy kernel: eth0: The transmitter stopped!  CSR5 is 
	6269002, CSR6 1862002.
Aug 13 14:39:11 playtoy kernel: eth0: Changing PNIC configuration to
	half-duplex, CSR6 01860000.
Aug 13 14:39:14 playtoy kernel: eth0: The transmitter stopped!  CSR5 is 
	6679006, CSR6 422002.
Aug 13 14:39:14 playtoy kernel: eth0: Changing PNIC configuration to
	half-duplex, CSR6 00420000.
Aug 13 14:39:17 playtoy kernel: eth0: The transmitter stopped!  CSR5 is 
	6679006, CSR6 1862002.
Aug 13 14:39:17 playtoy kernel: eth0: Changing PNIC configuration to
	half-duplex, CSR6 01860000.
Aug 13 14:39:20 playtoy kernel: eth0: The transmitter stopped!  CSR5 is 
	6679006, CSR6 422002.
Aug 13 14:39:20 playtoy kernel: eth0: Changing PNIC configuration to
	half-duplex, CSR6 00420000.
Aug 13 14:39:23 playtoy kernel: eth0: The transmitter stopped!  CSR5 is 
	6679006, CSR6 1862002.
Aug 13 14:39:23 playtoy kernel: eth0: Changing PNIC configuration to
	half-duplex, CSR6 01860000.
Aug 13 14:39:26 playtoy kernel: eth0: The transmitter stopped!  CSR5 is 
	6679006, CSR6 422002.
Aug 13 14:39:26 playtoy kernel: eth0: Changing PNIC configuration to
	half-duplex, CSR6 00420000.

[ etc, every three seconds until I reboot ]

Note that the MII transceiver wasn't found in that case.

Anyway, that's what I know.  Suggestions?

Thanks!

Rob Ross
Parallel Architecture Research Laboratory, Clemson University
mailto:rbross@parl.eng.clemson.edu
http://ece.clemson.edu/parl/rbross/