Subject: RE: PCMCIA Network Setup on Assabet

From: Jeff Sutherland <[email-masked]>
Date: Mon, 26 Jun 2000 10:18:44 -0400

> Hello,
> 
> thanks to Russell and Jeff for your tips, 
> meanwhile the kernel is running. But I have another problem, 
> I can't setup the pcmcia network card on the assabet 
> (I have no Neponset). I downloaded the pcmcia ramdisk from 
> http://www.cs.cmu.edu/~wearable/software/pcmcia-arm.html 
> but I can't mount that ramdisk, so I don't know how to set up the
> network. Is there another ramdisk or howto available
> about how to set up the pcmcia network on the assabet.
> 
> Thanks
> 
> Ralf

First of all, I'm going to assume that you can boot your Assabet and have
some kind of ramdisk to run.  Linux/Documentation/ramdisk.txt has everything
you need to know to create and manipulate ramdisk images on a Linux host.
BEWARE that the ramdisk size limit by default is 4096 Megs on a i386 host.
This could be the source of your problem.  Nico's and John's ramdisks are
larger than that.  Reboot your pc with 'ramdisk=8192' at the lilo boot
prompt, or add 'ramdisk=8192' to lilo.conf and rerun lilo, then you won't
have to remember to do it every time you reboot.  (Since that's a very
infrequent occurrence with most Linux machines one is quite likely to forget
custom boot keywords and parameters :D

Step 1: set up PCMCIA support.  The easy way is to just compile in support
(instead of using modules) for PCMCIA and for the NE2000 compatible netcard
network driver.  Networking support also has to be enabled in the kernel.
The latest patches from Nico have all this set up by default if you first do
'make assabet_config' after completing patching of the kernel.

Step 2: Even if you don't use it for booting your system, you should at
least study John Dorsey's ramdisk's contents.  Specifically a directory,
/etc/pcmcia, contains the scripts and config files necessary for starting up
PCMCIA network servces.  /etc/rc.d/init.d/pcmcia is the boot script that
starts up PCMCIA support at boot time.  Make a link in /etc/rc.d/rc3.d
called S66pcmcia and point it at ../init.d/pcmcia.  Two binary executables,
/sbin/cardmgr and /sbin/cardctl are also necessary.

Step 3: Configure the network scripts in /etc/pcmcia to suit your local
environment (ip address, gateway addr, etc.).  Of course you should set up
all the other regular networking stuff that any typical Linux box would
need, such as /etc/hosts, resolv.conf, /etc/sysconfig/network-scripts/...,
the usual...

Cardmgr is started by S66pcmcia and runs as a daemon.  When it detects
insertion of a card it id's it and locates an appropriate driver and binds
it to the socket.  For the Socket compact flash Ethernet card it also runs a
startup script in /etc/pcmcia which brings up the network.  (Start a lo
interface manually or put it in a boot script somewhere, too.  Makes testing
handy, eg.: 'ifup lo')

Sometimes cardmgr doesn't see the insertion of the card for some reason.  Do
'cardctl insert' to get cardmgr to recoginze it.  'cardctl status' is useful
also.

HTH,
//Jeff

unsubscribe: body of `unsubscribe linux-arm-kernel' to [email-masked]

---

From: Nicolas Pitre <[email-masked]>
Date: Mon, 26 Jun 2000 11:02:51 -0400 (EDT)

> custom boot keywords and parameters :D

A simpler solution could use the loopback interface, like:

	mount ramdisk_img /mnt -o loop

Nicolas