[vortex] Connection to 100megabit linksys switch flakey
John Post
johnp@marine-boy.nu
Sat Oct 11 22:04:03 2003
Hi, I am experienccing a problem connecting my linux machine to a
100 megabit Linksys switch. The link seems to constantly drop.
Thanks.
**** Things tried:
Using a cross cable, connected to another computer. Had no problems performing
an FTP transfer. Trying to perform the same transfer, through the switch produced a lot of no link messages.
Forced the network card to 100/FD, but still had problems.
**** Hardware description
Motherboard
Tyan Thunder K7 S2462 with 2 3C982 ethernet ports onboard.
connecting to a linksys ef4124 ethernet switch.
**** Collected information
sh-2.05a# uname -a
Linux sid 2.4.22 #1 SMP Sat Sep 20 19:22:38 MDT 2003 i686 unknown
sh-2.05a# ifconfig eth0
eth0 Link encap:Ethernet HWaddr 00:E0:81:03:BC:77
inet addr:192.168.45.2 Bcast:192.168.45.255 Mask:255.255.255.0
UP BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:3274187 errors:4948 dropped:0 overruns:26 frame:5068
TX packets:6273076 errors:0 dropped:0 overruns:0 carrier:91628
collisions:2277232 txqueuelen:100
RX bytes:242668698 (231.4 MiB) TX bytes:741004601 (706.6 MiB)
Interrupt:18 Base address:0x1800
How card is recognized (from messages file)
Oct 11 14:02:42 sid kernel: 3c59x: Donald Becker and others. www.scyld.com/network/vortex.html
Oct 11 14:02:42 sid kernel: See Documentation/networking/vortex.txt
Oct 11 14:02:42 sid kernel: 00:0f.0: 3Com PCI 3c980C Python-T at 0x1800. Vers LK1.1.18-ac
Oct 11 14:02:42 sid kernel: 00:e0:81:03:bc:77, IRQ 18
Oct 11 14:02:42 sid kernel: product code 0000 rev 00.3 date 00-00-00
Oct 11 14:02:42 sid kernel: 8K byte-wide RAM 5:3 Rx:Tx split, autoselect/Autonegotiate interface.
Oct 11 14:02:42 sid kernel: MII transceiver found at address 24, status 782d.
Oct 11 14:02:42 sid kernel: Enabling bus-master transmits and whole-frame receives.
Oct 11 14:02:42 sid kernel: 00:0f.0: scatter/gather enabled. h/w checksums enabled
Oct 11 14:02:42 sid kernel: See Documentation/networking/vortex.txt
Oct 11 14:02:42 sid kernel: 00:10.0: 3Com PCI 3c980C Python-T at 0x1880. Vers LK1.1.18-ac
Oct 11 14:02:42 sid kernel: 00:e0:81:03:bc:78, IRQ 19
Oct 11 14:02:42 sid kernel: product code 0000 rev 00.3 date 00-00-00
Oct 11 14:02:42 sid kernel: 8K byte-wide RAM 5:3 Rx:Tx split, autoselect/Autonegotiate interface.
Oct 11 14:02:42 sid kernel: MII transceiver found at address 24, status 7809.
Oct 11 14:02:42 sid kernel: Enabling bus-master transmits and whole-frame receives.
Oct 11 14:02:42 sid kernel: 00:10.0: scatter/gather enabled. h/w checksums enabled
mii-tool output
sh-2.05a# mii-tool -v
eth0: no autonegotiation, 10baseT-HD, link ok
product info: vendor 00:10:5a, model 0 rev 0
basic mode: autonegotiation enabled
basic status: autonegotiation complete, link ok
capabilities: 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD
advertising: 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD flow-control
link partner: 10baseT-HD
eth1: no link
product info: vendor 00:10:5a, model 0 rev 0
basic mode: autonegotiation enabled
basic status: no link
capabilities: 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD
advertising: 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD flow-control
Some error messages (from dmesg)
eth0: Transmit error, Tx status register 82.
eth0: Transmit error, Tx status register 82.
mii-tool output
sh-2.05a# mii-tool -v
eth0: no autonegotiation, 10baseT-HD, link ok
product info: vendor 00:10:5a, model 0 rev 0
basic mode: autonegotiation enabled
basic status: autonegotiation complete, link ok
capabilities: 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD
advertising: 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD flow-control
link partner: 10baseT-HD
eth1: no link
product info: vendor 00:10:5a, model 0 rev 0
basic mode: autonegotiation enabled
basic status: no link
capabilities: 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD
advertising: 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD flow-control
logged output from mii-tool -w command
Oct 11 15:46:14 sid mii-tool: eth0: negotiated 100baseTx-FD flow-control, link ok
Oct 11 15:46:15 sid mii-tool: eth0: no link
Oct 11 15:46:17 sid mii-tool: eth0: negotiated 100baseTx-FD flow-control, link ok
Oct 11 15:46:19 sid mii-tool: eth0: no link
Oct 11 15:46:21 sid mii-tool: eth0: negotiated 100baseTx-FD flow-control, link ok
Oct 11 15:46:24 sid mii-tool: eth0: no link
Oct 11 15:46:26 sid mii-tool: eth0: negotiated 100baseTx-FD flow-control, link ok
Oct 11 15:46:28 sid mii-tool: eth0: no link
vortex-diag outputs
sh-2.05a# ./vortex-diag
vortex-diag.c:v2.14 12/28/2002 Donald Becker (becker@scyld.com)
http://www.scyld.com/diag/index.html
Index #1: Found a 3c982 Dual Port server NIC adapter at 0x1800.
Station address 00:e0:81:03:bc:77.
Receive mode is 0x07: Normal unicast and all multicast.
Index #2: Found a 3c982 Dual Port server NIC adapter at 0x1880.
Station address 00:e0:81:03:bc:78.
Receive mode is 0x07: Normal unicast and all multicast.
Use '-a' or '-aa' to show device registers,
'-e' to show EEPROM contents, -ee for parsed contents,
or '-m' or '-mm' to show MII management registers.
sh-2.05a# ./vortex-diag -a
vortex-diag.c:v2.14 12/28/2002 Donald Becker (becker@scyld.com)
http://www.scyld.com/diag/index.html
Index #1: Found a 3c982 Dual Port server NIC adapter at 0x1800.
Station address 00:e0:81:03:bc:77.
Receive mode is 0x07: Normal unicast and all multicast.
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 0381 77bc 0000 0000 0000 0052 4000.
Window 3: 0000 0180 05ea 0000 000a 0800 0108 6000.
Window 4: 0000 0000 0000 0ec6 0001 98a0 2000 8000.
Window 5: 1ffc 0000 0000 0600 0807 06ce 06c6 a000.
Window 6: 0000 0700 0000 1300 0000 0478 46f8 c000.
Window 7: 0000 0000 0000 0000 0000 0000 0000 e000.
Vortex chip registers at 0x1800
0x1810: **FIFO** 00000000 0000007a *STATUS*
0x1820: 000000a0 2f0e75c0 00080000 00000004
0x1830: 00000000 dc772389 2f0e7010 00080004
0x1840: 00f88cec 00000000 000000b7 00000000
0x1850: 00000000 00000000 00000000 00000000
0x1860: 00000000 00000000 00000000 00000000
0x1870: 00001000 00000000 01800160 00000000
DMA control register is 000000a0.
DMA control register is 000000a4 (during Tx Stall).
Tx list starts at 2f0e75c0.
Tx FIFO thresholds: min. burst 256 bytes, priority with 128 bytes to empty.
Rx FIFO thresholds: min. burst 256 bytes, priority with 128 bytes to full.
Poll period Tx 00 ns., Rx 0 ns.
Maximum burst recorded Tx 352, Rx 384.
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: half-duplex.
Station address set to 00:e0:81:03:bc:77.
Configuration options 0052.
Index #2: Found a 3c982 Dual Port server NIC adapter at 0x1880.
Station address 00:e0:81:03:bc:78.
Receive mode is 0x07: Normal unicast and all multicast.
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 003c 0000 007f 0000 2000.
Window 2: e000 0381 78bc 0000 0000 0000 0052 4000.
Window 3: 0000 0180 05ea 0020 000a 0060 0800 6000.
Window 4: 0000 0000 0000 0cc6 0001 8080 0000 8000.
Window 5: 1ffc 0000 0000 0600 0807 0000 0000 a000.
Window 6: 0000 0000 0000 0000 0000 0000 0000 c000.
Window 7: 0000 0000 0000 0000 0000 0000 0000 e000.
Vortex chip registers at 0x1880
0x1890: **FIFO** 00000000 0000003d *STATUS*
0x18A0: 00000000 00000000 00080000 00000004
0x18B0: 00008000 ca6b3595 00000000 00080004
0x18C0: 0014d65b 00000000 000000b7 00000000
0x18D0: 00000000 00000000 00000000 00000000
0x18E0: 00000000 00000000 00000000 00000000
0x18F0: 00001040 00000000 00000000 00000000
DMA control register is 00000000.
Tx list starts at 00000000.
Tx FIFO thresholds: min. burst 256 bytes, priority with 128 bytes to empty.
Rx FIFO thresholds: min. burst 256 bytes, priority with 128 bytes to full.
Poll period Tx 00 ns., Rx 0 ns.
Maximum burst recorded Tx 0, Rx 0.
Indication enable is 0000, interrupt enable is 0000.
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:03:bc:78.
Configuration options 0052.
sh-2.05a# ./vortex-diag -e
vortex-diag.c:v2.14 12/28/2002 Donald Becker (becker@scyld.com)
http://www.scyld.com/diag/index.html
Index #1: Found a 3c982 Dual Port server NIC adapter at 0x1800.
Station address 00:e0:81:03:bc:77.
Receive mode is 0x07: Normal unicast and all multicast.
Saved EEPROM settings of a 3Com Vortex/Boomerang:
3Com Node Address 00:E0:81:03:BC:77 (used as a unique ID only).
OEM Station address 00:E0:81:03:BC:77 (used as the ethernet address).
Device ID 9805, Manufacturer ID 6d50.
Manufacture date (MM/DD/YYYY) 0/0/2000, division , product .
No BIOS ROM is present.
Transceiver selection: Autonegotiate.
Options: negotiated duplex, link beat required.
PCI Subsystem IDs: Vendor 10f1 Device 2462.
100baseTx 10baseT.
Vortex format checksum is incorrect (26 vs. 10f1).
Cyclone format checksum is incorrect (0xbe vs. 0x63).
Hurricane format checksum is correct (0x63 vs. 0x63).
Index #2: Found a 3c982 Dual Port server NIC adapter at 0x1880.
Station address 00:e0:81:03:bc:78.
Receive mode is 0x07: Normal unicast and all multicast.
Saved EEPROM settings of a 3Com Vortex/Boomerang:
3Com Node Address 00:E0:81:03:BC:78 (used as a unique ID only).
OEM Station address 00:E0:81:03:BC:78 (used as the ethernet address).
Device ID 9805, Manufacturer ID 6d50.
Manufacture date (MM/DD/YYYY) 0/0/2000, division , product .
No BIOS ROM is present.
Transceiver selection: Autonegotiate.
Options: negotiated duplex, link beat required.
PCI Subsystem IDs: Vendor 10f1 Device 2462.
100baseTx 10baseT.
Vortex format checksum is incorrect (26 vs. 10f1).
Cyclone format checksum is incorrect (0xbe vs. 0x63).
Hurricane format checksum is correct (0x63 vs. 0x63).
sh-2.05a# ./vortex-diag -m
vortex-diag.c:v2.14 12/28/2002 Donald Becker (becker@scyld.com)
http://www.scyld.com/diag/index.html
Index #1: Found a 3c982 Dual Port server NIC adapter at 0x1800.
Station address 00:e0:81:03:bc:77.
Receive mode is 0x07: Normal unicast and all multicast.
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 0021 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0600 07f9 0000 4000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0bec 0000 0000.
MII PHY 1 at #2 transceiver registers:
0000 0024 0000 0000 01e0 0021 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0600 07f9 0000 4000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0bec 0000 0000.
MII PHY 2 at #3 transceiver registers:
0000 0024 0000 0000 01e0 0021 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0600 07f9 0000 4000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0bec 0000 0000.
MII PHY 3 at #4 transceiver registers:
0000 0024 0000 0000 01e0 0021 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000
0600 07f9 0000 4000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0bec 0000 0000.
Index #2: Found a 3c982 Dual Port server NIC adapter at 0x1880.
Station address 00:e0:81:03:bc:78.
Receive mode is 0x07: Normal unicast and all multicast.
MII PHY found at address 24, status 7809.
MII PHY 0 at #24 transceiver registers:
1000 7809 0041 6800 05e1 0000 0004 2001
0000 0000 0000 0000 0000 0000 0000 0000
0618 0608 0030 4001 40c8 a000 0000 0000
d300 0020 8084 9119 0065 1a2f 7fff 0000.
John Post | Email: johnp@marine-boy.nu