Linuxdoc Linux Questions
Click here to ask our community of linux experts!
Custom Search

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 proprietary drivers

Various proprietary drivers for sound, video, etc. exist for Linux. Tracking these proprietary 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:

  • Old cruft needs to be eliminated. Much of this document was written in 1995, give or take, when PCI was new and not supported terribly well, and ISA PnP was seen as something evil. Oh, how the times have changed...

    Also, many of the model numbers listed in this document are no longer available, and are probably not of much interest to the vast majority of people. Personally, I think hardware that hasn't been available for more than 5 years or so can safely be removed. Old versions of this document will always be available on the Internet...

  • URLs in this document need updating. I've begun to do that, but it is a big job... Diffs are welcome.

  • In the process of updating and converting this document to DocBook, some cruft was introduced. If anyone wants to help clean up this, get the latest source (preferably by emailing me at ) and grep for "FIXME".

  • Lists in this HOWTO that are available in other HOWTOs or FAQs need to be either updated here or dropped completely from this document.

  • Newer interfaces such as USB need to be added into the list. (Would a USB-attached hard drive go under "USB", "Removable drives", "Hard drives", or all of the above?)

  • And, of course, random hardware that just isn't listed in this document needs to be added.

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. :-)

1.9. Revision History

The following is the revision history of this document since I (Steven Pritchard) took over maintenance.

Revision History
Revision 3.2.4 2007-05-22 Revised by: sjp
Fixed or removed a ton of bad links. (Fix SANE links. Fix tuxmobile.org link. Drop outdated links to network card drivers. Replace links to dandelion.com with dandelion.sourceforge.net. Probably others I've forgotten...) Drop some old notes on proprietary X servers. Add a link to the Linux Incompatibility List. Update links to CD/DVD burning applications.
Revision 3.2.3 2005-07-12 Revised by: sjp
Fix link for AlphaLinux project. Add some laptop notes. Add information about the 3ware 9000-series cards.
Revision 3.2.2 2004-01-30 Revised by: sjp
Opteron/Athlon64 information added. Fixed up some of the video card entries. Add notes about 3ware 8000-series cards, SATA, and the WD drive "configuration update".
Revision 3.2.1 2002-11-12 Revised by: sjp
Replaced "commercial" with "proprietary" in most cases. (I should probably go one more step and make that "proprietary, closed-source" or something similar. Comments and suggestions are appreciated.) Added placeholder IEEE 1394 section. Updated various other sections. Thanks to Rick Moen for prompting this revision with various updates and suggestions.
Revision 3.2.0 2002-08-13 Revised by: sjp
Removed a lot of cruft. Added information direct from pcmcia-cs.sourceforge.net on supported PCMCIA cards. Added a section on DVD drives. Thanks to Tom Hanlin for pointing out that there was no mention of them before. Replaced all references to metalab with ibiblio, and all references to linuxdoc.org with tldp.org. Probably other changes I'm forgetting, which should teach me not to wait so long between releases.
Revision 3.1.5 2002-03-28 Revised by: sjp
Moved revision history to Introduction section. More dead link fixes and other corrections. Thanks to Lin Hung-Ta, Silviu Tamasdan, and various others.
Revision 3.1.4 2002-02-17 Revised by: sjp
Added note about CRIS architecture. Updated WAN Cards section.
Revision 3.1.3 2001-12-30 Revised by: sjp
Updated video card section and other minor cleanups and updates.
Revision 3.1.2 2001-12-21 Revised by: sjp
Update location for GS-4500 software in the scanners section. (Thanks to Jan Willamowius for pointing out that the page had moved.) Begin updating RAID controller section by separating SCSI RAID and IDE RAID.
Revision 3.1.1 2001-12-14 Revised by: sjp
List printers with a "F" or missing grade from the linuxprinting.org database in the incompatible hardware section.
Revision 3.1.0 2001-12-12 Revised by: sjp
Fix/remove more broken/dead links. Import printer listing from linuxprinting.org.
Revision 3.0.7 2001-10-18 Revised by: sjp
Started fixing dead links. (Thanks to Rob Janssen, Shaul Karl, Charles McColm, and Paul Stephenson for the corrections.)
Revision 3.0.6 2001-09-14 Revised by: sjp
Started cleaning up incompatible hardware section.
Revision 3.0.5 2001-09-04 Revised by: sjp
Updated CPU and motherboards sections. Added WAN Cards section and removed old "Frame Relay", "X.25", and "Synchronous PPP, Cisco HDLC" sections under Network adapters.
Revision 3.0.4 2001-06-25 Revised by: sjp
Updated Network adapters and Controllers (multiport) sections to include current Cyclades products. (Thanks to Ivan Passos at Cyclades for the update.)
Revision 3.0.3 2001-05-28 Revised by: sjp
Added USB section. Added note on non-x86 hardware to CPU section. Updated Motherboards section. Added a link to the Sound HOWTO in the Sound cards section. Folded Related sources of information section into introduction and removed dead links.
Revision 3.0.2 2001-05-10 Revised by: sjp
LDP-requested cleanup.
Revision 3.0.1 2001-05-07 Revised by: sjp
Updated modems section.
Revision 3.0.0 2001-04-22 Revised by: sjp
First DocBook version. Various updates.