Re: Intel EtherExpress PRO/100 Mobile Cardbus 32 Adapter

From: Donald Becker (becker@cesdis.gsfc.nasa.gov)
Date: Tue Nov 30 1999 - 16:09:30 EST


On Tue, 30 Nov 1999, Mike Rudgyard wrote:

> Subject: Intel EtherExpress PRO/100 Mobile Cardbus 32 Adapter

> According to the latest PCMCIA howto, this card is now supported, although
> it does not work on my setup. I have mailed the PCMCIA Message Forum, with
> no response, so I am not sure whether the problem is in the Tulip driver,
> the Cardbus interface or the PCMCIA package. As you will see below, the
> tulip-diag programme informs me about a PCI bus error, before moaning
> about the EEPROM, hence this mail.

It's supported *IF* the EEPROM media table is correct. Some editions of the
card don't have a blank EEPROM, and you must use a recent tulip-diag program
to write it.

> Nov 18 10:52:44 rock cardmgr[360]: socket 1: Intel EtherExpress PRO/100 CardBus Mobile Adapter32
> Nov 18 10:52:44 rock kernel: cs: cb_alloc(bus 35): vendor 0x1011, device 0x0019

Yup, a 21143.

> Nov 18 10:52:44 rock kernel: fn 0 bar 1: io 0x100-0x17f
> Nov 18 10:52:44 rock kernel: fn 0 bar 2: mem 0x60081000-0x6008107f

I/O address 0x100.

> Nov 18 10:52:44 rock kernel: tulip.c:v0.91 4/14/99 becker@cesdis.gsfc.nasa.gov (modified by danilo@cs.uni-magdeburg.de for XIRCOM CBE, fixed by Doug Ledford)

I don't trust the modified version, but that's not the problem here.

> Nov 18 10:52:44 rock kernel: eth0: Digital DS21143 Tulip rev 48 at 0x100,
> EEPROM not present, 00:4C:69:6E:75:79, IRQ 3.

This is the problem -- the EEPROM is blank. Intel doesn't follow their own
design manual. They are the *only* 21143 CardBus vendor that doesn't.

> [root@rock incoming]# tulip-diag
> tulip-diag.c:v1.19 10/2/99 Donald Becker (becker@cesdis.gsfc.nasa.gov)
> Index #1: Found a Digital DS21143 Tulip adapter at 0x60081000.

I don't know where it picked this address from! It should use the I/O
address from BAR0, not the memory address from BAR1. I'm guessing the
PCMCIA code does not leave the I/O space bit set in /proc/bus/pci/devices.

(David, can you comment on this?)

> Bus 35, device 0, function 0:
> Ethernet controller: DEC DC21142 (rev 48).
> Medium devsel. Fast back-to-back capable. IRQ 3.
> Non-prefetchable 32 bit memory at 0x100 [0x100].
> Non-prefetchable 32 bit memory at 0x60081000 [0x60081000].

Yup. That's what is happening. This is likely David's bug.

The work-around is
  tulip-diag -t 4 -p 0x100 -e

Follow the directions to update your EEPROM, if everything looks good from
the report.

Donald Becker
Scyld Computing Corporation, and
USRA-CESDIS, becker@cesdis.gsfc.nasa.gov



This archive was generated by hypermail 2b29 : Wed Jan 12 2000 - 12:00:16 EST