[eepro100] Lockup with Intel PRO/100+ Dual Port Server Adapter

Donald Becker becker@scyld.com
Fri, 12 Jan 2001 10:07:10 -0500 (EST)


On Fri, 12 Jan 2001, Thomas Lorenzen wrote:

> >>> What did you do to fix the problem on your machine?
> 
>    In the bios it was actually possible to specify the irq
> numbers, which the system should assign to the different pci
> slots. I then just assigned two times irq 9, and then the
> two ports were configured to both use irq 9. Aparently,
> however, that did not do such a good job anyway.

This sounded unusual until I read...

>    Ok, it is almost weekend here, so I will try v1.13 later
> on and inform you later on.
> 
>    I have been suggested to try the stuff on a newer
> machine. My test machine is an old 486. Do you have any idea
> about, if that could solve the problem. When working
> properly, the board is planned to go into a PIII SMP
> machine.

Oooohhh, a 486.  Probably a SP3G with the Neptune chip set.

The one with the PCI burst bug.

The old Tulip driver had a work-around to limit the PCI burst size to
less than a memory/cache line to avoid data corruption.
The code looked like:

	writel((x86 <= 4 ? 0x4810 : 0xE010), ioaddr + PCIBusCfg);
	if (x86 <= 4)
	    printk(KERN_INFO "%s: This is a 386/486 PCI system, setting cache "
			   "alignment to %x.\n", dev->name,
			   (x86 <= 4 ? 0x4810 : 0x8010));

This set cache alignment to 8 longwords and the burst limit to 8
longwords.

You _might_ be able to see the same effect with the eepro100 driver
setting the module options
   txdmacount=8 rxdmacount=8

But I've never tried this.  The SP3G system was retired long ago.

Donald Becker				becker@scyld.com
Scyld Computing Corporation		http://www.scyld.com
410 Severn Ave. Suite 210		Second Generation Beowulf Clusters
Annapolis MD 21403			410-990-9993