PreviousNext Contents

1. General information and hardware requirements

1.1 Introduction

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@hyper.stanford.edu).

1.2 Copyright notice and disclaimer

Copyright (c) 1996, 1997 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.

1.3 What is the latest version, and where can I get it?

The current major release of Card Services is version 2.9, and minor updates or bug fixes are numbered 2.9.1, 2.9.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.9.?.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.8.23. 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.

1.4 What systems are supported?

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. PCI to CardBus bridge controllers (from SMC, Ricoh, Cirrus, and TI) are currently supported only in legacy 16-bit mode, and this support is still somewhat experimental.

1.5 What PCMCIA cards are supported?

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.

1.6 When will my new card be supported?

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. Ideally, I'd like to work towards a model like the Linux kernel, where I would be responsible mainly for the ``core'' PCMCIA code and other authors would contribute and maintain drivers for specific cards. The SUPPORTED.CARDS file mentions some cards for which driver work is currently in progress. I will try to help where I can, but be warned that debugging kernel device drivers by email is not particularly effective.

Manufacturers interested in helping provide Linux support for their products can contact me about consulting arrangements.

1.7 Mailing lists

I used to maintain a database and mailing list of Linux PCMCIA users. More recently, I've turned my web page for Linux PCMCIA information into a ``HyperNews'' site, with a set of message lists for Linux PCMCIA issues. There are lists for installation and configuration issues, for different types of cards, and for PCMCIA programming and debugging. The Linux PCMCIA information page is at http://hyper.stanford.edu/HyperNews/get/pcmcia/home.html. Users can request email notification of new responses to particular questions, or notification for all new messages in a given category. I hope that this will become a useful repository of information, for questions that go beyond the scope of the HOWTO.

There is 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. To subscribe, send a message containing ``subscribe linux-laptop'' to the same address. This mailing list might be a good forum for discussion of Linux PCMCIA issues.

The Linux Laptop Home Page at http://www.cs.utexas.edu/users/kharker/linux-laptop has links to many sites that have information about configuring specific types of laptops for Linux (and PCMCIA). There is also a searchable database of system configuration information.


PreviousNext Contents