Card Services for Linux is a complete PCMCIA support package. It includes a set of loadable kernel modules that implement a version of the PCMCIA Card Services applications program interface, a set of client drivers for specific cards, and a card manager daemon that can respond to card insertion and removal events, loading and unloading drivers on demand. It supports ``hot swapping'' of PCMCIA cards, so cards can be inserted and ejected at any time.
This software is still under development. It probably contains bugs, and should be used with caution. I'll do my best to fix problems that are reported to me, but if you don't tell me, I may never know. If you use this code, I hope you will send me your experiences, good or bad!
If you have any suggestions for how this document could be improved,
please let me know (dhinds@allegro.stanford.edu
).
Copyright (c) 1996 David A. Hinds
This document may be reproduced or distributed in any form without my prior permission. Modified versions of this document, including translations into other languages, may be freely distributed, provided that they are clearly identified as such, and this copyright is included intact.
This document may be included in commercial distributions without my prior consent. While it is not required, I would like to be informed of such usage. If you intend to incorporate this document in a published work, please contact me to make sure you have the latest available version.
This document is provided ``as is'', with no explicit or implied warranties. Use the information in this document at your own risk.
The current major release of Card Services is version 2.8, and minor updates or bug fixes are numbered 2.8.1, 2.8.2, and so on.
Source code for the latest version is available from
hyper.stanford.edu
in the /pub/pcmcia
directory, as
pcmcia-cs-2.8.?.tar.gz
. There will usually be several versions
here. I generally only keep the latest minor release for a given
major release. New major releases may contain relatively untested
code, so I also keep the latest version of the previous major release
as a relatively stable fallback; the current fallback is 2.7.6. It is
up to you to decide which version is more appropriate, but the
CHANGES
file will summarize the most important differences.
hyper.stanford.edu
is mirrored at sunsite.unc.edu
in
/pub/Linux/kernel/pcmcia
.
I'll also try to upload major releases to tsx-11.mit.edu
under
/pub/linux/packages/laptops/pcmcia
now and then.
If you do not feel up to compiling the PCMCIA drivers from scratch, pre-compiled drivers are included with current releases of most of the major Linux distributions, including Slackware, Red Hat, Caldera, and Yggdrasil, among others.
This code should run on almost any Linux-capable laptop. All common PCMCIA controllers are supported, including Intel, Cirrus, Vadem, VLSI, Ricoh, and Databook chips. Custom controllers used in IBM and Toshiba laptops are also supported. PCMCIA card docks for desktop systems should work as long as they are the type that plugs directly into the ISA bus, rather than SCSI-to-PCMCIA or IDE-to-PCMCIA adapters.
The Motorola 6AHC05GA controller used in some Hyundai laptops is not supported. The custom PCMCIA controller in the HP Omnibook 600 is unsupported. This package also does not support CardBus controllers, though some combination CardBus-PCMCIA controllers may work if they are backwards compatible with a supported PCMCIA controller.
The current release includes drivers for a variety of ethernet cards,
a driver for modem and serial port cards, several SCSI adapter
drivers, a driver for ATA/IDE drive cards, and memory card drivers
that should support most SRAM cards and some flash cards. The
SUPPORTED.CARDS
file included with each release of Card Services
lists all cards that are known to work in at least one actual system.
The likelihood that a card not on the supported list will work depends on the type of card. Essentially all modems should work with the supplied driver. Some network cards may work if they are OEM versions of supported cards. Other types of IO cards (frame buffers, sound cards, etc) will not work until someone writes the appropriate drivers.
Unfortunately, they usually don't pay me to write device drivers, so
if you would like to have a driver for your favorite card, you are
probably going to have to do at least some of the work. The
SUPPORTED.CARDS
file mentions some cards for which driver work is
currently in progress. I will try to help where I can.
Manufacturers interested in helping provide Linux support for their products can contact me about consulting arrangements.
I maintain a database and mailing list of Linux PCMCIA users. This is used to announce new releases of the PCMCIA package. To be included, send me the following:
probe
command?/etc/pcmcia/config.opts
changes, insmod
options,
etc.You can also register via the WWW: see
http://hyper.stanford.edu/~dhinds/pcmcia/pcmcia.html
for
instructions.
There is also a Linux mailing list devoted to laptop issues, the
``linux-laptop'' list. For more information, send a message
containing the word ``help'' to majordomo@vger.rutgers.edu
.