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.2.4.
This information is only valid for Linux on the Intel platform. Much of it is applicable to Linux on other processor architectures as well.
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.
Linux also has an IDE SCSI emulation kernel driver that makes an IDE/ATAPI device appear in software to be a SCSI device, allowing the use of a SCSI device driver instead of the native ATAPI driver. This is useful if you have an ATAPI device for which no native driver has been written (for example, an ATAPI PD-CD or CDR drive); you can then use this emulation together with an appropriate SCSI device driver.
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 ftp://metalab.unc.edu/pub/Linux/kernel/patches/cdrom/. Also check the documentation files included with the kernel distribution, usually installed in /usr/src/linux/Documentation/cdrom, for the latest information.
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
Notes:
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.
There are external storage devices, including CD-ROM drives, that attach to the parallel port of personal computers. In many cases the devices internally use an IDE interface in conjunction with an adaptor which interfaces the internal IDE bus to the PC parallel port.
Linux has a parallel port IDE driver which supports most parallel port devices. At the time of writing it supported devices from the following vendors (as well as most no-name and clone drives compatible with these): ATEN, Avatar, DataStor, Fidelity International Technology, Freecom, Hewlett-Packard, Imation, KT Technology, KingByte Information Corp., Maxell, MicroSolutions, OnSpec, Shuttle Technology, SyQuest, and ValuStore.
Additional information can be found at http://www.torque.net/parport/.
There is an alternate kernel driver available for Panasonic/Matsushita CR-56x drives written by Zoltan Vorosbaranyi. It can be found at ftp://ftp.honlap.net/pub/linux/pcd/pcd-0.30.tar.gz.