[vortex] strange 3c59x behaviour under 2.6.11.7

Jim Faulkner jfaulkne at ccs.neu.edu
Mon May 2 07:09:09 PDT 2005


Hello,

I run a Linux based router/firewall/wireless access point for my mother's
home office.  There's not much to it, just an old P2-300 with 2 vortex
cards and a wireless card.  Over the weekend I upgraded the machine from
kernel 2.4.29 to 2.6.11.7.

I am experiencing very strange, though very predictable behaviour under
the 2.6 kernel.  Every 2nd time the machine boots, the second ethernet
card fails to initialize.  Here's the relevant output:

May  1 06:39:54 localhost PCI: Found IRQ 10 for device 0000:00:0e.0
May  1 06:39:54 localhost 3c59x: Donald Becker and others.
www.scyld.com/network/vortex.html
May  1 06:39:54 localhost 0000:00:0e.0: 3Com PCI 3c905B Cyclone 100baseTx
at 0x1400. Vers LK1.1.19
May  1 06:39:54 localhost PCI: Enabling device 0000:00:10.0 (0000 -> 0003)
May  1 06:39:54 localhost PCI: Found IRQ 11 for device 0000:00:10.0
May  1 06:39:54 localhost PCI: Sharing IRQ 11 with 0000:00:07.2
May  1 06:39:54 localhost 0000:00:10.0: 3Com PCI 3c905B Cyclone 100baseTx
at 0x1800. Vers LK1.1.19
May  1 06:39:54 localhost PCI: Setting latency timer of device
0000:00:10.0 to 64
May  1 06:39:54 localhost *** EEPROM MAC address is invalid.
May  1 06:39:54 localhost 3c59x: vortex_probe1 fails.  Returns -22
May  1 06:39:54 localhost 3c59x: probe of 0000:00:10.0 failed with error
-22

What's really weird is that this happens exactly every 2nd time the
machine boots.  It doesn't matter if the machine is just rebooted, turned
off and turned back on, or even unplugged for a few minutes.  Its really
very reliable... boot once the second ethernet card works fine, boot again
the second ethernet card fails to initialize, boot again the card works
fine, boot again it fails to initialize, etc.

Here's the relevant output from a successful initialization of the second
card:
PCI: Found IRQ 10 for device 0000:00:0e.0
3c59x: Donald Becker and others. www.scyld.com/network/vortex.html
0000:00:0e.0: 3Com PCI 3c905B Cyclone 100baseTx at 0x1400. Vers LK1.1.19
PCI: Found IRQ 11 for device 0000:00:10.0
PCI: Sharing IRQ 11 with 0000:00:07.2
0000:00:10.0: 3Com PCI 3c905B Cyclone 100baseTx at 0x1800. Vers LK1.1.19

One thing I notice that is different is that during a successful
initialization, Linux does not try to set the "latency timer of device".

Any ideas on what is causing this problem, and how to fix it?  Please CC
my e-mail address in any replies, as I am not subscribed to this list.

thanks for any help,
Jim Faulkner


More information about the vortex mailing list