Problems with (built-in) 3c905 on Dell Optiplex GXpro & full_bus_master_tx==1

Problems with (built-in) 3c905 on Dell Optiplex GXpro & full_bus_master_tx==1

Post by Atte Kortekanga » Sat, 10 May 1997 04:00:00

I am trying to get the built-in 3Com PCI 3C905TX to work with a
10Mbit/s (10base-T) line on a Dell OptiPlex CXPro. This only seems to
work, when I force full_bus_master_tx==0 with the driver code.

I am using the kernel version 2.0.27 (from Slackware 3.1, compiled
locally; Ethernet driver compiled into the kernel) and the updated
driver 3c59x.c (version:

... as picked from the beginning of the file).

As "shipped" the driver seems to detect the board, but I don't get the
system to send out any packets. Reception looks better, i.e. I can
ping the system from outside and see the corresponding Ethernet
addresses in /dev/net/arp. Also, ifconfig will not show any packets
going out (all outgoing packets end up in error and being dropped,
while reception looks normal).

The adapter (and network) HW seems functional to some extent as such,
since networking works normally with WinNT4.0 (including results of
ping), and the interface also works under Linux with full bus master
for tx disabled (although there is limited experience so far).

This is an excerpt of the messages in syslog when the system comes up
(lines truncated at beginning; I have also masked out the E-address):

...: eth0: 3Com 3c905 Boomerang 100baseTx at 0xecc0, XX:XX:XX:XX:XX:XX, IRQ 10
...:   8K word-wide RAM 3:5 Rx:Tx split, MII interface.
...:   Rx Pacing bug exists, disabling bus-master receives.
...: eth0: Overriding PCI latency timer (CFLT) setting of 32, new value is 248.

After I have started a ping in the background I start getting messages
like this in syslog (after a couple of minutes):

...: eth0: transmit timed out, tx_status 90 status e800.
...:   Flags; bus-master 1, full 1; dirty 0 current 16.
...:   Down list 03ff6d18 vs. 03ff6d1c.
...:   0: 03ff6d1c  length 8000002a status 0000002a
...:   1: 03ff6d2c  length 8000002a status 0000002a
...:   2: 03ff6d3c  length 8000002a status 0000002a
...:   3: 03ff6d4c  length 8000002a status 0000002a
...:   4: 03ff6d5c  length 8000002a status 0000002a
...:   5: 03ff6d6c  length 8000002a status 0000002a
...:   6: 03ff6d7c  length 8000002a status 0000002a
...:   7: 03ff6d8c  length 8000002a status 0000002a
...:   8: 03ff6d9c  length 8000002a status 0000002a
...:   9: 03ff6dac  length 8000002a status 0000002a
...:   10: 03ff6dbc  length 8000002a status 0000002a
...:   11: 03ff6dcc  length 8000002a status 0000002a
...:   12: 03ff6ddc  length 8000002a status 0000002a
...:   13: 03ff6dec  length 8000002a status 0000002a
...:   14: 03ff6dfc  length 8000002a status 8000002a
...:   15: 03ff6e0c  length 8000002a status 8000002a

On successive failures the output looks about the same except for the
first line, which is then

...: eth0: transmit timed out, tx_status 00 status e000.

Are there any suggestions? Is this a general bug with the driver? Or
just specific to my system, way of using the driver or like that ...?
Or should I just be happy to get the interface working at all (with

Atte Kortekangas          :  Tel/puh. (+358-9)456-6039
VTT/TTE                   :  
Tekniikantie 4 B          :  telefax (+358-9)456-7028
P.O. Box 1203             :  

FINLAND                   :