[tulip] Cogent Quartet/400 multiport NIC problem.

brian b@mighty.morphism.org
Sat, 20 Jan 2001 15:21:13 -0600 (CST)


I know that questions of this nature have been addressed on this mailing
list in the recent past, but none of them seem to really confront the kind
of problems I've been having.

I'm building a small-scale cluster and will be connecting four other
machines to the Quartet/400 (4 x 21140 + 21050) via crossover cable.  The
problem is the machine locks up on issuing 'ifconfig' for any of the 2nd -
4th interfaces on the card.  You can call "ifconfig eth0 10.1.0.1" and it
will work properly.  If you call any of "ifconfig eth1 ..." to "ifconfig
eth3 ..." the machine will lock up.

The BIOS is making the IRQ assignments of 11, 9, 10, 5 for eth0 through 
eth3 respectively.  No APCI is compiled into the kernel.  No APIC support
is compiled in.  The machine also has an RTL8139C based adapter.

Here is some of the pertinent information:

dmesg:

Linux Tulip driver version 0.9.13 (January 2, 2001)
eth0: Digital DS21140 Tulip rev 18 at 0xc000, 00:00:92:95:0C:00, IRQ 11.
eth0: Old format EEPROM on 'Cogent EM100' board.  Using substitute media control info.
eth0:  EEPROM default media type Autosense.
eth0:  Index #0 - Media 100baseFx (#7) described by a 21140 non-MII (0) block.
eth0:  Index #1 - Media 100baseFx-FD (#8) described by a 21140 non-MII (0) block.
eth0:  Index #2 - Media 10baseT (#0) described by a 21140 non-MII (0) block.
eth0:  Index #3 - Media 10baseT-FD (#4) described by a 21140 non-MII (0) block.
eth0:  Index #4 - Media 100baseTx (#3) described by a 21140 non-MII (0) block.
eth0:  Index #5 - Media 100baseTx-FD (#5) described by a 21140 non-MII (0) block.
eth1: Digital DS21140 Tulip rev 18 at 0xc400, EEPROM not present, 00:00:92:95:0C:01, IRQ 11.
eth1: Old format EEPROM on 'Cogent EM100' board.  Using substitute media control info.
eth1:  EEPROM default media type Autosense.
eth1:  Index #0 - Media 100baseFx (#7) described by a 21140 non-MII (0) block.
eth1:  Index #1 - Media 100baseFx-FD (#8) described by a 21140 non-MII (0) block.
eth1:  Index #2 - Media 10baseT (#0) described by a 21140 non-MII (0) block.
eth1:  Index #3 - Media 10baseT-FD (#4) described by a 21140 non-MII (0) block.
eth1:  Index #4 - Media 100baseTx (#3) described by a 21140 non-MII (0) block.
eth1:  Index #5 - Media 100baseTx-FD (#5) described by a 21140 non-MII (0) block.
eth2: Digital DS21140 Tulip rev 18 at 0xc800, EEPROM not present, 00:00:92:95:0C:02, IRQ 11.
eth2: Old format EEPROM on 'Cogent EM100' board.  Using substitute media control info.
eth2:  EEPROM default media type Autosense.
eth2:  Index #0 - Media 100baseFx (#7) described by a 21140 non-MII (0) block.
eth2:  Index #1 - Media 100baseFx-FD (#8) described by a 21140 non-MII (0) block.
eth2:  Index #2 - Media 10baseT (#0) described by a 21140 non-MII (0) block.
eth2:  Index #3 - Media 10baseT-FD (#4) described by a 21140 non-MII (0) block.
eth2:  Index #4 - Media 100baseTx (#3) described by a 21140 non-MII (0) block.
eth2:  Index #5 - Media 100baseTx-FD (#5) described by a 21140 non-MII (0) block.
eth3: Digital DS21140 Tulip rev 18 at 0xcc00, EEPROM not present, 00:00:92:95:0C:03, IRQ 11.
eth3: Old format EEPROM on 'Cogent EM100' board.  Using substitute media control info.
eth3:  EEPROM default media type Autosense.
eth3:  Index #0 - Media 100baseFx (#7) described by a 21140 non-MII (0) block.
eth3:  Index #1 - Media 100baseFx-FD (#8) described by a 21140 non-MII (0) block.
eth3:  Index #2 - Media 10baseT (#0) described by a 21140 non-MII (0) block.
eth3:  Index #3 - Media 10baseT-FD (#4) described by a 21140 non-MII (0) block.
eth3:  Index #4 - Media 100baseTx (#3) described by a 21140 non-MII (0) block.
eth3:  Index #5 - Media 100baseTx-FD (#5) described by a 21140 non-MII (0) block.
8139too Fast Ethernet driver 0.9.13 loaded
PCI: Found IRQ 10 for device 00:0d.0
PCI: The same IRQ used for device 00:0f.0
eth4: RealTek RTL8139 Fast Ethernet at 0xe0800000, 00:50:ba:85:70:46, IRQ 10
eth4:  Identified 8139 chip type 'RTL-8139B'

I noticed that in earlier version of the driver, other people showed that
it reported each interface was part of a multiport adapter, whereas this
one does not.

/proc/ioports

c000-cfff : PCI Bus #02
  c000-c07f : Digital Equipment Corporation DECchip 21140 [FasterNet]
    c000-c07f : eth0
  c400-c47f : Digital Equipment Corporation DECchip 21140 [FasterNet] (#2)
    c400-c47f : eth1
  c800-c87f : Digital Equipment Corporation DECchip 21140 [FasterNet] (#3)
    c800-c87f : eth2
  cc00-cc7f : Digital Equipment Corporation DECchip 21140 [FasterNet] (#4)
    cc00-cc7f : eth3

/proc/pci

  Bus  0, device  11, function  0:
    PCI bridge: Digital Equipment Corporation DECchip 21050 (rev 2).
      Master Capable.  Latency=32.  Min Gnt=6.
  Bus  0, device  13, function  0:
    Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139 (rev 16).
      IRQ 10.
      Master Capable.  Latency=32.  Min Gnt=32.Max Lat=64.
      I/O at 0xe000 [0xe0ff].
      Non-prefetchable 32 bit memory at 0xd5101000 [0xd51010ff].
  Bus  2, device   4, function  0:
    Ethernet controller: Digital Equipment Corporation DECchip 21140 [FasterNet] (rev 18).
      IRQ 11.
      Master Capable.  Latency=32.  
      I/O at 0xc000 [0xc07f].
      Non-prefetchable 32 bit memory at 0xd5000000 [0xd500007f].
  Bus  2, device   5, function  0:
    Ethernet controller: Digital Equipment Corporation DECchip 21140 [FasterNet] (#2) (rev 18).
      IRQ 9.
      Master Capable.  Latency=32.  
      I/O at 0xc400 [0xc47f].
      Non-prefetchable 32 bit memory at 0xd5001000 [0xd500107f].
  Bus  2, device   6, function  0:
    Ethernet controller: Digital Equipment Corporation DECchip 21140 [FasterNet] (#3) (rev 18).
      IRQ 10.
      Master Capable.  Latency=32.  
      I/O at 0xc800 [0xc87f].
      Non-prefetchable 32 bit memory at 0xd5002000 [0xd500207f].
  Bus  2, device   7, function  0:
    Ethernet controller: Digital Equipment Corporation DECchip 21140 [FasterNet] (#4) (rev 18).
      IRQ 5.
      Master Capable.  Latency=32.  
      I/O at 0xcc00 [0xcc7f].
      Non-prefetchable 32 bit memory at 0xd5003000 [0xd500307f].

tulip-diag:

tulip-diag.c:v2.06 1/8/2001 Donald Becker (becker@scyld.com)
 http://www.scyld.com/diag/index.html
Index #1: Found a Digital DS21140 Tulip adapter at 0xc000.
Digital DS21140 Tulip chip registers at 0xc000:
 0x00: fff88000 ffffffff ffffffff 1ffc8000 1ffc8200 fc000106 e2840000 fffe0000
 0x40: fffe0000 fffd97ff ffffffff fffe0000 ffffff81 ffffffff 1c09fdc0 fffffec8
 Port selection is 100mbps-SYM/PCS, half-duplex.
 Transmit stopped, Receive stopped, half-duplex.
  The Rx process state is 'Stopped'.
  The Tx process state is 'Stopped'.
  The transmit threshold is 128.
EEPROM 64 words, 6 address bits.
  * 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.
EEPROM contents (64 words):
0x00:  0000 9592 000c 2b31 312b 0c00 9295 0000
0x08:  0000 9592 000c 2b31 00ff aa55 00ff aa55
0x10:  0013 0000 9592 010c 2c31 312c 0c01 9295
0x18:  0000 0000 9592 010c 2c31 00ff aa55 00ff
0x20:  aa55 0013 0000 9592 020c 2d31 312d 0c02
0x28:  9295 0000 0000 9592 020c 2d31 00ff aa55
0x30:  00ff aa55 0013 0000 9592 030c 2e31 312e
0x38:  0c03 9295 0000 0000 9592 030c 2e31 ffff
 ID block CRC 0x28 (vs. 00).
  Full contents CRC 0xecd3 (read as 0xffff).
   No MII transceivers found!
Index #2: Found a Digital DS21140 Tulip adapter at 0xc400.
Digital DS21140 Tulip chip registers at 0xc400:
 0x00: fff80000 ffffffff ffffffff ffce3c8f af4ed76e fc000000 e2000040 fffe0000
 0x40: fffe0000 fffd97ff ffffffff fffe0000 ffffff80 ffffffff 1c09fdc0 fffffec8
 Port selection is 10mpbs-serial, half-duplex.
 Transmit stopped, Receive stopped, half-duplex.
  The Rx process state is 'Stopped'.
  The Tx process state is 'Stopped'.
  The transmit threshold is 72.
EEPROM 64 words, 6 address bits.
  * 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.
EEPROM contents (64 words):
0x00:  0000 0000 0000 0000 0000 0000 0000 0000
0x08:  0000 0000 0000 0000 0000 0000 0000 0000
0x10:  0000 0000 0000 0000 0000 0000 0000 0000
0x18:  0000 0000 0000 0000 0000 0000 0000 0000
0x20:  0000 0000 0000 0000 0000 0000 0000 0000
0x28:  0000 0000 0000 0000 0000 0000 0000 0000
0x30:  0000 0000 0000 0000 0000 0000 0000 0000
0x38:  0000 0000 0000 0000 0000 0000 0000 0000
 ID block CRC 0xe3 (vs. 00).
  Full contents CRC 0x6523 (read as 0x0000).
   No MII transceivers found!
Index #3: Found a Digital DS21140 Tulip adapter at 0xc800.
Digital DS21140 Tulip chip registers at 0xc800:
 0x00: fff80000 ffffffff ffffffff cecd8dcf edcddfcf fc000000 e2000040 fffe0000
 0x40: fffe0000 fffd97ff ffffffff fffe0000 ffffff80 ffffffff 1c09fdc0 fffffec8
 Port selection is 10mpbs-serial, half-duplex.
 Transmit stopped, Receive stopped, half-duplex.
  The Rx process state is 'Stopped'.
  The Tx process state is 'Stopped'.
  The transmit threshold is 72.
EEPROM 64 words, 6 address bits.
  * 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.
EEPROM contents (64 words):
0x00:  0000 0000 0000 0000 0000 0000 0000 0000
0x08:  0000 0000 0000 0000 0000 0000 0000 0000
0x10:  0000 0000 0000 0000 0000 0000 0000 0000
0x18:  0000 0000 0000 0000 0000 0000 0000 0000
0x20:  0000 0000 0000 0000 0000 0000 0000 0000
0x28:  0000 0000 0000 0000 0000 0000 0000 0000
0x30:  0000 0000 0000 0000 0000 0000 0000 0000
0x38:  0000 0000 0000 0000 0000 0000 0000 0000
 ID block CRC 0xe3 (vs. 00).
  Full contents CRC 0x6523 (read as 0x0000).
   No MII transceivers found!
Index #4: Found a Digital DS21140 Tulip adapter at 0xcc00.
Digital DS21140 Tulip chip registers at 0xcc00:
 0x00: fff80000 ffffffff ffffffff edbade87 6ffeaafe fc000000 e2000040 fffe0000
 0x40: fffe0000 fffd97ff ffffffff fffe0000 ffffff80 ffffffff 1c09fdc0 fffffec8
 Port selection is 10mpbs-serial, half-duplex.
 Transmit stopped, Receive stopped, half-duplex.
  The Rx process state is 'Stopped'.
  The Tx process state is 'Stopped'.
  The transmit threshold is 72.
EEPROM 64 words, 6 address bits.
  * 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.
EEPROM contents (64 words):
0x00:  0000 0000 0000 0000 0000 0000 0000 0000
0x08:  0000 0000 0000 0000 0000 0000 0000 0000
0x10:  0000 0000 0000 0000 0000 0000 0000 0000
0x18:  0000 0000 0000 0000 0000 0000 0000 0000
0x20:  0000 0000 0000 0000 0000 0000 0000 0000
0x28:  0000 0000 0000 0000 0000 0000 0000 0000
0x30:  0000 0000 0000 0000 0000 0000 0000 0000
0x38:  0000 0000 0000 0000 0000 0000 0000 0000
 ID block CRC 0xe3 (vs. 00).
  Full contents CRC 0x6523 (read as 0x0000).
   No MII transceivers found!

I think that is all the information that you could possibly want.  Has
this specifically been addressed before?  All the problems I've heard of
haven't resulted in machine lockup, but rather simply no activity occuring
over the line.

Thanks,
Brian