Intel-brand 21143 CardBus card

Donald Becker becker@cesdis1.gsfc.nasa.gov
Mon Apr 12 16:59:47 1999


On Thu, 8 Apr 1999, KOGAN_VADIM wrote:

> Subject: RE: Intel-brand 21143 CardBus card
> >>   I'm using tulip.c v.90z 
> >>   b) it doesn't find EEPROM ("EEPROM not present"). 
> >>   I dumped ee_data and got something like this: 
> >>   868000100 87000000 00000000 00000000 
> >>   c40000000 00000000 00000000 00000000 
> >What's the station address of the card?  (Hopefully it's printed
> >somewhere.)
> 00:4C:69:6E:75:79, irq 3

OK, there is an EEPROM there, but it's only has enough written in it to
start up the chip (86800100 is the PCI subsystem ID, loaded automatically by
the chip).  There is no software info.

Once we figure out the media table, I might write something to allow loading
a valid EEPROM media table.

> btw, dump_cis shows
> lan_node_id 00 a0 c9 bb 00 3a

OK.
But the PCI+CardBus drivers do not deal with the CIS.
That's a design decision I'm not going to change for a single card.

> >BTW, you can use 'tulip-diag -p 0x400 -t 4' to help track down this 
> >problem.
> >Normally you shouldn't use "-p <ioaddr>", but it's required for CardBus 
> >devices since they are not reported in /proc/pci.  The "-t 4" parameter >is
> a 
> >new option that specifies the chip type, since we cannot read it from 
> >/proc/pci or /proc/bus/pci/*
> Ghm, the one I have doesn't have -t argument ( I have v1.08 from 2/28/99).
> And I can't find newer one... If you'll point me to the new diag, I'll run
> it after next class ;-)

It turns out I added this to a different branch of tulip-diag than I was
publically releasing.  My internal version has all sorts of grungy
negotiate-the-media-type code that is a prototype of what I put into the
driver.

I've added the '-t INDEX' flag to the tulip-diag I released today.
Pass an invalid value e.g. '-t -1' or '-t 10000' to see the mapping.

> >>   c) tulip-diag doesn't find MII at all :-( 
> >That means we may need a valid EEPROM table to switch the transceiver on
> And how can we do that? (Look @ some other card's EEPROM?)

***THE FOLLOWING IS A HACK.  Do not play with this unless you need it.***
I've implemented a '-G CSR15GPIOVAL' option to allow experimenting with the
CSR15 settings.  We can set CSR15 to typical values and see if the
transceiver comes on:
   tulip-diag -p 0x400 -t 4 -G 0x08af0000
   tulip-diag -p 0x400 -t 4 -G 0x00a50000

The first command sets the four GPIO pins to be outputs.  (0x080f0000)
Two of the four are set to be LEDs, the other two are software set.(0x00a00000)
The second command sets the two non-LED output pins to be high (0x00050000).

These are the settings in the Digital design example.
Most card designers use the example design unless there is a good reason to
do something else.

Donald Becker					  becker@cesdis.gsfc.nasa.gov
USRA-CESDIS, Center of Excellence in Space Data and Information Sciences.
Code 930.5, Goddard Space Flight Center,  Greenbelt, MD.  20771
301-286-0882	     http://cesdis.gsfc.nasa.gov/people/becker/whoiam.html