This section lists the CD-ROM drivers and interfaces that are currently supported under Linux. The information here is based on the latest stable Linux kernel, which at time of writing was version 2.0.31. A development kernel (2.1.x versions) is also available but is not guaranteed to be stable.
This information is only valid for Linux on the Intel platform. Much of it should be applicable to Linux on other processor architectures, but I have no first hand experience or information.
ATAPI (ATA Packet Interface) is a protocol for controlling mass storage devices. It builds on the ATA (AT Attachment) interface, the official ANSI standard name for the IDE interface developed for hard disk drives. ATAPI is commonly used for hard disks, CD-ROM drives, tape drives, and other devices. Currently the most popular type of interface, it offers most of the functionality of SCSI, without the need for an expensive controller or cables.
The Linux kernel has a device driver that should work with any ATAPI compliant CD-ROM drive. Vendors shipping compatible drives include Aztech, Mitsumi, NEC, Sony, Creative Labs, and Vertos. If you have recently purchased a CD-ROM drive, especially if it is quad speed or faster, it is almost guaranteed to be IDE/ATAPI.
SCSI (Small Computer Systems Interface) is a popular format for CD-ROM drives. Its chief advantages are a reasonably fast transfer rate, multi-device capability, and support on a variety of computer platforms. Some disadvantages of SCSI are the need for a relatively expensive controller card and cables.
Any SCSI CD-ROM drive with a block size of 512 or 2048 bytes should work under Linux; this includes the vast majority of CD-ROM drives on the market.
You will also need a supported SCSI controller card; see the SCSI HOWTO for more information on interface hardware.
Note that some CD-ROMs include a proprietary controller with a modified interface that is not fully SCSI compatible (e.g. it may not support adding other SCSI devices on the bus). These will most likely not work under Linux.
Several CD-ROM drives using proprietary interfaces are available; the interface is often provided on a sound card. Simple interface cards equivalent to that provided on the sound card are also available. These drives generally tend to be lower in cost and smaller than SCSI drives. Their disadvantages are the lack of standardization and expandability.
Note that proprietary interfaces are sometimes erroneously referred to as IDE interfaces, because like IDE hard disks, they use a simple interface based on the PC/AT bus. To add to the confusion, some vendors, most notably Creative Labs, have shipped many different types of CD-ROM drives and have offered proprietary, SCSI, and ATAPI interfaces on their sound cards.
The table below lists the proprietary CD-ROM drives that are known to
be supported under Linux. Drivers for additional devices may be
available in the latest development kernels or as kernel patches. The
latter can most often be found at
check the README files included with the kernel distribution, usually
/usr/src/linux/Documentation/cdrom, for the
Proprietary CD-ROM Drives Vendor Model Kernel Driver Notes ------ ----- ------------- -------- Panasonic CR-521 sbpcd Note 1 Panasonic CR-522 sbpcd Note 1 Panasonic CR-523 sbpcd Note 1 Panasonic CR-562 sbpcd Note 1 Panasonic CR-563 sbpcd Note 1 Creative Labs CD-200 sbpcd IBM External ISA sbpcd Note 2 Longshine LCS-7260 sbpcd Teac CD-55A sbpcd Sony CDU-31A cdu31a Sony CDU-33A cdu31a Sony CDU-535 sonycd535 Note 3 Sony CDU-531 sonycd535 Aztech CDA268-01A aztcd Note 4 Orchid CDS-3110 aztcd Okano/Wearnes CDD110 aztcd Conrad TXC aztcd CyCDROM CR520ie aztcd CyCDROM CR940ie aztcd GoldStar R420 gscd Note 5 Philips/LMS CM206 cm206 Note 6 Mitsumi CRMC LU005S mcd/mcdx Note 7, 8 Mitsumi FX001 mcd/mcdx Note 7, 8 Optics Storage Dolphin 8000AT optcd Lasermate CR328A optcd Sanyo H94A sjcd various various isp16 Note 9 MicroSolutions Backpack bpcd
If a drive listed here is not supported by your kernel, you probably need to upgrade to a newer version.
If your drive is not one of the models listed here, particularly if it was bought recently and is quad speed or faster, it probably uses the IDE/ATAPI interface listed in a previous section. The single most common error among Linux CD-ROM users is to assume that any drive connected to a SoundBlaster card should use the SBPCD driver. Creative Labs and most other vendors are no longer selling proprietary interface drives, they are following the standard ATAPI/IDE interface.
Some vendors sell CD-ROM drives that attach via a parallel port. The only drive of this type that is currently supported in the Linux kernel is the MicroSolutions Backpack.
Linux kernel drivers for several more of these drives are available separately as kernel patches or loadable modules. For the latest information check http://www.torque.net/linux-pp.html.
There is an alternate kernel driver available for Panasonic/Matsushita CR-56x drives written by Zoltan Vorosbaranyi. It can be found at ftp://ftp.tarki.hu/pub/linux/pcd/pcd-0.29.tar.gz.