Trying to track down if a problem is a problem with a CD-ROM drive,
the kernel, or 99% of CD-player programs out there-
With an IDE ATAPI CD-ROM (Creative Infra2400) on our 2nd EIDE port-
ioctl CDROMSTOP, followed by ioctl CDROMPLAYMSF
= works correctly!
BUT!
ioctl CDROMSTART, followed by ioctl CDROMPLAYMSF
= just plays the first track on the CD (on our set-up)
The former is used by the example 'cdtester' program (the source of
which coming from Documentation/cdrom/sbpcd) and hence works!
The latter _appears_ to be used by all the general cd-player programs
I've ever tried under Linux (and I've tried quite a few), and hence
for us at least doesn't work (and quite possibly for others).
Does anyone know if the state of the CD-ROM prior to calling
CDROMPLAYMSF (which in turn calls 'cdrom_play_lba_range' after
converting MSF to LBA)) is defined by ATAPI?
i.e. Should it matter if the CD-ROM is started, or stopped before
attempting to do an LBA play-range?
I tried hunting for the ATAPI specs as-per the comments detailed
in the comments in driver/block/ide-cd.c and then hunting the web
& FTP sites for them, but can't find them.
So!
Who is right, the various CD-player programs out there, or 'cdtester',
or are they both right & the CD-ROM is faulty?
If the state of the CD-ROM prior to LBA range playing *is* defined,
would it not be an idea to have the kernel require the CD-ROM to be
in this state state before executing the LBA play-range command, and
either return an error or force an appropriate change of state (i.e.
stopping or starting the CDROM -- perhaps the preferable solution
under such circumstances) before executing the LBA play-range?
-- Julie Brandon- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/