[vortex] Auto-neg or not?

phase2@minotaur.host4u.net phase2@minotaur.host4u.net
Wed Sep 25 15:46:00 2002


Hi, 

Recently we've been using some generic linux boxes with the 3Com PCI 
3c905c cards installed. 

bash-2.05a$ dmesg | grep Tornado 
02:08.0: 3Com PCI 3c905C Tornado at 0x2000. Vers LK1.1.17 

We've taken Donald's suggestions and used auto negotiation on these cards. 

bash-2.05a$ sudo ./mii-tool 
Password: 
eth0: negotiated 100baseTx-FD, link ok 

We're using the 3c59x driver - 

bash-2.05a$ cat /etc/modules.conf 
alias parport_lowlevel parport_pc 
alias eth0 3c59x 

And everything looks to be good.  We receive over 10,000 KB/s when doing 
ttcp tests with a partner machine. 

Now comes the problem. 

Our engineering team doesn't believe auto negotation should be set. Even 
after we gave them tests that showed that by NOT setting auto negotiation 
we went from over 10,000 KB/s to < 1,000 KB/s.  Again and again, they 
point to the logs as issues to what they think are problems with the card 
and duplex settings.

Here's the specific log issues they think are 'duplex' problems. 

Sep 15 19:59:50 qwburbank01 kernel: NET: 9380 messages suppressed. 
Sep 15 19:59:55 qwburbank01 kernel: NET: 6050 messages suppressed. 
Sep 15 20:00:00 qwburbank01 kernel: NET: 6598 messages suppressed. 
Sep 15 20:00:05 qwburbank01 kernel: NET: 5340 messages suppressed. 
Sep 15 20:00:10 qwburbank01 kernel: NET: 3835 messages suppressed. 
Sep 15 20:00:15 qwburbank01 kernel: NET: 2848 messages suppressed. 
Sep 15 20:00:41 qwburbank01 kernel: eth0: Too much work in interrupt, 
status 8401. 

What do these log entries mean specifically and what can I do to either 
fix them and in the meantime, show that they don't have anything to do 
with the duplex settings of the card? I'm not entirely sure WHAT messages 
are being suppressed.  I've scanned pages and pages of log entries near 
these messages and I can't find anything.  How do I get more information 
concerning the exact messages that aren't being shown?

Any help would be greatly appreciated.  I've included output from the 
vortext-diag program below. 

Thanks, 

sh 



bash-2.05a$ sudo ./vortext-diag -a 
vortex-diag.c:v2.06 4/18/2002 Donald Becker (becker@scyld.com) 
Index #1: Found a 3c905C Tornado 100baseTx adapter at 0x2000. 
The Vortex chip may be active, so FIFO registers will not be read. 
To see all register values use the '-f' flag. 
Initial window 4, registers values by window: 
  Window 0: 0000 0000 0000 0000 adad 00bf ffff 0000. 
  Window 1: FIFO FIFO 0700 0000 0000 007f 0000 2000. 
  Window 2: e000 2081 cac0 0000 0000 0000 0052 4000. 
  Window 3: 0000 0180 05ea 0020 000a 0800 0698 6201. 
  Window 4: 0000 0000 0000 0ecc 0001 9880 0000 8000. 
  Window 5: 1ffc 0000 0000 0600 0807 06ce 06c6 a000. 
  Window 6: 0000 0000 0000 8601 0100 f52a 425d c000. 
  Window 7: 0000 0000 0000 0000 0000 0000 0000 e000. 
Vortex chip registers at 0x2000 
  0x2010: **FIFO** 00000000 00000058 *STATUS* 
  0x2020: 00000020 00000000 00080000 00000004 
  0x2030: 00000000 0129fed7 3628e0e0 00080004 
 Indication enable is 06c6, interrupt enable is 06ce. 
 No interrupt sources are pending. 
 Transceiver/media interfaces available:  100baseTx 10baseT. 
Transceiver type in use:  Autonegotiate. 
 MAC settings: full-duplex. 
 Station address set to 00:e0:81:20:c0:ca. 
 Configuration options 0052. 
bash-2.05a$ sudo ./vortext-diag -aa 
vortex-diag.c:v2.06 4/18/2002 Donald Becker (becker@scyld.com) 
Index #1: Found a 3c905C Tornado 100baseTx adapter at 0x2000. 
The Vortex chip may be active, so FIFO registers will not be read. 
To see all register values use the '-f' flag. 
Initial window 4, registers values by window: 
  Window 0: 0000 0000 0000 0000 adad 00bf ffff 0000. 
  Window 1: FIFO FIFO 0700 0000 0000 007f 0000 2000. 
  Window 2: e000 2081 cac0 0000 0000 0000 0052 4000. 
  Window 3: 0000 0180 05ea 0020 000a 0800 0698 6201. 
  Window 4: 0000 0000 0000 0ecc 0001 9880 0000 8000. 
  Window 5: 1ffc 0000 0000 0600 0807 06ce 06c6 a000. 
  Window 6: 0000 0000 0000 1e00 0000 074e 08c6 c000. 
  Window 7: 0000 0000 0000 0000 0000 0000 0000 e000. 
Vortex chip registers at 0x2000 
  0x2010: **FIFO** 00000000 00000058 *STATUS* 
  0x2020: 00000020 00000000 00080000 00000004 
  0x2030: 00000000 52fdad03 3628e0c0 00080004 
 Indication enable is 06c6, interrupt enable is 06ce. 
 No interrupt sources are pending. 
 Transceiver/media interfaces available:  100baseTx 10baseT. 
Transceiver type in use:  Autonegotiate. 
 MAC settings: full-duplex. 
 Station address set to 00:e0:81:20:c0:ca. 
 Configuration options 0052. 
bash-2.05a$ sudo ./vortext-diag -ee 
vortex-diag.c:v2.06 4/18/2002 Donald Becker (becker@scyld.com) 
Index #1: Found a 3c905C Tornado 100baseTx adapter at 0x2000. 
EEPROM format 64x16, configuration table at offset 0: 
    00: 00e0 8120 c0ca 9200 0000 0000 0000 6d50 
  0x08: 2940 0000 00e0 8120 c0ca 0010 0000 00aa 
  0x10: 72a2 0000 0000 0180 0000 0004 1421 10f1 
  0x18: 2466 000a 0002 6300 ff43 4343 ffff ffff 
      ... 

 The word-wide EEPROM checksum is 0x120c. 
Saved EEPROM settings of a 3Com Vortex/Boomerang: 
 3Com Node Address 00:E0:81:20:C0:CA (used as a unique ID only). 
 OEM Station address 00:E0:81:20:C0:CA (used as the ethernet 
address). 
  Device ID 9200,  Manufacturer ID 6d50. 
  Manufacture date (MM/DD/YYYY) 0/0/2000, division , product . 
  No BIOS ROM is present. 
 Options: negotiated duplex, link beat required. 
  Vortex format checksum is incorrect (0029 vs. 10f1). 
  Cyclone format checksum is incorrect (0xb5 vs. 0xff). 
  Hurricane format checksum is incorrect (0x68 vs. 0xff). 
bash-2.05a$ sudo ./vortext-diag -mm 
vortex-diag.c:v2.06 4/18/2002 Donald Becker (becker@scyld.com) 
Index #1: Found a 3c905C Tornado 100baseTx adapter at 0x2000. 
 MII PHY found at address 1, status 0024. 
 MII PHY found at address 2, status 0024. 
 MII PHY found at address 3, status 0024. 
 MII PHY found at address 4, status 0024. 
 MII PHY 0 at #1 transceiver registers: 
   0000 0024 0000 0000 01e0 41e1 0003 0800 
   0000 0000 0000 0000 0000 0000 0000 0000 
   0600 c611 0000 4000 0000 0000 0000 0000 
   0000 0200 0000 0000 0000 0b2f 0000 0000. 
 MII PHY 1 at #2 transceiver registers: 
   0000 0024 0000 0000 01e0 41e1 0003 0800 
   0000 0000 0000 0000 0000 0000 0000 0000 
   0600 c611 0000 4000 0000 0000 0000 0000 
   0000 0200 0000 0000 0000 0b2f 0000 0000. 
 MII PHY 2 at #3 transceiver registers: 
   0000 0024 0000 0000 01e0 41e1 0003 0800 
   0000 0000 0000 0000 0000 0000 0000 0000 
   0600 c611 0000 4000 0000 0000 0000 0000 
   0000 0200 0000 0000 0000 0b2f 0000 0000. 
 MII PHY 3 at #4 transceiver registers: 
   0000 0024 0000 0000 01e0 41e1 0003 0800 
   0000 0000 0000 0000 0000 0000 0000 0000 
   0600 c611 0000 4000 0000 0000 0000 0000 
   0000 0200 0000 0000 0000 0b2f 0000 0000. 
bash-2.05a$