Re: 3Com 3c900 is "unknown device" in patched 2.0.29

Eric Youngdale (linuxsys@ssg.com)
Wed, 30 Apr 1997 04:37:47 GMT


Willem Riede writes:
[...]
> Probing PCI hardware.
> Warning : Unknown PCI device (10b7:9001). Please read include/linux/pci.h
> [snip]
> Linux version 2.1.32 (root@linnie) (gcc version 2.7.2.1) #6 Thu Apr 17
> 20:04:40 EDT 1997
> [snip]
> eth0: 3Com 3c900 Boomerang 10Mbps/Combo at 0x6000, 00:60:97:10:e0:58, IRQ 10
> 8K word-wide RAM 3:5 Rx:Tx split, autoselect/10baseT interface.
> Rx Pacing bug exists, disabling bus-master receives.
> eth0: Overriding PCI latency timer (CFLT) setting of 32, new value is 248.
> 3c900.c:v0.39 4/1/97 becker@cesdis.gsfc.nasa.gov

Things are not improving. I'm also getting
Probing PCI hardware.
Warning : Unknown PCI device (10b7:9001). Please read include/linux/pci.h
[...]
Linux version 2.0.29 (root@wxsat) (gcc version 2.7.2) #7 Fri Apr 18 02:43:32 GMT 1997
[...]
eth0: 3Com 3c900 Boomerang 10Mbps/Combo at 0x6000, 00:a0:24:d2:bd:bf, IRQ 12
8K word-wide RAM 3:5 Rx:Tx split, autoselect/10baseT interface.
Rx Pacing bug exists, disabling bus-master receives.
Apr 30 03:42:37 wxsat kernel: eth0: Overriding PCI latency timer (CFLT) setting of 32, new value is 248.
3c900.c:v0.40 4/16/97 becker@cesdis.gsfc.nasa.gov

What makes this even odder is the following from lilo.conf:
append="sbpcd=0x230,SoundBlaster ether=9,0x280,eth0"
which should be invoking an Accton NE-2000 clone card also in the
system.

Either way, the 3c900 simply refuses to talk to the local net.
Yanking the 3c900 card so the Accton card takes over restores access
to the local net. Here's the rc.inet1 (Slackware):
#! /bin/sh
#
# rc.inet1 This shell script boots up the base INET system.
#
# Version: @(#)/etc/rc.d/rc.inet1 1.01 05/27/93
#

HOSTNAME=`cat /etc/HOSTNAME`

# Attach the loopback device.
/sbin/ifconfig lo 127.0.0.1
/sbin/route add -net 127.0.0.0

# IF YOU HAVE AN ETHERNET CONNECTION, use these lines below to configure the
# eth0 interface. If you're only using loopback or SLIP, don't include the
# rest of the lines in this file.

# Edit for your setup.
IPADDR1="192.168.200.71" # REPLACE with YOUR IP address!
IPADDR2="192.168.200.74" # REPLACE with YOUR IP address!
NETMASK="255.255.255.0" # REPLACE with YOUR netmask!
NETWORK="192.168.200.0" # REPLACE with YOUR network address!
BROADCAST="192.168.200.255" # REPLACE with YOUR broadcast address, if you
# have one. If not, leave blank and edit below.
GATEWAY="192.168.200.71" # REPLACE with YOUR gateway address!

# Uncomment ONLY ONE of the three lines below. If one doesn't work, try again.
# /sbin/ifconfig eth0 ${IPADDR} netmask ${NETMASK} broadcast ${BROADCAST}
/sbin/ifconfig eth0 ${IPADDR1} broadcast ${BROADCAST} netmask ${NETMASK}
# /sbin/ifconfig eth1 ${IPADDR2} broadcast ${BROADCAST} netmask ${NETMASK}
# /sbin/ifconfig eth0 ${IPADDR} netmask ${NETMASK}

# Uncomment these to set up your IP routing table.
/sbin/route add -net ${NETWORK} netmask ${NETMASK} eth0
# /sbin/route add -host ${IPADDR2} eth1
# /sbin/route add default gw ${GATEWAY} metric 1

# End of rc.inet1

Speaking of disabling bus-mastering:
eth0: transmit timed out, tx_status 00 status e000.
Flags; bus-master 1, full 1; dirty 0 current 16.
Down list 00000000 vs. 00082524.
0: 00082524 length 8000008e status 0000008e
1: 00082534 length 8000008e status 0000008e
2: 00082544 length 8000008e status 0000008e
3: 00082554 length 8000008e status 0000008e
4: 00082564 length 8000008e status 0000008e
5: 00082574 length 8000008e status 0000008e
6: 00082584 length 800000e6 status 000000e6
7: 00082594 length 80000102 status 00000102
8: 000825a4 length 800000e6 status 000000e6
9: 000825b4 length 8000008e status 0000008e
10: 000825c4 length 8000008e status 0000008e
11: 000825d4 length 8000008e status 0000008e
12: 000825e4 length 8000008e status 0000008e
13: 000825f4 length 8000008e status 0000008e
14: 00082604 length 8000008e status 8000008e
15: 00082614 length 800000e6 status 800000e6
I've got a lot of these puppies logged.

Rick