[eepro100] 82557 driver can drive 82559..?

Donald Becker becker@scyld.com
Wed Aug 28 12:01:30 2002


On 28 Aug 2002, atul srivastava wrote:

> this driver is written for 82557 but i am using 82559
> card .
> my question is that can a 82557 driver aplicable to both 82559 and 
> 82559ER ?

For the most part, yes.  The '559 and '559ER were designed to be fully
backwards compatible, with new features.  But, as is typical with such
things, they do their own set of bugs.

> also my card reports status 0090 before and after Transmit command 
> that as per manual indicates no resources,

There are various bugs that trigger a "no resources" report.  In this
case my guess is that you have encountered the timing bug when loading
the SCBPointer, RxAddrLoad or CUCmdBase.  These operations used to be
effectively instantaneous (less than a PCI bus transaction).  But a
firmware change in a later chip caused them to take an unpredictable (or
just undocumented) amount of time.

	outl(0, ioaddr + SCBPointer);
	inl(ioaddr + SCBPointer);				/* Flush to PCI. */
	udelay(10);					/* Bogus, but it avoids the bug. */
	/* Note: these next two operations can take a while. */
	do_slow_command(dev, RxAddrLoad);
	do_slow_command(dev, CUCmdBase);


-- 
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