1. Introduction

This document lists most of the hardware components (not whole computers) known to be supported or not supported under Linux, so reading through this document you can choose the components for your own Linux computer and know what to avoid. As the list of components supported by Linux changes constantly, this document will never be complete. If a component is not mentioned in this HOWTO, I simply have not found support for the component and nobody has told me about support.

Subsections titled 'Alpha, Beta drivers' list hardware with alpha or beta drivers in varying degrees of usability. Note that some drivers only exist in alpha kernels, so if you see something listed as supported but isn't in your version of the Linux kernel, upgrade.

1.1. Notes on binary-only drivers

Some devices are supported by binary-only modules; avoid these when you can. Binary-only modules are modules which are compiled for ONE kernel version. The source code for these modules has NOT been released. This may prevent you from upgrading or maintaining your system. It will also prevent you from using the component on alternate (usually non-x86) architectures.

Linus Torvalds says "I allow binary-only modules, but I want people to know that they are _only_ ever expected to work on the one version of the kernel that they were compiled for." (See http://lwn.net/1999/0211/a/lt-binary.html for the rest of the message.)

1.2. Notes on commercial drivers

Various commercial drivers for sound, video, etc. exist for Linux. Tracking these commercial drivers is beyond the scope of this document. These drivers might be mentioned at various points in this document, but note that no effort has been made to make sure that this information is current.

1.3. System architectures

This document primarily deals with Linux for x86-based platforms. For other platforms, check the following:

There are also the ELKS and uClinux ports, which are forks of the mainstream kernel source designed for MMU-less (mostly very low-end and embedded) systems.

1.4. Related sources of information

1.5. Known problems with this document

This document can't possibly be up-to-date at all times. I would like to see this document be a useful reference again. The following items need to be fixed for that to happen:

All of this is going to require a lot of work. If this happens to interest you, please email . I can use the help. :-)

1.6. New versions of this document

The latest version of this document can be found on the Linux Documentation Project home site or any of its many mirrors.

1.7. Feedback and corrections

If you have questions or comments about this document, please feel free to email Steven Pritchard at . I also welcome corrections and additions. At some point in the near future, I plan to set up a web interface for adding components to this document. In the mean time, please just use the word "hardware" somewhere in the subject when sending corrections or additions.

1.8. Acknowledgments

This document has passed through many hands. I don't know if he wrote the first version, but in 1993 Ed Carp was maintaining it. In August of 1994, FRiC (Boy of Destiny) took over. After he fell off the face of the planet in late 1995 or early 1996 (and we all miss him from IRC, I might add), Patrick Reijnen took over (sometime in 1997) and continued to maintain this document until late 1999.

Recent versions of this document contained the following:

Thanks to all the authors and contributors of other HOWTO's, many things here are shamelessly stolen from their works; to FRiC, Zane Healy and Ed Carp, the original authors of this HOWTO; and to everyone else who sent in updates and feedbacks. Special thanks to Eric Boerner and lilo (the person, not the program) for the sanity checks. And thanks to Dan Quinlan for the original SGML conversion.

Many thanks to all those who have contributed to this document over the years.

In addition, I'd like to thank the many members of the Southern Illinois Linux Users Group and the Linux Users of Central Illinois for giving me so many interesting problems to solve over the years, and, of course, my wife Kara for putting up with me all these years. :-)