If your ATAPI CD-ROM is not recognized or it hangs while reading, this is most frequently due to incorrectly installed hardware. All devices must be connected to the EIDE controller in the correct order. The first device is master on the first controller. The second device is slave on the first controller. The third device should be master on the second controller, and so forth.
It often occurs that there is only a CD-ROM besides the first device. The CD-ROM drive is sometimes connected as master to the second controller (secondary IDE controller). This is wrong and can cause Linux not to know what to do with this gap. Try to fix this by passing the appropriate parameter to the kernel (hdc=cdrom).
Sometimes one of the devices is just misjumpered. This means it is jumpered as slave, but is connected as master, or vice versa. When in doubt, check your hardware settings and correct them where necessary.
In addition, there is a series of faulty EIDE chipsets, most of which have now been identified. There is a special kernel to handle such cases. See the README in /boot of the installation CD-ROM.
If booting does not work immediately, try using the following kernel parameters:
x stands for a, b, c, d, etc., and is interpreted as follows:
a — Master on the first IDE controller
b — Slave on the first IDE controller
c — Master on the second IDE controller
An example of parameter to enter is hdb=cdrom. With this parameter, specify the CD-ROM drive to the kernel, if it cannot find it itself and you have an ATAPI CD-ROM drive.
x stands for 0, 1, 2, 3, etc., and is interpreted as follows:
0 — First IDE controller
1 — Second IDE controller
An example of parameter to enter is ide0=noautotune. This parameter is often useful for (E)IDE hard disks.