[prev in list] [next in list] [prev in thread] [next in thread] 

List:       linux-vortex
Subject:    [vortex] 3com 3c905TX: low performance with 3x59x driver
From:       =?koi8-r?Q?=22?=Dmitry Teslya=?koi8-r?Q?=22=20?=<grimward () mail ! ru>
Date:       2003-09-04 13:03:55
[Download RAW message or body]

Hello!

My problem is the very low performance of my 3com 3c905TX NIC. The maximum speed it \
can achieve is about 1.5 Mb/s which is very low, because we have 100Mbit network here \
(in WinXp I get about 7Mb/s).

I run Slackware Linux 9.0 with kernel 2.4.21 from kernel.org.
Here is the outputs of the most essential commands:

#lspci --vv

01:0a.0 Ethernet controller: 3Com Corporation 3c905 100BaseTX [Boomerang]
    Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- \
SERR- FastB2B-  Status: Cap- 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- \
<TAbort- <MAbort- >SERR- <PERR-  Latency: 32 (750ns min, 2000ns max)
    Interrupt: pin A routed to IRQ 11
    Region 0: I/O ports at dc00 [size=64]
    Expansion ROM at <unassigned> [disabled] [size=64K]

#dmesg

3c59x: Donald Becker and others. www.scyld.com/network/vortex.html
See Documentation/networking/vortex.txt
01:0a.0: 3Com PCI 3c905 Boomerang 100baseTx at 0xdc00. Vers LK1.1.16
 00:60:08:7c:f8:51, IRQ 11
  product code 4b4b rev 00.0 date 01-04-80
  Internal config register is 16302d8, transceivers 0xe040.
  8K word-wide RAM 3:5 Rx:Tx split, autoselect/MII interface.
  MII transceiver found at address 24, status 786f.
  Enabling bus-master transmits and whole-frame receives.
01:0a.0: scatter/gather enabled. h/w checksums disabled
eth0: Dropping NETIF_F_SG since no checksum feature.
eth0: no IPv6 routers present

#vortex-diag -aae

vortex-diag.c:v2.14 12/28/2002 Donald Becker (becker@scyld.com)
 http://www.scyld.com/diag/index.html
Index #1: Found a 3c905 Boomerang 100baseTx adapter at 0xdc00.
 Station address 00:60:08:7c:f8:51.
  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 0000 00bf ffff 0000.
  Window 1: FIFO FIFO 0000 2000 8000 00ff 13fc 2000.
  Window 2: 6000 7c08 51f8 0000 0000 0000 06c6 4000.
  Window 3: 02d8 0163 0000 0020 e040 0bff 13ff 6000.
  Window 4: 0000 06d0 0000 0cc0 0003 8802 0000 8000.
  Window 5: 1ffc fffc 06c6 0600 0007 06ce 06c6 a000.
  Window 6: 0000 0000 0000 1c00 0000 0734 0000 c000.
  Window 7: d048 0f55 0000 0000 8000 00ff 500c e000.
Vortex chip registers at 0xdc00
  0xDC10: **FIFO** 00000000 00008000 *STATUS*
  0xDC20: 00000021 00000000 0f55f012 060005d2
  0xDC30: 00000000 00007ba5 0f55d050 00000000
 Indication enable is 06c6, interrupt enable is 06ce.
 No interrupt sources are pending.
 Transceiver/media interfaces available:  MII.
Transceiver type in use:  MII.
 MAC settings: full-duplex.
Maximum packet size is 0.
 Station address set to 00:60:08:7c:f8:51.
 Configuration options 06c6.
Saved EEPROM settings of a 3Com Vortex/Boomerang:
 3Com Node Address 00:60:08:7C:F8:51 (used as a unique ID only).
 OEM Station address 00:60:08:7C:F8:51 (used as the ethernet address).
  Device ID 9050,  Manufacturer ID 6d50.
  Manufacture date (MM/DD/YYYY) 1/4/2080, division 6, product KK.
  No BIOS ROM is present.
 Transceiver selection: MII.
   Options: negotiated duplex, link beat required.
 PCI Subsystem IDs: Vendor 004f Device ffff.
 100baseT4 100baseTx 100baseFx 10baseT 10base2 AUI MII .
  Vortex format checksum is correct (4f vs. 4f).
  Cyclone format checksum is incorrect (00 vs. 0xff).
  Hurricane format checksum is incorrect (00 vs. 0xff).
 MII PHY found at address 24, status 786f.
 MII PHY 0 at #24 transceiver registers:
   3100 786f 2000 5c01 01e1 45e1 0001 0000
   0000 0000 0000 0000 0000 0000 0000 0000
   0000 0000 0000 0002 0000 0000 0001 8060
   8020 0cb8 0000 3800 a3b9 0087 5405 001b.

#mii-diag -v

mii-diag.c:v2.08 7/2/2003 Donald Becker (becker@scyld.com)
 http://www.scyld.com/diag/index.html
  Using the new SIOCGMIIPHY value on PHY 24 (BMCR 0x3100).
 The autonegotiated capability is 01e0.
The autonegotiated media type is 100baseTx-FD.
 Basic mode control register 0x3100: Auto-negotiation enabled.
 Basic mode status register 0x786f ... 786f.
   Link status: established.
   This transceiver is capable of  100baseTx-FD 100baseTx 10baseT-FD 10baseT.
   Able to perform Auto-negotiation, negotiation complete.
   *** Link Jabber! ***
 Your link partner advertised 45e1: Flow-control 100baseTx-FD 100baseTx 10baseT-FD \
10baseT, w/ 802.3X flow control.  End of basic transceiver information.

libmii.c:v2.10 4/22/2003  Donald Becker (becker@scyld.com)
 http://www.scyld.com/diag/index.html
 MII PHY #24 transceiver registers:
   3100 786f 2000 5c01 01e1 45e1 0001 0000
   0000 0000 0000 0000 0000 0000 0000 0000
   0000 0000 0000 0000 0000 0000 0001 8060
   8020 0cb8 0000 1800 a3b9 0087 6705 001b.
 Basic mode control register 0x3100: Auto-negotiation enabled.
 Basic mode status register 0x786f ... 786f.
   Link status: established.
   Capable of  100baseTx-FD 100baseTx 10baseT-FD 10baseT.
   Able to perform Auto-negotiation, negotiation complete.
   *** Link Jabber! ***
 Vendor ID is 08:00:17:--:--:--, model 0 rev. 1.
   Vendor/Part: National Semiconductor 83840A.
 I'm advertising 01e1: 100baseTx-FD 100baseTx 10baseT-FD 10baseT
   Advertising no additional info pages.
   IEEE 802.3 CSMA/CD protocol.
 Link partner capability is 45e1: Flow-control 100baseTx-FD 100baseTx 10baseT-FD \
10baseT.  Negotiation  completed.

The only close problem I found was here \
http://www.scyld.com/pipermail/vortex/2003-July/002481.html. But as I understand it \
is not my case because I have no problems with autonegotiation. The weird thing is \
that everything tells me that it must work fine but it doesn't. I also tried the \
3com's driver (http://support.3com.com/infodeli/tools/nic/linux/3c90x-102.tar.gz) but \
it refused to load, producing the following message: #insmod 3c90x
Using /lib/modules/2.4.21/kernel/drivers/net/3c90x.o
Warning: loading /lib/modules/2.4.21/kernel/drivers/net/3c90x.o will taint the \
kernel: no license  See http://www.tux.org/lkml/#export-tainted for information about \
                tainted modules
/lib/modules/2.4.21/kernel/drivers/net/3c90x.o: init_module: No such device
/lib/modules/2.4.21/kernel/drivers/net/3c90x.o: Hint: insmod errors can be caused by \
incorrect module parameters, including invalid IO or IRQ parameters.  You may find \
more information in syslog or the output from dmesg

P.S. Sorry for my English :)

Thanks in advance!

Dmitry Teslya.

_______________________________________________
vortex mailing list
vortex@scyld.com
http://www.scyld.com/mailman/listinfo/vortex


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic